Hall-D Software
alpha
|
#include <DEVIOBufferWriter.h>
Public Member Functions | |
DEVIOBufferWriter (bool compact_flag=false, bool prefer_emulated_flag=false) | |
~DEVIOBufferWriter (void) | |
void | WriteEventToBuffer (JEventLoop *loop, vector< uint32_t > &buff, vector< const JObject * > objects_to_save) const |
void | WriteEventToBuffer (JEventLoop *locEventLoop, vector< uint32_t > &buff) const |
void | SetROCsToWriteOut (set< uint32_t > &new_rocs_to_write_out) |
Protected Member Functions | |
void | WriteBuiltTriggerBank (vector< uint32_t > &buff, JEventLoop *loop, vector< const DCODAROCInfo * > &coda_rocinfos, vector< const DCODAEventInfo * > &coda_events) const |
void | WriteCAEN1290Data (vector< uint32_t > &buff, vector< const DCAEN1290TDCHit * > &caen1290hits, vector< const DCAEN1290TDCConfig * > &caen1290configs, unsigned int Nevents) const |
void | WriteF1Data (vector< uint32_t > &buff, vector< const DF1TDCHit * > &F1hits, vector< const DF1TDCTriggerTime * > &F1tts, vector< const DF1TDCConfig * > &F1configs, unsigned int Nevents) const |
void | Writef250Data (vector< uint32_t > &buff, vector< const Df250PulseData * > &f250pulses, vector< const Df250TriggerTime * > &f250tts, vector< const Df250WindowRawData * > &f250wrds, vector< const Df250Scaler * > &f250scalers, unsigned int Nevents) const |
void | Writef250Data (vector< uint32_t > &buff, vector< const Df250PulseIntegral * > &f250pis, vector< const Df250TriggerTime * > &f250tts, vector< const Df250WindowRawData * > &f250wrds, vector< const Df250Scaler * > &f250scalers, unsigned int Nevents) const |
void | Writef125Data (vector< uint32_t > &buff, vector< const Df125PulseIntegral * > &f125pis, vector< const Df125CDCPulse * > &f125cdcpulses, vector< const Df125FDCPulse * > &f125fdcpulses, vector< const Df125TriggerTime * > &f125tts, vector< const Df125WindowRawData * > &f125wrds, vector< const Df125Config * > &f125configs, unsigned int Nevents) const |
void | WriteDircData (vector< uint32_t > &buff, vector< const DDIRCTDCHit * > &dirctdchits, vector< const DDIRCTriggerTime * > &dirctts, unsigned int Nevents) const |
void | WriteEPICSData (vector< uint32_t > &buff, vector< const DEPICSvalue * > epicsValues) const |
void | WriteEventTagData (vector< uint32_t > &buff, uint64_t event_status, const DL3Trigger *l3trigger) const |
template<typename T , typename M , typename F > | |
void | WriteBORSingle (vector< uint32_t > &buff, M m, F &&modFunc) const |
void | WriteBORData (JEventLoop *loop, vector< uint32_t > &buff) const |
void | WriteTSSyncData (JEventLoop *loop, vector< uint32_t > &buff, const DL1Info *l1info) const |
void | WriteDVertexData (JEventLoop *loop, vector< uint32_t > &buff, const DVertex *vertex) const |
void | WriteDEventRFBunchData (JEventLoop *loop, vector< uint32_t > &buff, const DEventRFBunch *rftime) const |
Protected Attributes | |
bool | write_out_all_rocs |
set< uint32_t > | rocs_to_write_out |
bool | COMPACT |
bool | PREFER_EMULATED |
Definition at line 60 of file DEVIOBufferWriter.h.
|
inline |
Definition at line 63 of file DEVIOBufferWriter.h.
|
inline |
Definition at line 69 of file DEVIOBufferWriter.h.
|
inline |
Definition at line 74 of file DEVIOBufferWriter.h.
|
protected |
Definition at line 1690 of file DEVIOBufferWriter.cc.
References c, DModuleType::CAEN1290, DModuleType::FADC125, and DModuleType::FADC250.
Referenced by WriteEventToBuffer().
|
protected |
Write BOR config objects for all crates containing a single module type. This is called from WriteBORData below.
Definition at line 1648 of file DEVIOBufferWriter.cc.
References c.
|
protected |
Definition at line 293 of file DEVIOBufferWriter.cc.
References DCODAROCInfo::misc, DCODAROCInfo::rocid, and DCODAROCInfo::timestamp.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 354 of file DEVIOBufferWriter.cc.
References DCAEN1290TDCHit::bunch_id, DDAQAddress::channel, DCAEN1290TDCHit::edge, DCAEN1290TDCHit::event_id, kPARAMCAEN1290_WINOFFSET, kPARAMCAEN1290_WINWIDTH, DDAQConfig::rocid, DDAQAddress::rocid, rocs_to_write_out, DDAQAddress::slot, DDAQConfig::slot_mask, DCAEN1290TDCHit::tdc_num, DCAEN1290TDCHit::time, DCAEN1290TDCConfig::WINOFFSET, DCAEN1290TDCConfig::WINWIDTH, and write_out_all_rocs.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 1842 of file DEVIOBufferWriter.cc.
References DEventRFBunch::dNumParticleVotes, DEventRFBunch::dTime, DEventRFBunch::dTimeSource, and DEventRFBunch::dTimeVariance.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 1420 of file DEVIOBufferWriter.cc.
References DDIRCTDCHit::dev_id, DDAQAddress::itrigger, DDAQAddress::rocid, rocs_to_write_out, DDAQAddress::slot, DDIRCTriggerTime::time, and write_out_all_rocs.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 1787 of file DEVIOBufferWriter.cc.
References DVertex::dKinFitChiSq, DVertex::dKinFitNDF, and DVertex::dSpacetimeVertex.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 1532 of file DEVIOBufferWriter.cc.
References DEPICSvalue::nameval, and str.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 1586 of file DEVIOBufferWriter.cc.
References DL3Trigger::algorithm, DL3Trigger::kDISCARD_EVENT, DL3Trigger::kKEEP_EVENT, DL3Trigger::kNO_DECISION, kSTATUS_L3FAIL, kSTATUS_L3PASS, DL3Trigger::L3_decision, and DL3Trigger::status.
Referenced by WriteEventToBuffer().
void DEVIOBufferWriter::WriteEventToBuffer | ( | JEventLoop * | loop, |
vector< uint32_t > & | buff, | ||
vector< const JObject * > | objects_to_save | ||
) | const |
This method will grab certain low-level objects and write them into EVIO banks in a format compatible with the DAQ library.
Definition at line 20 of file DEVIOBufferWriter.cc.
References COMPACT, kSTATUS_BOR_EVENT, Nevents, WriteBORData(), WriteBuiltTriggerBank(), WriteCAEN1290Data(), WriteDEventRFBunchData(), WriteDircData(), WriteDVertexData(), WriteEPICSData(), WriteEventTagData(), Writef125Data(), WriteF1Data(), Writef250Data(), and WriteTSSyncData().
Referenced by DEventWriterEVIO::Write_EVIOEvent(), and WriteEventToBuffer().
void DEVIOBufferWriter::WriteEventToBuffer | ( | JEventLoop * | locEventLoop, |
vector< uint32_t > & | buff | ||
) | const |
Definition at line 11 of file DEVIOBufferWriter.cc.
References WriteEventToBuffer().
|
protected |
Definition at line 1183 of file DEVIOBufferWriter.cc.
References Df125Config::ABIT, DDAQAddress::channel, Df125PulsePedestal::emulated, Df125PulseTime::emulated, Df125PulseIntegral::emulated, Df125CDCPulse::emulated, Df125FDCPulse::emulated, Df125Config::H, Df125Config::IBIT, Df125Config::IE, Df125PulseIntegral::integral, kPARAM125_ABIT, kPARAM125_H, kPARAM125_IBIT, kPARAM125_IE, kPARAM125_NPED, kPARAM125_NPK, kPARAM125_NSA, kPARAM125_NSA_NSB, kPARAM125_NSB, kPARAM125_NW, kPARAM125_P1, kPARAM125_P2, kPARAM125_PBIT, kPARAM125_PG, kPARAM125_PL, kPARAM125_TH, kPARAM125_TL, kPARAM125_WINWIDTH, Df125Config::NPED, Df125Config::NPK, Df125Config::NSA, Df125Config::NSA_NSB, Df125Config::NSB, Df125Config::NW, Df125Config::P1, Df125Config::P2, Df125Config::PBIT, Df125PulsePedestal::pedestal, Df125Config::PG, Df125Config::PL, PREFER_EMULATED, Df125PulsePedestal::pulse_number, Df125PulseTime::pulse_number, Df125PulsePedestal::pulse_peak, DDAQConfig::rocid, DDAQAddress::rocid, rocs_to_write_out, Df125WindowRawData::samples, DDAQAddress::slot, DDAQConfig::slot_mask, Df125Config::TH, Df125TriggerTime::time, Df125PulseTime::time, Df125Config::TL, Df125Config::WINWIDTH, Df125CDCPulse::word1, Df125FDCPulse::word1, Df125CDCPulse::word2, Df125FDCPulse::word2, and write_out_all_rocs.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 459 of file DEVIOBufferWriter.cc.
References DF1TDCConfig::BINSIZE, DF1TDCConfig::HSDIV, kPARAMF1_BINSIZE, kPARAMF1_HSDIV, kPARAMF1_REFCLKDIV, kPARAMF1_REFCNT, kPARAMF1_TRIGLAT, kPARAMF1_TRIGWIN, DF1TDCHit::modtype, DF1TDCConfig::REFCLKDIV, DF1TDCConfig::REFCNT, DDAQConfig::rocid, DDAQAddress::rocid, rocs_to_write_out, DDAQAddress::slot, DDAQConfig::slot_mask, DF1TDCTriggerTime::time, DF1TDCConfig::TRIGLAT, DF1TDCConfig::TRIGWIN, and write_out_all_rocs.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 903 of file DEVIOBufferWriter.cc.
References DDAQAddress::channel, Df250PulseData::course_time, Df250Scaler::crate, Df250PulseData::emulated, Df250Scaler::fa250_sc, Df250PulseData::fine_time, Df250PulseData::integral, DDAQAddress::itrigger, kPARAM250_NPED, kPARAM250_NSA, kPARAM250_NSA_NSB, kPARAM250_NSB, Df250Config::NPED, Df250Config::NSA, Df250Config::NSA_NSB, Df250PulseData::nsamples_over_threshold, Df250Config::NSB, Df250Scaler::nsync, Df250PulseData::pedestal, PREFER_EMULATED, Df250PulseData::pulse_peak, Df250PulseData::QF_bad_pedestal, Df250PulseData::QF_NSA_beyond_PTW, Df250PulseData::QF_overflow, Df250PulseData::QF_pedestal, Df250PulseData::QF_underflow, Df250PulseData::QF_vpeak_beyond_NSA, Df250PulseData::QF_vpeak_not_found, DDAQAddress::rocid, rocs_to_write_out, Df250WindowRawData::samples, DDAQAddress::slot, DDAQConfig::slot_mask, Df250TriggerTime::time, Df250Scaler::trig_number, Df250Scaler::version, and write_out_all_rocs.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 614 of file DEVIOBufferWriter.cc.
References DDAQAddress::channel, Df250Scaler::crate, Df250PulseTime::emulated, Df250PulsePedestal::emulated, Df250PulseIntegral::emulated, Df250Scaler::fa250_sc, Df250PulseIntegral::integral, DDAQAddress::itrigger, kPARAM250_NPED, kPARAM250_NSA, kPARAM250_NSA_NSB, kPARAM250_NSB, Df250Config::NPED, Df250Config::NSA, Df250Config::NSA_NSB, Df250Config::NSB, Df250Scaler::nsync, Df250PulsePedestal::pedestal, PREFER_EMULATED, Df250PulseTime::pulse_number, Df250PulsePedestal::pulse_number, Df250PulseIntegral::pulse_number, Df250PulsePedestal::pulse_peak, Df250PulseTime::quality_factor, Df250PulseIntegral::quality_factor, DDAQAddress::rocid, rocs_to_write_out, Df250WindowRawData::samples, DDAQAddress::slot, DDAQConfig::slot_mask, Df250TriggerTime::time, Df250PulseTime::time, Df250Scaler::trig_number, Df250Scaler::version, and write_out_all_rocs.
|
protected |
Definition at line 1738 of file DEVIOBufferWriter.cc.
References DL1Info::busy_time, DL1Info::fp_rate, DL1Info::fp_sc, DL1Info::gtp_rate, DL1Info::gtp_sc, DL1Info::live_inst, DL1Info::live_time, DL1Info::nsync, DL1Info::trig_number, and DL1Info::unix_time.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 155 of file DEVIOBufferWriter.h.
Referenced by WriteEventToBuffer().
|
protected |
Definition at line 156 of file DEVIOBufferWriter.h.
Referenced by Writef125Data(), and Writef250Data().
|
protected |
Definition at line 153 of file DEVIOBufferWriter.h.
Referenced by WriteCAEN1290Data(), WriteDircData(), Writef125Data(), WriteF1Data(), and Writef250Data().
|
protected |
Definition at line 152 of file DEVIOBufferWriter.h.
Referenced by WriteCAEN1290Data(), WriteDircData(), Writef125Data(), WriteF1Data(), and Writef250Data().