chrono::sensor::ChVulkanSensor Class Reference

Description

Base class for sensors rendered by the experimental Vulkan RT backend.

This is intentionally kept independent from ChOptixSensor/CUDA so that the new backend can be integrated without pulling in OptiX headers.

#include <ChVulkanSensor.h>

Inheritance diagram for chrono::sensor::ChVulkanSensor:
Collaboration diagram for chrono::sensor::ChVulkanSensor:

Public Member Functions

 ChVulkanSensor (std::shared_ptr< ChBody > parent, float updateRate, ChFrame< double > offsetPose, unsigned int w, unsigned int h, VulkanPipelineType pipeline_type=VulkanPipelineType::CAMERA)
 
VulkanPipelineType GetPipelineType () const
 
void SetPipelineType (VulkanPipelineType pipeline_type)
 
unsigned int GetWidth () const
 
unsigned int GetHeight () const
 
- Public Member Functions inherited from chrono::sensor::ChSensor
 ChSensor (std::shared_ptr< ChBody > parent, float updateRate, ChFrame< double > offsetPose)
 Constructor for the base sensor class. More...
 
void SetOffsetPose (ChFrame< double > pose)
 Set the sensor's relative position and orientation. More...
 
ChFrame< double > GetOffsetPose ()
 Get the sensor's relative position and orientation. More...
 
std::shared_ptr< ChBodyGetParent () const
 Get the object to which the sensor is attached. More...
 
void SetName (std::string name)
 Set the sensor's name. More...
 
std::string GetName () const
 Get the name of the sensor. More...
 
float GetUpdateRate () const
 Get the sensor update rate (Hz). More...
 
void SetLag (float t)
 Set the lag parameter. More...
 
float GetLag () const
 Get the sensor lag (seconds). More...
 
void SetCollectionWindow (float t)
 Set the collection window. More...
 
float GetCollectionWindow () const
 Get the sensor data collection window (seconds). More...
 
void SetUpdateRate (float updateRate)
 Set the sensor update rate (Hz). More...
 
unsigned int GetNumLaunches ()
 Get the number of times the sensor has been updated. More...
 
void IncrementNumLaunches ()
 Increments the count of number of updates.
 
std::list< std::shared_ptr< ChFilter > > GetFilterList () const
 Get the sensor's list of filters. More...
 
void PushFilter (std::shared_ptr< ChFilter > filter)
 Add a filter to the sensor. More...
 
void PushFilterFront (std::shared_ptr< ChFilter > filter)
 Add a filter to the front of the list on a sensor. More...
 
void LockFilterList ()
 Gives ability to lock the filter list to prevent race conditions. More...
 
unsigned int GetRngSensorOrdinal () const
 This sensor's registration ordinal within its manager, used to give it RNG streams distinct from every other sensor's. More...
 
unsigned int GetRngManagerId () const
 The id of the manager this sensor is registered with. More...
 
template<class UserBufferType >
UserBufferType GetMostRecentBuffer ()
 Get the last filter in the list that matches the template type. More...
 
template<>
CH_SENSOR_API UserAccelBufferPtr GetMostRecentBuffer ()
 

Additional Inherited Members

- Protected Attributes inherited from chrono::sensor::ChSensor
float m_updateRate
 sensor update rate
 
float m_lag
 sensor lag from the time all scene information is available (sensor processing time)
 
float m_collection_window
 time over which data is collected. More...
 
float m_timeLastUpdated
 time since previous update
 
std::shared_ptr< ChBodym_parent
 object to which the sensor is attached
 
ChFrame< double > m_offsetPose
 position and orientation of the sensor relative to its parent
 
std::string m_name
 name of the sensor
 
unsigned int m_num_launches
 number of times the sensor has been updated
 
std::list< std::shared_ptr< ChFilter > > m_filters
 filter list for post-processing sensor data
 
bool m_filter_list_locked = false
 gives ability to lock the filter list to prevent race conditions
 

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono_sensor/sensors/ChVulkanSensor.h
  • /builds/uwsbel/chrono/src/chrono_sensor/sensors/ChVulkanSensor.cpp