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);
79 void _addInstances_(PRMFactory< GUM_SCALAR >& factory, O3System& sys);
89 bool _checkParameters_(
const PRMClass< GUM_SCALAR >& type,
const O3Instance& inst);
101 # include <agrum/PRM/o3prm/O3SystemFactory_tpl.h> 104 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS O3SystemFactory(O3SystemFactory< GUM_SCALAR > &&src)
bool _checkAssignments_(O3System &sys)
O3SystemFactory< GUM_SCALAR > & operator=(O3SystemFactory< GUM_SCALAR > &&src)
bool _checkParameters_(const PRMClass< GUM_SCALAR > &type, const O3Instance &inst)
void _addInstances_(PRMFactory< GUM_SCALAR > &factory, O3System &sys)
INLINE void emplace(Args &&... args)
HashTable< std::string, O3Instance *> _nameMap_
bool _checkSystem_(O3System &sys)
Builds gum::prm::PRMSystem from gum::prm::o3prm::O3System.
ErrorsContainer * _errors_
O3SystemFactory(const O3SystemFactory< GUM_SCALAR > &src)
void _addIncrements_(PRMFactory< GUM_SCALAR > &factory, O3System &sys)
ParamScopeData(const std::string &s, const PRMReferenceSlot< GUM_SCALAR > &ref, Idx d)
PRM< GUM_SCALAR > * _prm_
O3NameSolver< GUM_SCALAR > * _solver_
void _addAssignments_(PRMFactory< GUM_SCALAR > &factory, O3System &sys)
O3SystemFactory< GUM_SCALAR > & operator=(const O3SystemFactory< GUM_SCALAR > &src)
bool _checkInstance_(O3System &sys)
O3SystemFactory(PRM< GUM_SCALAR > &prm, O3PRM &o3_prm, O3NameSolver< GUM_SCALAR > &solver, ErrorsContainer &errors)
bool _checkIncrements_(O3System &sys)