diff --git a/libs/map/user_mark.hpp b/libs/map/user_mark.hpp index a9ff23a9b..71fbced5d 100644 --- a/libs/map/user_mark.hpp +++ b/libs/map/user_mark.hpp @@ -36,20 +36,61 @@ public: RoadWarningFirstFerry, }; + /** + * @brief User mark types. + * + * `UserMark` subclasses are assigned a value from this enum. + */ enum Type : uint32_t { + /** + * `Bookmark` + */ BOOKMARK, // Should always be the first one + /** + * `ApiMarkPoint` + */ API, + /** + * `SearchMarkPoint` + */ SEARCH, + /** + * `StaticMarkPoint` + */ STATIC, + /** + * `RouteMarkPoint` + */ ROUTING, + /** + * `SpeedCameraMark` + */ SPEED_CAM, + /** + * `RoadWarningMark` + */ ROAD_WARNING, + /** + * `TransitMark` + */ TRANSIT, LOCAL_ADS, + /** + * `TrackInfoMark` + */ TRACK_INFO, + /** + * `TrackSelectionMark` + */ TRACK_SELECTION, + /** + * `DebugMarkPoint` + */ DEBUG_MARK, // Plain "DEBUG" results in a name collision. + /** + * `ColoredMarkPoint` + */ COLORED, USER_MARK_TYPES_COUNT, USER_MARK_TYPES_COUNT_MAX = 1000, @@ -133,6 +174,9 @@ private: bool m_hasPosition = false; }; +/** + * @brief A mark in the shape of a dot. + */ class DebugMarkPoint : public UserMark { public: @@ -141,6 +185,9 @@ public: drape_ptr GetSymbolNames() const override; }; +/** + * @brief A mark in the shape of a dot, of caller-defined color and radius. + */ class ColoredMarkPoint : public UserMark { public: