Skip to main content

AVxcelerate Simulation Framework 2025 R1

i_publisher

Last update: 16.07.2025
1 
5 
6 #pragma once
7 
8 #include <chrono>
9 #include <memory>
10 #include <string>
11 #include <vector>
12 
13 namespace simulation_framework
14 {
15 namespace core
16 {
17 
18 class IPublisher
19 {
20  public:
21  virtual ~IPublisher() = default;
22  virtual void Execute() = 0;
23  virtual void Init() = 0;
24  virtual bool WaitForSubscriber(std::chrono::milliseconds timeout = std::chrono::milliseconds(60000)) = 0;
25  virtual bool WaitForSubscribersInNumberOf(const int subscriber_count,
26  std::chrono::milliseconds timeout = std::chrono::milliseconds(60000)) = 0;
27 };
28 
29 using Publishers = std::vector<std::unique_ptr<IPublisher>>;
30 
31 } // namespace core
32 } // namespace simulation_framework

Connect with Ansys