Blender  V3.3
Public Attributes | List of all members
LayerTypeInfo Struct Reference

Public Attributes

int size
 
const char * structname
 
int structnum
 
const char * defaultname
 
cd_copy copy
 
void(* free )(void *data, int count, int size)
 
cd_interp interp
 
void(* swap )(void *data, const int *corner_indices)
 
void(* set_default )(void *data, int count)
 
cd_validate validate
 
bool(* equal )(const void *data1, const void *data2)
 
void(* multiply )(void *data, float fac)
 
void(* initminmax )(void *min, void *max)
 
void(* add )(void *data1, const void *data2)
 
void(* dominmax )(const void *data1, void *min, void *max)
 
void(* copyvalue )(const void *source, void *dest, const int mixmode, const float mixfactor)
 
bool(* read )(CDataFile *cdf, void *data, int count)
 
bool(* write )(CDataFile *cdf, const void *data, int count)
 
size_t(* filesize )(CDataFile *cdf, const void *data, int count)
 
int(* layers_max )()
 

Detailed Description

Definition at line 103 of file customdata.cc.

Member Data Documentation

◆ add

void(* LayerTypeInfo::add) (void *data1, const void *data2)

Definition at line 166 of file customdata.cc.

Referenced by CustomData_data_add(), and CustomData_layer_has_math().

◆ copy

cd_copy LayerTypeInfo::copy

◆ copyvalue

void(* LayerTypeInfo::copyvalue) (const void *source, void *dest, const int mixmode, const float mixfactor)

Definition at line 168 of file customdata.cc.

Referenced by CustomData_data_copy_value(), and CustomData_data_mix_value().

◆ defaultname

const char* LayerTypeInfo::defaultname

◆ dominmax

void(* LayerTypeInfo::dominmax) (const void *data1, void *min, void *max)

Definition at line 167 of file customdata.cc.

Referenced by CustomData_data_dominmax(), and CustomData_layer_has_math().

◆ equal

bool(* LayerTypeInfo::equal) (const void *data1, const void *data2)

functions necessary for geometry collapse

Definition at line 163 of file customdata.cc.

Referenced by CustomData_data_equals(), and CustomData_layer_has_math().

◆ filesize

size_t(* LayerTypeInfo::filesize) (CDataFile *cdf, const void *data, int count)

a function to determine file size

Definition at line 177 of file customdata.cc.

Referenced by CustomData_external_write().

◆ free

void(* LayerTypeInfo::free) (void *data, int count, int size)

a function to free any dynamically allocated components of this layer's data (note the data pointer itself should not be freed) size should be the size of one element of this layer's data (e.g. LayerTypeInfo.size)

Definition at line 132 of file customdata.cc.

Referenced by CustomData_bmesh_free_block(), CustomData_bmesh_free_block_data(), CustomData_bmesh_free_block_data_exclude_by_type(), CustomData_bmesh_has_free(), CustomData_external_reload(), CustomData_external_write(), CustomData_free_elem(), customData_free_layer__internal(), and CustomData_layertype_is_dynamic().

◆ initminmax

void(* LayerTypeInfo::initminmax) (void *min, void *max)

Definition at line 165 of file customdata.cc.

Referenced by CustomData_data_initminmax(), and CustomData_layer_has_math().

◆ interp

cd_interp LayerTypeInfo::interp

a function to interpolate between count source elements of this layer's data and store the result in dest if weights == null or sub_weights == null, they should default to 1

weights gives the weight for each element in sources sub_weights gives the sub-element weights for each element in sources (there should be (sub element count)^2 weights per element) count gives the number of elements in sources

Note
in some cases dest pointer is in sources so all functions have to take this into account and delay applying changes while reading from sources. See bug T32395 - Campbell.

Definition at line 149 of file customdata.cc.

Referenced by CustomData_bmesh_interp(), CustomData_bmesh_interp_n(), customdata_data_transfer_interp_generic(), customdata_data_transfer_interp_normal_normals(), CustomData_interp(), and CustomData_layer_has_interp().

◆ layers_max

int(* LayerTypeInfo::layers_max) ()

a function to determine max allowed number of layers, should be null or return -1 if no limit

Definition at line 181 of file customdata.cc.

Referenced by CustomData_layertype_layers_max().

◆ multiply

void(* LayerTypeInfo::multiply) (void *data, float fac)

Definition at line 164 of file customdata.cc.

Referenced by CustomData_data_multiply(), and CustomData_layer_has_math().

◆ read

bool(* LayerTypeInfo::read) (CDataFile *cdf, void *data, int count)

a function to read data from a cdf file

Definition at line 171 of file customdata.cc.

Referenced by CustomData_external_read().

◆ set_default

void(* LayerTypeInfo::set_default) (void *data, int count)

a function to set a layer's data to default values. if null, the default is assumed to be all zeros

Definition at line 157 of file customdata.cc.

Referenced by customData_add_layer__internal(), CustomData_bmesh_set_default_n(), and CustomData_layer_ensure_data_exists().

◆ size

int LayerTypeInfo::size

◆ structname

const char* LayerTypeInfo::structname

name of the struct used, for file writing

Definition at line 107 of file customdata.cc.

Referenced by CustomData_file_write_info().

◆ structnum

int LayerTypeInfo::structnum

number of structs per element, for file writing

Definition at line 109 of file customdata.cc.

Referenced by CustomData_file_write_info(), and CustomData_verify_versions().

◆ swap

void(* LayerTypeInfo::swap) (void *data, const int *corner_indices)

a function to swap the data in corners of the element

Definition at line 152 of file customdata.cc.

Referenced by CustomData_swap_corners().

◆ validate

cd_validate LayerTypeInfo::validate

A function used by mesh validating code, must ensures passed item has valid data.

Definition at line 160 of file customdata.cc.

Referenced by CustomData_layer_validate().

◆ write

bool(* LayerTypeInfo::write) (CDataFile *cdf, const void *data, int count)

a function to write data to a cdf file

Definition at line 174 of file customdata.cc.

Referenced by CustomData_external_write().


The documentation for this struct was generated from the following file: