13 #include "ai_vector.h"
17 struct AtAOVSampleIterator;
42 #define AI_FILTER_NODE_EXPORT_METHODS(tag) \
43 AI_INSTANCE_COMMON_METHODS \
46 static AtFilterNodeMethods ai_filter_mtds = { \
50 static AtNodeMethods ai_node_mtds = { \
54 AtNodeMethods *tag = &ai_node_mtds;
76 #define filter_output_type \
77 static AtByte FilterOutputType(const AtNode* node, const AtParamValue* params, AtByte input_type)
93 #define filter_pixel \
94 static void FilterPixel(AtNode* node, AtParamValue* params, AtAOVSampleIterator* iterator, void* data_out, AtByte data_type)
117 AI_API
float AiAOVSampleIteratorGetInvDensity(
const AtAOVSampleIterator* iter);
127 AI_API
bool AiAOVSampleIteratorGetBool(
const AtAOVSampleIterator* iter);
128 AI_API
int AiAOVSampleIteratorGetInt (
const AtAOVSampleIterator* iter);
129 AI_API
float AiAOVSampleIteratorGetFlt (
const AtAOVSampleIterator* iter);
130 AI_API
AtRGB AiAOVSampleIteratorGetRGB (
const AtAOVSampleIterator* iter);
131 AI_API
AtRGBA AiAOVSampleIteratorGetRGBA(
const AtAOVSampleIterator* iter);
132 AI_API
AtVector AiAOVSampleIteratorGetVec (
const AtAOVSampleIterator* iter);
133 AI_API
AtPoint AiAOVSampleIteratorGetPnt (
const AtAOVSampleIterator* iter);
134 AI_API
AtPoint2 AiAOVSampleIteratorGetPnt2(
const AtAOVSampleIterator* iter);
135 AI_API
const void* AiAOVSampleIteratorGetPtr (
const AtAOVSampleIterator* iter);
142 AI_API
bool AiAOVSampleIteratorGetAOVBool(
const AtAOVSampleIterator* iter,
const char* name);
143 AI_API
int AiAOVSampleIteratorGetAOVInt (
const AtAOVSampleIterator* iter,
const char* name);
144 AI_API
float AiAOVSampleIteratorGetAOVFlt (
const AtAOVSampleIterator* iter,
const char* name);
145 AI_API
AtRGB AiAOVSampleIteratorGetAOVRGB (
const AtAOVSampleIterator* iter,
const char* name);
146 AI_API
AtRGBA AiAOVSampleIteratorGetAOVRGBA(
const AtAOVSampleIterator* iter,
const char* name);
147 AI_API
AtVector AiAOVSampleIteratorGetAOVVec (
const AtAOVSampleIterator* iter,
const char* name);
148 AI_API
AtPoint AiAOVSampleIteratorGetAOVPnt (
const AtAOVSampleIterator* iter,
const char* name);
149 AI_API
AtPoint2 AiAOVSampleIteratorGetAOVPnt2(
const AtAOVSampleIterator* iter,
const char* name);
150 AI_API
const void* AiAOVSampleIteratorGetAOVPtr (
const AtAOVSampleIterator* iter,
const char* name);