mesh_attribute_base.h File Reference

Classes

class  CustomDataTagDisplayInterface
 
class  MeshAttributeClassInterface
 
class  CustomDataTagClassInterface
 
class  MeshAttribute
 

Namespaces

 maxon
 
 maxon::CustomDataTagClasses
 
 maxon::CustomDataTagDisplayClasses
 

Macros

#define MAXON_MESHATTRIBUTE(T, Name)
 
#define MAXON_CUSTOMDATATAG(pluginID, name, resurceID, displayID, level, floatValueCount, flags)
 

Functions

 MAXON_REGISTRY (CustomDataTagClass, CustomDataTagClasses, "net.maxon.mesh_misc.registry.customdatatagclasses")
 
 MAXON_REGISTRY (Class< CustomDataTagDisplayRef >, CustomDataTagDisplayClasses, "net.maxon.mesh_misc.registry.customdatatagdisplayclasses")
 
 MAXON_DATATYPE (MeshAttribute, "net.maxon.mesh_misc.datatype.meshattribute")
 

Macro Definition Documentation

◆ MAXON_MESHATTRIBUTE

#define MAXON_MESHATTRIBUTE (   T,
  Name 
)

A compatible datatype must be defined for each MeshAttributeClassInterface. This macro automatically generates a compatible data type out of the passed T. After this macro call, it is also necessary to declare and register the resulting DataType using MAXON_DATATYPE and MAXON_DATATYPE_REGISTER. MAXON_DATATYPE must be invoked by using as a name the passed name followed by _MESHATTRIBUTE.

Parameters
[in]TThe type to register.
[in]NameThe name to be used for the registration.

In the header file:

namespace maxon
{
MAXON_DATATYPE(VERTEXCOLOR_MESHATTRIBUTE, "net.maxon.meshattribute.vertexcolor");
}

in the source file:

namespace maxon
{
MAXON_DATATYPE_REGISTER(VERTEXCOLOR_MESHATTRIBUTE);
}

◆ MAXON_CUSTOMDATATAG

#define MAXON_CUSTOMDATATAG (   pluginID,
  name,
  resurceID,
  displayID,
  level,
  floatValueCount,
  flags 
)

This macro simplifies the process of describing the CustomDataTag information used for registration. This macro implements many of the CustomDataTagClassInterface methods automatically.

Parameters
[in]pluginIDAn unique plugin id used to register the CustomDataTag.
[in]nameThe CustomDataTag name.
[in]resurceIDThe resource id string.
[in]displayIDThe display implementation id. See CustomDataTagDisplay.
[in]levelThe disk level for the CustomDataTag.
[in]floatValueCountThe count of values used for each entry; e.g. a vector will have a floatSize = 3, this is needed to define if the tag is compatible with sds. If it is not compatible (no float based data type) pass NOTOK.
[in]flagsTag registration flags.
maxon::MAXON_DATATYPE
MAXON_DATATYPE(BitSet, "net.maxon.datatype.bitset")
maxon
The maxon namespace contains all declarations of the MAXON API.
Definition: c4d_basedocument.h:27
MAXON_MESHATTRIBUTE
#define MAXON_MESHATTRIBUTE(T, Name)
Definition: mesh_attribute_base.h:56
maxon::ColorA32
Col4< Float32, 1 > ColorA32
Definition: vector4d.h:52
MAXON_DATATYPE_REGISTER
#define MAXON_DATATYPE_REGISTER(type)
Definition: datatype.h:344