// SPDX-License-Identifier: MIT
// SPDX-FileCopyrightText: 2022 Ivan Baidakou

#pragma once

#include "definitions.hpp"

namespace rotor_light {

struct PlannerBase;
struct QueueBase;

/**
 *
 * \struct Context
 * @brief root supervisor initialization tuple
 */
struct Context {

  /** \brief where store to and process from messages */
  QueueBase *queue;

  /** \brief where schedule future events */
  PlannerBase *planner;

  /** \brief function pointer to access to "current time" */
  NowFunction now;
};

} // namespace rotor_light
