Loads TotemDAQMapping and TotemAnalysisMask from two XML files. More...
Classes | |
struct | ConfigBlock |
Static Public Member Functions | |
static void | fillDescriptions (edm::ConfigurationDescriptions &) |
Static Public Member Functions inherited from edm::eventsetup::ESProductResolverProvider | |
static void | prevalidate (ConfigurationDescriptions &) |
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 | tagTotemT2Plane = "nt2_plane" |
TOTEM nT2 specific tags. More... | |
static const std::string | tagTotemT2Tile = "nt2_tile" |
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 | |
ESConsumesInfo * | consumesInfoPushBackNew () |
unsigned int | consumesInfoSize () const |
template<typename CallbackT , typename TList , typename TRecord > | |
void | registerProducts (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TList *, const TRecord *iRecord, const es::Label &iLabel) |
template<typename CallbackT , typename TRecord > | |
void | registerProducts (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>, const eventsetup::produce::Null *, const TRecord *, const es::Label &) |
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 TDecorator > | |
auto | setWhatProduced (T *iThis, TReturn(T ::*iMethod)(const TRecord &), const TDecorator &iDec, const es::Label &iLabel={}) |
template<typename TFunc > | |
auto | setWhatProduced (TFunc &&func, const es::Label &iLabel={}) |
template<typename TReturn , typename TRecord , typename TFunc , typename TDecorator > | |
ESConsumesCollectorT< TRecord > | setWhatProduced (TFunc &&func, TDecorator &&iDec, const es::Label &iLabel={}) |
void | usesResources (std::vector< std::string > const &) |
Protected Member Functions inherited from edm::ESProductResolverFactoryProducer | |
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::ESProductResolverFactoryBase > iFactory, const std::string &iLabel=std::string()) |
KeyedResolversVector | registerResolvers (const EventSetupRecordKey &, unsigned int iovIndex) override |
Protected Member Functions inherited from edm::eventsetup::ESProductResolverProvider | |
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, nTotemT2Plane, nTotemT2Tile } |
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... | |
TotemT2FramePosition | ChipT2FramePosition (xercesc::DOMNode *chipnode) |
extracts VFAT's DAQ channel from XML attributes for packed T2 payload 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 | ParseTreeTotemT2 (ParseType, xercesc::DOMNode *, NodeType, unsigned int parentID, const std::unique_ptr< TotemDAQMapping > &, const std::unique_ptr< TotemAnalysisMask > &) |
recursive method to extract nT2-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 | TotemT2Node (NodeType type) |
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... | |
bool | packedPayload |
unsigned int | sampicSubDetId |
string | subSystemName |
label of the CTPPS sub-system More... | |
unsigned int | verbosity |
Additional Inherited Members | |
Protected Types inherited from edm::ESProductResolverFactoryProducer | |
using | EventSetupRecordKey = eventsetup::EventSetupRecordKey |
Protected Types inherited from edm::eventsetup::ESProductResolverProvider | |
using | KeyedResolversVector = std::vector< std::pair< DataKey, std::shared_ptr< ESProductResolver > >> |
Loads TotemDAQMapping and TotemAnalysisMask from two XML files.
Definition at line 55 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 | |
nTotemT2Plane | |
nTotemT2Tile |
Definition at line 129 of file TotemDAQMappingESSourceXML.cc.
|
private |
whether to parse a mapping of a mask XML
Enumerator | |
---|---|
pMapping | |
pMask |
Definition at line 150 of file TotemDAQMappingESSourceXML.cc.
TotemDAQMappingESSourceXML::TotemDAQMappingESSourceXML | ( | const edm::ParameterSet & | conf | ) |
Definition at line 279 of file TotemDAQMappingESSourceXML.cc.
References b, configuration, edm::ParameterSet::getParameter(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, edm::ESProducer::setWhatProduced(), and subSystemName.
|
override |
Definition at line 343 of file TotemDAQMappingESSourceXML.cc.
|
private |
extracts VFAT's DAQ channel from XML attributes
Definition at line 940 of file TotemDAQMappingESSourceXML.cc.
References a, Exception, personalPlayback::fp, dqmiolumiharvest::j, and cms::xerces::toString().
Referenced by ParseTreeDiamond(), ParseTreeRP(), ParseTreeTotemT2(), and ParseTreeTotemTiming().
|
private |
extracts VFAT's DAQ channel from XML attributes for packed T2 payload
Definition at line 965 of file TotemDAQMappingESSourceXML.cc.
References a, Exception, personalPlayback::fp, dqmiolumiharvest::j, and cms::xerces::toString().
Referenced by ParseTreeTotemT2().
|
inlineprivate |
Definition at line 232 of file TotemDAQMappingESSourceXML.cc.
|
private |
adds the path prefix, if needed
Definition at line 347 of file TotemDAQMappingESSourceXML.cc.
References personalPlayback::fn, and edm::FileInPath::fullPath().
Referenced by produce().
|
inlineprivate |
Definition at line 220 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeDiamond().
|
static |
Definition at line 1067 of file TotemDAQMappingESSourceXML.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), edm::ParameterSet::addParameter(), submitPVResolutionJobs::desc, and AlCaHLTBitMon_QueryRunRegistry::string.
|
private |
Definition at line 1038 of file TotemDAQMappingESSourceXML.cc.
References a, ewkTauDQM_cfi::channels, class-composition::children, Exception, mps_fire::i, EcalPhiSymFlatTableProducers_cfi::id, dqmiolumiharvest::j, create_idmaps::n, Test(), and cms::xerces::toString().
Referenced by ParseTreeRP().
|
inlineprivate |
returns the content of the node
Definition at line 203 of file TotemDAQMappingESSourceXML.cc.
References class-composition::parent, AlCaHLTBitMon_QueryRunRegistry::string, and cms::xerces::toString().
|
private |
determines node type
Definition at line 989 of file TotemDAQMappingESSourceXML.cc.
References Exception, create_idmaps::n, nArm, nChip, nDiamondCh, nDiamondPlane, nRPPlane, nRPPot, nRPStation, nSampicBoard, nSampicChannel, nSkip, nTotemT2Plane, nTotemT2Tile, nTotemTimingCh, nTotemTimingPlane, tagArm, tagChip1, tagChip2, tagDiamondCh, tagDiamondPlane, tagRPPlane, tagRPPot, tagRPStation, tagSampicBoard, tagSampicCh, tagTotemT2Plane, tagTotemT2Tile, tagTotemTimingCh, tagTotemTimingPlane, Test(), and cms::xerces::toString().
Referenced by ParseTreeDiamond(), ParseTreeRP(), ParseTreeTotemT2(), and ParseTreeTotemTiming().
|
inlineprivate |
returns the value of the node
Definition at line 206 of file TotemDAQMappingESSourceXML.cc.
References cms::xerces::toString().
|
private |
recursive method to extract RP-related information from the DOM tree
Definition at line 565 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), DiamondNode(), Exception, GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, EcalPhiSymFlatTableProducers_cfi::id, dqmiolumiharvest::j, HPSPFTaus_cff::mapping, ALPAKA_ACCELERATOR_NAMESPACE::pixelClustering::pixelStatus::mask, create_idmaps::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 420 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), Exception, TotemVFATAnalysisMask::fullMask, GetChannels(), GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, EcalPhiSymFlatTableProducers_cfi::id, dqmiolumiharvest::j, HPSPFTaus_cff::mapping, ALPAKA_ACCELERATOR_NAMESPACE::pixelClustering::pixelStatus::mask, TotemVFATAnalysisMask::maskedChannels, create_idmaps::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 nT2-related information from the DOM tree
Definition at line 829 of file TotemDAQMappingESSourceXML.cc.
References a, protons_cff::arm, class-composition::children, ChipFramePosition(), ChipT2FramePosition(), Exception, GetNodeType(), TotemVFATInfo::hwID, mps_fire::i, EcalPhiSymFlatTableProducers_cfi::id, dqmiolumiharvest::j, HPSPFTaus_cff::mapping, ALPAKA_ACCELERATOR_NAMESPACE::pixelClustering::pixelStatus::mask, nArm, nTop, nTotemT2Plane, nTotemT2Tile, nUnknown, packedPayload, class-composition::parent, pMapping, TotemSymbID::symbolicID, TotemVFATInfo::symbolicID, cms::xerces::toString(), TotemT2Node(), and verbosity.
Referenced by ParseXML().
|
private |
recursive method to extract RP-related information from the DOM tree
Definition at line 691 of file TotemDAQMappingESSourceXML.cc.
References a, class-composition::children, ChipFramePosition(), Exception, GetNodeType(), mps_fire::i, EcalPhiSymFlatTableProducers_cfi::id, TotemTimingDetId::ID_NOT_SET, dqmiolumiharvest::j, HPSPFTaus_cff::mapping, ALPAKA_ACCELERATOR_NAMESPACE::pixelClustering::pixelStatus::mask, create_idmaps::n, nArm, nRPPot, nRPStation, nSampicBoard, nSampicChannel, nTop, nTotemTimingCh, nTotemTimingPlane, nUnknown, class-composition::parent, pMapping, sampicSubDetId, TotemSymbID::symbolicID, TotemVFATInfo::symbolicID, cms::xerces::toString(), and TotemTimingNode().
Referenced by ParseXML().
|
private |
parses XML file
Definition at line 391 of file TotemDAQMappingESSourceXML.cc.
References Exception, geometryDiff::file, HPSPFTaus_cff::mapping, ALPAKA_ACCELERATOR_NAMESPACE::pixelClustering::pixelStatus::mask, nTop, writedatasetfile::parser, ParseTreeDiamond(), ParseTreeRP(), ParseTreeTotemT2(), and ParseTreeTotemTiming().
Referenced by produce().
edm::ESProducts< std::unique_ptr< TotemDAQMapping >, std::unique_ptr< TotemAnalysisMask > > TotemDAQMappingESSourceXML::produce | ( | const TotemReadoutRcd & | ) |
Definition at line 356 of file TotemDAQMappingESSourceXML.cc.
References cms::cuda::assert(), CompleteFileName(), configuration, currentBlock, currentBlockValid, MillePedeFileConverter_cfg::e, Exception, personalPlayback::fn, HPSPFTaus_cff::mapping, mappingFileNames, ALPAKA_ACCELERATOR_NAMESPACE::pixelClustering::pixelStatus::mask, CTPPSPixelDAQMappingESSourceXML_cfi::maskFileNames, eostools::move(), ParseXML(), pMapping, pMask, edm::es::products(), to_string(), cms::concurrency::xercesInitialize(), and cms::concurrency::xercesTerminate().
|
inlineprivate |
Definition at line 216 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeRP().
|
overrideprotectedvirtual |
sets infinite validity of this data
Implements edm::EventSetupRecordIntervalFinder.
Definition at line 300 of file TotemDAQMappingESSourceXML.cc.
References SplitLinear::begin, configuration, edm::contains(), currentBlock, currentBlockValid, mps_fire::end, edm::EventID::event(), edm::IOVSyncValue::eventID(), Exception, heavyIonCSV_trainingSettings::idx, submitPVResolutionJobs::key, isotrackApplyRegressor::range, and edm::EventID::run().
|
inlineprivate |
returns true iff the node is of the given name
Definition at line 195 of file TotemDAQMappingESSourceXML.cc.
References mergeVDriftHistosByStation::name, and cms::xerces::toString().
Referenced by GetChannels(), and GetNodeType().
|
inlineprivate |
|
inlineprivate |
|
private |
Definition at line 120 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 123 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), and setIntervalFor().
|
private |
flag whether the 'currentBlock' index is valid
Definition at line 126 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce(), and setIntervalFor().
|
private |
the mapping files
Definition at line 107 of file TotemDAQMappingESSourceXML.cc.
Referenced by produce().
|
private |
Definition at line 104 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeTotemT2().
|
private |
Definition at line 101 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeTotemTiming().
|
private |
label of the CTPPS sub-system
Definition at line 98 of file TotemDAQMappingESSourceXML.cc.
Referenced by TotemDAQMappingESSourceXML().
|
static |
Definition at line 59 of file TotemDAQMappingESSourceXML.cc.
|
static |
Common position tags.
Definition at line 62 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 58 of file TotemDAQMappingESSourceXML.cc.
|
static |
COMMON Chip XML tags.
Definition at line 70 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 71 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 75 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
diamond specific tags
Definition at line 74 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 67 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 66 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
RP XML tags.
Definition at line 65 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
totem timing specific tags
Definition at line 78 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 79 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
TOTEM nT2 specific tags.
Definition at line 84 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 85 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 80 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 81 of file TotemDAQMappingESSourceXML.cc.
Referenced by GetNodeType().
|
static |
Definition at line 57 of file TotemDAQMappingESSourceXML.cc.
|
private |
Definition at line 95 of file TotemDAQMappingESSourceXML.cc.
Referenced by ParseTreeTotemT2().