File i_publisher.h
Last update: 09.03.2026Location: core/communication/i_publisher.h
Classes
Namespaces
Includes
Included by
Source
#pragma once
#include <chrono>
#include <memory>
#include <string>
#include <vector>
namespace simulation_framework
{
namespace core
{
class IPublisher
{
public:
virtual ~IPublisher() = default;
virtual void Execute() = 0;
virtual void Init() = 0;
virtual bool WaitForSubscriber(std::chrono::milliseconds timeout = std::chrono::milliseconds(60000)) = 0;
virtual bool WaitForSubscribersInNumberOf(const int subscriber_count,
std::chrono::milliseconds timeout = std::chrono::milliseconds(60000)) = 0;
};
using Publishers = std::vector<std::unique_ptr><ipublisher>>;
} // namespace core
} // namespace simulation_framework
[static]: https://img.shields.io/badge/-static-lightgrey (static)</std::unique_ptr>