5 #include "ILabelLayerFilterGroupModel.h"
8 #include "LabelLayer.h"
10 #include <unordered_map>
22 void GetLabelLayerIds(std::vector<LabelLayer::IdType>& out_labelLayerIds)
const;
24 void SetFilterGroupMask(u32 filterGroupMask);
26 u32 GetFilterGroupMask()
const;
28 void SetFilterGroupsForLayer(
const Labels::LabelLayer::IdType& labelLayerId, u32 filterGroupMask);
30 u32 GetFilterGroupsForLayer(
const Labels::LabelLayer::IdType& labelLayerId)
const;
32 void RegisterChangedCallback(CallbackType& callback);
34 void UnregisterChangedCallback(CallbackType& callback);
38 void NotifyChanged()
const;
42 typedef std::unordered_map<Labels::LabelLayer::IdType, u32> LayerToFilterGroupMask;
43 LayerToFilterGroupMask m_layerToFilterGroupMask;
44 u32 m_filterGroupMask;
46 std::vector<CallbackType*> m_callbacks;