All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
IIndoorMapEntityInformationService.h
1 #pragma once
2 
3 #include "IndoorMapEntityInformationTypes.h"
4 
5 #include <string>
6 
7 namespace Eegeo
8 {
9  namespace IndoorMapEntityInformation
10  {
12  {
13  public:
15 
16  virtual IndoorMapEntityInformationModelId CreateInformationModel(const std::string& indoorMapId) = 0;
17 
18  virtual bool InformationModelExists(IndoorMapEntityInformationModelId id) const = 0;
19 
20  virtual void DestroyInformationModel(IndoorMapEntityInformationModelId id) = 0;
21 
22  virtual const IndoorMapEntityInformationModel& GetInformationModel(IndoorMapEntityInformationModelId id) const = 0;
23 
24  virtual std::vector<IndoorMapEntityInformationModelId> GetInformationModelIdsForIndoorMap(const std::string& indoorMapId) const = 0;
25 
26  virtual std::vector<IndoorMapEntityModelId> GetEntityModelIdsForInformationModel(
27  IndoorMapEntityInformationModelId informationModelId
28  ) const = 0;
29 
30  virtual bool IndoorMapEntityExists(IndoorMapEntityModelId indoorMapEntityModelId) const = 0;
31 
32  virtual const IndoorMapEntityModel& GetIndoorMapEntity(const IndoorMapEntityModelId indoorMapEntityModelId) const = 0;
33 
34  virtual IIndoorMapEntityInformationChangedEvent& GetIndoorMapEntityInformationChangedEvent() const = 0;
35  };
36  }
37 }