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 > testerDccTestSrpIds_
 
std::vector< int > testerSrpEmuSrpIds_
 
std::vector< int > testerSrpTestSrpIds_
 
std::vector< int > testerTccEmuSrpIds_
 

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::EcalSRSettings ( )

Constructs an EcalSRSettings

Definition at line 12 of file EcalSRSettings.cc.

◆ ~EcalSRSettings()

virtual EcalSRSettings::~EcalSRSettings ( )
inlinevirtual

Destructor

Definition at line 38 of file EcalSRSettings.h.

38 {};

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

◆ cond::serialization::access

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

Definition at line 220 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 213 of file EcalSRSettings.h.

Referenced by 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 218 of file EcalSRSettings.h.

Referenced by 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 208 of file EcalSRSettings.h.

Referenced by 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 203 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 181 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 99 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().

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

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

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

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

◆ 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 80 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().

◆ eeDccAdcToGeV_

float EcalSRSettings::eeDccAdcToGeV_

◆ nDccs_

const int EcalSRSettings::nDccs_ = 54
static

Definition at line 48 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::importSrpConfigFile().

◆ nSrps_

const int EcalSRSettings::nSrps_ = 12
static

Definition at line 47 of file EcalSRSettings.h.

Referenced by EcalSRCondTools::importSrpConfigFile().

◆ nTccs_

const int EcalSRSettings::nTccs_ = 108
static

Definition at line 49 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 185 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 131 of file EcalSRSettings.h.

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

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

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

◆ 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 177 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 189 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 111 of file EcalSRSettings.h.

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

◆ 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 172 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 194 of file EcalSRSettings.h.

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

EcalSRSettings::bxGlobalOffset_
short bxGlobalOffset_
Definition: EcalSRSettings.h:208
EcalSRSettings::ebDccAdcToGeV_
float ebDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EB.
Definition: EcalSRSettings.h:83
EcalSRSettings::eeDccAdcToGeV_
float eeDccAdcToGeV_
ADC to GeV conversion factor used in ZS filter for EE.
Definition: EcalSRSettings.h:85
EcalSRSettings::automaticMasks_
int automaticMasks_
Definition: EcalSRSettings.h:213
EcalSRSettings::automaticSrpSelect_
int automaticSrpSelect_
Definition: EcalSRSettings.h:218