CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/L1Trigger/RPCTechnicalTrigger/interface/TTUInput.h

Go to the documentation of this file.
00001 // $Id: TTUInput.h,v 1.9 2012/02/09 13:00:01 eulisse Exp $
00002 #ifndef INTERFACE_TTUINPUT_H 
00003 #define INTERFACE_TTUINPUT_H 1
00004 
00005 // Include files
00006 #include <bitset>
00007 #include <vector>
00008 
00018 class TTUInput {
00019 public: 
00020   
00022   TTUInput( );
00023   
00025   virtual ~TTUInput( );
00026   
00027   TTUInput( const TTUInput & in )
00028   {
00029     m_bx = in.m_bx;
00030     m_wheelId = in.m_wheelId;
00031     m_hasHits = in.m_hasHits;
00032     m_rbcDecision = in.m_rbcDecision;
00033     input_sec = new std::bitset<6>[12];
00034     for(int i=0; i < 12; ++i) 
00035       input_sec[i] = in.input_sec[i];
00036   };
00037   
00038   TTUInput & operator=( const TTUInput & rhs )
00039   {
00040     if (this == &rhs) return (*this);
00041     (*this).m_bx = rhs.m_bx;
00042     (*this).m_wheelId = rhs.m_wheelId;
00043     (*this).m_hasHits = rhs.m_hasHits;
00044     (*this).input_sec = new std::bitset<6>[12];
00045     (*this).m_rbcDecision = rhs.m_rbcDecision;
00046     for(int i=0; i < 12; ++i)
00047       (*this).input_sec[i] = rhs.input_sec[i];
00048     return (*this);
00049   };
00050   
00051   void reset();
00052   
00053   int m_bx;
00054   
00055   int m_wheelId;
00056   
00057   bool m_hasHits;
00058   
00059   std::bitset<6>  * input_sec;
00060   std::bitset<12> m_rbcDecision;
00061   
00062   void mask ( const std::vector<int> & );
00063   void force( const std::vector<int> & );
00064   
00065 protected:
00066   
00067 private:
00068   
00069   bool m_debug;
00070     
00071 };
00072 #endif // INTERFACE_TTUINPUT_H