CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Friends
EcalSRSettings Class Reference

#include <EcalSRSettings.h>

Public Member Functions

 EcalSRSettings ()
 
virtual ~EcalSRSettings ()
 

Public Attributes

std::vector< int > actions_
 
int automaticMasks_
 
int automaticSrpSelect_
 
short bxGlobalOffset_
 
std::vector< short > bxOffsets_
 
std::vector< short > dccMasks_
 
std::vector< std::vector< float > > dccNormalizedWeights_
 
std::vector< int > deltaEta_
 
std::vector< int > deltaPhi_
 
float ebDccAdcToGeV_
 ADC to GeV conversion factor used in ZS filter for EB. More...
 
std::vector< int > ecalDccZs1stSample_
 
float eeDccAdcToGeV_
 ADC to GeV conversion factor used in ZS filter for EE. More...
 
std::vector< short > srfMasks_
 
std::vector< float > srpHighInterestChannelZS_
 
std::vector< float > srpLowInterestChannelZS_
 
std::vector< std::vector< short > > srpMasksFromConfig_
 
std::vector< std::vector< short > > substitutionSrfs_
 
std::vector< int > symetricZS_
 
std::vector< short > tccMasksFromConfig_
 
std::vector< int > testerTccEmuSrpIds_
 
std::vector< int > testerSrpEmuSrpIds_
 
std::vector< int > testerDccTestSrpIds_
 
std::vector< int > testerSrpTestSrpIds_
 

Static Public Attributes

static const int nDccs_ = 54
 
static const int nSrps_ = 12
 
static const int nTccs_ = 108
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Friends

class boost::serialization::access
 
template<typename CondSerializationT , typename Enabled >
struct cond::serialization::access
 

Detailed Description

Class to hold ECAL Selective readout settings. Up to CMSSW release 3.8.X, selective readout emulation settings was done from CMSSW configuration file. From 3.8.X configuration is stored in condition database. Support for configuration from CMSSW configuration file is maintained, for backward compatibility and to provide an easy way to change settings for studies dedicated to seletive readout. The same object is used to stored the online setting of real data.

Tools to manipulate this object can be found in class EcalSRCondTools of package SimCalorimetry/EcalSelectiveReadoutProducer.

Definition at line 29 of file EcalSRSettings.h.

Constructor & Destructor Documentation

EcalSRSettings::EcalSRSettings ( )

Constructs an EcalSRSettings

Definition at line 12 of file EcalSRSettings.cc.

12  :
13  ebDccAdcToGeV_(0.),
14  eeDccAdcToGeV_(0.),
15  bxGlobalOffset_(0),
16  automaticMasks_(0),
18 {}
float ebDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EB.
float eeDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EE.
virtual EcalSRSettings::~EcalSRSettings ( )
inlinevirtual

Destructor

Definition at line 39 of file EcalSRSettings.h.

39 {};

Member Function Documentation

template<class Archive >
void EcalSRSettings::serialize ( Archive &  ar,
const unsigned int  version 
)
private

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Definition at line 222 of file EcalSRSettings.h.

template<typename CondSerializationT , typename Enabled >
friend struct cond::serialization::access
friend

Definition at line 222 of file EcalSRSettings.h.

Member Data Documentation

std::vector<int> EcalSRSettings::actions_
int EcalSRSettings::automaticMasks_

Switch for automatic channel masking. 0: disabled; 1: enabled. Standard configuration: 1. When enabled, if a FED is excluded from the run, the corresponding TCC inputs is automatically masked (overwrites the tccInputMasks).

Definition at line 215 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::analyze(), popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

int EcalSRSettings::automaticSrpSelect_

Switch for automatic SRP card selection. 0: disabled; 1 : enabled.. When enabled, if all the FEDs corresponding to a given SRP is excluded from the run, Then the corresponding SRP card is automatically excluded.

Definition at line 220 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::analyze(), popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

short EcalSRSettings::bxGlobalOffset_

SRP system bunch crossing counter offset. For each card the bxOffseti

Definition at line 210 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::analyze(), popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<short> EcalSRSettings::bxOffsets_

Per SRP card bunch crossing counter offset. This offset is added to the bxGlobalOffset 12 elements: index = (SRP ID - 1)

Definition at line 205 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<short> EcalSRSettings::dccMasks_

Masks for DCC output of SRP cards One element per DCC, that is 54 elements: element i applies to DCC (i+1)

Definition at line 183 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<std::vector<float> > EcalSRSettings::dccNormalizedWeights_

DCC ZS FIR weights: weights are rounded in such way that in Hw representation (weigth*1024 rounded to nearest integer) the sum is null: Each element is a vector of 6 values, the 6 weights If the vector contains... ... 1 element, then the weight set applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 54 elements, then element i applied to DCC (i+1) (FED ID 651+i) ... 75848 elements, then: for i < 61200, element i applies to EB crystal with denseIndex i (see EBDetId::denseIndex()) for i >= 61200, element i applies to EE crystal with denseIndex (i+61200) (see EBDetId::denseIndex())

Definition at line 101 of file EcalSRSettings.h.

