Iray SDK API nvidia_logo_transpbg.gif Up
mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I> Class Template Reference

This mixin class provides a default implementation for some of the methods needed by mi::bridge::IClient_job. More...

#include <ibridge_client.h>

Inheritance diagram for mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>:

Public Types

typedef Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I> Self
 Own type. More...
 
typedef base::Uuid_t<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11> IID
 Declares the interface ID. More...
 

Public Member Functions

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...
 
virtual void deserialize (neuraylib::IDeserializer *deserializer)
 Empty body. This method from the base class is not needed for client jobs. More...
 
virtual void get_references (neuraylib::ITag_set *result) const
 Empty body. The default job references no elements. More...
 
virtual void get_references (IElement_set *result) const
 Empty body. The default job references no elements. More...
 
virtual bool upload_only () const
 Returns false in the default implementation. More...
 
- Public Member Functions inherited from mi::base::Interface_implement<IClient_job>
 Interface_implement (Uint32 initial=1)
 Constructor. More...
 
 Interface_implement (const Interface_implement<IClient_job> &other)
 Copy constructor. More...
 
 Interface_implement (Interface_implement &&other)
 Move constructor. More...
 
Interface_implement<IClient_job> & operator= (const Interface_implement<IClient_job> &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...
 

Static Public Member Functions

static bool compare_iid (const base::Uuid &iid)
 Compares the interface ID iid against the interface ID of this interface and its ancestors. More...
 

Additional Inherited Members

- Protected Member Functions inherited from mi::base::Interface_implement<IClient_job>
Atom32refcount () const
 Get the current refcount. More...
 

Detailed Description

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
class mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>

This mixin class provides a default implementation for some of the methods needed by mi::bridge::IClient_job.

It is recommended to derive from this class rather than from mi::bridge::IClient_job directly.

Member Typedef Documentation

 IID

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
typedef base::Uuid_t<i_id1,i_id2,i_id3,i_id4,i_id5,i_id6,i_id7,i_id8,i_id9,i_id10,i_id11> mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::IID

Declares the interface ID.

 Self

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
typedef Client_job<i_id1,i_id2,i_id3,i_id4,i_id5,i_id6,i_id7,i_id8,i_id9,i_id10,i_id11,I> mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::Self

Own type.

Member Function Documentation

 compare_iid()

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
static bool mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::compare_iid ( const base::Uuid iid)
inlinestatic

Compares the interface ID iid against the interface ID of this interface and its ancestors.

Returns
true if iid == IID() or is equal to one of the interface IDs of its ancestors, and false otherwise.

 deserialize()

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual void mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::deserialize ( neuraylib::IDeserializer deserializer)
inlinevirtual

Empty body. This method from the base class is not needed for client jobs.

 get_class_id()

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual base::Uuid mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::get_class_id ( ) const
inlinevirtual

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

 get_interface() [1/2]

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual base::IInterface * mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::get_interface ( const base::Uuid interface_id)
inlinevirtual

Acquires a mutable interface.

If this interface is derived from or is the interface with the passed interface_id, then return a non-NULL mi::base::IInterface* that can be casted via static_cast to an interface pointer of the interface type corresponding to the passed interface_id. Otherwise return NULL.

In the case of a non-NULL return value, the caller receives ownership of the new interface pointer, whose reference count has been retained once. The caller must release the returned interface pointer at the end to prevent a memory leak.

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

 get_interface() [2/2]

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual const base::IInterface * mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::get_interface ( const base::Uuid interface_id) const
inlinevirtual

Acquires a const interface.

If this interface is derived from or is the interface with the passed interface_id, then return a non-NULL const mi::base::IInterface* that can be casted via static_cast to an interface pointer of the interface type corresponding to the passed interface_id. Otherwise return NULL.

In the case of a non-NULL return value, the caller receives ownership of the new interface pointer, whose reference count has been retained once. The caller must release the returned interface pointer at the end to prevent a memory leak.

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

 get_references() [1/2]

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual void mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::get_references ( IElement_set result) const
inlinevirtual

Empty body. The default job references no elements.

 get_references() [2/2]

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual void mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::get_references ( neuraylib::ITag_set *  result) const
inlinevirtual

Empty body. The default job references no elements.

 upload_only()

template<Uint32 i_id1, Uint16 i_id2, Uint16 i_id3, Uint8 i_id4, Uint8 i_id5, Uint8 i_id6, Uint8 i_id7, Uint8 i_id8, Uint8 i_id9, Uint8 i_id10, Uint8 i_id11, class I = IClient_job>
virtual bool mi::bridge::Client_job<i_id1, i_id2, i_id3, i_id4, i_id5, i_id6, i_id7, i_id8, i_id9, i_id10, i_id11, I>::upload_only ( ) const
inlinevirtual

Returns false in the default implementation.