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 27 of file EcalSRSettings.h.

Constructor & Destructor Documentation

◆ EcalSRSettings()

EcalSRSettings::EcalSRSettings ( )

Constructs an EcalSRSettings

Definition at line 12 of file EcalSRSettings.cc.

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.

◆ ~EcalSRSettings()

virtual EcalSRSettings::~EcalSRSettings ( )
inlinevirtual

Destructor

Definition at line 36 of file EcalSRSettings.h.

36 {}

Member Function Documentation

◆ serialize()

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

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 218 of file EcalSRSettings.h.

◆ cond::serialization::access

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

Definition at line 218 of file EcalSRSettings.h.

Member Data Documentation

◆ actions_

std::vector<int> EcalSRSettings::actions_

◆ automaticMasks_

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 211 of file EcalSRSettings.h.

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

◆ automaticSrpSelect_

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 216 of file EcalSRSettings.h.

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

◆ bxGlobalOffset_

short EcalSRSettings::bxGlobalOffset_

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

Definition at line 206 of file EcalSRSettings.h.

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

◆ bxOffsets_

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 201 of file EcalSRSettings.h.

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

◆ dccMasks_

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 179 of file EcalSRSettings.h.

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

◆ dccNormalizedWeights_

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 97 of file EcalSRSettings.h.

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

◆ deltaEta_

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 56 of file EcalSRSettings.h.

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

◆ deltaPhi_

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 69 of file EcalSRSettings.h.

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

◆ ebDccAdcToGeV_

float EcalSRSettings::ebDccAdcToGeV_

◆ ecalDccZs1stSample_

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 78 of file EcalSRSettings.h.

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

◆ eeDccAdcToGeV_

float EcalSRSettings::eeDccAdcToGeV_

◆ nDccs_

const int EcalSRSettings::nDccs_ = 54
static

Definition at line 46 of file EcalSRSettings.h.

Referenced by ecalsrcondtools::importSrpConfigFile().

◆ nSrps_

const int EcalSRSettings::nSrps_ = 12
static

Definition at line 45 of file EcalSRSettings.h.

Referenced by ecalsrcondtools::importSrpConfigFile().

◆ nTccs_

const int EcalSRSettings::nTccs_ = 108
static

Definition at line 47 of file EcalSRSettings.h.

Referenced by ecalsrcondtools::importSrpConfigFile().

◆ srfMasks_

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 183 of file EcalSRSettings.h.

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

◆ srpHighInterestChannelZS_

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 129 of file EcalSRSettings.h.

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

◆ srpLowInterestChannelZS_

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 119 of file EcalSRSettings.h.

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

◆ srpMasksFromConfig_

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 175 of file EcalSRSettings.h.

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

◆ substitutionSrfs_

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

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

Definition at line 187 of file EcalSRSettings.h.

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

◆ symetricZS_

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 109 of file EcalSRSettings.h.

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

◆ tccMasksFromConfig_

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 170 of file EcalSRSettings.h.

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

◆ testerDccTestSrpIds_

std::vector<int> EcalSRSettings::testerDccTestSrpIds_

◆ testerSrpEmuSrpIds_

std::vector<int> EcalSRSettings::testerSrpEmuSrpIds_

◆ testerSrpTestSrpIds_

std::vector<int> EcalSRSettings::testerSrpTestSrpIds_

◆ testerTccEmuSrpIds_

std::vector<int> EcalSRSettings::testerTccEmuSrpIds_

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

Definition at line 192 of file EcalSRSettings.h.

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