omni::spectree::v1::IChangeListDelegateFactory

Defined in live/include/omni_spectree/Interfaces.h

struct IChangeListDelegateFactory

The change list delegate factory is the means for configuring how inbound modifications to a [spec tree](ISpecTreeClient) will be handled.

If the caller provides a custom method for instancing a [delegate](IChangeListDelegate) then all other options are ignored. If no custom handler is provided then the default delegate behaviors will be used.

Public Types

enum Options

Values:

enumerator Default

Uses the default Sdf Layer delegate.

enumerator AsyncUpdate

True to move the changelist onto a worker thread where asynchronous operations can be performed without impacting the performance of spec tree reconciliation

enumerator UseFabric

True to commit changes to Fabric rather than Sdf.

enumerator UseFabricGeom

True to use Fabric geometry composition rather than USD.

using Handler_t = std::function<IChangeListDelegate*(std::string const &url, IChangeListConsigner &consigner)>

Public Members

IChangeListDelegate *(*create)(std::string const &url, IChangeListConsigner &consigner)

Called by the spec tree prior to remote updates being reconciled.

If the value returned is not null then the tree will collect all the reconciled changes and call the CommitChangeListAsync on the delegate.

Param url

The url of for the spec tree.

Param consigner

The consigner intermediary between the tree and delegate.

bool (*configure)(Options options)

Configures the factory.

In kit, the omni.ext-usdresolver.plugin is used to configure the logic for inbound modifications.

Param options

The configuration options.

Handler_t &(*setHandler)(Handler_t &handler)

Configures the factory with a custom delegate handler modifications.

Param handler

The callback method.

Public Static Functions

static inline constexpr carb::InterfaceDesc getInterfaceDesc()

  • Returns information about this interface. Auto-generated by CARB_PLUGIN_INTERFACE(). *

Returns

The carb::InterfaceDesc struct with information about this interface.