33 #include <agrum/PRM/PRM.h> 34 #include <agrum/PRM/PRMFactory.h> 35 #include <agrum/PRM/o3prm/O3NameSolver.h> 36 #include <agrum/PRM/o3prm/O3prm.h> 37 #include <agrum/tools/core/hashTable.h> 38 #include <agrum/tools/core/set.h> 40 #ifndef GUM_PRM_O3PRM_O3SYSTEM_FACTORY_H 41 # define GUM_PRM_O3PRM_O3SYSTEM_FACTORY_H 56 template <
typename GUM_SCALAR >
61 O3NameSolver< GUM_SCALAR >& solver,
62 ErrorsContainer& errors);
81 void addInstances__(PRMFactory< GUM_SCALAR >& factory, O3System& sys);
92 const O3Instance& inst);
104 # include <agrum/PRM/o3prm/O3SystemFactory_tpl.h> 107 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS O3SystemFactory(O3SystemFactory< GUM_SCALAR > &&src)
O3SystemFactory< GUM_SCALAR > & operator=(O3SystemFactory< GUM_SCALAR > &&src)
ErrorsContainer * errors__
bool checkSystem__(O3System &sys)
INLINE void emplace(Args &&... args)
Builds gum::prm::PRMSystem from gum::prm::o3prm::O3System.
void addAssignments__(PRMFactory< GUM_SCALAR > &factory, O3System &sys)
void addIncrements__(PRMFactory< GUM_SCALAR > &factory, O3System &sys)
O3SystemFactory(const O3SystemFactory< GUM_SCALAR > &src)
bool checkParameters__(const PRMClass< GUM_SCALAR > &type, const O3Instance &inst)
bool checkInstance__(O3System &sys)
bool checkIncrements__(O3System &sys)
ParamScopeData(const std::string &s, const PRMReferenceSlot< GUM_SCALAR > &ref, Idx d)
bool checkAssignments__(O3System &sys)
void addInstances__(PRMFactory< GUM_SCALAR > &factory, O3System &sys)
O3SystemFactory< GUM_SCALAR > & operator=(const O3SystemFactory< GUM_SCALAR > &src)
O3NameSolver< GUM_SCALAR > * solver__
O3SystemFactory(PRM< GUM_SCALAR > &prm, O3PRM &o3_prm, O3NameSolver< GUM_SCALAR > &solver, ErrorsContainer &errors)
HashTable< std::string, O3Instance *> nameMap__
PRM< GUM_SCALAR > * prm__