All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
PODMaterial.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 #include <iostream>
7 #include <string>
8 
9 namespace Eegeo
10 {
11  namespace IO
12  {
13  namespace POD
14  {
16  {
17  public:
18  PODMaterial();
19 
20  void SetName(std::string &name);
21  void SetDiffuseTextureId(u32 diffuseTextureId);
22  void SetShadowMapTextureId(u32 shadowMapTextureId);
23  void SetMaterialEffectFile(std::string materialEffectFile);
24  void SetMaterialEffectName(std::string materialEffectName);
25  void SetOpacity(float opacity);
26  void SetFlags(u32 flags);
27 
28  std::string GetName() const;
29  u32 GetDiffuseTextureId() const;
30  u32 GetShadowMapTextureId() const;
31  std::string GetMaterialEffectFile() const;
32  std::string GetMaterialEffectName() const;
33  float GetOpacity() const;
34  u32 GetFlags() const;
35 
36  private:
37  std::string m_name;
38  u32 m_diffuseTextureId;
39  u32 m_shadowMapTextureId;
40  std::string m_materialEffectFile;
41  std::string m_materialEffectName;
42  float m_opacity;
43  u32 m_flags;
44  };
45  }
46  }
47 }