feat: register parameter list

This commit is contained in:
parker
2025-07-22 21:18:06 +01:00
parent 8ad6ecc299
commit c5f2dec008
14 changed files with 53 additions and 10 deletions

View File

@@ -3,7 +3,7 @@
#include <iostream>
void enzo::op::OperatorTable::addOperator(const char* internalName, const char* displayName, nt::opConstructor ctorFunc)
void enzo::op::OperatorTable::addOperator(const char* internalName, const char* displayName, nt::opConstructor ctorFunc, prm::Template templateList[])
{
std::cout << "OPERATOR TABLE ADDED\n";
std::cout << "adding operator: " << displayName << "\n";

View File

@@ -3,6 +3,7 @@
#include <boost/config.hpp>
#include "Engine/Network/NetworkManager.h"
#include "Engine/Operator/GeometryOpDef.h"
#include "Engine/Parameter/Template.h"
namespace enzo::op
@@ -17,7 +18,7 @@ struct OpInfo
class BOOST_SYMBOL_EXPORT OperatorTable
{
public:
static void addOperator(const char* internalName, const char* displayName, nt::opConstructor ctorFunc);
static void addOperator(const char* internalName, const char* displayName, nt::opConstructor ctorFunc, prm::Template templateList[]);
static nt::opConstructor getOpConstructor(std::string name);
static std::vector<OpInfo> getData();
// TODO: move to better spot (maybe engine class)
@@ -25,6 +26,6 @@ public:
private:
static std::vector<OpInfo> opInfoStore_;
};
using addOperatorPtr = void (*)(const char* internalName, const char* displayName, nt::opConstructor ctorFunc);
using addOperatorPtr = void (*)(const char* internalName, const char* displayName, nt::opConstructor ctorFunc, prm::Template templateList[]);
}

View File

@@ -0,0 +1 @@
#include "Engine/Parameter/FloatType.h"

View File

@@ -0,0 +1,12 @@
#pragma once
#include "Engine/Parameter/Type.h"
// namespace enzo::prm
// {
// class FloatType
// : public Type
// {
// public:
// };
// }

View File

@@ -1,7 +1,8 @@
#include "Engine/Parameter/Template.h"
#include "Engine/Parameter/Type.h"
enzo::prm::Template::Template()
enzo::prm::Template::Template(enzo::prm::Type type)
: type_{type}
{
}

View File

@@ -1,11 +1,15 @@
#pragma once
#include "Engine/Parameter/Type.h"
namespace enzo::prm
{
class Template
{
Template();
public:
Template(enzo::prm::Type type);
private:
enzo::prm::Type type_;
};

View File

@@ -2,10 +2,22 @@
namespace enzo::prm
{
class Type
{
enum class Type
{
STRING,
FLOAT,
INT,
};
// class Type
// {
// };
// const extern prm::Type FlOAT_TYPE;
// const extern prm::Type STRING_TYPE;
}