datatype_builder.h File Reference

Classes

struct  DataTypeComponent
 
class  DataTypeBuilderInterface
 
class  DataTypeBuilderEntry
 

Namespaces

 maxon
 

Macros

#define FOLDER_BASIC
 
#define FOLDER_ADVANCED
 
#define FOLDER_MODULES
 
#define FOLDER_STRUCTURE
 
#define MAXON_REGISTER_DATATYPEBUILDER_TYPE(TYPE, STRING, HUMAN, FOLDER)
 

Typedefs

using GetChildrenTypesCallback = Delegate< Result< Tuple< String, Bool > >(const Member &elementType, const ParametricTypeInterface *parametricType)>
 
using GetDataTypeNameDelegate = Delegate< Result< Tuple< String, String > >(DATATYPEBUILDERNAME category, const DataType &dt, const GetChildrenTypesCallback &getChildrenTypes, const ParametricTypeInterface *parentTypeId, const ParametricTypeInterface **skipParentType)>
 
using GetChildrenCountDelegate = Delegate< Tuple< Int, Int, Bool >()>
 
using InstantiateDataTypeDelegate = Delegate< Result< DataType >(const BaseArray< Member > &members)>
 
using GetParentTypeSupportDelegate = Delegate< Block< ParametricType >()>
 
using GetFolderDelegate = Delegate< Block< const Id >()>
 

Enumerations

enum class  DATATYPEBUILDERNAME {
  HUMAN_READABLE ,
  CODE_CPP
}
 

Functions

enum maxon::DATATYPEBUILDERNAME MAXON_ENUM_LIST (DATATYPEBUILDERNAME)
 
 MAXON_DATATYPE (DataTypeBuilderEntry, "net.maxon.datatype.datatypebuilderentry", MAXON_IMPLEMENTATION_MODULE("net.maxon.kernel"))
 
 MAXON_REGISTRY (DataTypeBuilderEntry, DataTypeBuilderRegistry, "net.maxon.registry.datatypebuilderregistry")
 

Variables

 HUMAN_READABLE
 
 CODE_CPP
 

Macro Definition Documentation

◆ FOLDER_BASIC

#define FOLDER_BASIC

◆ FOLDER_ADVANCED

#define FOLDER_ADVANCED

◆ FOLDER_MODULES

#define FOLDER_MODULES

◆ FOLDER_STRUCTURE

#define FOLDER_STRUCTURE

◆ MAXON_REGISTER_DATATYPEBUILDER_TYPE

#define MAXON_REGISTER_DATATYPEBUILDER_TYPE (   TYPE,
  STRING,
  HUMAN,
  FOLDER 
)

This macro allows to define a specialized data type for the resource editor and datatype ui. this function must not be used for general types like Tuple<Id, Id> etc. Please use only for your own classes wrapped into something from maxon api. e.g.: MAXON_REGISTER_DATATYPEBUILDER_TYPE(DataRef, "maxon::DataRef", "DataRef");

Variable Documentation

◆ HUMAN_READABLE

HUMAN_READABLE

◆ CODE_CPP

CODE_CPP