00001 #ifndef _MEDSCANMODULE_H
00002 #define _MEDSCANMODULE_H
00003
00004 #include <OpenTracker/OpenTracker.h>
00005 #include <OpenTracker/dllinclude.h>
00006
00007 #include <vector>
00008
00009 #include "MedScanSource.h"
00010 #include "MedScanSink.h"
00011
00012
00013
00014 namespace ot {
00015
00016 class OPENTRACKER_API MedScanModule : public ThreadModule, public NodeFactory
00017 {
00018
00019
00020 protected:
00021
00022
00025 int stop;
00026
00027
00028
00029 private:
00030 int command_fd;
00031 std::string service_options;
00032 int maxBodyNumber;
00033
00034
00035 protected:
00038 void run();
00039
00040
00041 public:
00042 NodeVector sources;
00043 NodeVector sinks;
00044
00045
00047 MedScanModule();
00048
00050 virtual ~MedScanModule();
00051
00059 virtual Node * createNode( const std::string& name, StringTable& attributes);
00060
00061
00065 virtual void start();
00066
00069 virtual void close();
00070
00075 virtual void pushEvent();
00076
00077
00078
00085 virtual void init(StringTable& attributes, ConfigNode * localTree);
00086
00087 };
00088 OT_MODULE(MedScanModule);
00089 }
00090
00091
00092 #endif