00001 #ifndef EVENT_LOOP_D3PDREADER_SVC_H
00002 #define EVENT_LOOP_D3PDREADER_SVC_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00016
00017
00018
00019 #include <EventLoop/Global.h>
00020
00021 #include <RootCore/Packages.h>
00022
00023 #ifdef ROOTCORE_PACKAGE_D3PDReader
00024
00025 #include <EventLoop/Algorithm.h>
00026
00027 namespace D3PDReader
00028 {
00029 class D3PDReadStats;
00030 class Event;
00031 }
00032
00033 namespace EL
00034 {
00035 class D3PDReaderSvc : public Algorithm
00036 {
00037
00038
00039
00040
00042 public:
00043 static const std::string name;
00044
00045
00048 public:
00049 void testInvariant () const;
00050
00051
00054 public:
00055 D3PDReaderSvc ();
00056
00057
00060 public:
00061 ~D3PDReaderSvc ();
00062
00063
00068 public:
00069 D3PDReader::Event *event () const;
00070
00071
00072
00073
00074
00075
00076
00079 public:
00080 virtual const char *GetName () const override;
00081
00082
00088 private:
00089 virtual StatusCode changeInput (bool firstFile) override;
00090
00091
00096 private:
00097 virtual StatusCode execute () override;
00098
00099
00106 private:
00107 virtual StatusCode finalize () override;
00108
00109
00110
00111
00112
00113
00114
00116 private:
00117 D3PDReader::Event *m_event;
00118
00120 private:
00121 bool m_useStats;
00122
00125 private:
00126 const D3PDReader::D3PDReadStats *m_cacheStats;
00127 private:
00128 unsigned m_cacheMode;
00129 private:
00130 double m_cacheArg;
00131
00132
00133 ClassDef(D3PDReaderSvc, 1);
00134 };
00135 }
00136
00137 #endif
00138
00139 #endif