All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
OSXAsyncTextureLoad.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "IAsyncTextureLoad.h"
6 #include "Helpers.h"
7 #include "Types.h"
8 #include "GLHelpers.h"
9 #include "ICallback.h"
10 #include "AsyncTexturing.h"
11 #include <string>
12 #include <vector>
13 
14 namespace Eegeo
15 {
16  namespace OSX
17  {
19  {
20  Helpers::ITextureFileLoader& m_textureLoader;
22  std::string m_fileExtension;
23  const std::vector<Byte>* m_pResourceBuffer;
24  void* m_pUserData;
25  bool m_mipmap;
26  bool m_cancelled;
27  bool m_started;
28 
31  const std::string& fileExtension,
32  const std::vector<Byte>* pResourceBuffer,
33  void* pUserData,
34  bool mipmap);
35 
37 
38  public:
39 
40  static OSXAsyncTextureLoad& Build(Helpers::ITextureFileLoader& textureLoader,
42  const std::string& fileExtension,
43  const std::vector<Byte>& resourceBuffer,
44  void* pUserData,
45  bool mipmap);
46 
47  virtual void Begin();
48 
49  virtual void Cancel();
50  };
51  }
52 }