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 es::Label &iLabel={}) |
template<typename T > | |
auto | setWhatProduced (T *iThis, const char *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(), TotemDAQMappingESSourceXML::ConfigBlock::mappingFileNames, TotemDAQMappingESSourceXML::ConfigBlock::maskFileNames, edm::ESProducer::setWhatProduced(), subSystemName, and TotemDAQMappingESSourceXML::ConfigBlock::validityRange.
|
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, TotemFramePosition::checkXMLAttributeFlag(), Exception, personalPlayback::fp, dqmiolumiharvest::j, TotemFramePosition::setXMLAttribute(), and cms::xerces::toString().
Referenced by ParseTreeDiamond(), ParseTreeRP(), and ParseTreeTotemTiming().
|
inlineprivate |
Definition at line 202 of file TotemDAQMappingESSourceXML.cc.
|
private |
adds the path prefix, if needed
Definition at line 311 of file TotemDAQMappingESSourceXML.cc.
References 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, Exception, mps_fire::i, gpuClustering::id, dqmiolumiharvest::j, Test(), and cms::xerces::toString().
Referenced by ParseTreeRP().
|
inlineprivate |
returns the content of the node
Definition at line 178 of file TotemDAQMappingESSourceXML.cc.
References AlCaHLTBitMon_QueryRunRegistry::string, and cms::xerces::toString().
|
private |
determines node type
Definition at line 802 of file TotemDAQMappingESSourceXML.cc.
References Exception, 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, ChipFramePosition(), DiamondNode(), Exception, GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, gpuClustering::id, dqmiolumiharvest::j, dqmiodumpmetadata::n, nArm, nDiamondCh, nDiamondPlane, nRPPot, nRPStation, nTop, nUnknown, pMapping, gpuVertexFinder::printf(), 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, ChipFramePosition(), Exception, TotemVFATAnalysisMask::fullMask, GetChannels(), GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, gpuClustering::id, dqmiolumiharvest::j, TotemVFATAnalysisMask::maskedChannels, dqmiodumpmetadata::n, nArm, nChannel, nChip, nRPPlane, nRPPot, nRPStation, nTop, nUnknown, pMapping, pMask, gpuVertexFinder::printf(), 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, ChipFramePosition(), Exception, GetNodeType(), mps_fire::i, gpuClustering::id, TotemTimingDetId::ID_NOT_SET, dqmiolumiharvest::j, dqmiodumpmetadata::n, nArm, nRPPot, nRPStation, nSampicBoard, nSampicChannel, nTop, nTotemTimingCh, nTotemTimingPlane, nUnknown, 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, 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, mappingFileNames, 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 SplitLinear::begin, configuration, edm::contains(), currentBlock, currentBlockValid, dataset::end, edm::EventRange::endEventID(), edm::EventID::event(), edm::IOVSyncValue::eventID(), Exception, edm::EventID::luminosityBlock(), edm::eventsetup::EventSetupRecordKey::name(), sistrip::SpyUtilities::range(), edm::EventID::run(), and edm::EventRange::startEventID().
|
inlineprivate |
returns true iff the node is of the given name
Definition at line 170 of file TotemDAQMappingESSourceXML.cc.
References 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.