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 #include <array>
13 
27 class RBCChamberORLogic : public RBCLogic {
28 public:
31 
32  void process(const RBCInput &, std::bitset<2> &) override;
33 
34  void setBoardSpecs(const RBCBoardSpecs::RBCBoardConfig &) override;
35 
36  std::bitset<6> *getlayersignal(int _idx) override { return &m_layersignal[_idx]; };
37 
38  typedef std::vector<std::string>::iterator itr2names;
39  typedef std::map<std::string, bool>::iterator itr2chambers;
40 
41  void copymap(const std::bitset<15> &);
42 
43  void createmap(const std::bitset<15> &);
44 
45  void reset();
46 
47  bool evaluateLayerOR(const char *, const char *);
48 
49  void setmaxlevel(int _mx) { m_maxlevel = _mx; };
50 
51  std::array<std::bitset<6>, 2> m_layersignal;
52 
53 protected:
54 private:
55  std::vector<std::string> m_rbname;
56 
57  std::map<std::string, bool> m_chamber;
58 
59  int m_maxcb;
60 
62 };
63 #endif // RBCCHAMBERORLOGIC_H
RBCLogic
Definition: RBCLogic.h:20
RBCChamberORLogic::m_maxlevel
int m_maxlevel
Definition: RBCChamberORLogic.h:61
RBCChamberORLogic::itr2chambers
std::map< std::string, bool >::iterator itr2chambers
Definition: RBCChamberORLogic.h:39
RBCChamberORLogic::RBCChamberORLogic
RBCChamberORLogic()
Standard constructor.
Definition: RBCChamberORLogic.cc:15
RBCChamberORLogic::m_rbname
std::vector< std::string > m_rbname
Definition: RBCChamberORLogic.h:55
RBCLogic.h
RBCChamberORLogic::process
void process(const RBCInput &, std::bitset< 2 > &) override
Definition: RBCChamberORLogic.cc:44
RBCChamberORLogic::reset
void reset()
Definition: RBCChamberORLogic.cc:151
RBCChamberORLogic
Definition: RBCChamberORLogic.h:27
RBCChamberORLogic::createmap
void createmap(const std::bitset< 15 > &)
Definition: RBCChamberORLogic.cc:135
RBCChamberORLogic::m_layersignal
std::array< std::bitset< 6 >, 2 > m_layersignal
Definition: RBCChamberORLogic.h:49
RBCChamberORLogic::evaluateLayerOR
bool evaluateLayerOR(const char *, const char *)
Definition: RBCChamberORLogic.cc:166
RBCChamberORLogic::itr2names
std::vector< std::string >::iterator itr2names
Definition: RBCChamberORLogic.h:36
RBCChamberORLogic::m_chamber
std::map< std::string, bool > m_chamber
Definition: RBCChamberORLogic.h:57
RBCInput.h
RBCChamberORLogic::getlayersignal
std::bitset< 6 > * getlayersignal(int _idx) override
Definition: RBCChamberORLogic.h:36
RBCChamberORLogic::m_maxcb
int m_maxcb
Definition: RBCChamberORLogic.h:59
RBCChamberORLogic::setmaxlevel
void setmaxlevel(int _mx)
Definition: RBCChamberORLogic.h:49
RBCBoardSpecs::RBCBoardConfig
Definition: RBCBoardSpecs.h:22
RBCChamberORLogic::setBoardSpecs
void setBoardSpecs(const RBCBoardSpecs::RBCBoardConfig &) override
Definition: RBCChamberORLogic.cc:115
RBCInput
Definition: RBCInput.h:22
RBCChamberORLogic::copymap
void copymap(const std::bitset< 15 > &)
Definition: RBCChamberORLogic.cc:119