From 76337a343c15a3dece62a170e9b37ad93972e697 Mon Sep 17 00:00:00 2001 From: Chris Pinkenburg Date: Tue, 27 Oct 2026 18:24:57 -0400 Subject: [PATCH] add TriggerRunInfo, MbdRawContainer - remove CaloPacketContainer dump --- .../NodeDump/DumpCaloPacketContainer.cc | 64 ------------------- .../NodeDump/DumpCaloPacketContainer.h | 20 ------ .../packages/NodeDump/DumpMbdRawContainer.cc | 50 +++++++++++++++ .../packages/NodeDump/DumpMbdRawContainer.h | 20 ++++++ .../packages/NodeDump/DumpTriggerRunInfo.cc | 43 +++++++++++++ .../packages/NodeDump/DumpTriggerRunInfo.h | 21 ++++++ offline/packages/NodeDump/Makefile.am | 3 +- offline/packages/NodeDump/PHNodeDump.cc | 15 +++-- 8 files changed, 146 insertions(+), 90 deletions(-) delete mode 100644 offline/packages/NodeDump/DumpCaloPacketContainer.cc delete mode 100644 offline/packages/NodeDump/DumpCaloPacketContainer.h create mode 100644 offline/packages/NodeDump/DumpMbdRawContainer.cc create mode 100644 offline/packages/NodeDump/DumpMbdRawContainer.h create mode 100644 offline/packages/NodeDump/DumpTriggerRunInfo.cc create mode 100644 offline/packages/NodeDump/DumpTriggerRunInfo.h diff --git a/offline/packages/NodeDump/DumpCaloPacketContainer.cc b/offline/packages/NodeDump/DumpCaloPacketContainer.cc deleted file mode 100644 index 401465e2d9..0000000000 --- a/offline/packages/NodeDump/DumpCaloPacketContainer.cc +++ /dev/null @@ -1,64 +0,0 @@ -#include "DumpCaloPacketContainer.h" - -#include -#include - -#include - -#include -#include - -using MyNode_t = PHIODataNode; - -DumpCaloPacketContainer::DumpCaloPacketContainer(const std::string &NodeName) - : DumpObject(NodeName) -{ - return; -} - -int DumpCaloPacketContainer::process_Node(PHNode *myNode) -{ - CaloPacketContainer *calocont = nullptr; - MyNode_t *thisNode = static_cast(myNode); // NOLINT(cppcoreguidelines-pro-type-static-cast-downcast) - if (thisNode) - { - calocont = thisNode->getData(); - } - if (calocont) - { - for (unsigned int i = 0; i < calocont->get_npackets(); i++) - { - CaloPacket *calopacket = calocont->getPacket(i); - *fout << "packet_nr: " << calopacket->getIdentifier() << std::endl; - // if (calopacket->getIdentifier() != 9002) continue; - *fout << "EventNr: " << calopacket->iValue(0, "EVTNR") << std::endl; - *fout << "Clock: 0x" << std::hex << calopacket->iValue(0, "CLOCK") << std::dec << std::endl; - *fout << "Modules: " << calopacket->iValue(0, "NRMODULES") << std::endl; - *fout << "Channels: " << calopacket->iValue(0, "CHANNELS") << std::endl; - *fout << "Samples: " << calopacket->iValue(0, "SAMPLES") << std::endl; - *fout << "DetId: 0x" << std::hex << calopacket->iValue(0, "DETID") << std::dec << std::endl; - *fout << "Samples: " << std::hex << calopacket->iValue(0, "MODULEADDRESS") << std::dec << std::endl; - *fout << "EVENCHECKSUMOK: " << calopacket->iValue(0, "EVENCHECKSUMOK") << std::endl; - *fout << "ODDCHECKSUMOK: " << calopacket->iValue(0, "ODDCHECKSUMOK") << std::endl; - for (int k = 0; k < calopacket->iValue(0, "NRMODULES"); k++) - { - *fout << "FEM Slot: " << calopacket->iValue(k, "FEMSLOT") << std::endl; - *fout << "FEM Evt nr: " << calopacket->iValue(k, "FEMEVTNR") << std::endl; - *fout << "FEM Clock: " << calopacket->iValue(k, "FEMCLOCK") << std::endl; - *fout << "FEM Checksum LSB: 0x" << std::hex << calopacket->iValue(k, "CHECKSUMLSB") << std::dec << std::endl; - *fout << "FEM Checksum MSB: 0x" << std::hex << calopacket->iValue(k, "CHECKSUMMSB") << std::dec << std::endl; - } - for (int k = 0; k < calopacket->iValue(0, "CHANNELS"); k++) - { - *fout << "SUPPRESSED: " << calopacket->iValue(k, "SUPPRESSED") << std::endl; - *fout << "PRE: 0x" << std::hex << calopacket->iValue(k, "PRE") << std::dec << std::endl; - *fout << "POST: 0x" << std::hex << calopacket->iValue(k, "POST") << std::dec << std::endl; - for (int j = 0; j < calopacket->iValue(0, "SAMPLES"); j++) - { - *fout << "iValue(" << j << ", " << k << "): " << calopacket->iValue(j, k) << std::endl; - } - } - } - } - return 0; -} diff --git a/offline/packages/NodeDump/DumpCaloPacketContainer.h b/offline/packages/NodeDump/DumpCaloPacketContainer.h deleted file mode 100644 index 26ebb846d2..0000000000 --- a/offline/packages/NodeDump/DumpCaloPacketContainer.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef NODEDUMP_DUMPCALOPACKETCONTAINER_H -#define NODEDUMP_DUMPCALOPACKETCONTAINER_H - -#include "DumpObject.h" - -#include - -class PHNode; - -class DumpCaloPacketContainer : public DumpObject -{ - public: - explicit DumpCaloPacketContainer(const std::string &NodeName); - ~DumpCaloPacketContainer() override {} - - protected: - int process_Node(PHNode *mynode) override; -}; - -#endif diff --git a/offline/packages/NodeDump/DumpMbdRawContainer.cc b/offline/packages/NodeDump/DumpMbdRawContainer.cc new file mode 100644 index 0000000000..f3c45ab7ff --- /dev/null +++ b/offline/packages/NodeDump/DumpMbdRawContainer.cc @@ -0,0 +1,50 @@ +#include "DumpMbdRawContainer.h" + +#include +#include + +#include + +#include +#include + +using MyNode_t = PHIODataNode; + +DumpMbdRawContainer::DumpMbdRawContainer(const std::string &NodeName) + : DumpObject(NodeName) +{ + return; +} + +int DumpMbdRawContainer::process_Node(PHNode *myNode) +{ + MbdRawContainer *mbdraw = nullptr; + MyNode_t *thisNode = static_cast(myNode); // NOLINT(cppcoreguidelines-pro-type-static-cast-downcast) + if (thisNode) + { + mbdraw = thisNode->getData(); + } + if (mbdraw && mbdraw->isValid()) + { + int npmt = mbdraw->get_npmt(); + *fout << "MbdRawContainer->get_evt(): " << mbdraw->get_evt()<< std::endl; + *fout << "MbdRawContainer->get_clock(): " << mbdraw->get_clock() << std::endl; + *fout << "MbdRawContainer->get_femclock(): " << mbdraw->get_femclock() << std::endl; + *fout << "MbdRawContainer->get_npmt(): " << npmt << std::endl; + *fout << "MbdRawContainer->get_badtdc(): " << mbdraw->get_badtdc() << std::endl; + + for (int j = 0; j < npmt; j++) + { + MbdRawHit *rawhit = mbdraw->get_pmt(j); + *fout << "MbdRawHit[" << j << "]->get_pmt(): " << rawhit->get_pmt() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_adc(): " << rawhit->get_adc() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_ttdc(): " << rawhit->get_ttdc() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_qtdc(): " << rawhit->get_qtdc() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_chi2ndf(): " << rawhit->get_chi2ndf() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_fitinfo(): " << rawhit->get_fitinfo() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_badtdc(): " << rawhit->get_badtdc() << std::endl; + *fout << "MbdRawHit[" << j << "]->get_fitstat(): " << rawhit->get_fitstat() << std::endl; + } + } + return 0; +} diff --git a/offline/packages/NodeDump/DumpMbdRawContainer.h b/offline/packages/NodeDump/DumpMbdRawContainer.h new file mode 100644 index 0000000000..75a86932eb --- /dev/null +++ b/offline/packages/NodeDump/DumpMbdRawContainer.h @@ -0,0 +1,20 @@ +#ifndef NODEDUMP_DUMPMBDRAWCONTAINER_H +#define NODEDUMP_DUMPMBDRAWCONTAINER_H + +#include "DumpObject.h" + +#include + +class PHNode; + +class DumpMbdRawContainer : public DumpObject +{ + public: + explicit DumpMbdRawContainer(const std::string &NodeName); + virtual ~DumpMbdRawContainer() {} + + protected: + int process_Node(PHNode *mynode) override; +}; + +#endif diff --git a/offline/packages/NodeDump/DumpTriggerRunInfo.cc b/offline/packages/NodeDump/DumpTriggerRunInfo.cc new file mode 100644 index 0000000000..cfabee4eb0 --- /dev/null +++ b/offline/packages/NodeDump/DumpTriggerRunInfo.cc @@ -0,0 +1,43 @@ +#include "DumpTriggerRunInfo.h" + +#include "DumpObject.h" + +#include + +#include + +#include +#include + +using MyNode_t = PHIODataNode; + +DumpTriggerRunInfo::DumpTriggerRunInfo(const std::string &NodeName) + : DumpObject(NodeName) +{ + WriteRunEvent(0); // do not write info for each event + return; +} + +int DumpTriggerRunInfo::process_Node(PHNode *myNode) +{ + TriggerRunInfo *trigrun = nullptr; + MyNode_t *thisNode = static_cast(myNode); // NOLINT(cppcoreguidelines-pro-type-static-cast-downcast) + if (thisNode) + { + trigrun = thisNode->getData(); + } + if (!node_written && trigrun) + { + for (int j = 0; j<64; j++) + { + *fout << "TriggerRunInfo->getPrescaleByBit(" << j<< "): " << trigrun->getPrescaleByBit(j) << std::endl; + *fout << "TriggerRunInfo->getInitialPrescaleByBit(" << j<< "): " << trigrun->getInitialPrescaleByBit(j) << std::endl; + *fout << "TriggerRunInfo->getScalersByBit(" << j<< "): " << trigrun->getScalersByBit(j) << std::endl; + *fout << "TriggerRunInfo->getLiveScalersByBit(" << j<< "): " << trigrun->getLiveScalersByBit(j) << std::endl; + *fout << "TriggerRunInfo->getRawScalersByBit(" << j<< "): " << trigrun->getRawScalersByBit(j) << std::endl; + *fout << "TriggerRunInfo->getTriggerName(" << j<< "): " << trigrun->getTriggerName(j) << std::endl; + } + node_written = 1; + } + return 0; +} diff --git a/offline/packages/NodeDump/DumpTriggerRunInfo.h b/offline/packages/NodeDump/DumpTriggerRunInfo.h new file mode 100644 index 0000000000..c15b6446e8 --- /dev/null +++ b/offline/packages/NodeDump/DumpTriggerRunInfo.h @@ -0,0 +1,21 @@ +#ifndef NODEDUMP_DUMPTRIGGERRUNINFO_H +#define NODEDUMP_DUMPTRIGGERRUNINFO_H + +#include "DumpObject.h" + +#include + +class PHNode; + +class DumpTriggerRunInfo : public DumpObject +{ + public: + explicit DumpTriggerRunInfo(const std::string &NodeName); + ~DumpTriggerRunInfo() override {} + + protected: + int process_Node(PHNode *mynode) override; + int node_written = 0; +}; + +#endif diff --git a/offline/packages/NodeDump/Makefile.am b/offline/packages/NodeDump/Makefile.am index 671f0224e5..8447182cdd 100644 --- a/offline/packages/NodeDump/Makefile.am +++ b/offline/packages/NodeDump/Makefile.am @@ -15,7 +15,6 @@ pkginclude_HEADERS = \ libphnodedump_la_SOURCES = \ Dumper.cc \ DumpCaloPacket.cc \ - DumpCaloPacketContainer.cc \ DumpCaloTriggerInfo.cc \ DumpCdbUrlSave.cc \ DumpCentralityInfo.cc \ @@ -34,6 +33,7 @@ libphnodedump_la_SOURCES = \ DumpMbdGeom.cc \ DumpMbdOut.cc \ DumpMbdPmtContainer.cc \ + DumpMbdRawContainer.cc \ DumpMbdVertexMap.cc \ DumpMicromegasRawHitContainer.cc \ DumpMvtxRawEvtHeader.cc \ @@ -74,6 +74,7 @@ libphnodedump_la_SOURCES = \ DumpTpc_PolyTrackVertexContainer.cc \ DumpTpcRawHitContainer.cc \ DumpTpcSeedTrackMap.cc \ + DumpTriggerRunInfo.cc \ DumpTrackSeedContainer.cc \ DumpTrkrClusterContainer.cc \ DumpTrkrClusterHitAssoc.cc \ diff --git a/offline/packages/NodeDump/PHNodeDump.cc b/offline/packages/NodeDump/PHNodeDump.cc index a83c577adb..fc8863750b 100644 --- a/offline/packages/NodeDump/PHNodeDump.cc +++ b/offline/packages/NodeDump/PHNodeDump.cc @@ -2,7 +2,6 @@ #include "DumpObject.h" #include "DumpCaloPacket.h" -#include "DumpCaloPacketContainer.h" #include "DumpCaloTriggerInfo.h" #include "DumpCdbUrlSave.h" #include "DumpCentralityInfo.h" @@ -21,6 +20,7 @@ #include "DumpMbdGeom.h" #include "DumpMbdOut.h" #include "DumpMbdPmtContainer.h" +#include "DumpMbdRawContainer.h" #include "DumpMbdVertexMap.h" #include "DumpMicromegasRawHitContainer.h" #include "DumpMvtxRawEvtHeader.h" @@ -60,6 +60,7 @@ #include "DumpTpc_PolyClusterContainer.h" #include "DumpTpc_PolyTrackContainer.h" #include "DumpTpc_PolyTrackVertexContainer.h" +#include "DumpTriggerRunInfo.h" #include "DumpTrackSeedContainer.h" #include "DumpTrkrClusterContainer.h" #include "DumpTrkrClusterCrossingAssoc.h" @@ -206,10 +207,6 @@ int PHNodeDump::AddDumpObject(const std::string &NodeName, PHNode *node) { newdump = new DumpCaloPacket(NodeName); } - else if (tmp->InheritsFrom("CaloPacketContainer")) - { - newdump = new DumpCaloPacketContainer(NodeName); - } else if (tmp->InheritsFrom("CaloTriggerInfo")) { newdump = new DumpCaloTriggerInfo(NodeName); @@ -282,6 +279,10 @@ int PHNodeDump::AddDumpObject(const std::string &NodeName, PHNode *node) { newdump = new DumpMbdPmtContainer(NodeName); } + else if (tmp->InheritsFrom("MbdRawContainer")) + { + newdump = new DumpMbdRawContainer(NodeName); + } else if (tmp->InheritsFrom("MbdVertexMap")) { newdump = new DumpMbdVertexMap(NodeName); @@ -442,6 +443,10 @@ int PHNodeDump::AddDumpObject(const std::string &NodeName, PHNode *node) { newdump = new DumpTrackSeedContainer(NodeName); } + else if (tmp->InheritsFrom("TriggerRunInfo")) + { + newdump = new DumpTriggerRunInfo(NodeName); + } else if (tmp->InheritsFrom("TrkrClusterContainer")) { newdump = new DumpTrkrClusterContainer(NodeName);