All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
IInteriorsHighlightService.h
1 // Copyright eeGeo Ltd (2012-2017), All Rights Reserved
2 
3 #pragma once
4 
5 #include "VectorMath.h"
6 
7 #include <string>
8 #include <vector>
9 
10 namespace Eegeo
11 {
12  namespace Resources
13  {
14  namespace Interiors
15  {
16  namespace Highlights
17  {
19  {
20  public:
21  virtual v4 GetHighlight(const std::string& interiorid, const std::string& entityId) const = 0;
22  virtual void SetHighlight(const std::string& interiorid, const std::string& entityId, const v4& highlightcolor) = 0;
23  virtual void SetHighlight(const std::string& interiorid, const std::string& entityId, const v4& highlightColor, const float highlightBorderThickness) = 0;
24  virtual void ClearHighlight(const std::string& interiorid, const std::string& entityId) = 0;
25 
26  virtual void SetHighlights(const std::string& interiorId, const std::vector<std::string>& entityIds, const v4& highlightColor) = 0;
27  virtual void SetHighlights(const std::string& interiorId, const std::vector<std::string>& entityIds, const v4& highlightColor, const float highlightBorderThickness) = 0;
28  virtual void ClearHighlights(const std::string& interiorId, const std::vector<std::string>& entityIds) = 0;
29 
30  virtual bool IsHighlighted(const std::string& interiorid, const std::string& entityId) const = 0;
31  virtual void ClearAllHighlights() = 0;
32 
33  virtual ~IInteriorsHighlightService() {}
34  };
35  }
36  }
37  }
38 }