Marlin  1.17.1
 All Classes Namespaces Functions Variables Enumerations Friends Pages
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
marlin::AIDAProcessor Class Reference

Provides access to AIDA histograms, ntuples, etc. More...

#include <AIDAProcessor.h>

Inheritance diagram for marlin::AIDAProcessor:
marlin::Processor

Public Member Functions

virtual ProcessornewProcessor ()
 AIDAProcessor needs to be a singleton.
 
 AIDAProcessor (const marlin::AIDAProcessor &)=delete
 
AIDAProcessoroperator= (const marlin::AIDAProcessor &)=delete
 
virtual void init ()
 Called at the begin of the job before anything is read. More...
 
virtual void processRunHeader (LCRunHeader *run)
 Called for every run.
 
virtual void processEvent (LCEvent *evt)
 nothing processed here
 
virtual void check (LCEvent *evt)
 Fills plot with processing time.
 
virtual void end ()
 Called after data processing for clean up.
 
- Public Member Functions inherited from marlin::Processor
 Processor (const std::string &typeName)
 Possible verbosity levels. More...
 
virtual ~Processor ()
 Destructor.
 
virtual const std::string & type () const
 Return type name for the processor (as set in constructor).
 
virtual const std::string & name () const
 Return name of this processor.
 
virtual const std::string & logLevelName () const
 Return name of the local verbosity level of this processor - "" if not set.
 
virtual std::shared_ptr
< StringParameters
parameters ()
 Return parameters defined for this Processor.
 
virtual void printDescription ()
 Print information about this processor in ASCII steering file format.
 
virtual void printDescriptionXML (std::ostream &stream=std::cout)
 Print information about this processor in XML steering file format.
 
template<class T >
void printParameters ()
 Print the parameters and their values depending on the given verbosity level.
 
void printParameters ()
 Print the parameters and their values with verbosity level MESSAGE.
 
const std::string & description ()
 Description of processor.
 
bool isFirstEvent ()
 True if first event in processEvent(evt) - use this e.g. More...
 
std::string getLCIOInType (const std::string &colName)
 Return the LCIO input type for the collection colName - empty string if colName is not a registered collection name.
 
std::string getLCIOOutType (const std::string &colName)
 Return the LCIO output type for the collection colName - empty string if colName is not a registered collection name.
 
bool isInputCollectionName (const std::string &parameterName)
 True if the given parameter defines an LCIO input collection, i.e. More...
 
bool isOutputCollectionName (const std::string &parameterName)
 True if the given parameter defines an LCIO output collection.
 
virtual void setParameters (std::shared_ptr< StringParameters > parameters)
 Helper function returns the ProcessorParameter for the given name. More...
 
virtual void setName (const std::string &processorName)
 Set processor name.
 

Static Public Member Functions

static AIDA::IHistogramFactory * histogramFactory (const Processor *proc)
 Returns an AIDA histogram factory for the given processor with the current directory set to the processor's name. More...
 
static AIDA::ITupleFactory * tupleFactory (const Processor *proc)
 Returns an AIDA tuple factory for the given processor with the current directory set to the processor's name. More...
 
static AIDA::ITree * tree (const Processor *proc)
 Returns an AIDA treefor the given processor with the current directory set to the processor's name. More...
 
static AIDA::IDataPointSetFactory * dataPointSetFactory (const Processor *proc)
 Returns an AIDA dataPointSet factory for the given processor with the current directory set to the processor's name. More...
 
static AIDA::IAnalysisFactory * GetIAnalysisFactory (const Processor *proc)
 Returns an AIDA analysis factory for the given processor with the current directory set to the processor's name. More...
 

Protected Attributes

AIDA::IAnalysisFactory * _analysisFactory
 
AIDA::ITreeFactory * _treeFactory
 
AIDA::ITree * _tree
 
AIDA::IHistogramFactory * _histoFactory
 
AIDA::ITupleFactory * _tupleFactory
 
AIDA::IDataPointSetFactory * _dataPointSetFactory
 
std::string _fileType
 
std::string _fileName
 
int _compress
 
- Protected Attributes inherited from marlin::Processor
std::string _description =""
 Describes what the processor does. More...
 
std::string _typeName =""
 
std::string _processorName =""
 
std::shared_ptr< StringParameters_parameters {}
 
ProcParamMap _map {}
 
bool _isFirstEvent = false
 
LCIOTypeMap _inTypeMap {}
 
LCIOTypeMap _outTypeMap {}
 
std::string _logLevelName {}
 

Additional Inherited Members

