2#include "Engine/Attribute/AttributeHandle.h"
13namespace enzo::script {
16using ScriptAttributeHandle = std::variant<
18 attr::AttributeHandleRO<floatT>,
19 attr::AttributeHandleRO<intT>,
20 attr::AttributeHandleRO<Vector3>,
21 attr::AttributeHandleRO<boolT>>;
28 ScriptAttributeHandle handle;
54 static constexpr size_t ownerCount = 4;
56 std::array<Offset, ownerCount> elementCounts_;
57 std::array<std::vector<ScriptAttribute>, ownerCount> attributes_;
Basic attribute, parameter, and node types for Enzo.
AttributeType
Data types available to store attribute values in.
Definition Types.h:37
AttributeOwner
The segment of geometry that owns a particular attribute.
Definition Types.h:27
Polygonal mesh primitive with point, vertex, and face attributes.
A mesh's attributes by name, with a read handle for each.
Definition MeshAttributeReader.h:42
const ScriptAttribute * getAttribute(attr::AttributeOwner owner, std::string_view name) const
Returns the attribute with a name on an owner.
Definition MeshAttributeReader.cpp:49
bool hasElement(attr::AttributeOwner owner, intT index) const
Returns whether an owner has an element at an index.
Definition MeshAttributeReader.cpp:43
An attribute of the mesh that a script reads by name.
Definition MeshAttributeReader.h:25