ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Fun4AllDstOutputManager Class Reference

#include <coresoftware/blob/master/offline/framework/fun4all/Fun4AllDstOutputManager.h>

+ Inheritance diagram for Fun4AllDstOutputManager:
+ Collaboration diagram for Fun4AllDstOutputManager:

Public Member Functions

 Fun4AllDstOutputManager (const std::string &myname="DSTOUT", const std::string &filename="dstout.root")
 
 ~Fun4AllDstOutputManager () override
 
int AddNode (const std::string &nodename) override
 add a node in outputmanager
 
int AddRunNode (const std::string &nodename) override
 add a runwise node in outputmanager
 
int StripNode (const std::string &nodename) override
 not write a node in outputmanager
 
int StripRunNode (const std::string &nodename) override
 not write a runwise node in outputmanager
 
void SaveRunNode (const int i) override
 
int outfileopen (const std::string &fname) override
 opens output file
 
void Print (const std::string &what="ALL") const override
 
int Write (PHCompositeNode *startNode) override
 write starting from given node
 
int WriteNode (PHCompositeNode *thisNode) override
 write specified node
 
- Public Member Functions inherited from Fun4AllOutputManager
 ~Fun4AllOutputManager () override
 destructor
 
void Print (const std::string &what="ALL") const override
 print method (dump event selector)
 
virtual int AddEventSelector (const std::string &recomodule)
 add an event selector to the outputmanager. event will get written only if all event selectors process_event method return EVENT_OK
 
int WriteGeneric (PHCompositeNode *startNode)
 Common method, called before calling virtual Write.
 
virtual std::vector
< std::string > * 
EventSelector ()
 retrieves pointer to vector of event selector module names
 
virtual std::vector< unsigned > * RecoModuleIndex ()
 retrieves pointer to vector of event selector module ids
 
virtual int DoNotWriteEvent (std::vector< int > *retcodes) const
 decides if event is to be written or not
 
virtual size_t EventsWritten () const
 get number of Events
 
virtual void IncrementEvents (const unsigned int i)
 increment number of events
 
virtual std::string OutFileName () const
 get output file name
 
void OutFileName (const std::string &name)
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Private Attributes

PHNodeIOManagerdstOut = nullptr
 
int m_SaveRunNodeFlag = 1
 
std::set< std::string > savenodes
 
std::set< std::string > saverunnodes
 
std::set< std::string > stripnodes
 
std::set< std::string > striprunnodes
 

Additional Inherited Members

- Public Types inherited from Fun4AllBase
enum  enu_Verbosity {
  VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3,
  VERBOSITY_A_LOT = 4, VERBOSITY_MAX = INT_MAX - 10
}
 
- Protected Member Functions inherited from Fun4AllOutputManager
 Fun4AllOutputManager (const std::string &myname)
 
 Fun4AllOutputManager (const std::string &myname, const std::string &outfname)
 

Detailed Description

Definition at line 14 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 14 of file Fun4AllDstOutputManager.h

Constructor & Destructor Documentation

Fun4AllDstOutputManager::Fun4AllDstOutputManager ( const std::string &  myname = "DSTOUT",
const std::string &  filename = "dstout.root" 
)

Definition at line 18 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 18 of file Fun4AllDstOutputManager.cc

References dstOut, g4zmq::exit(), PHNodeIOManager::isFunctional(), PHWHERE, PHWrite, and PHNodeIOManager::SetCompressionLevel().

+ Here is the call graph for this function:

Fun4AllDstOutputManager::~Fun4AllDstOutputManager ( )
override

Definition at line 34 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 34 of file Fun4AllDstOutputManager.cc

References dstOut.

Member Function Documentation

int Fun4AllDstOutputManager::AddNode ( const std::string &  )
overridevirtual

add a node in outputmanager

Reimplemented from Fun4AllOutputManager.

Definition at line 40 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 40 of file Fun4AllDstOutputManager.cc

References savenodes.

Referenced by Fun4All_G4_Clusters().

+ Here is the caller graph for this function:

int Fun4AllDstOutputManager::AddRunNode ( const std::string &  )
overridevirtual

add a runwise node in outputmanager

Reimplemented from Fun4AllOutputManager.

Definition at line 46 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 46 of file Fun4AllDstOutputManager.cc

References saverunnodes.

int Fun4AllDstOutputManager::outfileopen ( const std::string &  )
overridevirtual

opens output file

Reimplemented from Fun4AllOutputManager.

Definition at line 64 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 64 of file Fun4AllDstOutputManager.cc

