49#ifndef GUM_O3PRMR_CONTEXT_H
50#define GUM_O3PRMR_CONTEXT_H
109 std::string
toString()
const override;
123 std::string
toString()
const override;
127 template < GUM_Numeric GUM_SCALAR >
142 std::string
toString()
const override;
146 template < GUM_Numeric GUM_SCALAR >
159 std::string
toString()
const override;
163 template < GUM_Numeric GUM_SCALAR >
174 std::string
toString()
const override;
181 template < GUM_Numeric GUM_SCALAR >
194 std::string
name()
const;
196 std::vector< O3prmrCommand* >
commands()
const;
197 void addObserve(
int line, std::string_view leftValue, std::string_view rightValue);
199 void addQuery(
int line, std::string_view value);
204 virtual std::string
toString()
const;
215 template < GUM_Numeric GUM_SCALAR >
236 std::vector< ImportCommand* >
imports()
const;
237 void addImport(
int line, std::string_view
import, std::string_view alias);
238 void addImport(
int line, std::string_view
import,
bool ismain);
242 std::vector< O3prmrSession< GUM_SCALAR >* >
sessions()
const;
245 virtual std::string
toString()
const;
250#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
251# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
252# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
253# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
254# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
261#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
262# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
263# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
264# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
265# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
272#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
273# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
274# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
275# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
276# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
283#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
284# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
285# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
286# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
287# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
294#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
295# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
296# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
297# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
298# ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
Inline implementation of non-template classes in O3prmrContext.
Implementation of O3prmReader.
This abstract class is used as base class for all inference class on PRM<GUM_SCALAR>.
std::pair< const PRMInstance< GUM_SCALAR > *, const PRMAttribute< GUM_SCALAR > * > Chain
Code alias.
A PRMSystem is a container of PRMInstance and describe a relational skeleton.
ImportCommand(int line, std::string_view value, std::string_view alias)
std::string toString() const
ImportCommand(const ImportCommand &c)
This is an abstract class.
virtual ~O3prmrCommand()=default
O3prmrCommand(const O3prmrCommand &c)
virtual RequestType type() const =0
virtual std::string toString() const =0
std::vector< ImportCommand * > m_imports
ImportCommand * m_mainImport
void addImport(int line, std::string_view import, std::string_view alias)
std::vector< O3prmrSession< GUM_SCALAR > * > sessions() const
void addSession(const O3prmrSession< GUM_SCALAR > &session)
virtual std::string toString() const
std::vector< ImportCommand * > imports() const
std::vector< O3prmrSession< GUM_SCALAR > * > m_sessions
O3prmrContext(std::string_view filename="")
const ImportCommand * mainImport() const
std::string aliasToImport(std::string_view alias)
void setPackage(std::string_view package)
std::string filename() const
O3prmrContext & operator+=(const O3prmrContext &c)
std::string package() const
This class contains a o3prmr session.
O3prmrSession & operator+=(const O3prmrSession &c)
O3prmrSession(std::string_view name="")
std::vector< O3prmrCommand * > commands() const
void addSetEngine(int line, std::string_view value)
void addUnobserve(int line, std::string_view value)
std::string m_name
The session name;.
virtual std::string toString() const
void addObserve(int line, std::string_view leftValue, std::string_view rightValue)
void addQuery(int line, std::string_view value)
void addSetGndEngine(int line, std::string_view value)
std::vector< O3prmrCommand * > m_commands
A sequence of commands.
std::map< const PRMSystem< GUM_SCALAR > *, PRMInference< GUM_SCALAR > * > m_infEngineMap
void addCommand(const O3prmrCommand *command)
std::string toString() const override
RequestType type() const override
PRMInference< GUM_SCALAR >::Chain chain
const PRMSystem< GUM_SCALAR > * system
Tensor< GUM_SCALAR > potentiel
ObserveCommand(int line, std::string_view leftValue, std::string_view rightValue)
const PRMSystem< GUM_SCALAR > * system
PRMInference< GUM_SCALAR >::Chain chain
RequestType type() const override
std::string toString() const override
QueryCommand(int line, std::string_view val)
SetEngineCommand(const SetEngineCommand &c)
std::string toString() const override
RequestType type() const override
SetEngineCommand(int line, std::string_view value)
SetGndEngineCommand(const SetGndEngineCommand &c)
RequestType type() const override
std::string toString() const override
SetGndEngineCommand(int line, std::string_view value)
UnobserveCommand(int line, std::string_view value)
PRMInference< GUM_SCALAR >::Chain chain
const PRMSystem< GUM_SCALAR > * system
std::string toString() const override
RequestType type() const override
namespace for all probabilistic relational models entities
gum is the global namespace for all aGrUM entities