Enzo
Loading...
Searching...
No Matches
Parameter.h
1#pragma once
2#include "Engine/Parameter/Template.h"
3#include "Engine/Types.h"
4#include <boost/signals2.hpp>
5
6namespace enzo::prm
7{
9{
10public:
11 Parameter(Template prmTemplate);
12 std::string getName() const;
13 std::string getLabel() const;
14 enzo::prm::Type getType() const;
15 unsigned int getVectorSize() const;
16
17 bt::floatT evalFloat(unsigned int index=0) const;
18 bt::String evalString(unsigned int index=0) const;
19 bt::intT evalInt(unsigned int index=0) const;
20
21 void setInt(bt::intT value, unsigned int index=0);
22 void setFloat(bt::floatT value, unsigned int index=0);
23 void setString(bt::String value, unsigned int index=0);
24
25 const Template& getTemplate();
26
27 boost::signals2::signal<void ()> valueChanged;
28private:
29 Template template_;
30 std::vector<bt::floatT> floatValues_;
31 std::vector<bt::String> stringValues_;
32 std::vector<bt::intT> intValues_;
33
34};
35}
Basic attribute, parameter, and node types for Enzo.
Definition Parameter.h:9
Definition Template.h:11