Skip to main content

AVxcelerate Simulation Framework 2025 R1

i_scheduler_client

Last update: 16.07.2025
1 
5 
6 #pragma once
7 
8 #include "core/lifecycle/activity/i_activity.h"
9 #include "core/scheduler/event/simulation_settings.h"
10 #include "core/time/i_clock/timestamp.h"
11 #include <string>
12 
13 namespace simulation_framework
14 {
15 namespace core
16 {
17 namespace scheduling
18 {
19 
20 using lifecycle::IActivity;
21 
23 
28 enum class SchedulerClientType
29 {
30  kRTIDDS = 0,
31  kDUMMY,
32 };
33 
34 class ISchedulerClient
35 {
36  public:
37  virtual ~ISchedulerClient() = default;
38 
43  virtual void BindActivity(IActivity* activity) = 0;
44 
50  virtual bool ShouldStep(const std::string& topic_name) = 0;
51 
55  virtual void SendAbort() = 0;
56 
60  virtual time::Timestamp GetCurrentTimestamp() const = 0;
61 
65  virtual SimulationSettings GetSimulationSettings() const = 0;
66 };
67 
68 } // namespace scheduling
69 } // namespace core
70 } // namespace simulation_framework

Connect with Ansys