artdaq  v3_09_01
art::ArtdaqOutput Class Referenceabstract

This is the base class for artdaq OutputModules, providing the serialization interface for art Events. More...

#include <artdaq/ArtModules/ArtdaqOutput.hh>

Inheritance diagram for art::ArtdaqOutput:
art::RootNetOutput art::TransferOutput

Public Member Functions

 ArtdaqOutput (fhicl::ParameterSet const &ps)
 ArtdaqOutput Constructor More...
 
virtual ~ArtdaqOutput ()=default
 Destructor More...
 

Protected Member Functions

virtual void openFile (FileBlock const &)
 Perform actions necessary for opening files. No-op, but derived classes may override More...
 
virtual void closeFile ()
 Perform actions necessary for closing files. No-op, but derived classes may override More...
 
virtual void respondToCloseInputFile (FileBlock const &)
 Perform actions nesessary after closing the input file. No-op, but derived classes may override More...
 
virtual void respondToCloseOutputFiles (FileBlock const &)
 Perform actions necessary after closing the output file(s). No-op, but derived classes may override More...
 
virtual void endJob ()
 Perform End-of-Job actions. No-op, but derived classes may override More...
 
void beginRun (RunPrincipal const &rp) final
 Perform Begin Run actions. Derived classes should implement beginRun_ instead. More...
 
virtual void beginRun_ (RunPrincipal const &)
 Perform Begin Run actions. No-op, but derived classes may override More...
 
void beginSubRun (SubRunPrincipal const &srp) final
 Perform Begin SubRun actions. Derived classes should implement beginSubRun_ instead. More...
 
virtual void beginSubRun_ (SubRunPrincipal const &)
 Perform Begin SubRun actions. No-op, but derived classes may override More...
 
void event (EventPrincipal const &ep) final
 Perform actions for each event. Derived classes should implement event_ instead. More...
 
virtual void event_ (EventPrincipal const &)
 Perform actions for each event. No-op, but derived classes may override More...
 
void write (EventPrincipal &ep) final
 Write an EventPrincipal to TBufferFile and send More...
 
void writeRun (RunPrincipal &rp) final
 Write a RunPrincipal to TBufferFile and send More...
 
void writeSubRun (SubRunPrincipal &srp) final
 Write a SubRunPrincipal to TBufferFile and send More...
 
void writeDataProducts (std::unique_ptr< TBufferFile > &msg, const Principal &principal, std::vector< BranchKey * > &bkv)
 Extract the data products from a Principal and write them to the TBufferFile More...
 
void extractProducts_ (Principal const &principal)
 Extract the list of Products from the given Principal More...
 
void send_init_message (History const &history)
 Send an init message downstream. Use the given History for initializing downstream art processes. More...
 
virtual void SendMessage (artdaq::FragmentPtr &msg)=0
 Send the serialized art Event downstream. Artdaq output modules should define this function. More...
 

Detailed Description

This is the base class for artdaq OutputModules, providing the serialization interface for art Events.

Definition at line 115 of file ArtdaqOutput.hh.

Constructor & Destructor Documentation

art::ArtdaqOutput::ArtdaqOutput ( fhicl::ParameterSet const &  ps)
inlineexplicit

ArtdaqOutput Constructor

Parameters
psParameterSet used to configure art::OutputModule

Definition at line 122 of file ArtdaqOutput.hh.

virtual art::ArtdaqOutput::~ArtdaqOutput ( )
virtualdefault

Destructor

Member Function Documentation

void art::ArtdaqOutput::beginRun ( RunPrincipal const &  rp)
inlinefinalprotected

Perform Begin Run actions. Derived classes should implement beginRun_ instead.

Parameters
rpRunPrincipal of new run

Definition at line 179 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::beginRun_ ( RunPrincipal const &  )
inlineprotectedvirtual

Perform Begin Run actions. No-op, but derived classes may override

Definition at line 187 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::beginSubRun ( SubRunPrincipal const &  srp)
inlinefinalprotected

Perform Begin SubRun actions. Derived classes should implement beginSubRun_ instead.

Parameters
srpSubRunPrincipal of new subrun

Definition at line 193 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::beginSubRun_ ( SubRunPrincipal const &  )
inlineprotectedvirtual

Perform Begin SubRun actions. No-op, but derived classes may override

Definition at line 201 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::closeFile ( )
inlineprotectedvirtual

Perform actions necessary for closing files. No-op, but derived classes may override

Definition at line 147 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::endJob ( )
inlineprotectedvirtual

Perform End-of-Job actions. No-op, but derived classes may override

Definition at line 170 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::event ( EventPrincipal const &  ep)
inlinefinalprotected

Perform actions for each event. Derived classes should implement event_ instead.

Parameters
epEventPrincipal of event

Definition at line 207 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::event_ ( EventPrincipal const &  )
inlineprotectedvirtual

Perform actions for each event. No-op, but derived classes may override

Definition at line 215 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::extractProducts_ ( Principal const &  principal)
inlineprotected

Extract the list of Products from the given Principal

Parameters
principalPrincipal to extract products from

Definition at line 876 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::openFile ( FileBlock const &  )
inlineprotectedvirtual

Perform actions necessary for opening files. No-op, but derived classes may override

Definition at line 139 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::respondToCloseInputFile ( FileBlock const &  )
inlineprotectedvirtual

Perform actions nesessary after closing the input file. No-op, but derived classes may override

Definition at line 152 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::respondToCloseOutputFiles ( FileBlock const &  )
inlineprotectedvirtual

Perform actions necessary after closing the output file(s). No-op, but derived classes may override

Definition at line 161 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::send_init_message ( History const &  history)
inlineprotected

Send an init message downstream. Use the given History for initializing downstream art processes.

Parameters
historyHistory to use for downstream art processes

Definition at line 298 of file ArtdaqOutput.hh.

virtual void art::ArtdaqOutput::SendMessage ( artdaq::FragmentPtr &  msg)
protectedpure virtual

Send the serialized art Event downstream. Artdaq output modules should define this function.

Parameters
msgSerialized art Event

Implemented in art::RootNetOutput, and art::TransferOutput.

void art::ArtdaqOutput::write ( EventPrincipal &  ep)
inlinefinalprotected

Write an EventPrincipal to TBufferFile and send

Parameters
epEventPrincipal to write

Definition at line 587 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::writeDataProducts ( std::unique_ptr< TBufferFile > &  msg,
const Principal &  principal,
std::vector< BranchKey * > &  bkv 
)
inlineprotected

Extract the data products from a Principal and write them to the TBufferFile

Parameters
msgOutput TBufferFile
principalPrincipal from which to extract products
bkvBranch Keys for data products

Definition at line 452 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::writeRun ( RunPrincipal &  rp)
inlinefinalprotected

Write a RunPrincipal to TBufferFile and send

Parameters
rpRunPrincipal to write

Definition at line 711 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::writeSubRun ( SubRunPrincipal &  srp)
inlinefinalprotected

Write a SubRunPrincipal to TBufferFile and send

Parameters
srpSubRunPrincipal to write

Definition at line 771 of file ArtdaqOutput.hh.


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