NVIDIA Iray API Home  Up
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mi::neuraylib::ITimer Class Referenceabstract

This is an abstract interface class for a timer. More...

Inheritance diagram for mi::neuraylib::ITimer:
Inheritance graph
[legend]

Public Member Functions

virtual void  timer_callback ()=0
  This function is called when the timer elapses. More...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0x654218a4, 0xc9af, 0x4c4c, 0xba, 0x9a, 0x3a, 0x16, 0x8a, 0xdd, 0x8a, 0x0f, neuraylib::ISerializable >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
neuraylib::ISerializable
Self
  Own type. More...
 
typedef Uuid_t< id1, id2, id3,
id4, id5, id6, id7, id8, id9,
id10, id11 > 
IID
  Declares the interface ID (IID) of this interface. More...
 
- Static Public Member Functions inherited from mi::base::Interface_declare< 0x654218a4, 0xc9af, 0x4c4c, 0xba, 0x9a, 0x3a, 0x16, 0x8a, 0xdd, 0x8a, 0x0f, neuraylib::ISerializable >
static bool  compare_iid (const Uuid &iid)
  Compares the interface ID iid against the interface ID of this interface and of its ancestors. More...
 

Detailed Description

This is an abstract interface class for a timer.

Its aim is to be derived from by the application writer. The concrete implementation can then be registered with the Iray API and will after that be used by Iray library.

The timer class must be serializable since a timer will potentially be sent over the cluster to different nodes. If the timer class is only ever used locally, then the serialization function can be left empty.

Note
Instances of this interface should not be created on the stack, since this might lead to premature destruction of such instances while still being in use by the Iray library.

Member Function Documentation

virtual void mi::neuraylib::ITimer::timer_callback ( )
pure virtual

This function is called when the timer elapses.

Note that the function will be called from a separate thread, not from the thread that was used to start the timer.