00001 00002 // 00003 // Class AlephEpioExManager 00004 // 00005 // The specific execution manager in case we use EPIO 00006 // files (ie. standard ALPHA handling) 00007 // It inherits from AlephExManager 00008 // It is a singleton. 00009 // 00010 // Author : G. Dissertori , 30.08.2000 00011 // 00013 00014 #ifndef ALEPHEPIOEXMANAGER_H 00015 #define ALEPHEPIOEXMANAGER_H 00016 00018 // the includes 00020 #include "bos.h" 00021 #include "AlephExManager.h" 00022 #include "AlephDbManager.h" 00023 00025 00026 class AlephEpioExManager : public AlephExManager 00027 { 00028 public: 00029 00030 // declare the AlephExManager base class also as friend. 00031 // Then the constructor can stay protected which avoids multiple 00032 // creation from a client 00033 friend class AlephExManager; 00035 virtual AlephRC initialize(); 00037 virtual AlephRC run(); 00039 virtual AlephRC terminate(); 00040 protected: 00041 00042 // constructor and destructor 00043 AlephEpioExManager(); 00044 virtual ~AlephEpioExManager(); 00045 // some execution routines 00046 // if in batch mode 00047 // loop over databases, runs and events, actually calls next two routines 00048 virtual AlephRC loopAll(); 00049 // reading loop 00050 virtual AlephRC loopAllRead(); 00051 // writing loop 00052 virtual AlephRC loopAllWrite(); 00053 // if in interactive mode 00054 // loop over databases, runs and events, actually calls next two routines 00055 virtual AlephRC loopInter(); 00056 // reading loop 00057 virtual AlephRC loopInterRead(); 00058 // writing loop 00059 virtual AlephRC loopInterWrite(); 00060 }; 00061 00062 #endif