List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | Private Member Functions | Private Attributes
RecDataWriterNG::RecDataWriter Class Reference

Module to write a Root Tree (or ASCII table) for FD and SD data. More...

#include <RecDataWriter.h>

Inheritance diagram for RecDataWriterNG::RecDataWriter:
Inheritance graph
[legend]

Public Types

enum  ResultFlag { eSuccess, eFailure, eBreakLoop, eContinueLoop }
 Flag returned by module methods to the RunController. More...
 
enum  VersionInfoType {
  eFilename = 1, eRevisionNumber = 2, eDate = 3, eTime = 4,
  eLastEditor = 5
}
 Different types of version info that can be retrieved from GetVersionInfo. More...
 

Public Member Functions

fwk::VModule::ResultFlag Finish () override
 Finish: invoked at end of the run (NOT end of the event) More...
 
utl::StopwatchGetStopwatch ()
 
const utl::StopwatchGetStopwatch () const
 
std::string GetVersionInfo (const VersionInfoType v) const
 Retrieve different sorts of module version info. More...
 
fwk::VModule::ResultFlag Init () override
 Initialize: invoked at beginning of run (NOT beginning of event) More...
 
void InitTiming ()
 
 RecDataWriter ()
 
fwk::VModule::ResultFlag Run (evt::Event &event) override
 Run: invoked once per event. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 
virtual ~RecDataWriter ()
 

Static Public Member Functions

static std::string GetResultFlagByName (const ResultFlag flag)
 

Protected Types

enum  InfoLevel { eInfoNone = 0, eInfoFinal = 1, eInfoIntermediate = 2, eInfoDebug = 3 }
 

Protected Attributes

int fInfoLevel = 0
 

Private Member Functions

bool PrepareAsciiFile ()
 
bool PrepareRecEventAndRootFile ()
 
bool ReadAsciiConfig (utl::Branch &topB)
 
bool ReadConfig ()
 
bool ReadRootConfig (utl::Branch &topB)
 
 REGISTER_MODULE ("RecDataWriterNG", RecDataWriter)
 

Private Attributes

otoa::Offline2ADSTfADSTConverter = nullptr
 
ADST::AsciiConverter * fAsciiConverter = nullptr
 
std::string fAsciiDataMode
 
int fAsciiMinFdRecLevel = 0
 
int fAsciiMinSdRecLevel = 0
 
RecEventFile::Mode fAsciiOutputFileMode = RecEventFile::eWrite
 
std::string fAsciiOutputFileName
 
int fNWritten = 0
 
int fNWrittenQuadruple = 0
 
int fNWrittenStereo = 0
 
int fNWrittenTriple = 0
 
RecEvent * fRecEvent = nullptr
 
RecEventFile * fRecEventFile = nullptr
 
RecEventFile::Mode fRootOutputFileMode = RecEventFile::eWrite
 
std::string fRootOutputFileName
 
int fVerbosity = 0
 
bool fWriteASCII = false
 
bool fWriteROOT = false
 

Detailed Description

Module to write a Root Tree (or ASCII table) for FD and SD data.

Author
Hans Dembinski, Javier Gonzalez, Ioana C. Maris, Steffen Mueller, Fabian Schüssler, Ralf Ulrich, Michael Unger
Date
Jun 2010

Definition at line 80 of file RecDataWriter.h.

Member Enumeration Documentation

enum fwk::VModule::InfoLevel
protectedinherited
Enumerator
eInfoNone 
eInfoFinal 
eInfoIntermediate 
eInfoDebug 

Definition at line 125 of file VModule.h.

enum fwk::VModule::ResultFlag
inherited

Flag returned by module methods to the RunController.

Enumerator
eSuccess 

Report success to RunController.

eFailure 

Report failure to RunController, causing RunController to terminate execution.

eBreakLoop 

Break current loop. It works for nested loops too!

eContinueLoop 

Skip remaining modules in the current loop and continue with next iteration of the loop.

Definition at line 60 of file VModule.h.

Different types of version info that can be retrieved from GetVersionInfo.

