/** * @RDE_HEADER@ * Interface of Mine * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include "abstract_single_point_map_object.h" //---------------------------------------------------------------------------- namespace SituationMap { /** * @brief The SingleFire class supports Indirect Single Fire. */ class Mine : public virtual AbstractSinglePointMapObject { using BaseClass = AbstractSinglePointMapObject; public: /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Don't use "= default" because of bug in VS2015 JT 2016/11/7 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ Mine() : AbstractSinglePointMapObject() {;} ///< Contructor virtual ~Mine() = default; ///< Destructor /*! \name Specific data*/ //@{ /** * @brief Set mine state (true = aimed/active => filled symbol). * @return True for aimed/active, otherwise false. */ virtual bool state() const = 0; /** * @brief Set new mine state. * @param state (true = aimed/active => filled symbol) */virtual void setState(bool state) = 0; //@} }; } // namespace SituationMap