CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Static Private Attributes
FEDNumbering Class Reference

#include <FEDNumbering.h>

Public Types

enum  {
  NOT_A_FEDID = -1, MAXFEDID = 1023, MINSiPixelFEDID = 0, MAXSiPixelFEDID = 39,
  MINSiStripFEDID = 50, MAXSiStripFEDID = 489, MINPreShowerFEDID = 520, MAXPreShowerFEDID = 575,
  MINECALFEDID = 600, MAXECALFEDID = 670, MINCASTORFEDID = 690, MAXCASTORFEDID = 693,
  MINHCALFEDID = 700, MAXHCALFEDID = 731, MINLUMISCALERSFEDID = 735, MAXLUMISCALERSFEDID = 735,
  MINCSCFEDID = 750, MAXCSCFEDID = 757, MINCSCTFFEDID = 760, MAXCSCTFFEDID = 760,
  MINDTFEDID = 770, MAXDTFEDID = 779, MINDTTFFEDID = 780, MAXDTTFFEDID = 780,
  MINRPCFEDID = 790, MAXRPCFEDID = 795, MINTriggerGTPFEDID = 812, MAXTriggerGTPFEDID = 813,
  MINTriggerEGTPFEDID = 814, MAXTriggerEGTPFEDID = 815, MINTriggerGCTFEDID = 745, MAXTriggerGCTFEDID = 749,
  MINTriggerLTCFEDID = 816, MAXTriggerLTCFEDID = 824, MINTriggerLTCmtccFEDID = 815, MAXTriggerLTCmtccFEDID = 815,
  MINTriggerLTCTriggerFEDID = 816, MAXTriggerLTCTriggerFEDID = 816, MINTriggerLTCHCALFEDID = 817, MAXTriggerLTCHCALFEDID = 817,
  MINTriggerLTCSiStripFEDID = 818, MAXTriggerLTCSiStripFEDID = 818, MINTriggerLTCECALFEDID = 819, MAXTriggerLTCECALFEDID = 819,
  MINTriggerLTCTotemCastorFEDID = 820, MAXTriggerLTCTotemCastorFEDID = 820, MINTriggerLTCRPCFEDID = 821, MAXTriggerLTCRPCFEDID = 821,
  MINTriggerLTCCSCFEDID = 822, MAXTriggerLTCCSCFEDID = 822, MINTriggerLTCDTFEDID = 823, MAXTriggerLTCDTFEDID = 823,
  MINTriggerLTCSiPixelFEDID = 824, MAXTriggerLTCSiPixelFEDID = 824, MINCSCDDUFEDID = 830, MAXCSCDDUFEDID = 869,
  MINCSCContingencyFEDID = 880, MAXCSCContingencyFEDID = 887, MINCSCTFSPFEDID = 890, MAXCSCTFSPFEDID = 901,
  MINDAQeFEDFEDID = 902, MAXDAQeFEDFEDID = 931, MINDAQmFEDFEDID = 1023, MAXDAQmFEDFEDID = 1023
}
 

Public Member Functions

virtual ~FEDNumbering ()
 

Static Public Member Functions

static const std::string & fromDet (int)
 
static void init ()
 
static bool inRange (int)
 
static bool inRangeNoGT (int)
 
static int lastFEDId ()
 

Static Private Attributes

static std::vector< std::string > from_
 
static bool * in_ = new bool[1024]
 
static bool init_ = true
 

Detailed Description

This class holds the fed numbering scheme for the CMS geometry. No two feds should have the same id. Each subdetector has a reserved range. Gaps between ranges give flexibility to the numbering.

$Log

Author
G. Bruno - CERN, EP Division

Definition at line 18 of file FEDNumbering.h.

Member Enumeration Documentation

anonymous enum
Enumerator
NOT_A_FEDID 
MAXFEDID 
MINSiPixelFEDID 
MAXSiPixelFEDID 
MINSiStripFEDID 
MAXSiStripFEDID 
MINPreShowerFEDID 
MAXPreShowerFEDID 
MINECALFEDID 
MAXECALFEDID 
MINCASTORFEDID 
MAXCASTORFEDID 
MINHCALFEDID 
MAXHCALFEDID 
MINLUMISCALERSFEDID 
MAXLUMISCALERSFEDID 
MINCSCFEDID 
MAXCSCFEDID 
MINCSCTFFEDID 
MAXCSCTFFEDID 
MINDTFEDID 
MAXDTFEDID 
MINDTTFFEDID 
MAXDTTFFEDID 
MINRPCFEDID 
MAXRPCFEDID 
MINTriggerGTPFEDID 
MAXTriggerGTPFEDID 
MINTriggerEGTPFEDID 
MAXTriggerEGTPFEDID 
MINTriggerGCTFEDID 
MAXTriggerGCTFEDID 
MINTriggerLTCFEDID 
MAXTriggerLTCFEDID 
MINTriggerLTCmtccFEDID 
MAXTriggerLTCmtccFEDID 
MINTriggerLTCTriggerFEDID 
MAXTriggerLTCTriggerFEDID 
MINTriggerLTCHCALFEDID 
MAXTriggerLTCHCALFEDID 
MINTriggerLTCSiStripFEDID 
MAXTriggerLTCSiStripFEDID 
MINTriggerLTCECALFEDID 
MAXTriggerLTCECALFEDID 
MINTriggerLTCTotemCastorFEDID 
MAXTriggerLTCTotemCastorFEDID 
MINTriggerLTCRPCFEDID 
MAXTriggerLTCRPCFEDID 
MINTriggerLTCCSCFEDID 
MAXTriggerLTCCSCFEDID 
MINTriggerLTCDTFEDID 
MAXTriggerLTCDTFEDID 
MINTriggerLTCSiPixelFEDID 
MAXTriggerLTCSiPixelFEDID 
MINCSCDDUFEDID 
MAXCSCDDUFEDID 
MINCSCContingencyFEDID 
MAXCSCContingencyFEDID 
MINCSCTFSPFEDID 
MAXCSCTFSPFEDID 
MINDAQeFEDFEDID 
MAXDAQeFEDFEDID 
MINDAQmFEDFEDID 
MAXDAQmFEDFEDID 

Definition at line 34 of file FEDNumbering.h.

34  {
35  NOT_A_FEDID = -1,
36  MAXFEDID = 1023, // 10 bits
37  MINSiPixelFEDID = 0,
38  MAXSiPixelFEDID = 39,
39  MINSiStripFEDID = 50,
40  MAXSiStripFEDID = 489,
41  MINPreShowerFEDID = 520,
42  MAXPreShowerFEDID = 575,
43  MINECALFEDID = 600,
44  MAXECALFEDID = 670,
45  MINCASTORFEDID = 690,
46  MAXCASTORFEDID = 693,
47  MINHCALFEDID = 700,
48  MAXHCALFEDID = 731,
49  MINLUMISCALERSFEDID = 735,
50  MAXLUMISCALERSFEDID = 735,
51  MINCSCFEDID = 750,
52  MAXCSCFEDID = 757,
53  MINCSCTFFEDID = 760,
54  MAXCSCTFFEDID = 760,
55  MINDTFEDID = 770,
56  MAXDTFEDID = 779,
57  MINDTTFFEDID = 780,
58  MAXDTTFFEDID = 780,
59  MINRPCFEDID = 790,
60  MAXRPCFEDID = 795,
61  MINTriggerGTPFEDID = 812,
62  MAXTriggerGTPFEDID = 813,
63  MINTriggerEGTPFEDID = 814,
64  MAXTriggerEGTPFEDID = 815,
65  MINTriggerGCTFEDID = 745,
66  MAXTriggerGCTFEDID = 749,
67  MINTriggerLTCFEDID = 816,
68  MAXTriggerLTCFEDID = 824,
89  MINCSCDDUFEDID = 830,
90  MAXCSCDDUFEDID = 869,
93  MINCSCTFSPFEDID = 890,
94  MAXCSCTFSPFEDID = 901,
95  MINDAQeFEDFEDID = 902,
96  MAXDAQeFEDFEDID = 931,
97  MINDAQmFEDFEDID = 1023,
98  MAXDAQmFEDFEDID = 1023
99  };

Constructor & Destructor Documentation

virtual FEDNumbering::~FEDNumbering ( )
inlinevirtual

Definition at line 23 of file FEDNumbering.h.

23 {};

Member Function Documentation

string const & FEDNumbering::fromDet ( int  i)
static

Definition at line 155 of file FEDNumbering.cc.

References i, and init.

156 {
157  if(init_) init();
158  return from_[i];
159 }
int i
Definition: DBlmapReader.cc:9
static void init()
Definition: FEDNumbering.cc:23
static std::vector< std::string > from_
Definition: FEDNumbering.h:101
static bool init_
Definition: FEDNumbering.h:103
void FEDNumbering::init ( void  )
static

Definition at line 23 of file FEDNumbering.cc.

References i.

