CMS 3D CMS Logo

RBCChamberORLogic.h
Go to the documentation of this file.
1 #ifndef RBCCHAMBERORLOGIC_H
2 #define RBCCHAMBERORLOGIC_H 1
3 
4 // Include files
5 
8 
9 #include <iostream>
10 #include <vector>
11 #include <map>
12 
13 
27 class RBCChamberORLogic : public RBCLogic {
28 public:
31 
32  ~RBCChamberORLogic( ) override;
33 
34  void process ( const RBCInput & , std::bitset<2> & ) override;
35 
36  void setBoardSpecs( const RBCBoardSpecs::RBCBoardConfig & ) override;
37 
38  std::bitset<6> * getlayersignal(int _idx) override { return & m_layersignal[_idx]; };
39 
40  typedef std::vector<std::string>::iterator itr2names;
41  typedef std::map<std::string,bool>::iterator itr2chambers;
42 
43  void copymap( const std::bitset<15> & );
44 
45  void createmap( const std::bitset<15> & );
46 
47  void reset();
48 
49  bool evaluateLayerOR( const char *, const char * );
50 
51  void setmaxlevel( int _mx ) { m_maxlevel = _mx;};
52 
53  std::bitset<6> * m_layersignal;
54 
55 protected:
56 
57 private:
58 
59  std::vector<std::string> m_rbname;
60 
61  std::map<std::string, bool> m_chamber;
62 
63  int m_maxcb;
64 
66 
67 };
68 #endif // RBCCHAMBERORLOGIC_H
std::vector< std::string >::iterator itr2names
void setmaxlevel(int _mx)
std::map< std::string, bool > m_chamber
std::bitset< 6 > * m_layersignal
RBCChamberORLogic()
Standard constructor.
bool evaluateLayerOR(const char *, const char *)
std::bitset< 6 > * getlayersignal(int _idx) override
void createmap(const std::bitset< 15 > &)
~RBCChamberORLogic() override
Destructor.
std::vector< std::string > m_rbname
std::map< std::string, bool >::iterator itr2chambers
void process(const RBCInput &, std::bitset< 2 > &) override
void copymap(const std::bitset< 15 > &)
void setBoardSpecs(const RBCBoardSpecs::RBCBoardConfig &) override