LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
art::InputSource Class Referenceabstract

#include "InputSource.h"

Inheritance diagram for art::InputSource:
art::DecrepitRelicInputSourceImplementation art::Source< T > art::EmptyEvent art::RootInput

Public Types

enum  ProcessingMode { Runs, RunsAndSubRuns, RunsSubRunsAndEvents }
 

Public Member Functions

 InputSource (ModuleDescription const &md)
 
virtual ~InputSource () noexcept=default
 
auto const & moduleDescription () const
 
auto const & processConfiguration () const
 
virtual std::unique_ptr< EventPrincipalreadEvent (EventID const &id)
 
virtual void skipEvents (int n)
 
virtual void rewind ()
 
virtual void doBeginJob ()
 
virtual void doEndJob ()
 
virtual input::ItemType nextItemType ()=0
 
virtual std::unique_ptr< FileBlockreadFile ()=0
 
virtual void closeFile ()=0
 
virtual std::unique_ptr< RunPrincipalreadRun ()=0
 
virtual std::unique_ptr< SubRunPrincipalreadSubRun (cet::exempt_ptr< RunPrincipal const > rp)=0
 
virtual std::unique_ptr< EventPrincipalreadEvent (cet::exempt_ptr< SubRunPrincipal const > srp)=0
 
virtual std::unique_ptr< RangeSetHandlerrunRangeSetHandler ()=0
 
virtual std::unique_ptr< RangeSetHandlersubRunRangeSetHandler ()=0
 

Private Attributes

ModuleDescription moduleDescription_
 

Detailed Description

Definition at line 48 of file InputSource.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

art::InputSource::InputSource ( ModuleDescription const &  md)
inlineexplicit

Definition at line 54 of file InputSource.h.

54  : moduleDescription_{md}
55  {}
ModuleDescription moduleDescription_
Definition: InputSource.h:100
virtual art::InputSource::~InputSource ( )
virtualdefaultnoexcept

Member Function Documentation

virtual void art::InputSource::closeFile ( )
pure virtual
void art::InputSource::doBeginJob ( )
virtual

Reimplemented in art::DecrepitRelicInputSourceImplementation.

Definition at line 31 of file InputSource.cc.

32 {}
void art::InputSource::doEndJob ( )
virtual

Reimplemented in art::DecrepitRelicInputSourceImplementation.

Definition at line 35 of file InputSource.cc.

36 {}
auto const& art::InputSource::moduleDescription ( ) const
inline

Definition at line 59 of file InputSource.h.

Referenced by art::EmptyEvent::readRun_(), and art::EmptyEvent::readSubRun_().

60  {
61  return moduleDescription_;
62  }
ModuleDescription moduleDescription_
Definition: InputSource.h:100
virtual input::ItemType art::InputSource::nextItemType ( )
pure virtual
auto const& art::InputSource::processConfiguration ( ) const
inline

Definition at line 64 of file InputSource.h.

References n.

Referenced by art::EmptyEvent::readRun_(), art::EmptyEvent::readSubRun_(), art::EmptyEvent::reallyReadEvent(), and art::RootInput::RootInput().

65  {
67  }
ModuleDescription moduleDescription_
Definition: InputSource.h:100
ProcessConfiguration const & processConfiguration() const
std::unique_ptr< art::EventPrincipal > art::InputSource::readEvent ( art::EventID const &  id)
virtual

Reimplemented in art::DecrepitRelicInputSourceImplementation.

Definition at line 4 of file InputSource.cc.

References art::errors::Configuration.

5 {
7  << "The application has tried to peform random access on an input source\n"
8  << "that does not support random access. Please reconfigure the program\n"
9  << "to use an input source that supports random access (e.g. RootInput)\n";
10 }
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
virtual std::unique_ptr<EventPrincipal> art::InputSource::readEvent ( cet::exempt_ptr< SubRunPrincipal const >  srp)
pure virtual
virtual std::unique_ptr<FileBlock> art::InputSource::readFile ( )
pure virtual
virtual std::unique_ptr<RunPrincipal> art::InputSource::readRun ( )
pure virtual
virtual std::unique_ptr<SubRunPrincipal> art::InputSource::readSubRun ( cet::exempt_ptr< RunPrincipal const >  rp)
pure virtual
void art::InputSource::rewind ( )
virtual

Reimplemented in art::DecrepitRelicInputSourceImplementation.

Definition at line 22 of file InputSource.cc.

References art::errors::Configuration.

23 {
25  << "The application has tried to rewind an input source\n"
26  << "that does not support rewinding. Please reconfigure the program\n"
27  << "to use an input source that supports random access (e.g. RootInput)\n";
28 }
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
virtual std::unique_ptr<RangeSetHandler> art::InputSource::runRangeSetHandler ( )
pure virtual
void art::InputSource::skipEvents ( int  n)
virtual

Reimplemented in art::DecrepitRelicInputSourceImplementation.

Definition at line 13 of file InputSource.cc.

References art::errors::Configuration.

14 {
16  << "The application has tried to peform random access on an input source\n"
17  << "that does not support random access. Please reconfigure the program\n"
18  << "to use an input source that supports random access (e.g. RootInput)\n";
19 }
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
Definition: Exception.h:66
virtual std::unique_ptr<RangeSetHandler> art::InputSource::subRunRangeSetHandler ( )
pure virtual

Member Data Documentation

ModuleDescription art::InputSource::moduleDescription_
private

Definition at line 100 of file InputSource.h.


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