17 #ifndef __ATTRIBUTE_H__
18 #define __ATTRIBUTE_H__
71 void resize(
size_t num_elements);
94 return (float4 *)
data();
99 return (
float *)
data();
136 return (
const float4 *)
data();
141 return (
const float *)
data();
157 void add(
const float &f);
190 void remove(ustring name);
200 void resize(
bool reserve_only =
false);
201 void clear(
bool preserve_voxel_data =
false);
240 void add(ustring name);
245 bool find(ustring name);
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
ATTR_WARN_UNUSED_RESULT const void * element
vector< AttributeRequest > requests
bool modified(const AttributeRequestSet &other)
void add_standard(ustring name)
AttributeRequest(ustring name_)
AttributeDescriptor subd_desc
Attribute * add(ustring name, TypeDesc type, AttributeElement element)
void update(AttributeSet &&new_attributes)
AttributeSet(AttributeSet &&)=default
list< Attribute > attributes
Attribute * find(ustring name) const
void remove(ustring name)
AttributeSet(Geometry *geometry, AttributePrimitive prim)
void resize(bool reserve_only=false)
void clear(bool preserve_voxel_data=false)
ImageHandle & data_voxel()
const ImageHandle & data_voxel() const
static bool same_storage(TypeDesc a, TypeDesc b)
void add_with_weight(void *dst, void *src, float weight)
Attribute & operator=(const Attribute &other)=delete
const float4 * data_float4() const
void set(ustring name, TypeDesc type, AttributeElement element)
const float2 * data_float2() const
static AttributeStandard name_standard(const char *name)
Attribute(const Attribute &other)=delete
Transform * data_transform()
const float3 * data_float3() const
void resize(Geometry *geom, AttributePrimitive prim, bool reserve_only)
size_t element_size(Geometry *geom, AttributePrimitive prim) const
void get_uv_tiles(Geometry *geom, AttributePrimitive prim, unordered_set< int > &tiles) const
void set_data_from(Attribute &&other)
void zero_data(void *dst)
Attribute(ustring name, TypeDesc type, AttributeElement element, Geometry *geom, AttributePrimitive prim)
static const char * standard_name(AttributeStandard std)
Attribute(Attribute &&other)=default
size_t buffer_size(Geometry *geom, AttributePrimitive prim) const
const Transform * data_transform() const
size_t data_sizeof() const
const float * data_float() const
const char * data() const
#define CCL_NAMESPACE_END