Skip to main content

AVxcelerate Simulation Framework 2026 R1 SP01

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

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

Connect with Ansys