Hauptseite | Liste aller Namensbereiche | Klassenhierarchie | Alphabetische Liste | Übersicht | Auflistung der Dateien | Elemente eines Namensbereiches | Datenstruktur-Elemente | Datei-Elemente

recognition.h

gehe zur Dokumentation dieser Datei
00001 #ifndef RECOGNITIONMODULE_H
00002 #define RECOGNITIONMODULE_H
00003 
00004 #include "../opencvext.h"
00005 #include <iostream>
00006 #include <list>
00007 
00008 using namespace std;
00009 
00010 #ifdef DEBUG
00011 #define ENTER(LEVEL, TEXT) if(DEBUGLEVEL>=LEVEL) \
00012   cerr << "->" << __PRETTY_FUNCTION__ << TEXT;
00013 #else
00014 #define ENTER(LEVEL, TEXT)
00015 #endif
00016 
00017 namespace seemicro
00018 {
00019 
00020 // see controller.h
00021 extern int DEBUGLEVEL;
00022 
00031 class RecognitionModule
00032 {
00033 public:
00040   bool paramChanged;
00041 
00048   bool outputChanged;
00049 
00053   long timeForFrame, timeForKeyFrame;
00054 
00055   RecognitionModule()
00056   {
00057     paramChanged = false;
00058     outputChanged = true;
00059   }
00060 
00066   virtual ~RecognitionModule() { };
00067 
00071   virtual void processFrame(myrect *ROI=NULL)
00072   {
00073     paramChanged = false;
00074   };
00075 
00076   virtual void processKeyFrame(void)
00077   {
00078 #ifdef DEBUG
00079     if(DEBUGLEVEL>=3) cerr << "RecognitionModule::processKeyFrame()\n";
00080 #endif
00081     paramChanged = false;
00082   };
00083 
00084   void registerMe(std::list<RecognitionModule*>& l)
00085   {
00086 #ifdef DEBUG
00087     if(DEBUGLEVEL>=2) cerr << "Registering this...";
00088 #endif
00089     l.push_back(this);
00090   }
00091 
00092   void unregisterMe(std::list<RecognitionModule*>& l)
00093   {
00094 #ifdef DEBUG
00095     if(DEBUGLEVEL>=2) cerr << "Unregistering this...";
00096 #endif
00097     l.remove(this);
00098   }
00099 
00100 };
00101 
00102 }
00103 
00104 #endif // RECOGNITIONMODULE_H
00105 

Erzeugt am Sun Oct 3 12:52:48 2004 für seemicro von doxygen 1.3.2