IXformDataView#

Fully qualified name: isaacsim::core::experimental::prims::IXformDataView

struct IXformDataView#

Read-only view for XformPrim data (positions, orientations, scales).

Engine-agnostic transform data read via IFabricHierarchy. All getters use lazy fetch with step-based staleness detection via ISimulationManager::getNumPhysicsSteps(). Safe to call from multiple onPhysicsStep callbacks.

Subclassed by isaacsim::core::experimental::prims::IArticulationDataView, isaacsim::core::experimental::prims::IRigidBodyDataView

Public Functions

virtual ~IXformDataView() = default#
virtual const float *getWorldPositions(int *outCount) = 0#
virtual const float *getWorldOrientations(int *outCount) = 0#
virtual const float *getLocalTranslations(int *outCount) = 0#
virtual const float *getLocalOrientations(int *outCount) = 0#
virtual const float *getLocalScales(int *outCount) = 0#
virtual const float *getWorldPositionsHost(int *outCount) = 0#
virtual const float *getWorldOrientationsHost(int *outCount) = 0#
virtual const float *getLocalTranslationsHost(int *outCount) = 0#
virtual const float *getLocalOrientationsHost(int *outCount) = 0#
virtual const float *getLocalScalesHost(int *outCount) = 0#
virtual bool update() = 0#
virtual bool allocateBufferFloat(
const char *fieldName,
size_t count,
) = 0#
virtual bool allocateBufferUint8(
const char *fieldName,
size_t count,
) = 0#
virtual uintptr_t getBufferPtr(const char *fieldName) = 0#
virtual size_t getBufferSize(const char *fieldName) = 0#
virtual int getBufferDevice() = 0#
virtual void registerFieldCallback(
const char *fieldName,
std::function<void()> callback,
) = 0#