00001 #ifndef EVENT_LOOP_UNIT_TEST_ALG_H
00002 #define EVENT_LOOP_UNIT_TEST_ALG_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00016
00017
00018
00019 #include <EventLoop/Global.h>
00020
00021 #include <EventLoop/Algorithm.h>
00022 #include <RootCore/Packages.h>
00023
00024 class TBranch;
00025 class TH1;
00026 class TTree;
00027
00028 namespace D3PDReader
00029 {
00030 class Event;
00031 }
00032
00033 namespace EL
00034 {
00035 class UnitTestAlg : public Algorithm
00036 {
00037
00038
00039
00040
00043 public:
00044 void testInvariant () const;
00045
00046
00051 public:
00052 UnitTestAlg (const std::string& branchName = "el_n");
00053
00054
00056 public:
00057 bool makeOutput;
00058
00059
00060
00061
00062
00063
00064
00073 private:
00074 virtual StatusCode setupJob (Job& job) override;
00075
00076
00082 private:
00083 virtual StatusCode changeInput (bool firstFile) override;
00084
00085
00096 private:
00097 virtual StatusCode initialize () override;
00098
00099 private:
00100 virtual StatusCode histInitialize () override;
00101
00102
00107 private:
00108 virtual StatusCode execute () override;
00109
00110
00117 private:
00118 virtual StatusCode fileExecute () override;
00119
00120
00128 private:
00129 virtual StatusCode finalize () override;
00130
00131
00138 private:
00139 virtual StatusCode histFinalize () override;
00140
00141
00142
00143
00144
00145
00146
00148 private:
00149 std::string m_name;
00150
00151 #ifdef ROOTCORE_PACKAGE_D3PDReader
00153 private:
00154 D3PDReader::Event *m_event;
00155 #else
00157 private:
00158 TBranch *m_branch;
00159 #endif
00160
00162 private:
00163 Int_t m_value;
00164
00166 private:
00167
00168
00170 private:
00171 TTree *m_tree;
00172
00174 private:
00175 std::string m_fileName;
00176
00178 private:
00179 bool m_hasInitialize;
00180
00182 private:
00183 bool m_hasHistInitialize;
00184
00185 private:
00186 unsigned m_calls = 0;
00187
00188 #pragma GCC diagnostic push
00189 #pragma GCC diagnostic ignored "-Wpragmas"
00190 #pragma GCC diagnostic ignored "-Wunknown-pragmas"
00191 #pragma GCC diagnostic ignored "-Winconsistent-missing-override"
00192 ClassDef(UnitTestAlg, 1);
00193 #pragma GCC diagnostic pop
00194 };
00195 }
00196
00197 #endif