Main Page Class List Class Members

# Nv::Blast::ExtSync Class Reference

`#include <NvBlastExtSync.h>`

Inheritance diagram for Nv::Blast::ExtSync:

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 ExtSync * | create ()

## 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:

- sdk/extensions/physx/include/NvBlastExtSync.h