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 153 of file FEDNumbering.cc.

References i, and init.

154 {
155  if(init_) init();
156  return from_[i];
157 }
int i
Definition: DBlmapReader.cc:9
static void init()
Definition: FEDNumbering.cc:21
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 21 of file FEDNumbering.cc.

References i.

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

References i, and init.

Referenced by MatacqProducer::getCalibTriggerType(), LaserSorter::getDetailedTriggerType(), MatacqProducer::getOrbitId(), and LmfSource::readEventWithinFile().

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

Definition at line 146 of file FEDNumbering.cc.

References i, and init.

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.