1 #ifndef EXPR_ClassFactory_H
2 #define EXPR_ClassFactory_H
5 #include "CORE_ClassFactory.h"
7 #include "EXPR_ElementaryGeometryNode.h"
8 #include "EXPR_OperatorNode.h"
9 #include "EXPR_Function.h"
60 inline static CORE_UniquePointer<EXPR_ClassFactory>
New() {
76 static void GetAvailableGeometries(std::vector<CORE_UniquePointer<EXPR_ElementaryGeometryNode>>& geometries);
88 std::vector<CORE_UniquePointer<EXPR_OperatorNode>>& operators);
103 virtual CORE_UniquePointer<CORE_Object>
NewInstance(
const tString& name,
this class describes a class factory to generate classes
Definition: CORE_ClassFactory.h:24
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:113
This class is an list of options.
Definition: CORE_OptionsList.h:36
this class describes a class factory to generate classes for the math/geometry/expr Package
Definition: EXPR_ClassFactory.h:18
static void GetAvailableFunctions(std::vector< CORE_UniquePointer< EXPR_Function >> &functions)
return all the functions available
Definition: EXPR_ClassFactory.cpp:61
static void GetAvailableUnaryOperators(std::vector< CORE_UniquePointer< EXPR_OperatorNode >> &operators)
return all the unary operators available
Definition: EXPR_ClassFactory.cpp:43
virtual CORE_UniquePointer< CORE_Object > NewInstance(const tString &name, const CORE_OptionsList &newParameters) const override
create an instance of a class
Definition: EXPR_ClassFactory.cpp:70
static void GetAvailableBinaryOperators(const tUCInt &priority, std::vector< CORE_UniquePointer< EXPR_OperatorNode >> &operators)
return all the binary operators with the priority available
Definition: EXPR_ClassFactory.cpp:47
virtual ~EXPR_ClassFactory(void)
destroy a EXPR_ClassFactory
Definition: EXPR_ClassFactory.cpp:30
static void GetAvailableGeometries(std::vector< CORE_UniquePointer< EXPR_ElementaryGeometryNode >> &geometries)
return all the geometries available
Definition: EXPR_ClassFactory.cpp:33
EXPR_ClassFactory()
build a EXPR_ClassFactory
Definition: EXPR_ClassFactory.cpp:26
static CORE_UniquePointer< EXPR_ClassFactory > New()
create a shared pointer to the class factory
Definition: EXPR_ClassFactory.h:60