20struct AtParamValueMap;
21struct AtParamValueMapIterator;
52#define AiCreateFuncs(_name, _type) \
53AI_API void AiParamValueMapSet##_name(AtParamValueMap* map, const AtString name, _type value);
55AiCreateFuncs(Bool,
bool)
56AiCreateFuncs(Int,
int)
57AiCreateFuncs(Flt,
float)
58AiCreateFuncs(RGB,
AtRGB)
62AiCreateFuncs(Array,AtArray*)
63AiCreateFuncs(Ptr,
void*)
88#define AiCreateFuncs(_name, _type) \
89AI_API bool AiParamValueMapGet##_name(const AtParamValueMap* map, const AtString name, _type* value);
91AiCreateFuncs(Bool,
bool)
92AiCreateFuncs(Int,
int)
93AiCreateFuncs(Flt,
float)
94AiCreateFuncs(RGB,
AtRGB)
98AiCreateFuncs(Array,AtArray*)
99AiCreateFuncs(Ptr,
void*)
DLL export prefix for API functions (necessary for multi-platform development)
Color types and utilities.
AI_API AtParamValueMap * AiParamValueMapClone(const AtParamValueMap *src_map)
Clones an existing param value map using shallow copy (so any pointer value will be shared)
Definition: ai_map.cpp:118
AI_API void AiParamValueMapIteratorDestroy(AtParamValueMapIterator *iter)
Destroys a map iterator when it is no longer needed.
Definition: ai_map.cpp:133
AI_API AtParamValueMap * AiParamValueMap()
Creates a new map.
Definition: ai_map.cpp:46
AI_API AtParamValueMapIterator * AiParamValueMapGetIterator(const AtParamValueMap *map)
Creates a new map iterator and resets it to the first entry.
Definition: ai_map.cpp:66
AI_API const AtParamValueMapEntry * AiParamValueMapIteratorGetNext(AtParamValueMapIterator *iter)
Returns current map entry and points map iterator to the next one.
Definition: ai_map.cpp:160
AI_API void AiParamValueMapMerge(AtParamValueMap *target_map, const AtParamValueMap *src_map)
Merge all contents of a map into another map.
Definition: ai_map.cpp:85
AI_API void AiParamValueMapDestroy(AtParamValueMap *map)
Destroys a map object.
Definition: ai_map.cpp:55
AI_API bool AiParamValueMapIteratorFinished(const AtParamValueMapIterator *iter)
Returns true if there is no more key/values to iterate over.
Definition: ai_map.cpp:171
AtNodeEntry type and methods.
AtString class for fast comparisons.
Vector math types, operators and utilities.
Actual parameter value for each supported type.
Definition: ai_params.h:106
Arnold String allows for fast string comparisons.
Definition: ai_string.h:46
RGB color.
Definition: ai_color.h:32
2D point
Definition: ai_vector.h:255
3D point (single precision)
Definition: ai_vector.h:30