• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

include/FCam/Event.h

Go to the documentation of this file.
00001 #ifndef FCAM_EVENT_H
00002 #define FCAM_EVENT_H
00003 
00006 
00007 #include <string>
00008 
00009 #include "Time.h"
00010 #include "TSQueue.h"
00011 
00012 
00013 namespace FCam {
00014 
00018     class EventGenerator {
00019     };
00020     
00023     class Event {
00024       public:
00025         EventGenerator *creator; 
00026         int type;                
00027         int data;                
00028         Time time;               
00029         std::string description; 
00030 
00039         enum {Error = 0,               
00040               Warning,                 
00041               FocusPressed,            
00042               FocusReleased,           
00043               ShutterPressed,          
00044               ShutterReleased,         
00045               N900LensClosed = 10000,  
00046               N900LensOpened,          
00047               N900SlideOpened,         
00048               N900SlideClosed,               
00049               F2LensRemoved = 20000,   
00050               F2LensInstalled,         
00051               F2ZoomChanged,           
00052               F2FocusChanged           
00053         };
00054 
00059         enum {Unknown = 0,        
00060               InternalError,      
00061               DriverLockedError,  
00062               DriverMissingError, 
00063               DriverError,        
00064               ImageTargetLocked,  
00065               ResolutionMismatch, 
00066               FormatMismatch,     
00067               OutOfMemory,        
00068               FrameLimitHit,      
00069               LensHistoryError,   
00070               FlashHistoryError,  
00071               DemosaicError,      
00072               ImageLockError,     
00073               BadCast,            
00074               FileLoadError,       
00075               FileLoadWarning,     
00076               FileSaveError,       
00077               FileSaveWarning,     
00078               SensorStoppedError, 
00079               ParseError,         
00080               FrameDataError,     
00081               ImageDroppedError,  
00082               OutOfRange,         
00083         };
00084     };
00085         
00110     bool getNextEvent(Event *);
00114     bool getNextEvent(Event *, int type);
00118     bool getNextEvent(Event *, int type, int data);
00122     bool getNextEvent(Event *, int type, EventGenerator *creator);
00127     bool getNextEvent(Event *, int type, int data, EventGenerator *creator);
00132     bool getNextEvent(Event *, EventGenerator *creator);
00133 
00135     void postEvent(Event);
00136 
00139     void postEvent(int type, int code, const std::string &msg, EventGenerator *creator = NULL);
00140 
00142     void error(int code, EventGenerator *creator, const char *fmt, ...);
00143 
00145     void warning(int code, EventGenerator *creator, const char *fmt, ...);    
00146 
00148     void error(int code, const char *fmt, ...);
00149 
00151     void warning(int code, const char *fmt, ...);    
00152 
00154     extern TSQueue<Event> _eventQueue;
00155 }
00156 
00157 #endif

Generated on Mon Aug 16 2010 14:25:45 for FCam by  doxygen 1.7.1