Referenced by ecaldqm::SelectiveReadoutTask::beginRun(), popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutProducer::checkValidity(), EcalSelectiveReadoutProducer::checkWeights(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), popcon::EcalSRPHandler::importDccConfigFile(), EcalSRCondTools::importParameterSet(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<int> EcalSRSettings::deltaEta_

Neighbour eta range, neighborhood: (2*deltaEta+1)*(2*deltaPhi+1) In the vector contains:

  • 1 element, then value applies to whole ECAL
  • 2 elements, then element 0 applies to EB, element 1 to EE
  • 12 elements, then element i applied to SRP (i+1) SRP emulation (see SimCalorimetry/EcalSelectiveReadoutProcuders) supports only 1 element mode.

Definition at line 60 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importParameterSet(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<int> EcalSRSettings::deltaPhi_

Neighbouring eta range, neighborhood: (2*deltaEta+1)*(2*deltaPhi+1) If the vector contains... ... 1 element, then value applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 12 elements, then element i applied to SRP (i+1) If the vector contains... ... 1 element, then value applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 12 elements, then element i applied to SRP (i+1) SRP emulation (see SimCalorimetry/EcalSelectiveReadoutProcuders) supports only the single-element mode.

Definition at line 73 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importParameterSet(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

float EcalSRSettings::ebDccAdcToGeV_
std::vector<int> EcalSRSettings::ecalDccZs1stSample_

Index of time sample (staring from 1) the first DCC weights is implied If the vector contains: ... 1 element, then value applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 54 elements, then element i applied to DCC (i+1) (FED ID 651+i) SRP emulation (see SimCalorimetry/EcalSelectiveReadoutProcuders) supports only the single-element mode.

Definition at line 82 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutProducer::checkValidity(), EcalSelectiveReadoutProducer::checkWeights(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), popcon::EcalSRPHandler::importDccConfigFile(), EcalSRCondTools::importParameterSet(), and popcon::EcalSRPHandler::PrintPayload().

float EcalSRSettings::eeDccAdcToGeV_
const int EcalSRSettings::nDccs_ = 54
static

Definition at line 50 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::importSrpConfigFile().

const int EcalSRSettings::nSrps_ = 12
static

Definition at line 49 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::importSrpConfigFile().

const int EcalSRSettings::nTccs_ = 108
static

Definition at line 51 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::importSrpConfigFile().

std::vector<short> EcalSRSettings::srfMasks_

Mask to enable pattern test. Typical value: 0. One element per SRP, that is 12 elements: element i applies to SRP (i+1)

Definition at line 187 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<float> EcalSRSettings::srpHighInterestChannelZS_

ZS energy threshold in GeV to apply to high interest channels of endcap If the vector contains... ... 1 element, then the weight set applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 54 elements, then element i applied to DCC (i+1) (FED ID 651+i) SRP emulation supports only the 2-element mode. Corresponds to srpBarrelLowInterestChannelZS and srpEndcapLowInterestChannelZS of python configuration file parameters

Definition at line 133 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), popcon::EcalSRPHandler::importDccConfigFile(), EcalSRCondTools::importParameterSet(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<float> EcalSRSettings::srpLowInterestChannelZS_

ZS energy threshold in GeV to apply to low interest channels of barrel If the vector contains... ... 1 element, then the weight set applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 54 elements, then element i applied to DCC (i+1) (FED ID 651+i) SRP emulation supports only the 2-element mode. Corresponds to srpBarrelLowInterestChannelZS and srpEndcapLowInterestChannelZS of python configuration file parameters

Definition at line 123 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), popcon::EcalSRPHandler::importDccConfigFile(), EcalSRCondTools::importParameterSet(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<std::vector<short> > EcalSRSettings::srpMasksFromConfig_

Masks for SRP-SRP inputs of SRP cards One element per SRP, that is 12 elements: element i applies to SRP (i+1)

Definition at line 179 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<std::vector<short> > EcalSRSettings::substitutionSrfs_

Substitution flags used in patterm mode indices [iSrp][iFlag]

Definition at line 191 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<int> EcalSRSettings::symetricZS_

Switch to use a symetric zero suppression (cut on absolute value). For studies only, for time being it is not supported by the hardware. having troubles for vector<bool> with coral (3.8.0pre1), using vector<int> instead, 0 means false, a value different than 0 means true. If the vector contains... ... 1 element, then the weight set applies to whole ECAL ... 2 elements, then element 0 applies to EB, element 1 to EE ... 54 elements, then element i applied to DCC (i+1) (FED ID 651+i) SRP emulation supports only 1 element mode. Hardware does not support the symetric ZS, so symetricZS = 0 for real data.

Definition at line 113 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), EcalSelectiveReadoutSuppressor::EcalSelectiveReadoutSuppressor(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importParameterSet(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<short> EcalSRSettings::tccMasksFromConfig_

Masks for TTC inputs of SRP cards One element per TCC, that is 108 elements: element i applies to TCC (i+1)

Definition at line 174 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().

std::vector<int> EcalSRSettings::testerDccTestSrpIds_
std::vector<int> EcalSRSettings::testerSrpEmuSrpIds_
std::vector<int> EcalSRSettings::testerSrpTestSrpIds_
std::vector<int> EcalSRSettings::testerTccEmuSrpIds_

Tester mode configuration 12 elements: index = (SRP ID - 1)

Definition at line 196 of file EcalSRSettings.h.

Referenced by popcon::EcalSRPHandler::ChangePayload(), popcon::EcalSRPHandler::getNewObjects(), EcalSRCondTools::importSrpConfigFile(), and popcon::EcalSRPHandler::PrintPayload().