Files
qt5-legatus-legacy/Lts/Viewer/SituationMap/Map/object_indicator.h
T
2026-08-13 18:33:10 +02:00

67 lines
1.4 KiB
C++
Executable File

/**
* @RDE_HEADER@
* Interface of ObjectIndicator
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
// Own
#include "situation_map_types.h"
#include <situation_map_export.h>
// Qt
#include <QPointF>
//----------------------------------------------------------------------------
namespace SituationMap
{
/**
* @brief The ObjectIndicator class creating a ObjectIndicator.
*/
class SITUATIONMAP_EXPORT ObjectIndicator
{
protected:
ObjectIndicator() = default; ///< Contructor
virtual ~ObjectIndicator() = default; ///< Destructor
public:
ObjectIndicator(const ObjectIndicator &other) = delete;
ObjectIndicator &operator=(ObjectIndicator &other) = delete;
/*! \name Specific data*/
//@{
/**
* @brief Get uniqueId of mapObjectToPointTo
* @return uniqueId of the object to be pointed to.
*/
virtual UniqueMapId mapObjectToPointTo() = 0;
/**
* @brief Set uniqueId of object should to be pointed to.
* @param uniqueId of the object to be pointed to.
*/
virtual void setMapObjectToPointTo(const UniqueMapId &uniqueId, bool selected = false, int lifetimeMsec = -1) = 0;
virtual void setPointToPointTo(const QPointF &targetGeo, int lifetimeMsec = -1) = 0;
/**
* @brief Remove the indicator
* @return True on success, otherwise false.
*/
virtual void remove() = 0;
//@}
};
} // namespace SituationMap