Files
comaps/libs/traffic/traffic_cache.hpp
Konstantin Pastbin bfffa1fff4 Format all C++ and Java code via clang-format
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-08-17 14:32:37 +07:00

33 lines
701 B
C++

#pragma once
#include "traffic/traffic_info.hpp"
#include "indexer/mwm_set.hpp"
#include <map>
#include <memory>
#include <mutex>
namespace traffic
{
using AllMwmTrafficInfo = std::map<MwmSet::MwmId, std::shared_ptr<traffic::TrafficInfo::Coloring const>>;
class TrafficCache
{
public:
TrafficCache() = default;
virtual ~TrafficCache() = default;
virtual void CopyTraffic(AllMwmTrafficInfo & trafficColoring) const;
protected:
void Set(MwmSet::MwmId const & mwmId, std::shared_ptr<TrafficInfo::Coloring const> coloring);
void Remove(MwmSet::MwmId const & mwmId);
void Clear();
private:
mutable std::mutex m_mutex;
AllMwmTrafficInfo m_trafficColoring;
};
} // namespace traffic