48 typedef map <string, Algorithm *>
AlgMap;
112 virtual void SetId(
string name,
string config);
175 bool GetParam(
const RgKey & name,
T &
p,
bool is_top_call =
true )
const ;
186 bool is_top_call =
true )
const ;
189 bool is_top_call =
true )
const ;
205 #ifndef __CINT__ // don't even try for ROOT 5 206 #include "Framework/Algorithm/Algorithm.icc" 209 #endif // _ALGORITHM_H_
Registry * GetOwnedConfig(void)
THE MAIN GENIE PROJECT NAMESPACE
friend ostream & operator<<(ostream &stream, const Algorithm &alg)
void DeleteSubstructure(void)
Registry * ExtractLowerConfig(const Registry &in, const string &alg_key) const
Split an incoming configuration Registry into a block valid for the sub-algo identified by alg_key...
AlgStatus_t fStatus
algorithm execution status
AlgMap * fOwnedSubAlgMp
local pool for owned sub-algs (taken out of the factory pool)
int GetParamVect(const std::string &comm_name, std::vector< T > &v, bool is_top_call=true) const
Handle to load vectors of parameters.
bool fOwnsSubstruc
true if it owns its substructure (sub-algs,...)
int MergeTopRegistry(const Registry &r)
Algorithm abstract base class.
AlgId fID
algorithm name and configuration set
int AddTopRegisties(const vector< Registry * > &rs, bool owns=false)
Add registries with top priority, also udated Ownerships.
map< string, Algorithm * > AlgMap
virtual const Registry & GetConfig(void) const
virtual AlgStatus_t GetStatus(void) const
Get algorithm status.
enum genie::EAlgCmp AlgCmp_t
enum genie::EAlgStatus AlgStatus_t
virtual void FindConfig(void)
virtual void Configure(const Registry &config)
void AdoptSubstructure(void)
pair< string, Algorithm * > AlgMapPair
int AddTopRegistry(Registry *rp, bool owns=true)
add registry with top priority, also update ownership
Algorithm ID (algorithm name + configuration set name)
map< string, Algorithm * >::const_iterator AlgMapConstIter
virtual const AlgId & Id(void) const
Get algorithm ID.
vector< Registry * > fConfVect
static string BuildParamVectSizeKey(const std::string &comm_name)
virtual bool AllowReconfig(void) const
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)
A registry. Provides the container for algorithm configuration parameters.
vector< bool > fOwnerships
ownership for every registry in fConfVect
int GetParamVectKeys(const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const
virtual AlgCmp_t Compare(const Algorithm *alg) const
Compare with input algorithm.
virtual void Print(ostream &stream) const
Print algorithm info.
Registry * fConfig
Summary configuration derived from fConvVect, not necessarily allocated.
virtual void SetId(const AlgId &id)
Set algorithm ID.
int AddLowRegistry(Registry *rp, bool owns=true)
add registry with lowest priority, also update ownership
Registry * ExtractLocalConfig(const Registry &in) const
bool GetParamDef(const RgKey &name, T &p, const T &def) const
bool GetParam(const RgKey &name, T &p, bool is_top_call=true) const
map< string, Algorithm * >::iterator AlgMapIter
static string BuildParamVectKey(const std::string &comm_name, unsigned int i)
const Algorithm * SubAlg(const RgKey ®istry_key) const