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

Represents the client side of a Bridge scope. More...

Inheritance diagram for mi::bridge::IClient_scope:
Inheritance graph
[legend]

Public Member Functions

virtual IClient_transaction create_transaction (neuraylib::ITransaction *transaction)=0
  Creates a Bridge transaction that wraps the provided regular transaction. More...
 

Additional Inherited Members

- Public Types inherited from mi::base::Interface_declare< 0xfff9d40, 0xaa9e, 0x4974, 0xb4, 0xcd, 0x85, 0xb9, 0x8b, 0x50, 0x8b, 0xeb >
typedef Interface_declare< id1,
id2, id3, id4, id5, id6, id7,
id8, id9, id10, id11,
IInterface
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< 0xfff9d40, 0xaa9e, 0x4974, 0xb4, 0xcd, 0x85, 0xb9, 0x8b, 0x50, 0x8b, 0xeb >
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

Represents the client side of a Bridge scope.

All data synchronization and job execution on the server requires a pair of client-side and server-side Bridge scopes. The lifetime of the server-side scope is bound to the lifetime client-side scope.

A Bridge scope can be used to create Bridge transactions.

See Also
mi::bridge::IClient_session::get_scope()

Member Function Documentation

virtual IClient_transaction* mi::bridge::IClient_scope::create_transaction ( neuraylib::ITransaction transaction)
pure virtual

Creates a Bridge transaction that wraps the provided regular transaction.

If no transaction is provided one will be created automatically. If a transaction is provided it must be in the same scope as the regular scope wrapped by this Bridge scope.

Note
"Mirroring" does not imply that all DB changes in the transaction are automatically replicated on the server. It is up to the executed jobs to indicate which DB elements need to be replicated. A Bridge transaction (and Bridge scope) just establishes the context for that.
Parameters
transaction The regular transaction to wrap, or NULL to create a new transaction.
Returns
A Bridge transaction wrapping transaction, or NULL in case of failures.