All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
IAsyncTexture.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include <string>
6 #include "GLHelpers.h"
7 
8 namespace Eegeo
9 {
10  namespace Rendering
11  {
12  namespace AsyncTexturing
13  {
15  {
16  public:
17  virtual ~IAsyncTexture() {};
18  virtual const std::string GetUrl() const = 0;
19  virtual bool HasMipMaps() const = 0;
20  virtual const Helpers::GLHelpers::TextureInfo& GetTextureInfo() const = 0;
21  virtual void Release() { DecrementReferenceCount(); }
22  virtual bool IsLoaded() const = 0;
23  virtual bool IsComplete() const = 0;
24  virtual int GetReferenceCount() const = 0;
25  virtual void IncrementReferenceCount() = 0;
26  virtual void DecrementReferenceCount() = 0;
27  };
28  }
29  }
30 }