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 | |
ESProducer (const ESProducer &)=delete | |
ESProducer const & | operator= (const ESProducer &)=delete |
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={}) |
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 eventsetup::EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string()) |
void | registerProxies (const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList) override |
override DataProxyProvider method More... | |
Protected Member Functions inherited from edm::eventsetup::DataProxyProvider | |
void | eraseAll (const EventSetupRecordKey &iRecordKey) |
deletes all the Proxies in aStream More... | |
void | invalidateProxies (const EventSetupRecordKey &iRecordKey) |
template<class T > | |
void | usingRecord () |
void | usingRecordWithKey (const EventSetupRecordKey &) |
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 | |
Public Types inherited from edm::eventsetup::DataProxyProvider | |
typedef std::vector< std::pair< DataKey, edm::propagate_const< std::shared_ptr< DataProxy > > > > | KeyedProxies |
typedef std::vector< EventSetupRecordKey > | Keys |
typedef std::map< EventSetupRecordKey, KeyedProxies > | RecordProxies |
Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider | |
static void | prevalidate (ConfigurationDescriptions &) |
Loads TotemDAQMapping and TotemAnalysisMask from two XML files.
Definition at line 51 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 116 of file TotemDAQMappingESSourceXML.cc.
|
private |
whether to parse a mapping of a mask XML
Enumerator | |
---|---|
pMapping | |
pMask |
Definition at line 119 of file TotemDAQMappingESSourceXML.cc.
TotemDAQMappingESSourceXML::TotemDAQMappingESSourceXML | ( | const edm::ParameterSet & | conf | ) |
Definition at line 225 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 294 of file TotemDAQMappingESSourceXML.cc.
|
private |
extracts VFAT's DAQ channel from XML attributes
Definition at line 758 of file TotemDAQMappingESSourceXML.cc.
References a, TotemFramePosition::checkXMLAttributeFlag(), Exception, TotemFramePosition::setXMLAttribute(), and cms::xerces::toString().
Referenced by ParseTreeDiamond(), ParseTreeRP(), and ParseTreeTotemTiming().
|
inlineprivate |
Definition at line 181 of file TotemDAQMappingESSourceXML.cc.
References tagAnalysisMask, tagArm, tagChannel, tagChip1, tagChip2, tagDiamondCh, tagDiamondPlane, tagRPPlane, tagRPPot, tagRPStation, tagSampicBoard, tagSampicCh, tagTotemTimingCh, tagTotemTimingPlane, and tagVFAT.
|
private |
adds the path prefix, if needed
Definition at line 300 of file TotemDAQMappingESSourceXML.cc.
References edm::FileInPath::fullPath().
Referenced by produce().
|
inlineprivate |
Definition at line 171 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeDiamond().
|
private |
Definition at line 818 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, DEFINE_FWK_EVENTSETUP_SOURCE, Exception, mps_fire::i, triggerObjects_cff::id, Test(), and cms::xerces::toString().
Referenced by ParseTreeRP().
|
inlineprivate |
returns the content of the node
Definition at line 150 of file TotemDAQMappingESSourceXML.cc.
References AlCaHLTBitMon_QueryRunRegistry::string, and cms::xerces::toString().
|
private |
determines node type
Definition at line 787 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 156 of file TotemDAQMappingESSourceXML.cc.
References gen::n, and cms::xerces::toString().
|
private |
recursive method to extract RP-related information from the DOM tree
Definition at line 504 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), DiamondNode(), Exception, GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, triggerObjects_cff::id, gen::n, nArm, nDiamondCh, nDiamondPlane, nRPPot, nRPStation, nTop, nUnknown, 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 370 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), Exception, TotemVFATAnalysisMask::fullMask, GetChannels(), GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, triggerObjects_cff::id, TotemVFATAnalysisMask::maskedChannels, gen::n, nArm, nChannel, nChip, nRPPlane, nRPPot, nRPStation, nTop, nUnknown, 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 630 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), Exception, GetNodeType(), mps_fire::i, triggerObjects_cff::id, TotemTimingDetId::ID_NOT_SET, gen::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 343 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 309 of file TotemDAQMappingESSourceXML.cc.
References CompleteFileName(), configuration, currentBlock, currentBlockValid, Exception, taus_updatedMVAIds_cff::mapping, mappingFileNames, RecoTauDiscriminantConfiguration::mask, eostools::move(), ParseXML(), pMapping, pMask, edm::es::products(), and cms::xerces::toString().
Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().
|
inlineprivate |
Definition at line 166 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeRP().
|
overrideprotectedvirtual |
sets infinite validity of this data
Implements edm::EventSetupRecordIntervalFinder.
Definition at line 246 of file TotemDAQMappingESSourceXML.cc.
References begin, configuration, edm::contains(), currentBlock, currentBlockValid, end, edm::EventRange::endEventID(), edm::EventID::event(), edm::IOVSyncValue::eventID(), Exception, training_settings::idx, edm::EventID::luminosityBlock(), edm::eventsetup::EventSetupRecordKey::name(), edm::EventID::run(), and edm::EventRange::startEventID().
|
inlineprivate |
returns true iff the node is of the given name
Definition at line 141 of file TotemDAQMappingESSourceXML.cc.
References cms::xerces::toString().
Referenced by GetChannels(), and GetNodeType().
|
inlineprivate |
Definition at line 176 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeTotemTiming().
|
private |
Definition at line 107 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 110 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), and setIntervalFor().
|
private |
flag whether the 'currentBlock' index is valid
Definition at line 113 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), and setIntervalFor().
|
private |
the mapping files
Definition at line 93 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.
Referenced by CommonNode().
|
static |
Common position tags.
Definition at line 59 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 55 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode().
|
static |
COMMON Chip XML tags.
Definition at line 67 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 68 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 72 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
diamond specific tags
Definition at line 71 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 64 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 63 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
RP XML tags.
Definition at line 62 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
totem timing specific tags
Definition at line 75 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 76 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 77 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 78 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode(), and GetNodeType().
|
static |
Definition at line 54 of file TotemDAQMappingESSourceXML.cc.
Referenced by CommonNode().
|
private |
Definition at line 86 of file TotemDAQMappingESSourceXML.cc.