/** * @RDE_HEADER@ * Interface of HitLine * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include "abstract_multi_point_map_object.h" #include //---------------------------------------------------------------------------- namespace SituationMap { /** * @brief The HitLine class supports HitLines of different agents. * The method setPositions() should never be called. */ class HitLine : public virtual AbstractMultiPointMapObject, public virtual AbstractEffectSimulation { public: /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Don't use "= default" because of bug in VS2015 JT 2016/11/7 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ HitLine() : AbstractMultiPointMapObject(), AbstractEffectSimulation() {;} ///< Contructor virtual ~HitLine() = default; ///< Destructor /*! \name Specific data*/ //@{ // virtual PositionCont impacts() const = 0; /** * @brief Start and end point:. */ virtual Point3D startPoint() const = 0; virtual Point3D endPoint() const = 0; virtual void setStartAndEndPoint(const Point3D &start, const Point3D &end) = 0; //@} // void setPositions(const PositionCont& posCont) //SHOULD NEVER BE CALLED }; } // namespace SituationMap