- Protected Member Functions inherited from marlin::Processor
void setReturnValue (bool val)
 Set the return value for this processor - typically at end of processEvent(). More...
 
void setReturnValue (const std::string &name, bool val)
 Set a named return value for this processor - typically at end of processEvent() The value can be used in a condition in the steering file referred to by ProcessorName.name of the processor.
 
template<class T >
void registerProcessorParameter (const std::string &parameterName, const std::string &parameterDescription, T &parameter, const T &defaultVal, int setSize=0)
 Register a steering variable for this processor - call in constructor of processor. More...
 
void registerInputCollection (const std::string &collectionType, const std::string &parameterName, const std::string &parameterDescription, std::string &parameter, const std::string &defaultVal, int setSize=0)
 Specialization of registerProcessorParameter() for a parameter that defines an input collection - can be used fo checking the consistency of the steering file.
 
void registerOutputCollection (const std::string &collectionType, const std::string &parameterName, const std::string &parameterDescription, std::string &parameter, const std::string &defaultVal, int setSize=0)
 Specialization of registerProcessorParameter() for a parameter that defines an output collection - can be used fo checking the consistency of the steering file.
 
void registerInputCollections (const std::string &collectionType, const std::string &parameterName, const std::string &parameterDescription, StringVec &parameter, const StringVec &defaultVal, int setSize=0)
 Specialization of registerProcessorParameter() for a parameter that defines one or several input collections - can be used fo checking the consistency of the steering file.
 
template<class T >
void registerOptionalParameter (const std::string &parameterName, const std::string &parameterDescription, T &parameter, const T &defaultVal, int setSize=0)
 Same as registerProcessorParameter except that the parameter is optional. More...
 
bool parameterSet (const std::string &name)
 Tests whether the parameter has been set in the steering file.
 
void checkForExistingParameter (const std::string &parameterName)
 Tests whether the parameter has been registered before. More...
 
template<class T >
void message (const std::string &m) const
 Print message according to verbosity level of the templated parameter (one of DEBUG, MESSAGE, WARNING, ERROR ) and the global parameter "Verbosity". More...
 
template<class T >
void message (const std::basic_ostream< char, std::char_traits< char > > &m) const
 Same as message(const std::string& message) except that it allows the output of more complex messages in the argument using the log() method, e.g. More...
 
std::stringstream & log () const
 Returns an empty stringstream that is used by the message method. More...
 

Detailed Description

Provides access to AIDA histograms, ntuples, etc.

This module creates an AIDA file and histogram and tuple factories that can be used in all processors of a Marlin application.

Input - Prerequisites

No input needed for this processor. Make sure it is included in the list of active processors before any processor that books/fills histograms.

Output

none

Parameters
Compresscompression of output file 0: false >0: true (default)
FileNamefilename without extension
FileTypetype of output file xml (default) or root ( only OpenScientist)
Author
F. Gaede, DESY
Version
Id:
AIDAProcessor.h,v 1.7 2008-04-15 10:12:28 gaede Exp

Member Function Documentation

AIDA::IDataPointSetFactory * marlin::AIDAProcessor::dataPointSetFactory ( const Processor proc)
static

Returns an AIDA dataPointSet factory for the given processor with the current directory set to the processor's name.

Call right before using the factory to create dataPointSets.

Referenced by marlin::SimpleFastMCProcessor::end().

AIDA::IAnalysisFactory * marlin::AIDAProcessor::GetIAnalysisFactory ( const Processor proc)
static

Returns an AIDA analysis factory for the given processor with the current directory set to the processor's name.

Call right before using the factory.

AIDA::IHistogramFactory * marlin::AIDAProcessor::histogramFactory ( const Processor proc)
static

Returns an AIDA histogram factory for the given processor with the current directory set to the processor's name.

Call right before using the factory to create histograms.

Referenced by marlin::SimpleFastMCProcessor::check().

void marlin::AIDAProcessor::init ( )
virtual

Called at the begin of the job before anything is read.

Use to initialize the processor, e.g. book histograms.

Reimplemented from marlin::Processor.

AIDA::ITree * marlin::AIDAProcessor::tree ( const Processor proc)
static

Returns an AIDA treefor the given processor with the current directory set to the processor's name.

can be used to create subdirectories for a processor.

References marlin::Processor::name().

Referenced by marlin::SimpleFastMCProcessor::end().

AIDA::ITupleFactory * marlin::AIDAProcessor::tupleFactory ( const Processor proc)
static

Returns an AIDA tuple factory for the given processor with the current directory set to the processor's name.

Call right before using the factory to create tuples.


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