Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Related Pages

Service.h

00001 #ifndef ARCHIVINGSERVICE_H
00002 #define ARCHIVINGSERVICE_H
00003 
00004 #include <memory>
00005 #include <is/isinfo.h>
00006 #include "Archiving.hh"
00007 
00008 namespace SctArchivingService {
00009 
00010 class ArchivingWorkerGroup;
00011     
00012 class ArchivingService : public IPCObject, public Archiving_T_ArchivingService {
00013 public:
00014     ArchivingService();
00015     void run();
00016     static void testDataISCallback(ISCallbackInfo * isc);
00017     static void controlDataISCallback(ISCallbackInfo * isc);
00018     static void rawScanResultISCallback(ISCallbackInfo * isc);
00019     static void fitScanResultISCallback(ISCallbackInfo * isc);
00020     static IPCServer& server();
00021     void archive(ISCallbackInfo * isc);
00022     
00023     static ArchivingService& instance();
00024     static ArchivingService& initialize();
00025 
00026     //IPC methods
00027     virtual ilu_T_CString ping (ArchivingStatus *_status);
00028     
00029 private:
00030     std::auto_ptr<ISInfoReceiver> infoReceiver;     
00031     ArchivingWorkerGroup* group;
00032     static ArchivingService* service;
00033     bool scanSavedFlag;
00034 };
00035 
00036 }
00037 
00038 #endif //#ifndef ARCHIVINGSERVICE_H

Generated on Thu Jul 15 09:50:53 2004 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5