References dstOut, PHNodeIOManager::isFunctional(), PHWHERE, PHWrite, and PHNodeIOManager::SetCompressionLevel().

+ Here is the call graph for this function:

void Fun4AllDstOutputManager::Print ( const std::string &  what = "ALL") const
overridevirtual

Print out some info about this module.

Parameters
whatcan be used to specify what to print exactly.

Reimplemented from Fun4AllBase.

Definition at line 80 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 80 of file Fun4AllDstOutputManager.cc

References Fun4AllBase::Name(), Fun4AllOutputManager::OutFileName(), Fun4AllOutputManager::Print(), savenodes, and stripnodes.

+ Here is the call graph for this function:

void Fun4AllDstOutputManager::SaveRunNode ( const int  i)
inlineoverridevirtual

Reimplemented from Fun4AllOutputManager.

Definition at line 24 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 24 of file Fun4AllDstOutputManager.h

References m_SaveRunNodeFlag.

int Fun4AllDstOutputManager::StripNode ( const std::string &  )
overridevirtual

not write a node in outputmanager

Reimplemented from Fun4AllOutputManager.

Definition at line 52 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 52 of file Fun4AllDstOutputManager.cc

References stripnodes.

Referenced by DstCompress().

+ Here is the caller graph for this function:

int Fun4AllDstOutputManager::StripRunNode ( const std::string &  )
overridevirtual

not write a runwise node in outputmanager

Reimplemented from Fun4AllOutputManager.

Definition at line 58 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 58 of file Fun4AllDstOutputManager.cc

References striprunnodes.

int Fun4AllDstOutputManager::Write ( PHCompositeNode )
overridevirtual

write starting from given node

Reimplemented from Fun4AllOutputManager.

Definition at line 122 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 122 of file Fun4AllDstOutputManager.cc

References dstOut, PHNodeIterator::findFirst(), Fun4AllServer::instance(), Fun4AllServer::MakeNodesPersistent(), Fun4AllServer::MakeNodesTransient(), PHNode::makePersistent(), PHNode::makeTransient(), Fun4AllBase::Name(), PHWHERE, savenodes, stripnodes, Fun4AllBase::Verbosity(), and PHNodeIOManager::write().

+ Here is the call graph for this function:

int Fun4AllDstOutputManager::WriteNode ( PHCompositeNode )
overridevirtual

write specified node

Reimplemented from Fun4AllOutputManager.

Definition at line 192 of file Fun4AllDstOutputManager.cc.

View newest version in sPHENIX GitHub at line 192 of file Fun4AllDstOutputManager.cc

References dstOut, PHNodeIterator::findFirst(), Fun4AllServer::instance(), m_SaveRunNodeFlag, Fun4AllServer::MakeNodesPersistent(), Fun4AllServer::MakeNodesTransient(), PHNode::makePersistent(), PHNode::makeTransient(), Fun4AllBase::Name(), Fun4AllOutputManager::OutFileName(), PHRunTree, PHUpdate, PHWHERE, saverunnodes, striprunnodes, Fun4AllBase::Verbosity(), and PHNodeIOManager::write().

+ Here is the call graph for this function:

Member Data Documentation

PHNodeIOManager* Fun4AllDstOutputManager::dstOut = nullptr
private

Definition at line 33 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 33 of file Fun4AllDstOutputManager.h

Referenced by Fun4AllDstOutputManager(), outfileopen(), Write(), WriteNode(), and ~Fun4AllDstOutputManager().

int Fun4AllDstOutputManager::m_SaveRunNodeFlag = 1
private

Definition at line 34 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 34 of file Fun4AllDstOutputManager.h

Referenced by SaveRunNode(), and WriteNode().

std::set<std::string> Fun4AllDstOutputManager::savenodes
private

Definition at line 35 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 35 of file Fun4AllDstOutputManager.h

Referenced by AddNode(), Print(), and Write().

std::set<std::string> Fun4AllDstOutputManager::saverunnodes
private

Definition at line 36 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 36 of file Fun4AllDstOutputManager.h

Referenced by AddRunNode(), and WriteNode().

std::set<std::string> Fun4AllDstOutputManager::stripnodes
private

Definition at line 37 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 37 of file Fun4AllDstOutputManager.h

Referenced by Print(), StripNode(), and Write().

std::set<std::string> Fun4AllDstOutputManager::striprunnodes
private

Definition at line 38 of file Fun4AllDstOutputManager.h.

View newest version in sPHENIX GitHub at line 38 of file Fun4AllDstOutputManager.h

Referenced by StripRunNode(), and WriteNode().


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