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

The type of kind array. More...

#include <itype.h>

Inheritance diagram for mi::neuraylib::IType_array:

Public Member Functions

virtual const ITypeget_element_type () const =0
 Returns the type of the array elements. More...
 
virtual bool is_immediate_sized () const =0
 Indicates whether the array is immediate-sized or deferred-sized. More...
 
virtual Size get_size () const =0
 Returns the size of the array in case of immediate-sized arrays, and -1 otherwise. More...
 
virtual const char * get_deferred_size () const =0
 Returns the abstract size of the array in case of deferred-sized arrays, and NULL otherwise. More...
 
- Public Member Functions inherited from mi::neuraylib::IType_compound
virtual const ITypeget_component_type (Size index) const =0
 Returns the component type at index. More...
 
virtual Size get_size () const =0
 Returns the number of components. More...
 
- Public Member Functions inherited from mi::neuraylib::IType
virtual Kind get_kind () const =0
 Returns the kind of type. More...
 
virtual Uint32 get_all_type_modifiers () const =0
 Returns all type modifiers of a type. More...
 
virtual const ITypeskip_all_type_aliases () const =0
 Returns the base type. More...
 
virtual bool is_declarative () const =0
 Indicates whether this type is declarative or not. 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 = TK_ARRAY
 The kind of this subclass. More...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x21ab6abe, ... >
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< 0xc9ca497f, ... >
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::IType
enum  Kind {
  TK_ALIAS ,
  TK_BOOL ,
  TK_INT ,
  TK_ENUM ,
  TK_FLOAT ,
  TK_DOUBLE ,
  TK_STRING ,
  TK_VECTOR ,
  TK_MATRIX ,
  TK_COLOR ,
  TK_ARRAY ,
  TK_STRUCT ,
  TK_TEXTURE ,
  TK_LIGHT_PROFILE ,
  TK_BSDF_MEASUREMENT ,
  TK_BSDF ,
  TK_HAIR_BSDF ,
  TK_EDF ,
  TK_VDF ,
  TK_FORCE_32_BIT = 0xffffffffU
}
 The possible kinds of types. More...
 
enum  Modifier {
  MK_NONE = 0 ,
  MK_UNIFORM = 2 ,
  MK_VARYING = 4 ,
  MK_FORCE_32_BIT
}
 The possible kinds of type modifiers. More...
 
- Public Types inherited from mi::base::Interface_declare< 0x242af675, ... >
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< 0x21ab6abe, ... >
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< 0xc9ca497f, ... >
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< 0x242af675, ... >
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

The type of kind array.

Member Function Documentation

 get_deferred_size()

virtual const char * mi::neuraylib::IType_array::get_deferred_size ( ) const
pure virtual

Returns the abstract size of the array in case of deferred-sized arrays, and NULL otherwise.

 get_element_type()

virtual const IType * mi::neuraylib::IType_array::get_element_type ( ) const
pure virtual

Returns the type of the array elements.

 get_size()

virtual Size mi::neuraylib::IType_array::get_size ( ) const
pure virtual

Returns the size of the array in case of immediate-sized arrays, and -1 otherwise.

Implements mi::neuraylib::IType_compound.

 is_immediate_sized()

virtual bool mi::neuraylib::IType_array::is_immediate_sized ( ) const
pure virtual

Indicates whether the array is immediate-sized or deferred-sized.

Member Data Documentation

 s_kind

const Kind mi::neuraylib::IType_array::s_kind = TK_ARRAY
static

The kind of this subclass.