Enumerator
eFilename 
eRevisionNumber 
eDate 
eTime 
eLastEditor 

Definition at line 110 of file VModule.h.

Constructor & Destructor Documentation

RecDataWriterNG::RecDataWriter::RecDataWriter ( )

Definition at line 154 of file RecDataWriter.cc.

RecDataWriterNG::RecDataWriter::~RecDataWriter ( )
virtual

Definition at line 159 of file RecDataWriter.cc.

References fADSTConverter, and fRecEvent.

Member Function Documentation

VModule::ResultFlag RecDataWriterNG::RecDataWriter::Finish ( )
overridevirtual

Finish: invoked at end of the run (NOT end of the event)

This method is for things that should be done at the end of the run (for example, closing files or writing out histograms) {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 281 of file RecDataWriter.cc.

References fwk::VModule::eSuccess, fADSTConverter, fAsciiConverter, otoa::Offline2ADST::FinishDetectorAndFileInfo(), fNWritten, fNWrittenQuadruple, fNWrittenStereo, fNWrittenTriple, fRecEventFile, fVerbosity, otoa::Offline2ADST::GetDetectorGeometry(), otoa::Offline2ADST::GetFileInfo(), INFO, and utl::String::Plural().

std::string fwk::VModule::GetResultFlagByName ( const ResultFlag  flag)
staticinherited
utl::Stopwatch& fwk::VModule::GetStopwatch ( )
inlineinherited

Definition at line 106 of file VModule.h.

References fwk::VModule::fStopwatch.

const utl::Stopwatch& fwk::VModule::GetStopwatch ( ) const
inlineinherited

Definition at line 107 of file VModule.h.

References fwk::VModule::fStopwatch.

std::string fwk::VModule::GetVersionInfo ( const VersionInfoType  v) const
inherited
VModule::ResultFlag RecDataWriterNG::RecDataWriter::Init ( )
overridevirtual

Initialize: invoked at beginning of run (NOT beginning of event)

This method is for things that should be done once at the beginning of a run (for example, booking histograms, performing calculations that need to be done only once, initializing parameters) {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 167 of file RecDataWriter.cc.

References otoa::Offline2ADST::Config(), fwk::VModule::eFailure, ERROR, fwk::VModule::eSuccess, fADSTConverter, fAsciiMinFdRecLevel, fAsciiMinSdRecLevel, fRootOutputFileName, INFO, utl::m, utl::nanometer, ns, and ReadConfig().

void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().

bool RecDataWriterNG::RecDataWriter::PrepareAsciiFile ( )
private
bool RecDataWriterNG::RecDataWriter::PrepareRecEventAndRootFile ( )
private

Definition at line 487 of file RecDataWriter.cc.

References fRecEvent, fRecEventFile, fRootOutputFileMode, fRootOutputFileName, and fWriteROOT.

Referenced by Run().

bool RecDataWriterNG::RecDataWriter::ReadAsciiConfig ( utl::Branch topB)
private
bool RecDataWriterNG::RecDataWriter::ReadConfig ( )
private
bool RecDataWriterNG::RecDataWriter::ReadRootConfig ( utl::Branch topB)
private
RecDataWriterNG::RecDataWriter::REGISTER_MODULE ( "RecDataWriterNG"  ,
RecDataWriter   
)
private
VModule::ResultFlag RecDataWriterNG::RecDataWriter::Run ( evt::Event event)
overridevirtual

Run: invoked once per event.

This method is for things that should be done once per event {You must override this method in your concrete module}

Implements fwk::VModule.

Definition at line 237 of file RecDataWriter.cc.

References otoa::Offline2ADST::Convert(), fwk::VModule::eFailure, fwk::VModule::eSuccess, fADSTConverter, fAsciiConverter, fNWritten, fNWrittenQuadruple, fNWrittenStereo, fNWrittenTriple, fRecEvent, fRecEventFile, fWriteASCII, fWriteROOT, PrepareAsciiFile(), and PrepareRecEventAndRootFile().

ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited

Member Data Documentation

otoa::Offline2ADST* RecDataWriterNG::RecDataWriter::fADSTConverter = nullptr
private

Definition at line 105 of file RecDataWriter.h.

Referenced by Finish(), Init(), ReadConfig(), Run(), and ~RecDataWriter().

ADST::AsciiConverter* RecDataWriterNG::RecDataWriter::fAsciiConverter = nullptr
private

Definition at line 112 of file RecDataWriter.h.

Referenced by Finish(), PrepareAsciiFile(), and Run().

std::string RecDataWriterNG::RecDataWriter::fAsciiDataMode
private

Definition at line 111 of file RecDataWriter.h.

Referenced by PrepareAsciiFile(), and ReadAsciiConfig().

int RecDataWriterNG::RecDataWriter::fAsciiMinFdRecLevel = 0
private

Definition at line 113 of file RecDataWriter.h.

Referenced by Init(), PrepareAsciiFile(), and ReadAsciiConfig().

int RecDataWriterNG::RecDataWriter::fAsciiMinSdRecLevel = 0
private

Definition at line 114 of file RecDataWriter.h.

Referenced by Init(), PrepareAsciiFile(), and ReadAsciiConfig().

RecEventFile::Mode RecDataWriterNG::RecDataWriter::fAsciiOutputFileMode = RecEventFile::eWrite
private

Definition at line 109 of file RecDataWriter.h.

Referenced by PrepareAsciiFile(), and ReadAsciiConfig().

std::string RecDataWriterNG::RecDataWriter::fAsciiOutputFileName
private

Definition at line 108 of file RecDataWriter.h.

Referenced by PrepareAsciiFile(), and ReadAsciiConfig().

int fwk::VModule::fInfoLevel = 0
protectedinherited
int RecDataWriterNG::RecDataWriter::fNWritten = 0
private

Definition at line 118 of file RecDataWriter.h.

Referenced by Finish(), and Run().

int RecDataWriterNG::RecDataWriter::fNWrittenQuadruple = 0
private

Definition at line 121 of file RecDataWriter.h.

Referenced by Finish(), and Run().

int RecDataWriterNG::RecDataWriter::fNWrittenStereo = 0
private

Definition at line 119 of file RecDataWriter.h.

Referenced by Finish(), and Run().

int RecDataWriterNG::RecDataWriter::fNWrittenTriple = 0
private

Definition at line 120 of file RecDataWriter.h.

Referenced by Finish(), and Run().

RecEvent* RecDataWriterNG::RecDataWriter::fRecEvent = nullptr
private

Definition at line 123 of file RecDataWriter.h.

Referenced by PrepareRecEventAndRootFile(), Run(), and ~RecDataWriter().

RecEventFile* RecDataWriterNG::RecDataWriter::fRecEventFile = nullptr
private

Definition at line 104 of file RecDataWriter.h.

Referenced by Finish(), PrepareRecEventAndRootFile(), and Run().

RecEventFile::Mode RecDataWriterNG::RecDataWriter::fRootOutputFileMode = RecEventFile::eWrite
private

Definition at line 102 of file RecDataWriter.h.

Referenced by PrepareRecEventAndRootFile(), and ReadRootConfig().

std::string RecDataWriterNG::RecDataWriter::fRootOutputFileName
private

Definition at line 101 of file RecDataWriter.h.

Referenced by Init(), PrepareRecEventAndRootFile(), and ReadRootConfig().

int RecDataWriterNG::RecDataWriter::fVerbosity = 0
private

Definition at line 116 of file RecDataWriter.h.

Referenced by Finish(), and ReadConfig().

bool RecDataWriterNG::RecDataWriter::fWriteASCII = false
private

Definition at line 110 of file RecDataWriter.h.

Referenced by ReadAsciiConfig(), and Run().

bool RecDataWriterNG::RecDataWriter::fWriteROOT = false
private

Definition at line 103 of file RecDataWriter.h.

Referenced by PrepareRecEventAndRootFile(), ReadRootConfig(), and Run().


The documentation for this class was generated from the following files:

, generated on Tue Sep 26 2023.