Skip to main content

AVxcelerate Simulation Framework 2026 R1 SP01

File i_scheduler_client.h

Last update: 22.04.2026

Location: core/scheduler/i_scheduler_client/i_scheduler_client.h

Classes

Namespaces

Includes

Included by

Source



#ifndef SIMFWK_CORE_SCHEDULER_ISCHEDULERCLIENT_ISCHEDULERCLIENT_H
#define SIMFWK_CORE_SCHEDULER_ISCHEDULERCLIENT_ISCHEDULERCLIENT_H

#include "core/export/simfwk_core_export.h"
#include "core/lifecycle/activity/i_activity.h"
#include "core/scheduler/event/simulation_settings.h"
#include "core/time/i_clock/timestamp.h"
#include <string>

namespace simulation_framework
{
namespace core
{
namespace scheduling
{

using lifecycle::IActivity;


enum class SchedulerClientType
{
    kRTIDDS = 0,  
    kDUMMY,       
};

class SIMFWK_CORE_API ISchedulerClient
{
  public:
    virtual ~ISchedulerClient() = default;

    virtual void BindActivity(IActivity* activity) = 0;

    virtual bool ShouldStep(const std::string& topic_name) = 0;

    virtual void SendAbort() = 0;

    virtual time::Timestamp GetCurrentTimestamp() const = 0;

    virtual const SimulationSettings& GetSimulationSettings() const = 0;

    virtual bool IsPrimaryActivity() const = 0;

    virtual void SetSimulationSettings(const SimulationSettings& sim_settings) = 0;
};

}  // namespace scheduling
}  // namespace core
}  // namespace simulation_framework

#endif  // SIMFWK_CORE_SCHEDULER_ISCHEDULERCLIENT_ISCHEDULERCLIENT_H

Connect with Ansys