Enzo
Loading...
Searching...
No Matches
OperatorTable.h
1#pragma once
2
3#include <boost/config.hpp>
4#include "Engine/Network/NetworkManager.h"
5#include "Engine/Operator/GeometryOpDef.h"
6#include "Engine/Operator/OpInfo.h"
7#include "Engine/Parameter/Template.h"
8#include <boost/filesystem.hpp>
9
10
11namespace enzo::op
12{
13
14class BOOST_SYMBOL_EXPORT OperatorTable
15{
16public:
17 static void addOperator(enzo::op::OpInfo info);
18 static nt::opConstructor getOpConstructor(std::string name);
19 static const std::optional<op::OpInfo> getOpInfo(std::string name);
20 static std::vector<OpInfo> getData();
21 static boost::filesystem::path findPlugin(const std::string& undecoratedLibName);
22 // TODO: move to better spot (maybe engine class)
23 static void initPlugins();
24private:
25 static std::vector<OpInfo> opInfoStore_;
26};
27using addOperatorPtr = void (*)(OpInfo);
28}
29
Definition OperatorTable.h:15
Definition OpInfo.h:20