Skip to main content

AVxcelerate Simulation Framework 2025 R2

i_activity

Last update: 16.07.2025
1
5
6#pragma once
7
8#include "core/service/parameter/simulation_parameters.h"
9#include "core/time/i_clock/timestamp.h"
10#include <chrono>
11#include <memory>
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 virtual std::vector<File> GetInputFiles() const = 0;
70
74 virtual std::string GetSimulationOutputDirectory() const = 0;
75
78 virtual void SetUpCommunication() = 0;
79};
80
81} // namespace lifecycle
82} // namespace core
83} // namespace simulation_framework
Interface for simulation activities.
Definition i_activity.h:30
virtual void SetUpCommunication()=0
Sets up the Pub/Sub communication 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 std::vector< File > GetInputFiles() const =0
Retrieves the list of input files required for the simulation.
virtual void Step()=0
Executes one step of the 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.

Connect with Ansys