00001 // $Id: TTULogicUnit.h,v 1.5 2009/08/09 11:11:36 aosorio Exp $ 00002 #ifndef TTULOGICUNIT_H 00003 #define TTULOGICUNIT_H 1 00004 00005 // Include files 00006 #include "L1Trigger/RPCTechnicalTrigger/interface/LogicTool.h" 00007 #include "L1Trigger/RPCTechnicalTrigger/interface/RPCLogicUnit.h" 00008 #include "L1Trigger/RPCTechnicalTrigger/interface/TTULogic.h" 00009 #include "L1Trigger/RPCTechnicalTrigger/interface/TTUInput.h" 00010 00011 #include "CondFormats/RPCObjects/interface/TTUBoardSpecs.h" 00012 00013 #include <bitset> 00014 00022 class TTULogicUnit : public RPCLogicUnit { 00023 public: 00025 TTULogicUnit( ); 00026 00027 TTULogicUnit( const char * ); 00028 00029 virtual ~TTULogicUnit( ); 00030 00031 bool initialise(); 00032 00033 void setlogic( const char * ); 00034 00035 void setBoardSpecs( const TTUBoardSpecs::TTUBoardConfig & ); 00036 00037 void run( const TTUInput & ); 00038 00039 void run( const TTUInput & , int ); 00040 00041 bool isTriggered() { 00042 return m_logic->m_triggersignal; 00043 }; 00044 00045 protected: 00046 00047 private: 00048 00049 std::string m_logtype; 00050 00051 TTULogic * m_logic; 00052 00053 LogicTool<TTULogic> * m_logtool; 00054 00055 bool m_debug; 00056 00057 }; 00058 #endif // TTUPAC_H