Description
Optix Engine that is responsible for managing all render-based sensors.
The is the interface between the dynamic simulation and the rendering/ray tracing. All ray tracing code is setup and managed via this class.
#include <ChOptixEngine.h>
Public Member Functions | |
| ChOptixEngine (ChSystem *sys, int device_id, int max_scene_reflections=9, bool verbose=false) | |
| Class constructor. More... | |
| ~ChOptixEngine () | |
| Class destructor. | |
| void | AssignSensor (std::shared_ptr< ChOptixSensor > sensor) |
| Add a sensor for this engine to manage and update. More... | |
| void | UpdateSensors (std::shared_ptr< ChScene > scene) |
| Updates the sensors if they need to be updated based on simulation time and last update time. More... | |
| void | ConstructScene () |
| Tells the optix manager to construct the scene from scratch, translating all objects from Chrono to Optix. | |
| int | GetDevice () |
| Way to query the device ID on which the engine is running. More... | |
| int | GetNumSensor () |
| Query the number of sensors for which this engine is responsible. More... | |
| std::vector< std::shared_ptr< ChOptixSensor > > | GetSensor () |
| Gives the user the optix context. More... | |
Constructor & Destructor Documentation
◆ ChOptixEngine()
| chrono::sensor::ChOptixEngine::ChOptixEngine | ( | ChSystem * | sys, |
| int | device_id, | ||
| int | max_scene_reflections = 9, |
||
| bool | verbose = false |
||
| ) |
Class constructor.
- Parameters
-
sys Pointer to the ChSystem that defines the simulation device_id The id of the GPU which this engine is running on max_scene_reflections The maximum number of ray recursions that should be allowed by this engine verbose Sets verbose level for the engine
Member Function Documentation
◆ AssignSensor()
| void chrono::sensor::ChOptixEngine::AssignSensor | ( | std::shared_ptr< ChOptixSensor > | sensor | ) |
Add a sensor for this engine to manage and update.
- Parameters
-
sensor A shared pointer to an Optix-based sensor
◆ GetDevice()
|
inline |
Way to query the device ID on which the engine is running.
CANNOT BE MODIFIED since the engine will have been already constructed
- Returns
- the GPU ID
◆ GetNumSensor()
|
inline |
Query the number of sensors for which this engine is responsible.
- Returns
- The number of sensors managed by this engine
◆ GetSensor()
|
inline |
Gives the user the optix context.
This should be used with caution and should not be required for typical simulations.
- Returns
- The Optix context Gives the user access to the list of sensors being managed by this engine.
- the vector of Chrono sensors
◆ UpdateSensors()
| void chrono::sensor::ChOptixEngine::UpdateSensors | ( | std::shared_ptr< ChScene > | scene | ) |
Updates the sensors if they need to be updated based on simulation time and last update time.
- Parameters
-
scene The scene that should be rendered with.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_sensor/optix/ChOptixEngine.h
- /builds/uwsbel/chrono/src/chrono_sensor/optix/ChOptixEngine.cpp