File indexing completed on 2024-04-06 12:21:38
0001 #ifndef INTERFACE_RPCDATA_H
0002 #define INTERFACE_RPCDATA_H 1
0003
0004
0005 #include "L1Trigger/RPCTechnicalTrigger/interface/RBCInput.h"
0006
0007 #include <cstdlib>
0008 #include <iostream>
0009 #include <fstream>
0010 #include <ios>
0011 #include <cmath>
0012 #include <map>
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 namespace l1trigger {
0024 class Counters {
0025 public:
0026 explicit Counters(int);
0027
0028 void incrementSector(int);
0029
0030 void printSummary() const;
0031
0032 void evalCounters();
0033
0034 int m_wheelid;
0035 int m_nearSide;
0036 int m_farSide;
0037 int m_wheel;
0038 std::map<int, int> m_sector;
0039 };
0040 }
0041
0042 class RPCData {
0043 public:
0044
0045 RPCData();
0046 ~RPCData() = default;
0047
0048 int m_wheel;
0049 std::array<int, 6> m_sec1;
0050 std::array<int, 6> m_sec2;
0051 std::array<RBCInput, 6> m_orsignals;
0052
0053 friend std::istream &operator>>(std::istream &, RPCData &);
0054 friend std::ostream &operator<<(std::ostream &, RPCData const &);
0055
0056 int wheelIdx() const
0057 {
0058 return (m_wheel + 2);
0059 }
0060
0061 protected:
0062 private:
0063 };
0064 #endif