RavEngine
Loading...
Searching...
No Matches
physx::PxExternalStorageReportCallback< T > Class Template Referenceabstract

External storage report callback. More...

#include <PxReportCallback.h>

Inheritance diagram for physx::PxExternalStorageReportCallback< T >:
[legend]
Collaboration diagram for physx::PxExternalStorageReportCallback< T >:
[legend]

Public Member Functions

 PxExternalStorageReportCallback (T *buffer, PxU32 capacity)
 
virtual bool flushResults (PxU32 nbItems, const T *items)
 Reports query results to users.
 
virtual bool processResults (PxU32 nbItems, const T *items)=0
 Reports query results to users.
 
- Public Member Functions inherited from physx::PxReportCallback< T >
 PxReportCallback (T *buffer=NULL, PxU32 capacity=0)
 

Additional Inherited Members

- Public Attributes inherited from physx::PxReportCallback< T >
T * mBuffer
 
PxU32 mCapacity
 
PxU32 mSize
 Current number of items in the buffer. This is entirely managed by the system.
 

Detailed Description

template<class T>
class physx::PxExternalStorageReportCallback< T >

External storage report callback.

This is the same as a regular callback, except the destination buffer is a user-provided external buffer.

Typically the provided buffer can be larger here than for PxLocalStorageReportCallback, and it could even be a scratchpad-kind of memory shared by multiple sub-systems.

This would be the same as having a C-style buffer to write out results in the query interface.

This customized callback sends results to users via the processResults() function.

The capacity parameter dictates how many items can be reported at a time, i.e. how many times the flushResults/processResults function will be called by the system.

See also
PxReportCallback

Member Function Documentation

◆ flushResults()

template<class T >
virtual bool physx::PxExternalStorageReportCallback< T >::flushResults ( PxU32  nbItems,
const T *  items 
)
inlinevirtual

Reports query results to users.

This will be called by the system as many times as necessary to report all results.

Parameters
[in]nbItemsNumber of reported items
[in]itemsarray of reported items
Returns
true to continue the query, false to abort the query

Implements physx::PxReportCallback< T >.

◆ processResults()

template<class T >
virtual bool physx::PxExternalStorageReportCallback< T >::processResults ( PxU32  nbItems,
const T *  items 
)
pure virtual

Reports query results to users.

Parameters
[in]nbItemsNumber of reported items
[in]itemsarray of reported items
Returns
true to continue the query, false to abort the query

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