mirror of
https://codeberg.org/comaps/comaps
synced 2025-12-30 17:44:07 +00:00
committed by
Konstantin Pastbin
parent
c9cbb64f12
commit
76ffc99abd
51
libs/map/user_mark_id_storage.hpp
Normal file
51
libs/map/user_mark_id_storage.hpp
Normal file
@@ -0,0 +1,51 @@
|
||||
#pragma once
|
||||
|
||||
#include "map/user_mark.hpp"
|
||||
|
||||
#include "kml/types.hpp"
|
||||
|
||||
class UserMarkIdStorage
|
||||
{
|
||||
public:
|
||||
static UserMarkIdStorage & Instance();
|
||||
|
||||
static UserMark::Type GetMarkType(kml::MarkId id);
|
||||
|
||||
kml::MarkId GetNextUserMarkId(UserMark::Type type);
|
||||
kml::TrackId GetNextTrackId();
|
||||
kml::MarkGroupId GetNextCategoryId();
|
||||
|
||||
bool CheckIds(kml::FileData const & fileData) const;
|
||||
|
||||
void ResetBookmarkId();
|
||||
void ResetTrackId();
|
||||
void ResetCategoryId();
|
||||
|
||||
void EnableSaving(bool enable);
|
||||
|
||||
private:
|
||||
UserMarkIdStorage();
|
||||
|
||||
void LoadLastBookmarkId();
|
||||
void LoadLastTrackId();
|
||||
void LoadLastCategoryId();
|
||||
|
||||
void SaveLastBookmarkId();
|
||||
void SaveLastTrackId();
|
||||
void SaveLastCategoryId();
|
||||
|
||||
bool HasKey(std::string const & name);
|
||||
|
||||
bool m_isJustCreated;
|
||||
|
||||
uint64_t m_lastBookmarkId;
|
||||
uint64_t m_lastTrackId;
|
||||
uint64_t m_lastUserMarkId;
|
||||
uint64_t m_lastCategoryId;
|
||||
|
||||
uint64_t m_initialLastBookmarkId;
|
||||
uint64_t m_initialLastTrackId;
|
||||
uint64_t m_initialLastCategoryId;
|
||||
|
||||
bool m_savingEnabled = true;
|
||||
};
|
||||
Reference in New Issue
Block a user