artdaq  v3_12_02
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 ()
 Send an init message downstream. 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 88 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 95 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 150 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 158 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 164 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 172 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 118 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 141 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 178 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 186 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 790 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 110 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 123 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 132 of file ArtdaqOutput.hh.

void art::ArtdaqOutput::send_init_message ( )
inlineprotected

Send an init message downstream.

Definition at line 268 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 526 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 411 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 633 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 689 of file ArtdaqOutput.hh.


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