Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:02:21

0001 /**
0002  * \class GlobalStableParameters
0003  * 
0004  * 
0005  * Description: L1 GT stable parameters.  
0006  *
0007  * Implementation:
0008  *    <TODO: enter implementation details>
0009  *   
0010  * \author: Vasile Mihai Ghete - HEPHY Vienna
0011  * 
0012  * $Date$
0013  * $Revision$
0014  *
0015  */
0016 
0017 // this class header
0018 #include "CondFormats/L1TObjects/interface/GlobalStableParameters.h"
0019 
0020 // system include files
0021 
0022 #include <iomanip>
0023 
0024 // user include files
0025 //   base class
0026 
0027 // forward declarations
0028 
0029 // constructor
0030 GlobalStableParameters::GlobalStableParameters() {
0031   // empty
0032 }
0033 
0034 // destructor
0035 GlobalStableParameters::~GlobalStableParameters() {
0036   // empty
0037 }
0038 
0039 // set the number of physics trigger algorithms
0040 void GlobalStableParameters::setGtNumberPhysTriggers(const unsigned int& numberPhysTriggersValue) {
0041   m_numberPhysTriggers = numberPhysTriggersValue;
0042 }
0043 
0044 // set the additional number of physics trigger algorithms
0045 void GlobalStableParameters::setGtNumberPhysTriggersExtended(const unsigned int& numberPhysTriggersExtendedValue) {
0046   m_numberPhysTriggersExtended = numberPhysTriggersExtendedValue;
0047 }
0048 
0049 // set the number of technical triggers
0050 void GlobalStableParameters::setGtNumberTechnicalTriggers(const unsigned int& numberTechnicalTriggersValue) {
0051   m_numberTechnicalTriggers = numberTechnicalTriggersValue;
0052 }
0053 
0054 // set the number of L1 muons received by GT
0055 void GlobalStableParameters::setGtNumberL1Mu(const unsigned int& numberL1MuValue) { m_numberL1Mu = numberL1MuValue; }
0056 
0057 //  set the number of L1 e/gamma objects received by GT
0058 void GlobalStableParameters::setGtNumberL1NoIsoEG(const unsigned int& numberL1NoIsoEGValue) {
0059   m_numberL1NoIsoEG = numberL1NoIsoEGValue;
0060 }
0061 
0062 //  set the number of L1 isolated e/gamma objects received by GT
0063 void GlobalStableParameters::setGtNumberL1IsoEG(const unsigned int& numberL1IsoEGValue) {
0064   m_numberL1IsoEG = numberL1IsoEGValue;
0065 }
0066 
0067 // set the number of L1 central jets received by GT
0068 void GlobalStableParameters::setGtNumberL1CenJet(const unsigned int& numberL1CenJetValue) {
0069   m_numberL1CenJet = numberL1CenJetValue;
0070 }
0071 
0072 // set the number of L1 forward jets received by GT
0073 void GlobalStableParameters::setGtNumberL1ForJet(const unsigned int& numberL1ForJetValue) {
0074   m_numberL1ForJet = numberL1ForJetValue;
0075 }
0076 
0077 // set the number of L1 tau jets received by GT
0078 void GlobalStableParameters::setGtNumberL1TauJet(const unsigned int& numberL1TauJetValue) {
0079   m_numberL1TauJet = numberL1TauJetValue;
0080 }
0081 
0082 // set the number of L1 jet counts received by GT
0083 void GlobalStableParameters::setGtNumberL1JetCounts(const unsigned int& numberL1JetCountsValue) {
0084   m_numberL1JetCounts = numberL1JetCountsValue;
0085 }
0086 
0087 // hardware stuff
0088 
0089 // set the number of condition chips in GTL
0090 void GlobalStableParameters::setGtNumberConditionChips(const unsigned int& numberConditionChipsValue) {
0091   m_numberConditionChips = numberConditionChipsValue;
0092 }
0093 
0094 // set the number of pins on the GTL condition chips
0095 void GlobalStableParameters::setGtPinsOnConditionChip(const unsigned int& pinsOnConditionChipValue) {
0096   m_pinsOnConditionChip = pinsOnConditionChipValue;
0097 }
0098 
0099 // set the correspondence "condition chip - GTL algorithm word"
0100 // in the hardware
0101 void GlobalStableParameters::setGtOrderConditionChip(const std::vector<int>& orderConditionChipValue) {
0102   m_orderConditionChip = orderConditionChipValue;
0103 }
0104 
0105 // set the number of PSB boards in GT
0106 void GlobalStableParameters::setGtNumberPsbBoards(const int& numberPsbBoardsValue) {
0107   m_numberPsbBoards = numberPsbBoardsValue;
0108 }
0109 
0110 //   set the number of bits for eta of calorimeter objects
0111 void GlobalStableParameters::setGtIfCaloEtaNumberBits(const unsigned int& ifCaloEtaNumberBitsValue) {
0112   m_ifCaloEtaNumberBits = ifCaloEtaNumberBitsValue;
0113 }
0114 
0115 //   set the number of bits for eta of muon objects
0116 void GlobalStableParameters::setGtIfMuEtaNumberBits(const unsigned int& ifMuEtaNumberBitsValue) {
0117   m_ifMuEtaNumberBits = ifMuEtaNumberBitsValue;
0118 }
0119 
0120 // set WordLength
0121 void GlobalStableParameters::setGtWordLength(const int& wordLengthValue) { m_wordLength = wordLengthValue; }
0122 
0123 // set one UnitLength
0124 void GlobalStableParameters::setGtUnitLength(const int& unitLengthValue) { m_unitLength = unitLengthValue; }
0125 
0126 // print all the L1 GT stable parameters
0127 void GlobalStableParameters::print(std::ostream& myStr) const {
0128   myStr << "\nL1 GT Stable Parameters \n" << std::endl;
0129 
0130   // trigger decision
0131 
0132   // number of physics trigger algorithms
0133   myStr << "\n  Number of physics trigger algorithms =            " << m_numberPhysTriggers << std::endl;
0134 
0135   // additional number of physics trigger algorithms
0136   myStr << "  Additional number of physics trigger algorithms = " << m_numberPhysTriggersExtended << std::endl;
0137 
0138   // number of technical triggers
0139   myStr << "  Number of technical triggers =                    " << m_numberTechnicalTriggers << std::endl;
0140 
0141   // muons
0142   myStr << "\n  Number of muons received by L1 GT =                     " << m_numberL1Mu << std::endl;
0143 
0144   // e/gamma and isolated e/gamma objects
0145   myStr << "  Number of e/gamma objects received by L1 GT =          " << m_numberL1NoIsoEG << std::endl;
0146   myStr << "  Number of isolated e/gamma objects received by L1 GT = " << m_numberL1IsoEG << std::endl;
0147 
0148   // central, forward and tau jets
0149   myStr << "\n  Number of central jets received by L1 GT =             " << m_numberL1CenJet << std::endl;
0150   myStr << "  Number of forward jets received by L1 GT =             " << m_numberL1ForJet << std::endl;
0151   myStr << "  Number of tau jets received by L1 GT =                 " << m_numberL1TauJet << std::endl;
0152 
0153   // jet counts
0154   myStr << "\n  Number of jet counts received by L1 GT =               " << m_numberL1JetCounts << std::endl;
0155 
0156   // hardware
0157 
0158   // number of condition chips
0159   myStr << "\n  Number of condition chips =                        " << m_numberConditionChips << std::endl;
0160 
0161   // number of pins on the GTL condition chips
0162   myStr << "  Number of pins on the GTL condition chips =        " << m_pinsOnConditionChip << std::endl;
0163 
0164   // correspondence "condition chip - GTL algorithm word" in the hardware
0165   // chip 2: 0 - 95;  chip 1: 96 - 128 (191)
0166   myStr << "  Order of condition chips for GTL algorithm word = {";
0167 
0168   for (unsigned int iChip = 0; iChip < m_orderConditionChip.size(); ++iChip) {
0169     myStr << m_orderConditionChip[iChip];
0170     if (iChip != (m_orderConditionChip.size() - 1)) {
0171       myStr << ", ";
0172     }
0173   }
0174 
0175   myStr << "}" << std::endl;
0176 
0177   // number of PSB boards in GT
0178   myStr << "\n  Number of PSB boards in GT = " << m_numberPsbBoards << std::endl;
0179 
0180   // number of bits for eta of calorimeter objects
0181   myStr << "\n  Number of bits for eta of calorimeter objects = " << m_ifCaloEtaNumberBits << std::endl;
0182 
0183   // number of bits for eta of muon objects
0184   myStr << "\n  Number of bits for eta of muon objects = " << m_ifMuEtaNumberBits << std::endl;
0185 
0186   // GT DAQ record organized in words of WordLength bits
0187   myStr << "\n  Word length (bits) for GT records = " << m_wordLength << std::endl;
0188 
0189   // one unit in the word is UnitLength bits
0190   myStr << "  Unit length (bits) for GT records = " << m_unitLength << std::endl;
0191 
0192   myStr << "\n" << std::endl;
0193 }