00001
00010 #ifndef ESC_STEERING_H
00011 #define ESC_STEERING_H
00012
00013 #include "efhlt/Interface.h"
00014 #include "ESController/Config.h"
00015 #include <map>
00016 #include <string>
00017
00018
00019 #include "GaudiKernel/IInterface.h"
00020 #include "GaudiKernel/IEventProcessor.h"
00021
00022 namespace efpsc {
00023
00024 class SC : public efhlt::Interface
00025 {
00026 public:
00030 SC() ;
00031
00035 virtual ~SC() ;
00036
00045 virtual bool configure (const std::string& config);
00046
00050 virtual bool unconfigure (void);
00051
00052 virtual bool prepareForRun(int run_number);
00053
00059 virtual bool process (
00060 const uint32_t *&feStore,
00061 const uint32_t *&sdStore,
00062 std::string &efDecision_s,
00063 std::vector<uint32_t> &efBitPattern);
00064
00065 private:
00066
00067 IEventProcessor *m_eventLoopMgr ;
00068
00069 private:
00070 efpsc::Config* m_config;
00071
00072 bool m_isCreated;
00073 int m_outLev;
00074
00075 IInterface* m_pesaAppMgr;
00076 std::string m_nameEventLoopMgr;
00077 };
00078 }
00079
00080 #endif