Loads TotemDAQMapping and TotemAnalysisMask from two XML files. More...
Classes | |
struct | ConfigBlock |
Static Public Attributes | |
static const std::string | tagAnalysisMask = "analysisMask" |
static const std::string | tagArm = "arm" |
Common position tags. More... | |
static const std::string | tagChannel = "channel" |
static const std::string | tagChip1 = "vfat" |
COMMON Chip XML tags. More... | |
static const std::string | tagChip2 = "test_vfat" |
static const std::string | tagDiamondCh = "diamond_channel" |
static const std::string | tagDiamondPlane = "rp_plane_diamond" |
diamond specific tags More... | |
static const std::string | tagRPPlane = "rp_plane" |
static const std::string | tagRPPot = "rp_detector_set" |
static const std::string | tagRPStation = "station" |
RP XML tags. More... | |
static const std::string | tagSampicBoard = "rp_sampic_board" |
totem timing specific tags More... | |
static const std::string | tagSampicCh = "rp_sampic_channel" |
static const std::string | tagTotemTimingCh = "timing_channel" |
static const std::string | tagTotemTimingPlane = "timing_plane" |
static const std::string | tagVFAT = "vfat" |
Protected Member Functions | |
void | setIntervalFor (const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override |
sets infinite validity of this data More... | |
Protected Member Functions inherited from edm::ESProducer | |
template<typename T > | |
auto | setWhatProduced (T *iThis, const char *iLabel) |
template<typename T > | |
auto | setWhatProduced (T *iThis, const es::Label &iLabel={}) |
template<typename T > | |
auto | setWhatProduced (T *iThis, const std::string &iLabel) |
template<typename T , typename TDecorator > | |
auto | setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel={}) |
template<typename T , typename TReturn , typename TRecord > | |
auto | setWhatProduced (T *iThis, TReturn(T ::*iMethod)(const TRecord &), const es::Label &iLabel={}) |
template<typename T , typename TReturn , typename TRecord , typename TArg > | |
ESConsumesCollectorT< TRecord > | setWhatProduced (T *iThis, TReturn(T ::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel={}) |
void | usesResources (std::vector< std::string > const &) |
Protected Member Functions inherited from edm::ESProxyFactoryProducer | |
template<class TFactory > | |
void | registerFactory (std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string()) |
virtual void | registerFactoryWithKey (const EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string()) |
KeyedProxiesVector | registerProxies (const EventSetupRecordKey &, unsigned int iovIndex) override |
Protected Member Functions inherited from edm::eventsetup::DataProxyProvider | |
template<class T > | |
void | usingRecord () |
void | usingRecordWithKey (const EventSetupRecordKey &key) |
Protected Member Functions inherited from edm::EventSetupRecordIntervalFinder | |
template<class T > | |
void | findingRecord () |
void | findingRecordWithKey (const eventsetup::EventSetupRecordKey &) |
Private Types | |
enum | NodeType { nUnknown, nSkip, nTop, nArm, nRPStation, nRPPot, nRPPlane, nDiamondPlane, nChip, nDiamondCh, nChannel, nSampicBoard, nSampicChannel, nTotemTimingPlane, nTotemTimingCh } |
enumeration of XML node types More... | |
enum | ParseType { pMapping, pMask } |
whether to parse a mapping of a mask XML More... | |
Private Member Functions | |
TotemFramePosition | ChipFramePosition (xercesc::DOMNode *chipnode) |
extracts VFAT's DAQ channel from XML attributes More... | |
bool | CommonNode (NodeType type) |
string | CompleteFileName (const string &fn) |
adds the path prefix, if needed More... | |
bool | DiamondNode (NodeType type) |
void | GetChannels (xercesc::DOMNode *n, std::set< unsigned char > &channels) |
string | GetNodeContent (xercesc::DOMNode *parent) |
returns the content of the node More... | |
NodeType | GetNodeType (xercesc::DOMNode *) |
determines node type More... | |
string | GetNodeValue (xercesc::DOMNode *node) |
returns the value of the node More... | |
void | ParseTreeDiamond (ParseType, xercesc::DOMNode *, NodeType, unsigned int parentID, const std::unique_ptr< TotemDAQMapping > &, const std::unique_ptr< TotemAnalysisMask > &) |
recursive method to extract RP-related information from the DOM tree More... | |
void | ParseTreeRP (ParseType, xercesc::DOMNode *, NodeType, unsigned int parentID, const std::unique_ptr< TotemDAQMapping > &, const std::unique_ptr< TotemAnalysisMask > &) |
recursive method to extract RP-related information from the DOM tree More... | |
void | ParseTreeTotemTiming (ParseType, xercesc::DOMNode *, NodeType, unsigned int parentID, const std::unique_ptr< TotemDAQMapping > &, const std::unique_ptr< TotemAnalysisMask > &) |
recursive method to extract RP-related information from the DOM tree More... | |
void | ParseXML (ParseType, const string &file, const std::unique_ptr< TotemDAQMapping > &, const std::unique_ptr< TotemAnalysisMask > &) |
parses XML file More... | |
bool | RPNode (NodeType type) |
bool | Test (xercesc::DOMNode *node, const std::string &name) |
returns true iff the node is of the given name More... | |
bool | TotemTimingNode (NodeType type) |
Private Attributes | |
vector< ConfigBlock > | configuration |
unsigned int | currentBlock |
index of the current block in 'configuration' array More... | |
bool | currentBlockValid |
flag whether the 'currentBlock' index is valid More... | |
std::vector< std::string > | mappingFileNames |
the mapping files More... | |
string | subSystemName |
label of the CTPPS sub-system More... | |
unsigned int | verbosity |
Additional Inherited Members | |
Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider | |
static void | prevalidate (ConfigurationDescriptions &) |
Protected Types inherited from edm::ESProxyFactoryProducer | |
using | EventSetupRecordKey = eventsetup::EventSetupRecordKey |
Protected Types inherited from edm::eventsetup::DataProxyProvider | |
using | KeyedProxiesVector = std::vector< std::pair< DataKey, std::shared_ptr< DataProxy > >> |
Loads TotemDAQMapping and TotemAnalysisMask from two XML files.
Definition at line 52 of file TotemDAQMappingESSourceXML.cc.
|
private |
enumeration of XML node types
Enumerator | |
---|---|
nUnknown | |
nSkip | |
nTop | |
nArm | |
nRPStation | |
nRPPot | |
nRPPlane | |
nDiamondPlane | |
nChip | |
nDiamondCh | |
nChannel | |
nSampicBoard | |
nSampicChannel | |
nTotemTimingPlane | |
nTotemTimingCh |
Definition at line 114 of file TotemDAQMappingESSourceXML.cc.
|
private |
whether to parse a mapping of a mask XML
Enumerator | |
---|---|
pMapping | |
pMask |
Definition at line 133 of file TotemDAQMappingESSourceXML.cc.
TotemDAQMappingESSourceXML::TotemDAQMappingESSourceXML | ( | const edm::ParameterSet & | conf | ) |
Definition at line 245 of file TotemDAQMappingESSourceXML.cc.
References b, configuration, edm::ParameterSet::getParameter(), edm::ESProducer::setWhatProduced(), and subSystemName.
|
override |
Definition at line 307 of file TotemDAQMappingESSourceXML.cc.
|
private |
extracts VFAT's DAQ channel from XML attributes
Definition at line 777 of file TotemDAQMappingESSourceXML.cc.
References a, Exception, personalPlayback::fp, dqmiolumiharvest::j, and cms::xerces::toString().
Referenced by ParseTreeDiamond(), ParseTreeRP(), and ParseTreeTotemTiming().
|
inlineprivate |
|
private |
adds the path prefix, if needed
Definition at line 311 of file TotemDAQMappingESSourceXML.cc.
References personalPlayback::fn, and edm::FileInPath::fullPath().
Referenced by produce().
|
inlineprivate |
Definition at line 192 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeDiamond().
|
private |
Definition at line 845 of file TotemDAQMappingESSourceXML.cc.
References a, ewkTauDQM_cfi::channels, class-composition::children, Exception, mps_fire::i, triggerObjects_cff::id, dqmiolumiharvest::j, dqmiodumpmetadata::n, Test(), and cms::xerces::toString().
Referenced by ParseTreeRP().
|
inlineprivate |
returns the content of the node
Definition at line 178 of file TotemDAQMappingESSourceXML.cc.
References class-composition::parent, AlCaHLTBitMon_QueryRunRegistry::string, and cms::xerces::toString().
|
private |
determines node type
Definition at line 802 of file TotemDAQMappingESSourceXML.cc.
References Exception, dqmiodumpmetadata::n, nArm, nChip, nDiamondCh, nDiamondPlane, nRPPlane, nRPPot, nRPStation, nSampicBoard, nSampicChannel, nSkip, nTotemTimingCh, nTotemTimingPlane, tagArm, tagChip1, tagChip2, tagDiamondCh, tagDiamondPlane, tagRPPlane, tagRPPot, tagRPStation, tagSampicBoard, tagSampicCh, tagTotemTimingCh, tagTotemTimingPlane, Test(), and cms::xerces::toString().
Referenced by ParseTreeDiamond(), ParseTreeRP(), and ParseTreeTotemTiming().
|
inlineprivate |
returns the value of the node
Definition at line 181 of file TotemDAQMappingESSourceXML.cc.
References cms::xerces::toString().
|
private |
recursive method to extract RP-related information from the DOM tree
Definition at line 517 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), DiamondNode(), Exception, GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, triggerObjects_cff::id, dqmiolumiharvest::j, taus_updatedMVAIds_cff::mapping, dqmiodumpmetadata::n, nArm, nDiamondCh, nDiamondPlane, nRPPot, nRPStation, nTop, nUnknown, class-composition::parent, pMapping, TotemSymbID::symbolicID, TotemVFATInfo::symbolicID, and cms::xerces::toString().
Referenced by ParseXML().
|
private |
recursive method to extract RP-related information from the DOM tree
Definition at line 372 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), Exception, TotemVFATAnalysisMask::fullMask, GetChannels(), GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, triggerObjects_cff::id, dqmiolumiharvest::j, taus_updatedMVAIds_cff::mapping, TotemVFATAnalysisMask::maskedChannels, dqmiodumpmetadata::n, nArm, nChannel, nChip, nRPPlane, nRPPot, nRPStation, nTop, nUnknown, class-composition::parent, pMapping, pMask, RPNode(), TotemSymbID::symbolicID, TotemVFATInfo::symbolicID, and cms::xerces::toString().
Referenced by ParseXML().
|
private |
recursive method to extract RP-related information from the DOM tree
Definition at line 643 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), Exception, GetNodeType(), mps_fire::i, triggerObjects_cff::id, TotemTimingDetId::ID_NOT_SET, dqmiolumiharvest::j, taus_updatedMVAIds_cff::mapping, dqmiodumpmetadata::n, nArm, nRPPot, nRPStation, nSampicBoard, nSampicChannel, nTop, nTotemTimingCh, nTotemTimingPlane, nUnknown, class-composition::parent, pMapping, TotemSymbID::symbolicID, TotemVFATInfo::symbolicID, cms::xerces::toString(), and TotemTimingNode().
Referenced by ParseXML().
|
private |
parses XML file
Definition at line 345 of file TotemDAQMappingESSourceXML.cc.
References Exception, geometryDiff::file, taus_updatedMVAIds_cff::mapping, nTop, writedatasetfile::parser, ParseTreeDiamond(), ParseTreeRP(), and ParseTreeTotemTiming().
Referenced by produce().
edm::ESProducts< std::unique_ptr< TotemDAQMapping >, std::unique_ptr< TotemAnalysisMask > > TotemDAQMappingESSourceXML::produce | ( | const TotemReadoutRcd & | ) |
Definition at line 319 of file TotemDAQMappingESSourceXML.cc.
References cms::cuda::assert(), CompleteFileName(), configuration, currentBlock, currentBlockValid, personalPlayback::fn, taus_updatedMVAIds_cff::mapping, mappingFileNames, ctppsRawToDigi_cff::maskFileNames, eostools::move(), ParseXML(), pMapping, pMask, edm::es::products(), cms::concurrency::xercesInitialize(), and cms::concurrency::xercesTerminate().
|
inlineprivate |
Definition at line 188 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeRP().
|
overrideprotectedvirtual |
sets infinite validity of this data
Implements edm::EventSetupRecordIntervalFinder.
Definition at line 264 of file TotemDAQMappingESSourceXML.cc.
References configuration, edm::contains(), currentBlock, currentBlockValid, mps_fire::end, edm::EventID::event(), edm::IOVSyncValue::eventID(), Exception, heavyIonCSV_trainingSettings::idx, crabWrapper::key, FastTimerService_cff::range, and edm::EventID::run().
|
inlineprivate |
returns true iff the node is of the given name
Definition at line 170 of file TotemDAQMappingESSourceXML.cc.
References Skims_PA_cff::name, and cms::xerces::toString().
Referenced by GetChannels(), and GetNodeType().
|
inlineprivate |
|
private |
Definition at line 105 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), setIntervalFor(), showPage.BuildViewer::showResults(), and TotemDAQMappingESSourceXML().
|
private |
index of the current block in 'configuration' array
Definition at line 108 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), and setIntervalFor().
|
private |
flag whether the 'currentBlock' index is valid
Definition at line 111 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), and setIntervalFor().
|
private |
the mapping files
Definition at line 92 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce().
|
private |
label of the CTPPS sub-system
Definition at line 89 of file TotemDAQMappingESSourceXML.cc.
Referenced by TotemDAQMappingESSourceXML().
|
static |
Definition at line 56 of file TotemDAQMappingESSourceXML.cc.
|
static |
Common position tags.
Definition at line 59 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 55 of file TotemDAQMappingESSourceXML.cc.
|
static |
COMMON Chip XML tags.
Definition at line 67 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 68 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 72 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
diamond specific tags
Definition at line 71 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 64 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 63 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
RP XML tags.
Definition at line 62 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
totem timing specific tags
Definition at line 75 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 76 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 77 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 78 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 54 of file TotemDAQMappingESSourceXML.cc.
|
private |
Definition at line 86 of file TotemDAQMappingESSourceXML.cc.