IRaycastSensor#
Fully qualified name: isaacsim::sensors::experimental::physics::IRaycastSensor
-
struct IRaycastSensor#
Carbonite interface for managing C++ raycast sensors.
Casts rays per physics step using the physics umbrella API (PhysX C++ or Newton Python fallback) and stores per-ray results.
The plugin is self-driving: it subscribes to PhysX simulation events (eResumed / eStopped) and physics step events internally, so it initializes, discovers sensors, and processes each substep without any Python relay.
Lifecycle:
acquire via carb::getCachedInterface or pybind11 acquire function
createSensor() for each IsaacRaycastSensor prim (plugin self-initializes on eResumed)
getSensorReading() to read data (sensors update automatically each substep)
shutdown() on extension unload
Public Functions
-
virtual void shutdown() = 0#
Shut down the manager, destroying all sensors and freeing resources.
-
virtual bool createSensor(const char *primPath) = 0#
Create a raycast sensor for the given IsaacRaycastSensor prim.
- Parameters:
primPath – USD path to the IsaacRaycastSensor prim.
- Returns:
true on success (sensor created or already exists), false on failure.
-
virtual void removeSensor(const char *primPath) = 0#
Remove a sensor and free its resources.
- Parameters:
primPath – USD path used when the sensor was created.
-
virtual RaycastSensorReading getSensorReading(const char *primPath) = 0#
Get the latest reading for a sensor.
- Parameters:
primPath – USD path used when the sensor was created.
- Returns:
Sensor reading. isValid is false if sensor is disabled, errored, or not found.