DiCE API nvidia_logo_transpbg.gif Up
mi::neuraylib::Element< id1, ... > Class Template Reference

This mixin class can be used to implement the mi::neuraylib::IElement interface. More...

#include <dice.h>

Inheritance diagram for mi::neuraylib::Element< id1, ... >:

Public Member Functions

 Element ()
 Default constructor. More...
 
 Element (const Element &)
 Copy constructor. More...
 
Elementoperator= (const Element &other)
 Assignment operator. More...
 
 ~Element ()
 Destructor. More...
 
virtual Uint32 release () const
 Decrements the reference count. More...
 
virtual void get_references (ITag_set *result) const
 Empty body, i.e., leaves result unaltered. More...
 
virtual Size get_size () const
 Assumes that the size of the database element is given by sizeof. More...
 
virtual bool get_send_to_all_nodes () const
 By default, multicast distribution for database elements is enabled. More...
 
virtual bool get_offload_to_disk () const
 By default, offloading to disk is disabled. More...
 
- Public Member Functions inherited from mi::neuraylib::Base< id1, ... >
virtual const base::IInterfaceget_interface (const base::Uuid &interface_id) const
 Acquires a const interface. More...
 
virtual base::IInterfaceget_interface (const base::Uuid &interface_id)
 Acquires a mutable interface. More...
 
virtual base::Uuid get_class_id () const
 Returns the class ID corresponding to the template parameters of this mixin class. More...
 
- Public Member Functions inherited from mi::base::Interface_implement<IElement>
 Interface_implement (Uint32 initial=1)
 Constructor. More...
 
 Interface_implement (const Interface_implement<IElement> &other)
 Copy constructor. More...
 
 Interface_implement (Interface_implement &&other)
 Move constructor. More...
 
Interface_implement<IElement> & operator= (const Interface_implement<IElement> &other)
 Assignment operator. More...
 
Interface_implementoperator= (Interface_implement &&other)
 Move assignment. More...
 
virtual Uint32 retain () const
 Increments the reference count. More...
 
virtual Uint32 release () const
 Decrements the reference count. More...
 
virtual const IInterfaceget_interface (const Uuid &interface_id) const
 Acquires a const interface. More...
 
virtual IInterfaceget_interface (const Uuid &interface_id)
 Acquires a mutable interface. More...
 
Uuid get_iid () const
 Returns the interface ID of the most derived interface. More...
 

Additional Inherited Members

- Public Types inherited from mi::neuraylib::Base< id1, ... >
typedef Base< id1, ... > Self
 Own type. More...
 
typedef base::Uuid_t< id1, ... > IID
 Declares the interface ID. More...
 
- Static Public Member Functions inherited from mi::neuraylib::Base< id1, ... >
static bool compare_iid (const base::Uuid &iid)
 Compares the interface ID iid against the interface ID of this interface and its ancestors. More...
 
- Protected Member Functions inherited from mi::base::Interface_implement<IElement>
Atom32refcount () const
 Get the current refcount. More...
 

Detailed Description

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
class mi::neuraylib::Element< id1, ... >

This mixin class can be used to implement the mi::neuraylib::IElement interface.

This mixin class provides a default implementation of some of the pure virtual methods of the mi::neuraylib::IElement interface. The documentation here just lists the behavior of the default implementation, see mi::neuraylib::IElement for the documentation of the methods themselves.

Constructor & Destructor Documentation

 Element() [1/2]

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
mi::neuraylib::Element< id1, ... >::Element ( )
inline

Default constructor.

 Element() [2/2]

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
mi::neuraylib::Element< id1, ... >::Element ( const Element< id1, ... > &  )
inline

Copy constructor.

 ~Element()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
mi::neuraylib::Element< id1, ... >::~Element ( )
inline

Destructor.

Member Function Documentation

 get_offload_to_disk()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
virtual bool mi::neuraylib::Element< id1, ... >::get_offload_to_disk ( ) const
inlinevirtual

By default, offloading to disk is disabled.

 get_references()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
virtual void mi::neuraylib::Element< id1, ... >::get_references ( ITag_set result) const
inlinevirtual

Empty body, i.e., leaves result unaltered.

 get_send_to_all_nodes()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
virtual bool mi::neuraylib::Element< id1, ... >::get_send_to_all_nodes ( ) const
inlinevirtual

By default, multicast distribution for database elements is enabled.

 get_size()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
virtual Size mi::neuraylib::Element< id1, ... >::get_size ( ) const
inlinevirtual

Assumes that the size of the database element is given by sizeof.

 operator=()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
Element & mi::neuraylib::Element< id1, ... >::operator= ( const Element< id1, ... > &  other)
inline

Assignment operator.

 release()

template<Uint32 id1, Uint16 id2, Uint16 id3, Uint8 id4, Uint8 id5, Uint8 id6, Uint8 id7, Uint8 id8, Uint8 id9, Uint8 id10, Uint8 id11, class I = IElement>
virtual Uint32 mi::neuraylib::Element< id1, ... >::release ( ) const
inlinevirtual

Decrements the reference count.

Decrements the reference count of the object referenced through this interface and returns the new reference count. If the reference count dropped to zero, the object will be deleted. The operation is thread-safe.

Reimplemented from mi::base::Interface_implement<IElement>.