/** * Handler for all trajectories * $Id$ * $HeadURL$ * $Author$ * Created by Norbert Thoden, ESVG, 2026-01-28 */ #pragma once #include "object_trajectory.h" #include "logger.h" namespace AreaEffectSimulation { /*! * \brief The HandlerTrajectory class */ class HandlerTrajectory final { // Q_OBJECT public: explicit HandlerTrajectory(MainHandler *mainHandler); ~HandlerTrajectory(); int create(const TrajectoryData& providedData); bool update(const TrajectoryData& providedData); bool remove(const int trajId); /*! * \brief createUpdate * \param providedData * \return -1 on error, otherwise provided id; */ int createUpdate(const TrajectoryData& providedData); private: int count() const; class Private; /** * The private d->pointer to not break BC when changing internals of this class */ Private *d = nullptr; LOGGER_T m_logger; }; } // Namespace AreaEffectSimulation