MDL SDK API nvidia_logo_transpbg.gif Up
mi::neuraylib::IValue_enum Class Referenceabstract

A value of type enum. More...

#include <ivalue.h>

Inheritance diagram for mi::neuraylib::IValue_enum:

Public Member Functions

virtual const IType_enumget_type () const =0
 Returns the type of this value. More...
 
virtual Sint32 get_value () const =0
 Returns the (integer) value of this enum value. More...
 
virtual Size get_index () const =0
 Returns the index of this enum value. More...
 
virtual Sint32 set_value (Sint32 value)=0
 Sets the enum value by integer in linear time. More...
 
virtual Sint32 set_index (Size index)=0
 Sets the enum value by index. More...
 
virtual const char * get_name () const =0
 Returns the string representation of this enum value. More...
 
virtual Sint32 set_name (const char *name)=0
 Sets the enum value by string representation in linear time. More...
 
const IType_atomicget_type () const =0
 Returns the type of this value. More...
 
- Public Member Functions inherited from mi::neuraylib::IValue
virtual Kind get_kind () const =0
 Returns the kind of the value. More...
 
virtual const ITypeget_type () const =0
 Returns the type of this value. More...
 
template<class T>
const T * get_type () const
 Returns the type of this value. More...
 
- Public Member Functions inherited from mi::base::IInterface
virtual Uint32 retain () const =0
 Increments the reference count. More...
 
virtual Uint32 release () const =0
 Decrements the reference count. More...
 
virtual const IInterfaceget_interface (const Uuid &interface_id) const =0
 Acquires a const interface from another. More...
 
template<class T>
const T * get_interface () const
 Acquires a const interface from another. More...
 
virtual IInterfaceget_interface (const Uuid &interface_id)=0
 Acquires a mutable interface from another. More...
 
template<class T>
T * get_interface ()
 Acquires a mutable interface from another. More...
 
virtual Uuid get_iid () const =0
 Returns the interface ID of the most derived interface. More...
 

Static Public Attributes

static const Kind s_kind = VK_ENUM
 The kind of this subclass. More...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0xdc876204, ... >
typedef Interface_declare< id1, ... > Self
 Own type. More...
 
typedef Uuid_t< id1, ... > IID
 Declares the interface ID (IID) of this interface. More...
 
- Public Types inherited from mi::base::Interface_declare< 0xf2413c80, ... >
typedef Interface_declare< id1, ... > Self
 Own type. More...
 
typedef Uuid_t< id1, ... > IID
 Declares the interface ID (IID) of this interface. More...
 
- Public Types inherited from mi::neuraylib::IValue
enum  Kind {
  VK_BOOL ,
  VK_INT ,
  VK_ENUM ,
  VK_FLOAT ,
  VK_DOUBLE ,
  VK_STRING ,
  VK_VECTOR ,
  VK_MATRIX ,
  VK_COLOR ,
  VK_ARRAY ,
  VK_STRUCT ,
  VK_INVALID_DF ,
  VK_TEXTURE ,
  VK_LIGHT_PROFILE ,
  VK_BSDF_MEASUREMENT ,
  VK_FORCE_32_BIT = 0xffffffffU
}
 The possible kinds of values. More...
 
- Public Types inherited from mi::base::Interface_declare< 0xbf837f4a, ... >
typedef Interface_declare< id1, ... > Self
 Own type. More...
 
typedef Uuid_t< id1, ... > IID
 Declares the interface ID (IID) of this interface. More...
 
- Public Types inherited from mi::base::IInterface
typedef Uuid_t<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0> IID
 Declares the interface ID (IID) of this interface. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0xdc876204, ... >
static bool compare_iid (const Uuid &iid)
 Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0xf2413c80, ... >
static bool compare_iid (const Uuid &iid)
 Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0xbf837f4a, ... >
static bool compare_iid (const Uuid &iid)
 Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 
- Static Public Member Functions inherited from mi::base::IInterface
static bool compare_iid (const Uuid &iid)
 Compares the interface ID iid against the interface ID of this interface. More...
 

Detailed Description

A value of type enum.

Member Function Documentation

 get_index()

virtual Size mi::neuraylib::IValue_enum::get_index ( ) const
pure virtual

Returns the index of this enum value.

 get_name()

virtual const char * mi::neuraylib::IValue_enum::get_name ( ) const
pure virtual

Returns the string representation of this enum value.

 get_type()

virtual const IType_enum * mi::neuraylib::IValue_enum::get_type ( ) const
pure virtual

Returns the type of this value.

Implements mi::neuraylib::IValue_atomic.

 get_value()

virtual Sint32 mi::neuraylib::IValue_enum::get_value ( ) const
pure virtual

Returns the (integer) value of this enum value.

 set_index()

virtual Sint32 mi::neuraylib::IValue_enum::set_index ( Size  index)
pure virtual

Sets the enum value by index.

Returns
0 in case of success, -1 if index is not valid for this enum type

 set_name()

virtual Sint32 mi::neuraylib::IValue_enum::set_name ( const char *  name)
pure virtual

Sets the enum value by string representation in linear time.

Returns
0 in case of success, -1 if name is not valid for this enum type

 set_value()

virtual Sint32 mi::neuraylib::IValue_enum::set_value ( Sint32  value)
pure virtual

Sets the enum value by integer in linear time.

If there are multiple indices with the same value the one with the smallest index is chosen.

Returns
0 in case of success, -1 if value is not valid for this enum type

Member Data Documentation

 s_kind

const Kind mi::neuraylib::IValue_enum::s_kind = VK_ENUM
static

The kind of this subclass.