10template <
typename T,
int Dim>
14 , m_attribute(mesh().m_attribute_manager.get(m_handle).attribute(m_handle.m_base_handle))
16template <
typename T,
int Dim>
22template <
typename T,
int Dim>
27template <
typename T,
int Dim>
33template <
typename T,
int Dim>
36 return mesh().m_attribute_manager;
39template <
typename T,
int Dim>
42 return mesh().m_attribute_manager;
46template <
typename T,
int Dim>
50template <
typename T,
int Dim>
53 return attribute().reserved_size();
56template <
typename T,
int Dim>
59 return attribute().dimension();
62template <
typename T,
int Dim>
65 return attribute().default_value();
68template <
typename T,
int Dim>
71 return attribute_manager().get(m_handle);
73template <
typename T,
int Dim>
76 return attribute_manager().get(m_handle);
78template <
typename T,
int Dim>
83template <
typename T,
int Dim>
88template <
typename T,
int Dim>
93template <
typename T,
int Dim>
99template <
typename T,
int Dim>
102 return handle().primitive_type();
105template <
typename T,
int Dim>
110 auto buffer = attribute().template const_vector_attribute<D>(index);
114template <
typename T,
int Dim>
118 auto& attr = attribute();
119 auto buffer = attr.template vector_attribute<D>(index);
124template <
typename T,
int Dim>
127 auto value = attribute().const_scalar_attribute(index);
130template <
typename T,
int Dim>
133 auto& value = attribute().scalar_attribute(index);
137template <
typename T,
int Dim>
141 auto value = attribute().const_scalar_attribute(index, offset);
144template <
typename T,
int Dim>
147 auto& value = attribute().scalar_attribute(index, offset);
151template <
typename T,
int Dim>
154 attribute().set(std::move(value));
T const_scalar_attribute(const int64_t index) const
const T & default_value() const
MeshAttributes< T > & attributes()
AccessorBase(Mesh &m, const TypedAttributeHandle< T > &handle)
const TypedAttributeHandle< T > & typed_handle() const
MeshAttributeHandle handle() const
internal::ConstMapResult< T, D > ConstMapResult
const AttributeManager & attribute_manager() const
PrimitiveType primitive_type() const
void set_attribute(std::vector< T > value)
int64_t dimension() const
Attribute< T > & attribute()
MapResult< D > vector_attribute(const int64_t index)
T & scalar_attribute(const int64_t index)
int64_t reserved_size() const
ConstMapResult< D > const_vector_attribute(const int64_t index) const
internal::MapResult< T, D > MapResult
This class stores data of type T in a vector.
Contains all attributes of type T for a single mesh.
Handle that represents attributes for some mesh.