Skip to main content

AVxcelerate Simulation Framework 2025 R2 SP02

i_activity

Last update: 19.09.2025
1
5
6#pragma once
7
8#include "core/scheduler/event/simulation_settings.h"
9#include "core/service/parameter/simulation_parameters.h"
10#include "core/time/i_clock/timestamp.h"
11#include <chrono>
12#include <string>
13
19{
20namespace core
21{
22namespace lifecycle
23{
24
30{
31 public:
33 virtual ~IActivity() = default;
34
37 virtual void Init() = 0;
38
42 virtual void WaitForPubSubConnection() = 0;
43
46 virtual void Step() = 0;
47
50 virtual void Shutdown() = 0;
51
54 virtual std::string GetName() const = 0;
55
59 virtual time::Timestamp GetCurrentTimestamp() const = 0;
60
64 virtual std::chrono::milliseconds GetCycleTime() const = 0;
65
69
73 virtual std::string GetSimulationOutputDirectory() const = 0;
74
77 virtual void SetUpCommunication() = 0;
78
81 virtual void SetSimulationSettings(const scheduling::SimulationSettings& sim_settings) = 0;
82};
83
84} // namespace lifecycle
85} // namespace core
86} // namespace simulation_framework
This is the concrete Topic class that can be used for creation of a communication channel with given ...
Definition topic.h:38
Interface for simulation activities.
Definition i_activity.h:30
virtual void SetUpCommunication()=0
Sets up the Pub/Sub communication for the activity.
virtual const SimulationParameters::CustomizedParameters & GetCustomizedParameters() const =0
Retrieves the customized parameters for the activity.
virtual void Shutdown()=0
Shuts down the activity.
virtual std::chrono::milliseconds GetCycleTime() const =0
Retrieves the cycle time of the activity.
virtual void WaitForPubSubConnection()=0
Waits until Pub/Sub pairing is complete.
virtual void Step()=0
Executes one step of the activity.
virtual void SetSimulationSettings(const scheduling::SimulationSettings &sim_settings)=0
Set the simulation settings for this activity.
virtual ~IActivity()=default
Virtual destructor for proper cleanup of derived classes.
virtual std::string GetName() const =0
Retrieves the name of the activity.
virtual std::string GetSimulationOutputDirectory() const =0
Retrieves the output directory for simulation results.
virtual void Init()=0
Initializes the activity.
virtual time::Timestamp GetCurrentTimestamp() const =0
Retrieves the current simulation timestamp.
The namespace for all core functionalities under namespace simulation_framework.
The top namespace for simulation framework.
std::unordered_map< std::string, std::string > CustomizedParameters
A definition of customized parameters which simulation could use as input. key is the name of the cus...

Connect with Ansys