34 template<MFParamCategory Category,
typename T>
struct MFParamTag {
39 std::conditional_t<Category == MFParamCategory::SingleInput, VArray<T>,
MutableSpan<T>>;
97 return interface_type_;
104 switch (interface_type_) {
115 switch (interface_type_) {
142 return interface_type_ ==
Output;
151 return a.interface_type_ ==
b.interface_type_ &&
a.data_type_ ==
b.data_type_;
#define BLI_assert_unreachable()
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
static MFDataType ForVector()
Category category() const
static MFDataType ForSingle()
MFDataType data_type() const
static MFParamType ForVectorInput(const CPPType &base_type)
bool is_output_or_mutable() const
static MFParamType ForSingleOutput(const CPPType &type)
static MFParamType ForMutableSingle(const CPPType &type)
InterfaceType interface_type() const
friend bool operator!=(const MFParamType &a, const MFParamType &b)
static MFParamType ForVectorOutput(const CPPType &base_type)
friend bool operator==(const MFParamType &a, const MFParamType &b)
static MFParamType ForMutableVector(const CPPType &base_type)
MFParamCategory category() const
MFParamType(InterfaceType interface_type, MFDataType data_type)
static MFParamType ForSingleInput(const CPPType &type)
bool is_input_or_mutable() const
bool operator==(const FieldNode &a, const FieldNode &b)
bool operator!=(const FieldNode &a, const FieldNode &b)
static const pxr::TfToken b("b", pxr::TfToken::Immortal)
std::conditional_t< Category==MFParamCategory::SingleInput, VArray< T >, MutableSpan< T > > array_type
static constexpr MFParamCategory category