11 #define INACTIVE false
12 #define NO_PARAMETERS 0
13 #define NOT_INSTALLED 1
15 #define INPUT "lcioInType"
16 #define OUTPUT "lcioOutType"
17 #define UNAVAILABLE "lcioUnavailableType"
18 #define DUPLICATE "lcioDuplicate"
84 "This processor is NOT installed in your Marlin binary: parameter descriptions and types lost!!");
172 const StringVec _error_desc{
"Processor has no Parameters",
"Processor not available!",
"Some Collections have Errors"};
void addDCol(CCCollection *c)
Adds a duplicate collection to this processor.
std::map< std::string, sColVecMap > ssColVecMap
std::vector< bool > _error
const std::string getError()
Returns a string with the error of the processor.
CCProcessor(bool status, const std::string &name, const std::string &type, std::shared_ptr< StringParameters > p)
sSet & getConditions()
Returns the Conditions of the processor.
bool isErrorCol(const std::string &type, const std::string &value)
Returns true if the given collection is in the unavailable or duplicate list of this processor...
handles information about LCIO collections needed by MarlinSteerCheck
std::map< std::string, ColVec > sColVecMap
void remCol(const std::string &iotype, const std::string &name, unsigned int index)
Removes collection of the given iotype ( INPUT / OUTPUT ) with the given name at the given index...
void setError(int error)
Activates an error flag in this processor ( NO_PARAMETERS=0, NOT_INSTALLED=1, COL_ERRORS=2 ) ...
std::set< std::string > sSet
const StringVec _error_desc
handles information about marlin processors and their collections needed by MarlinSteerCheck ...
sSet & getColTypeNames(const std::string &iotype)
Returns collection's types/names of a given iotype found in the processor If iotype == INPUT/OUTPUT t...
std::vector< CCCollection * > ColVec
CCCollection * popCol(ColVec &v, CCCollection *c)
void clearError(int error)
Clears an error flag in this processor ( NO_PARAMETERS=0, NOT_INSTALLED=1, COL_ERRORS=2 ) ...
void setConditions(const std::string &conditions)
Sets the processor's conditions.
bool isParamOptional(const std::string &key)
Returns true if a parameter is optional (optional means the parameter will be written out as a commen...
bool isInstalled()
Returns true if the processor is installed.
void setOptionalParam(const std::string &key, bool optional=true)
Sets a parameter as optional (if optional=true parameter is written out as a comment) ...
void writeToXML(std::ofstream &stream)
Writes this processor to a stream using the XML format.
CCProcessor & operator=(const CCProcessor &)=delete
bool hasErrors()
Returns true if the processor has errors.
const std::string & description()
Description of processor.
const std::string & getType()
Returns the Type of the processor.
bool hasCondition(const std::string &condition)
Returns true if the processor is constrained by the given condition.
std::map< std::string, std::string > ssMap
void changeStatus()
Changes the processor status ( ACTIVE->INACTIVE or INACTIVE->ACTIVE )
const std::string & getName()
Returns the Name of the processor.
ColVec & getCols(const std::string &iotype, const std::string &type_name="ALL_COLLECTIONS")
Returns collections of a given iotype ( INPUT, OUTPUT, UNAVAILABLE, DUPLICATE ) for a given name or t...
void addCol(const std::string &iotype, const std::string &name, const std::string &type, const std::string &value)
Adds a collection of the given iotype ( INPUT / OUTPUT ) with the given name, type and value...
std::shared_ptr< StringParameters > _param
const ssMap & getColHeaders(const std::string &iotype)
Returns a map with collection names and their respective types for INPUT/OUTPUT collections of this p...
bool hasParameters()
Returns true if the processor has parameters.
std::map< std::string, ssMap > sssMap
Base class for Marlin processors.
void setName(const std::string &name)
Sets the processor's name.
const std::string getStatusDesc()
Returns a string with the processor status ( "Active", "Inactive" )
bool isActive()
Returns true if the processor is active.
void addColsFromParam(std::shared_ptr< StringParameters > p)
const std::string getDescription()
Returns the Description of the processor.
bool hasErrorCols()
Returns true if the processor has collection errors.
std::shared_ptr< StringParameters > getParameters()
Returns the string parameters for this processor.
void addUCol(CCCollection *c)
Adds an unavailable collection to this processor.