Class simulation_framework::avx_sensor_cosim::AvxVssApiAdapter
Last update: 22.04.2026
Definition: co_sim/avx_sensor/avx_vss_api_adapter/avx_vss_api_adapter.h (line 35)
AVX VSS API Adapter.
This class is used to interact with AVX VSS API. Provides a simple interface, with status check and configurable timeout mechanism, to load, initialize, update, stop, unload, and kill one targeted AVX Sensor service.
Members
- AvxVssApiAdapter
- DeserializeSensorDataDescriptions
- GetGrpcChannel
- GetLatestSensorDataDescriptions
- GetSensorIdentifiers
- Initialize
- IsAllSensorDataDescriptionsAvailable
- IsRequestSuccessful
- Kill
- Load
- Load
- ReadSensorDataDescription
- SensorDataDescriptions
- SerializeSensorDataDescriptions
- SetSensorIdentifiers
- Stop
- Unload
- Update
- Update
- WaitForConnection
- ~AvxVssApiAdapter
Public types
Typedef SensorDataDescriptions
Definition: co_sim/avx_sensor/avx_vss_api_adapter/avx_vss_api_adapter.h (line 38)
using simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::SensorDataDescriptions = std::vector<ansys::api::avxcelerate::sensors::v1::data_access::SensorDataDescription>
Return type: std::vector< ansys::api::avxcelerate::sensors::v1::data_access::SensorDataDescription >
Public functions
Function AvxVssApiAdapter
simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::AvxVssApiAdapter(const std::string &grpc_endpoint, ApiVariant api_variant=ApiVariant::kUpdateByWorldUpdate, const TransportModeConfig &transport_config=TransportModeConfig{})
Constructor.
Parameters:
- grpc_endpoint: The grpc endpoint of the AVX Sensor service (host:port for TCP, ignored for UDS)
- api_variant: Select which VSS API to use (default: sensors/v1)
- transport_config: Transport mode configuration (default: Insecure mode for backwards compatibility)
Parameters:
- const std::string & grpc_endpoint
- ApiVariant api_variant = ApiVariant::kUpdateByWorldUpdate
- const TransportModeConfig & transport_config = TransportModeConfig{}
Return type:
Function ~AvxVssApiAdapter
simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::~AvxVssApiAdapter()
Destructor.
Return type:
Function Load
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Load(const ansys::api::avxcelerate::sensors::osi::v1::simulation::Configuration &configuration, const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(30))
Load the simulation configuration for OSI API.
Loads AVX using Configuration containing a track, a list of assets, some simulation parameters, a sensor configuration, a lighting system (optional), some deployment parameters, and some simulation control parameters.
Parameters:
- configuration: The VSS simulation configuration
- timeout_in_seconds: The timeout in seconds
Returns:
True if the load request was successful, false otherwise
Parameters:
- const ansys::api::avxcelerate::sensors::osi::v1::simulation::Configuration & configuration
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(30)
Return type: bool
Function Load
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Load(const ansys::api::avxcelerate::sensors::v1::simulation::Configuration &configuration, const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(30))
Load the simulation configuration for Sensors v1 API.
Loads AVX using Configuration containing a track, a list of assets, some simulation parameters, a sensor configuration, a lighting system (optional), some deployment parameters, and some simulation control parameters.
Parameters:
- configuration: The VSS simulation configuration
- timeout_in_seconds: The timeout in seconds
Returns:
True if the load request was successful, false otherwise
Parameters:
- const ansys::api::avxcelerate::sensors::v1::simulation::Configuration & configuration
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(30)
Return type: bool
Function Update
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Update(const osi3::GroundTruth &ground_truth, const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(5))
Update the simulation.
Parameters:
- ground_truth: The OSI GroundTruth
- timeout_in_seconds: The timeout in seconds
Returns:
True if the update request was successful, false otherwise
Parameters:
- const osi3::GroundTruth & ground_truth
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(5)
Return type: bool
Function Update
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Update(const ansys::api::avxcelerate::sensors::v1::simulation::WorldUpdate &world_update, const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(5))
Update overload for sensors/v1 API.
Parameters:
- world_update: The Sensors v1 WorldUpdate
- timeout_in_seconds: The timeout in seconds
Returns:
True if the update request was successful, false otherwise
Parameters:
- const ansys::api::avxcelerate::sensors::v1::simulation::WorldUpdate & world_update
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(5)
Return type: bool
Function Initialize
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Initialize(const ansys::api::avxcelerate::sensors::v1::simulation::WorldUpdate &world_update, const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(5))
Initialize overload for sensors/v1 API.
Parameters:
- world_update: The Sensors v1 WorldUpdate (initial state)
- timeout_in_seconds: The timeout in seconds
Returns:
True if the initialize request was successful, false otherwise
Parameters:
- const ansys::api::avxcelerate::sensors::v1::simulation::WorldUpdate & world_update
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(5)
Return type: bool
Function Stop
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Stop(const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(5))
Stop (Reset) the simulation.
Applies a world model update to AVX.
Parameters:
- timeout_in_seconds: The timeout in seconds
Returns:
True if the stop request was successful, false otherwise
Parameters:
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(5)
Return type: bool
Function Unload
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Unload(const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(5))
Unload the simulation.
Unloads the simulation and switches AVX back to STARTED state. This command is used to restart a simulation without having to restart AVX.
Parameters:
- timeout_in_seconds: The timeout in seconds
Returns:
True if the unload request was successful, false otherwise
Parameters:
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(5)
Return type: bool
Function Kill
bool simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::Kill(const std::chrono::seconds &timeout_in_seconds=std::chrono::seconds(5))
Kill the simulation.
Sends a signal to end the AVX program properly. Closes the Grpc server.
Parameters:
- timeout_in_seconds: The timeout in seconds
Returns:
True if the kill request was successful, false otherwise
Parameters:
- const std::chrono::seconds & timeout_in_seconds = std::chrono::seconds(5)
Return type: bool
Function GetLatestSensorDataDescriptions
SensorDataDescriptions simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::GetLatestSensorDataDescriptions(const std::chrono::milliseconds &timeout_in_milliseconds=std::chrono::milliseconds(1000))
Get the latest sensor data descriptions in a vector.
This function will wait for all sensor data descriptions to be available and return them in a vector. If the sensor data descriptions are not available, the function will wait for them to be available.
Parameters:
- timeout_in_seconds: The timeout in seconds
Returns:
A vector of Sensor data descriptions
Parameters:
- const std::chrono::milliseconds & timeout_in_milliseconds = std::chrono::milliseconds(1000)
Return type: SensorDataDescriptions
Function GetSensorIdentifiers
const std::vector< std::string > & simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::GetSensorIdentifiers() const
Get the sensor identifiers.
Returns:
A vector of sensor identifiers
Return type: const std::vector< std::string > &
Function SetSensorIdentifiers
void simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::SetSensorIdentifiers(const ansys::api::avxcelerate::sensors::v1::simulation::SimulationParameters &simulation_parameters)
Set the sensor identifiers.
Parameters:
- simulation_parameters: The simulation parameters
Parameters:
- const ansys::api::avxcelerate::sensors::v1::simulation::SimulationParameters & simulation_parameters
Return type: void
Function GetGrpcChannel
std::shared_ptr< grpc::Channel > simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::GetGrpcChannel() const
Get the gRPC channel.
Returns:
Shared pointer to the gRPC channel
Return type: std::shared_ptr< grpc::Channel >
Public static functions
Function SerializeSensorDataDescriptions
static std::vector< unsigned char > simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::SerializeSensorDataDescriptions(const SensorDataDescriptions &sensor_data_descriptions)
Serialize SensorDataDescriptions to bytes array.
Converts a vector of SensorDataDescription objects into a bytes array for transmission. This function can be used to prepare data for rtidds::GenericBytesMessage.
Parameters:
- sensor_data_descriptions: The sensor data descriptions to serialize
Returns:
A vector of unsigned char containing the serialized data
Parameters:
- const SensorDataDescriptions & sensor_data_descriptions
Return type: std::vector< unsigned char >
Function DeserializeSensorDataDescriptions
static SensorDataDescriptions simulation_framework::avx_sensor_cosim::AvxVssApiAdapter::DeserializeSensorDataDescriptions(const std::vector< unsigned char > &bytes_array)
Deserialize bytes array to SensorDataDescriptions.
Converts a bytes array back into a vector of SensorDataDescription objects. This function can be used to reconstruct data received from rtidds::GenericBytesMessage.
Parameters:
- bytes_array: The bytes array containing the serialized data
Returns:
A vector of SensorDataDescription objects
Exceptions:
- std::runtime_error: if deserialization fails
Parameters:
- const std::vector< unsigned char > & bytes_array
Return type: SensorDataDescriptions