All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
IInteriorsMaterialService.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Interiors.h"
6 #include "Types.h"
7 #include "Rendering.h"
8 
9 #include <string>
10 
11 namespace Eegeo
12 {
13  namespace Resources
14  {
15  namespace Interiors
16  {
18  {
19  public:
20  virtual ~IInteriorsMaterialService() {;}
21 
22  virtual Eegeo::Rendering::Materials::IMaterial* Create(const std::string& interiorName,
23  const InteriorMaterialData& interiorMaterialData) = 0;
24 
25  virtual void DestroyAllForInterior(const std::string& interiorName) = 0;
26 
27  virtual bool Contains(const std::string& interiorName,
28  const std::string& materialName) const = 0;
29 
30  virtual Eegeo::Rendering::Materials::IMaterial* Get(const std::string& interiorName,
31  const std::string& materialName) const = 0;
32  };
33  }
34  }
35 }