All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
IndoorMapFloorOutlineInformationRepository.h
1 // Copyright eeGeo Ltd (2012-2019), All Rights Reserved
2 
3 #pragma once
4 
5 #include "IndoorMapFloorOutlineInformation.h"
6 #include "Types.h"
7 
8 #include <unordered_map>
9 #include <vector>
10 
11 namespace Eegeo
12 {
13  namespace IndoorMapFloorOutlineInformation
14  {
16  {
17  public:
19 
21 
22  void Add(IndoorMapFloorOutlineInformationModel* pIndoorMapFloorOutlineInformationModel);
23 
24  void Remove(IndoorMapFloorOutlineInformationModelId id);
25 
26  bool Contains(IndoorMapFloorOutlineInformationModelId id) const;
27 
28  IndoorMapFloorOutlineInformationModel* Get(IndoorMapFloorOutlineInformationModelId id) const;
29 
30  std::vector<IndoorMapFloorOutlineInformationModel*> GetForIndoorMapId(const std::string& indoorMapId) const;
31 
32  private:
33  std::unordered_map<IndoorMapFloorOutlineInformationModelId, IndoorMapFloorOutlineInformationModel*> m_store;
34  };
35  }
36 }