49typedef map <string, Algorithm *>
AlgMap;
113 virtual void SetId(
string name,
string config);
135 virtual void Print(ostream & stream)
const;
139 static string BuildParamVectKey(
const std::string & comm_name,
unsigned int i ) ;
142 static string BuildParamMatKey(
const std::string & comm_name,
unsigned int i,
unsigned int j) ;
192 bool is_top_call =
true )
const ;
194 int GetParamVectKeys(
const std::string & comm_name, std::vector<RgKey> & k,
195 bool is_top_call =
true )
const ;
199 int GetParamMat(
const std::string & comm_name, TMatrixT<T> & mat,
200 bool is_top_call =
true )
const ;
203 bool is_top_call =
true )
const ;
205 int GetParamMatKeys(
const std::string & comm_name, std::vector<RgKey> & k,
206 bool is_top_call =
true )
const ;
213 int AddTopRegisties(
const vector<Registry*> & rs,
bool owns =
false ) ;
224#include "Framework/Algorithm/Algorithm.icc"
Algorithm ID (algorithm name + configuration set name)
Algorithm abstract base class.
Registry * GetOwnedConfig(void)
static string BuildParamMatKey(const std::string &comm_name, unsigned int i, unsigned int j)
int GetParamMat(const std::string &comm_name, TMatrixT< T > &mat, bool is_top_call=true) const
Handle to load matrix of parameters.
int GetParamMatKeys(const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const
void AdoptSubstructure(void)
AlgStatus_t fStatus
algorithm execution status
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.
int GetParamMatSym(const std::string &comm_name, TMatrixTSym< T > &mat, bool is_top_call=true) const
static string BuildParamMatColSizeKey(const std::string &comm_name)
bool fOwnsSubstruc
true if it owns its substructure (sub-algs,...)
Registry * ExtractLocalConfig(const Registry &in) const
int AddLowRegistry(Registry *rp, bool owns=true)
add registry with lowest priority, also update ownership
virtual AlgCmp_t Compare(const Algorithm *alg) const
Compare with input algorithm.
virtual const Registry & GetConfig(void) const
static string BuildParamVectSizeKey(const std::string &comm_name)
static string BuildParamMatRowSizeKey(const std::string &comm_name)
Registry * fConfig
Summary configuration derived from fConvVect, not necessarily allocated.
bool GetParam(const RgKey &name, T &p, bool is_top_call=true) const
vector< bool > fOwnerships
ownership for every registry in fConfVect
virtual void FindConfig(void)
int GetParamVectKeys(const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const
int GetParamVect(const std::string &comm_name, std::vector< T > &v, bool is_top_call=true) const
Handle to load vectors of parameters.
virtual void SetId(const AlgId &id)
Set algorithm ID.
void DeleteSubstructure(void)
int MergeTopRegistry(const Registry &r)
vector< Registry * > fConfVect
AlgId fID
algorithm name and configuration set
virtual void Configure(const Registry &config)
virtual bool AllowReconfig(void) const
bool GetParamDef(const RgKey &name, T &p, const T &def) const
virtual AlgStatus_t GetStatus(void) const
Get algorithm status.
const Algorithm * SubAlg(const RgKey ®istry_key) const
virtual void Print(ostream &stream) const
Print algorithm info.
int AddTopRegisties(const vector< Registry * > &rs, bool owns=false)
Add registries with top priority, also udated Ownerships.
AlgMap * fOwnedSubAlgMp
local pool for owned sub-algs (taken out of the factory pool)
friend ostream & operator<<(ostream &stream, const Algorithm &alg)
int AddTopRegistry(Registry *rp, bool owns=true)
add registry with top priority, also update ownership
virtual const AlgId & Id(void) const
Get algorithm ID.
static string BuildParamVectKey(const std::string &comm_name, unsigned int i)
A registry. Provides the container for algorithm configuration parameters.
THE MAIN GENIE PROJECT NAMESPACE
map< string, Algorithm * >::iterator AlgMapIter
enum genie::EAlgStatus AlgStatus_t
pair< string, Algorithm * > AlgMapPair
map< string, Algorithm * >::const_iterator AlgMapConstIter
enum genie::EAlgCmp AlgCmp_t
map< string, Algorithm * > AlgMap
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)