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

An annotation block is an array of annotations. More...

#include <iexpression.h>

Inheritance diagram for mi::neuraylib::IAnnotation_block:

Public Member Functions

virtual Size get_size () const =0
 Returns the number of annotations in this block. More...
 
virtual const IAnnotationget_annotation (Size index) const =0
 Returns the annotation for index, or NULL if index is out of bounds. More...
 
virtual Sint32 set_annotation (Size index, const IAnnotation *annotation)=0
 Sets an annotation block at a given index. More...
 
virtual Sint32 add_annotation (IAnnotation *annotation)=0
 Adds an annotation at the end of the annotation block. 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...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x57b0ae97, ... >
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< 0x57b0ae97, ... >
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

An annotation block is an array of annotations.

Annotation blocks can be created with mi::neuraylib::IExpression_factory::create_annotation_block().

Member Function Documentation

 add_annotation()

virtual Sint32 mi::neuraylib::IAnnotation_block::add_annotation ( IAnnotation annotation)
pure virtual

Adds an annotation at the end of the annotation block.

Returns
- 0: Success.
  • -1: Invalid parameter (NULL pointer).

 get_annotation()

virtual const IAnnotation * mi::neuraylib::IAnnotation_block::get_annotation ( Size  index) const
pure virtual

Returns the annotation for index, or NULL if index is out of bounds.

 get_size()

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

Returns the number of annotations in this block.

 set_annotation()

virtual Sint32 mi::neuraylib::IAnnotation_block::set_annotation ( Size  index,
const IAnnotation annotation 
)
pure virtual

Sets an annotation block at a given index.

Returns
- 0: Success.
  • -1: Invalid parameter (NULL pointer).
  • -2: index is out of bounds.