24 {
25  int i = 0;
26  for(i=0; i< lastFEDId(); i++)
27  in_[i] = false;
28  for(i=MINSiPixelFEDID; i<=MAXSiPixelFEDID; i++)
29  {
30  in_[i] = true;
31  from_[i] = "SiPixel";
32  }
33  for(i=MINSiStripFEDID; i<=MAXSiStripFEDID; i++)
34  {
35  in_[i] = true;
36  from_[i] = "SiStrip";
37  }
38  for(i=MINPreShowerFEDID; i<=MAXPreShowerFEDID; i++)
39  {
40  in_[i] = true;
41  from_[i] = "PreShower";
42  }
43  for(i=MINECALFEDID; i<=MAXECALFEDID; i++)
44  {
45  in_[i] = true;
46  from_[i] = "Ecal";
47  }
48  for(i=MINCASTORFEDID; i<=MAXCASTORFEDID; i++)
49  {
50  in_[i] = true;
51  from_[i] = "Castor";
52  }
53  for(i=MINHCALFEDID; i<=MAXHCALFEDID; i++)
54  {
55  in_[i] = true;
56  from_[i] = "Hcal";
57  }
59  {
60  in_[i] = true;
61  from_[i] = "LumiScalers";
62  }
63  for(i=MINCSCFEDID; i<=MAXCSCFEDID; i++)
64  {
65  in_[i] = true;
66  from_[i] = "CSC";
67  }
68  for(i=MINCSCTFFEDID; i<=MAXCSCTFFEDID; i++)
69  {
70  in_[i] = true;
71  from_[i] = "CSCTF";
72  }
73  for(i=MINDTFEDID; i<=MAXDTFEDID; i++)
74  {
75  in_[i] = true;
76  from_[i] = "DT";
77  }
78  for(i=MINDTTFFEDID; i<=MAXDTTFFEDID; i++)
79  {
80  in_[i] = true;
81  from_[i] = "DTTF";
82  }
83  for(i=MINRPCFEDID; i<=MAXRPCFEDID; i++)
84  {
85  in_[i] = true;
86  from_[i] = "RPC";
87  }
89  {
90  in_[i] = true;
91  from_[i] = "TriggerGTP";
92  }
94  {
95  in_[i] = true;
96  from_[i] = "TriggerEGTP";
97  }
99  {
100  in_[i] = true;
101  from_[i] = "TriggerGCT";
102  }
103  for(i=MINTriggerLTCFEDID; i<=MAXTriggerLTCFEDID; i++)
104  {
105  in_[i] = true;
106  from_[i] = "TriggerLTC";
107  }
109  {
110  in_[i] = true;
111  from_[i] = "TriggerLTCmtcc";
112  }
113  for(i=MINCSCDDUFEDID; i<=MAXCSCDDUFEDID; i++)
114  {
115  in_[i] = true;
116  from_[i] = "CSCDDU";
117  }
119  {
120  in_[i] = true;
121  from_[i] = "CSCContingency";
122  }
123  for(i=MINCSCTFSPFEDID; i<=MAXCSCTFSPFEDID; i++)
124  {
125  in_[i] = true;
126  from_[i] = "CSCTFSP";
127  }
128  for(i=MINDAQeFEDFEDID; i<=MAXDAQeFEDFEDID; i++)
129  {
130  in_[i] = true;
131  from_[i] = "DAQeFED";
132  }
133  for(i=MINDAQmFEDFEDID; i<=MAXDAQmFEDFEDID; i++)
134  {
135  in_[i] = true;
136  from_[i] = "DAQmFED";
137  }
138 
139 
140  init_ = false;
141 }
int i
Definition: DBlmapReader.cc:9
static bool * in_
Definition: FEDNumbering.h:102
static int lastFEDId()
Definition: FEDNumbering.cc:19
static std::vector< std::string > from_
Definition: FEDNumbering.h:101
static bool init_
Definition: FEDNumbering.h:103
bool FEDNumbering::inRange ( int  i)
static

Definition at line 143 of file FEDNumbering.cc.

References i, and init.

Referenced by evf::BU::enabling(), evf::ResourceChecker::findFEDs(), MatacqProducer::getCalibTriggerType(), LaserSorter::getDetailedTriggerType(), MatacqProducer::getOrbitId(), and LmfSource::readEventWithinFile().

144 {
145  if(init_) init();
146  return in_[i];
147 }
int i
Definition: DBlmapReader.cc:9
static void init()
Definition: FEDNumbering.cc:23
static bool * in_
Definition: FEDNumbering.h:102
static bool init_
Definition: FEDNumbering.h:103
bool FEDNumbering::inRangeNoGT ( int  i)
static

Definition at line 148 of file FEDNumbering.cc.

References i, and init.

Referenced by evf::BU::enabling().

int FEDNumbering::lastFEDId ( )
static

Member Data Documentation

vector< string > FEDNumbering::from_
staticprivate

Definition at line 101 of file FEDNumbering.h.

bool * FEDNumbering::in_ = new bool[1024]
staticprivate

Definition at line 102 of file FEDNumbering.h.

bool FEDNumbering::init_ = true
staticprivate

Definition at line 103 of file FEDNumbering.h.