Iray SDK API nvidia_logo_transpbg.gif Up
mi::neuraylib::User_class< id1, ... > Class Template Reference

This mixin class should be used to implement the IUser_class interface. More...

#include <iuser_class.h>

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

Public Types

typedef base::Uuid_t< id1, ... > IID
 Declares the class ID. More...
 

Public Member Functions

 User_class ()
 Default constructor. More...
 
 User_class (const User_class &other)
 Copy constructor. More...
 
User_classoperator= (const User_class &other)
 Assignment operator. More...
 
 ~User_class ()
 Destructor. More...
 
virtual const char * get_class_name () const
 Returns a human readable class name. More...
 
virtual base::Uuid get_class_id () const
 Returns the class ID corresponding to the template parameters of this mixin class. More...
 
virtual Uint32 release () const
 Decrements the reference count. More...
 
- Public Member Functions inherited from mi::base::Interface_implement<IUser_class>
 Interface_implement (Uint32 initial=1)
 Constructor. More...
 
 Interface_implement (const Interface_implement<IUser_class> &other)
 Copy constructor. More...
 
 Interface_implement (Interface_implement &&other)
 Move constructor. More...
 
Interface_implement<IUser_class> & operator= (const Interface_implement<IUser_class> &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

- Protected Member Functions inherited from mi::base::Interface_implement<IUser_class>
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 = IUser_class>
class mi::neuraylib::User_class< id1, ... >

This mixin class should be used to implement the IUser_class interface.

This interface provides a default implementation of some of the pure virtual methods of the mi::neuraylib::IUser_class interface.

Member Typedef Documentation

 IID

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 = IUser_class>
typedef base::Uuid_t<id1,id2,id3,id4,id5,id6,id7,id8,id9,id10,id11> mi::neuraylib::User_class< id1, ... >::IID

Declares the class ID.

Constructor & Destructor Documentation

 User_class() [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 = IUser_class>
mi::neuraylib::User_class< id1, ... >::User_class ( )
inline

Default constructor.

 User_class() [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 = IUser_class>
mi::neuraylib::User_class< id1, ... >::User_class ( const User_class< id1, ... > &  other)
inline

Copy constructor.

 ~User_class()

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 = IUser_class>
mi::neuraylib::User_class< id1, ... >::~User_class ( )
inline

Destructor.

Member Function Documentation

 get_class_id()

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 = IUser_class>
virtual base::Uuid mi::neuraylib::User_class< id1, ... >::get_class_id ( ) const
inlinevirtual

Returns the class ID corresponding to the template parameters of this mixin class.

 get_class_name()

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 = IUser_class>
virtual const char * mi::neuraylib::User_class< id1, ... >::get_class_name ( ) const
inlinevirtual

Returns a human readable class name.

 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 = IUser_class>
User_class & mi::neuraylib::User_class< id1, ... >::operator= ( const User_class< 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 = IUser_class>
virtual Uint32 mi::neuraylib::User_class< 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<IUser_class>.