SurfaceGripperComponent#

Fully qualified name: isaacsim::robot::surface_gripper::SurfaceGripperComponent

class SurfaceGripperComponent : public isaacsim::core::includes::ComponentBase<pxr::UsdPrim>#

Component class for managing Surface Gripper functionality.

This class represents a surface gripper component that can be attached to a robot to enable gripping functionality. It manages the D6 joints that act as attachment points for the gripper.

Public Functions

SurfaceGripperComponent() = default#

Default constructor.

virtual ~SurfaceGripperComponent() = default#

Virtual destructor.

virtual void initialize(
const pxr::UsdPrim &prim,
const pxr::UsdStageWeakPtr stage,
)#

Initializes the surface gripper component.

Parameters:
  • prim[in] USD prim representing the surface gripper

  • stage[in] USD stage containing the prim

virtual void onComponentChange()#

Called when component properties change.

Updates the gripper’s configuration when component properties are modified

virtual void onStart()#

Called when the gripper starts.

virtual void onPhysicsStep(double dt)#

Called each physics step to update gripper state.

virtual void preTick()#

Called before each tick to prepare sensor state.

virtual void tick()#

Called each tick to update the gripper state.

virtual void onStop()#

Called when the gripper stops.

virtual bool setGripperStatus(const std::string &status)#

Sets the gripper status to open or closed.

Parameters:

status[in] New status for the gripper (“Open” or “Closed”)

Returns:

True if the status was changed successfully

inline std::string getGripperStatus() const#

Gets the current status of the gripper.

Returns:

Current status (“Open” or “Closed”)

inline std::string getPrimPath() const#

Gets the prim path of this gripper.

Returns:

The USD prim path as a string

inline std::vector<std::string> getGrippedObjects() const#

Gets the list of currently gripped objects.

Returns:

Vector of prim paths for gripped objects

inline virtual void onPhysicsStep(float dt)#

Called during each physics simulation step.

Override this to implement physics-based behavior

Parameters:

dt[in] Time step size in seconds

inline virtual void onRenderEvent()#

Called for each rendered frame.

Override this to implement render-specific behavior or visual updates

inline virtual void updateTimestamp(
double timeSeconds,
double dt,
int64_t timeNano,
)#

Updates the component’s internal timing information.

Maintains synchronized timing state across the component

Parameters:
  • timeSeconds[in] Current simulation time in seconds

  • dt[in] Time step size in seconds

  • timeNano[in] Current simulation time in nanoseconds

inline pxr::UsdPrim &getPrim()#

Retrieves the component’s USD prim.

Returns:

Reference to the component’s USD prim

inline bool getEnabled()#

Checks if the component is enabled.

Returns:

true if the component is enabled, false otherwise

inline uint64_t getSequenceNumber()#

Gets the component’s sequence number.

Returns:

The component’s sequence number

Public Members

bool mDoStart#

Flag indicating whether onStart should be called.

Protected Attributes

pxr::UsdPrim m_prim#

USD prim reference storing component settings.

pxr::UsdStageWeakPtr m_stage#

Weak pointer to the USD stage containing the prim.

usdrt::UsdStageRefPtr m_usdrtStage#

Runtime USD stage reference.

double m_timeSeconds#

Current simulation time in seconds.

int64_t m_timeNanoSeconds#

Current simulation time in nanoseconds.

double m_timeDelta#

Time delta for current tick in seconds.

uint64_t m_sequenceNumber#

Component sequence number for ordering/identification.

bool m_enabled#

Component enabled state flag.