CMS 3D CMS Logo

RBCEmulator.h
Go to the documentation of this file.
1 #ifndef RBCEMULATOR_H
2 #define RBCEMULATOR_H 1
3 
4 // Include files
11 
13 
14 #include <memory>
25 class RBCEmulator {
26 public:
28  RBCEmulator( );
29 
30  RBCEmulator( const char * );
31 
32  RBCEmulator( const char * , const char * );
33 
34  RBCEmulator( const char * , const char * , int, int *);
35 
36  void setSpecifications( const RBCBoardSpecs * );
37 
38  bool initialise();
39 
40  void setid( int , int * );
41 
42  void emulate();
43 
44  void emulate( RBCInput * );
45 
46  void reset();
47 
48  std::bitset<6> * getlayersignal( int idx ) { return m_layersignal[idx];};
49 
50  bool getdecision( int idx ) const { return m_decision[idx];};
51 
52  void printinfo() const;
53 
54  void printlayerinfo() const;
55 
56  const RBCId& rbcinfo() const { return m_rbcinfo;}
57 
58 protected:
59 
60 private:
62 
63  std::unique_ptr<ProcessInputSignal> m_signal;
64 
65  std::unique_ptr<RBCConfiguration> m_rbcconf;
66 
68 
69  std::bitset<6> * m_layersignal[2];
70 
71  std::bitset<2> m_decision;
72 
73  std::array<std::bitset<6>,2> m_layersignalVec;
74 
75  //...
77 
78  bool m_debug;
79 
80 };
81 #endif // RBCEMULATOR_H
void emulate()
Definition: RBCEmulator.cc:81
std::unique_ptr< ProcessInputSignal > m_signal
Definition: RBCEmulator.h:63
void printinfo() const
Definition: RBCEmulator.cc:156
void printlayerinfo() const
Definition: RBCEmulator.cc:166
bool getdecision(int idx) const
Definition: RBCEmulator.h:50
bool initialise()
Definition: RBCEmulator.cc:61
std::unique_ptr< RBCConfiguration > m_rbcconf
Definition: RBCEmulator.h:65
std::bitset< 6 > * getlayersignal(int idx)
Definition: RBCEmulator.h:48
RBCEmulator()
Standard constructor.
Definition: RBCEmulator.cc:18
Definition: RBCId.h:16
std::string m_logtype
Definition: RBCEmulator.h:76
std::bitset< 6 > * m_layersignal[2]
Definition: RBCEmulator.h:69
bool m_debug
Definition: RBCEmulator.h:78
RBCInput m_input
Definition: RBCEmulator.h:67
const RBCId & rbcinfo() const
Definition: RBCEmulator.h:56
std::bitset< 2 > m_decision
Definition: RBCEmulator.h:71
void reset()
Definition: RBCEmulator.cc:147
std::array< std::bitset< 6 >, 2 > m_layersignalVec
Definition: RBCEmulator.h:73
RBCId m_rbcinfo
Definition: RBCEmulator.h:61
void setid(int, int *)
Definition: RBCEmulator.cc:76
void setSpecifications(const RBCBoardSpecs *)
Definition: RBCEmulator.cc:54