CMS 3D CMS Logo

Public Types | Public Member Functions | Static Public Member Functions | Static Private Attributes

FEDNumbering Class Reference

#include <FEDNumbering.h>

List of all members.

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.

        {
     NOT_A_FEDID = -1,
     MAXFEDID = 1023, // 10 bits
     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
   };

Constructor & Destructor Documentation

virtual FEDNumbering::~FEDNumbering ( ) [inline, virtual]

Definition at line 23 of file FEDNumbering.h.

{};

Member Function Documentation

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

Definition at line 155 of file FEDNumbering.cc.

References i, and init.

{
  if(init_) init();
  return from_[i];
}  
void FEDNumbering::init ( void  ) [static]

Definition at line 23 of file FEDNumbering.cc.

References i.

{
  int i = 0;
  for(i=0; i< lastFEDId(); i++)
    in_[i] = false;
  for(i=MINSiPixelFEDID; i<=MAXSiPixelFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "SiPixel";
    }
  for(i=MINSiStripFEDID; i<=MAXSiStripFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "SiStrip";
    }
  for(i=MINPreShowerFEDID; i<=MAXPreShowerFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "PreShower";
    }
  for(i=MINECALFEDID; i<=MAXECALFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "Ecal";
    }
  for(i=MINCASTORFEDID; i<=MAXCASTORFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "Castor";
    }
  for(i=MINHCALFEDID; i<=MAXHCALFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "Hcal";
    }
  for(i=MINLUMISCALERSFEDID; i<=MAXLUMISCALERSFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "LumiScalers";
    }
  for(i=MINCSCFEDID; i<=MAXCSCFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "CSC";
    }
  for(i=MINCSCTFFEDID; i<=MAXCSCTFFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "CSCTF";
    }
  for(i=MINDTFEDID; i<=MAXDTFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "DT";
    }
  for(i=MINDTTFFEDID; i<=MAXDTTFFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "DTTF";
    }
  for(i=MINRPCFEDID; i<=MAXRPCFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "RPC";
    }
  for(i=MINTriggerGTPFEDID; i<=MAXTriggerGTPFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "TriggerGTP";
    }
  for(i=MINTriggerEGTPFEDID; i<=MAXTriggerEGTPFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "TriggerEGTP";
    }
  for(i=MINTriggerGCTFEDID; i<=MAXTriggerGCTFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "TriggerGCT";
    }
  for(i=MINTriggerLTCFEDID; i<=MAXTriggerLTCFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "TriggerLTC";
    }
  for(i=MINTriggerLTCmtccFEDID; i<=MAXTriggerLTCmtccFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "TriggerLTCmtcc";
    }
  for(i=MINCSCDDUFEDID; i<=MAXCSCDDUFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "CSCDDU";
    }
  for(i=MINCSCContingencyFEDID; i<=MAXCSCContingencyFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "CSCContingency";
    }
  for(i=MINCSCTFSPFEDID; i<=MAXCSCTFSPFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "CSCTFSP";
    }
  for(i=MINDAQeFEDFEDID; i<=MAXDAQeFEDFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "DAQeFED";
    }
  for(i=MINDAQmFEDFEDID; i<=MAXDAQmFEDFEDID; i++)
    {
      in_[i] = true;
      from_[i] = "DAQmFED";
    }


  init_ = false;
}
bool FEDNumbering::inRange ( int  i) [static]
bool FEDNumbering::inRangeNoGT ( int  i) [static]

Definition at line 148 of file FEDNumbering.cc.

References i, and init.

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

{
  if(init_) init();
  if((i>=MINTriggerGTPFEDID && i<=MAXTriggerGTPFEDID) || (i>=MINTriggerEGTPFEDID && i<=MAXTriggerEGTPFEDID)) return false;
  return in_[i];
}
int FEDNumbering::lastFEDId ( ) [static]

Member Data Documentation

vector< string > FEDNumbering::from_ [static, private]

Definition at line 101 of file FEDNumbering.h.

bool * FEDNumbering::in_ = new bool[1024] [static, private]

Definition at line 102 of file FEDNumbering.h.

bool FEDNumbering::init_ = true [static, private]

Definition at line 103 of file FEDNumbering.h.