base_activity
Last update: 16.07.2025 115 BaseActivity(const std::string& activity_name, const Topics& topics, std::chrono::milliseconds timeout);
193 void AddSubscriber(const core::TopicId& topic_id, typename Topic::SubscriberMessageCallback callback);
This is the concrete Topic class that can be used for creation of a communication channel with given ...
Definition topic.h:38
This is the basic implementation of IActivity interface. Inheriting classes, i.e. a concrete simulati...
Definition base_activity.h:78
std::string GetName() const override
time::Timestamp GetCurrentTimestamp() const final
std::chrono::milliseconds GetCycleTime() const final
void SetUpCommunication() final
void AddPublisher(const core::TopicId &topic_id, typename Topic::PublisherCallback callback)
void Step() final
BaseActivity(const std::string &activity_name, const Topics &topics)
BaseActivity(const std::string &activity_name, std::shared_ptr< core::CommunicationManager > communication_manager_ptr, std::unique_ptr< scheduling::ISchedulerClient > scheduler_client, std::chrono::milliseconds timeout)
void AddSubscriber(const core::TopicId &topic_id, typename Topic::SubscriberMessageCallback callback)
virtual void Init()
Definition base_activity.h:168
std::vector< File > GetInputFiles() const final
BaseActivity(const std::string &activity_name, const Topics &topics, std::chrono::milliseconds timeout)
BaseActivity(const std::string &activity_name, std::shared_ptr< core::CommunicationManager > communication_manager_ptr, std::unique_ptr< scheduling::ISchedulerClient > scheduler_client)
virtual ~BaseActivity()
virtual void AddPublisherAndSubscriber()=0
virtual void ExecuteStep()=0
void Shutdown() final
std::string GetSimulationOutputDirectory() const final
Interface for simulation activities.
Definition i_activity.h:30
The namespace for all core functionalities under namespace simulation_framework.
The top namespace for simulation framework.
The namespace for simulation time related implementation under namespace simulation_framework::core.