Nv::Blast::ExtSync Class Reference

#include <NvBlastExtSync.h>

Inheritance diagram for Nv::Blast::ExtSync:

Nv::Blast::TkEventListener

List of all members.

Public Member Functions

virtual void acquireSyncBuffer (const ExtSyncEvent *const *&buffer, uint32_t &size) const =0
virtual void applySyncBuffer (TkFramework &framework, const ExtSyncEvent **buffer, uint32_t size, TkGroup *groupForNewActors, ExtPxManager *manager=nullptr)=0
virtual uint32_t getSyncBufferSize () const =0
virtual void receive (const TkEvent *events, uint32_t eventCount)=0
virtual void release ()=0
virtual void releaseSyncBuffer ()=0
virtual void syncFamily (const ExtPxFamily &family)=0
virtual void syncFamily (const TkFamily &family)=0

Static Public Member Functions

static ExtSynccreate ()


Detailed Description

Sync Manager.

Implements TkEventListener interface. It can be directly subscribed to listen for family events.


Member Function Documentation

virtual void Nv::Blast::ExtSync::acquireSyncBuffer ( const ExtSyncEvent *const *&  buffer,
uint32_t &  size 
) const [pure virtual]

Acquire internal sync buffer.

Parameters:
[in] buffer Reference to sync event buffer pointer to be set.
[in] size Reference to the size of the buffer array to be set.

virtual void Nv::Blast::ExtSync::applySyncBuffer ( TkFramework framework,
const ExtSyncEvent **  buffer,
uint32_t  size,
TkGroup groupForNewActors,
ExtPxManager manager = nullptr 
) [pure virtual]

Apply external sync buffer on TkFramework and possibly ExtPxManager. This function call will result in respective families/actors changes in order to synchronize state.

Parameters:
[in] framework The TkFramework instance to be used.
[in] buffer Sync buffer array pointer.
[in] size Sync buffer array size.
[in] groupForNewActors TkGroup to be used for newly created actors. Can be nullptr.
[in] manager The ExtPxManager instance to be used. Can be nullptr, physics sync events will be ignored in that case.

static ExtSync* Nv::Blast::ExtSync::create (  )  [static]

Create a new ExtSync.

Returns:
the new ExtSync if successful, NULL otherwise.

virtual uint32_t Nv::Blast::ExtSync::getSyncBufferSize (  )  const [pure virtual]

The size of internal sync buffer (events count).

Returns:
the number of events in internal sync buffer.

virtual void Nv::Blast::ExtSync::receive ( const TkEvent events,
uint32_t  eventCount 
) [pure virtual]

TkEventListener interface.

Parameters:
[in] events The array of events being dispatched.
[in] eventCount The number of events in the array.

Implements Nv::Blast::TkEventListener.

virtual void Nv::Blast::ExtSync::release (  )  [pure virtual]

Release Sync manager.

virtual void Nv::Blast::ExtSync::releaseSyncBuffer (  )  [pure virtual]

Clear internal sync buffer.

virtual void Nv::Blast::ExtSync::syncFamily ( const ExtPxFamily family  )  [pure virtual]

Sync PxFamily state. Writes to internal sync buffer.

Parameters:
[in] family The ExtPxFamily to sync

virtual void Nv::Blast::ExtSync::syncFamily ( const TkFamily family  )  [pure virtual]

Sync family state. Writes to internal sync buffer.

Parameters:
[in] family The TkFamily to sync


The documentation for this class was generated from the following file: