1#line 1 "D:/Jenkins/workspace/EMS/ECG/ufe/full/ufe-full-python3.13-windows/ufe/include/attribute.h"
39 typedef std::shared_ptr<Attribute>
Ptr;
44 static constexpr char kInvalid[] =
"Invalid";
45 static constexpr char kBool[] =
"Bool";
46 static constexpr char kInt[] =
"Int";
47 static constexpr char kUInt[] =
"UInt";
48 static constexpr char kFloat[] =
"Float";
49 static constexpr char kDouble[] =
"Double";
50 static constexpr char kString[] =
"String";
51 static constexpr char kColorFloat3[] =
"ColorFloat3";
52 static constexpr char kColorFloat4[] =
"ColorFloat4";
53 static constexpr char kFilename[] =
"Filename";
54 static constexpr char kEnumString[] =
"EnumString";
55 static constexpr char kInt3[] =
"Int3";
56 static constexpr char kFloat2[] =
"Float2";
57 static constexpr char kFloat3[] =
"Float3";
58 static constexpr char kFloat4[] =
"Float4";
59 static constexpr char kDouble3[] =
"Double3";
60 static constexpr char kMatrix3d[] =
"Matrix3d";
61 static constexpr char kMatrix4d[] =
"Matrix4d";
62 static constexpr char kBoolArray[] =
"BoolArray";
63 static constexpr char kIntArray[] =
"IntArray";
64 static constexpr char kUIntArray[] =
"UIntArray";
65 static constexpr char kFloatArray[] =
"FloatArray";
66 static constexpr char kDoubleArray[] =
"DoubleArray";
67 static constexpr char kStringArray[] =
"StringArray";
68 static constexpr char kInt2Array[] =
"Int2Array";
69 static constexpr char kFloat2Array[] =
"Float2Array";
70 static constexpr char kDouble2Array[] =
"Double2Array";
71 static constexpr char kInt3Array[] =
"Int3Array";
72 static constexpr char kFloat3Array[] =
"Float3Array";
73 static constexpr char kDouble3Array[] =
"Double3Array";
74 static constexpr char kInt4Array[] =
"Int4Array";
75 static constexpr char kFloat4Array[] =
"Float4Array";
76 static constexpr char kDouble4Array[] =
"Double4Array";
77 static constexpr char kColorFloat3Array[] =
"ColorFloat3Array";
78 static constexpr char kColorFloat4Array[] =
"ColorFloat4Array";
79 static constexpr char kMatrixDouble3Array[] =
"MatrixDouble3Array";
80 static constexpr char kMatrixDouble4Array[] =
"MatrixDouble4Array";
81 static constexpr char kGeneric[] =
"Generic";
145 static constexpr char kLocked[] =
"Locked";
210 typedef std::shared_ptr<AttributeGeneric>
Ptr;
212 using Attribute::Attribute;
220 virtual
std::
string nativeType() const = 0;
228 typedef std::shared_ptr<AttributeFilename>
Ptr;
230 using Attribute::Attribute;
242 virtual
bool isDefault() const = 0;
245 virtual
void set(const
std::
string& value) = 0;
248 virtual
void reset() = 0;
272 typedef std::shared_ptr<AttributeEnumString>
Ptr;
275 using Attribute::Attribute;
287 virtual
bool isDefault() const = 0;
290 virtual
void set(const
std::
string& value) = 0;
293 virtual
void reset() = 0;
321 typedef std::shared_ptr<TypedAttribute<T>>
Ptr;
323 using Attribute::Attribute;
331 virtual T
get() const = 0;
335 virtual
bool isDefault() const = 0;
338 virtual
void set(const T& value) = 0;
341 virtual
void reset() = 0;
Array is a container class that encapsulates dynamic sized arrays.
Attribute which has a list of strings as enumerated values.
std::shared_ptr< AttributeEnumString > Ptr
std::vector< std::string > EnumValues
Attribute which represents a filename.
std::shared_ptr< AttributeFilename > Ptr
Generic attribute which doesn't match any defined type.
std::shared_ptr< AttributeGeneric > Ptr
Abstract base class for Attribute interface.
virtual UndoableCommand::Ptr clearMetadataCmd(const std::string &key)
virtual std::string documentation() const =0
SceneItem::Ptr sceneItem() const
virtual std::string displayName() const
virtual bool setMetadata(const std::string &key, const Value &value)=0
Attribute & operator=(const Attribute &)=delete
virtual UndoableCommand::Ptr setCmd(const Value &value)=0
const SceneItem::Ptr fItem
virtual std::string string() const =0
bool operator!=(const Attribute &rhs) const
virtual UndoableCommand::Ptr setMetadataCmd(const std::string &key, const Value &value)
Attribute(const SceneItem::Ptr &)
Constructor.
virtual std::string name() const =0
virtual Value getMetadata(const std::string &key) const =0
Attribute & operator=(Attribute &&)=delete
virtual Type type() const =0
std::shared_ptr< Attribute > Ptr
Attribute(Attribute &&)=delete
virtual bool clearMetadata(const std::string &key)=0
bool operator==(const Attribute &rhs) const
virtual bool hasValue() const =0
virtual Value value() const =0
virtual bool hasMetadata(const std::string &key) const =0
Returns true if metadata key has a non-empty value.
Attribute(const Attribute &)=delete
std::shared_ptr< SceneItem > Ptr
Typed attribute template for creating a specialized type.
std::shared_ptr< TypedAttribute< T > > Ptr
Abstract base class for undoable commands.
std::shared_ptr< UndoableCommand > Ptr
Value class that can hold a wide set of types.
std::string string(const Path &path)
Typed square matrix template.
Typed vector template for creating a specialized vector with N elements.
Definition of macros for symbol visibility.