HatchitResource
ht_texture_resource.h
1 
15 #pragma once
16 
17 #include <ht_resource.h>
18 
19 namespace Hatchit
20 {
21  namespace Resource
22  {
23  class HT_API Texture : public FileResource<Texture>
24  {
25  public:
26  Texture(Core::Guid ID);
27  virtual ~Texture() = default;
28 
29  //Required function for all RefCounted classes
30  bool Initialize(const std::string& fileName);
31 
32  bool VInitFromFile(const std::string& file);
33 
34  uint32_t GetWidth() const;
35  uint32_t GetHeight() const;
36 
37  uint8_t GetBPP() const;
38 
39  uint32_t GetMIPLevels() const;
40 
41  uint8_t GetChannels() const;
42 
43  const BYTE* GetData() const;
44 
45  private:
46  uint32_t m_width;
47  uint32_t m_height;
48  uint32_t m_mipLevels;
49  uint8_t m_bpp;
50  uint8_t m_channels;
51 
52  const BYTE* m_data;
53  };
54 
55  using TextureHandle = Core::Handle<const Texture>;
56  }
57 }
Definition: ht_resource.h:35
Hatchit Engine Copyright(c) 2015-2016 Third-Degree.
Definition: ht_assimp.h:31
Definition: ht_texture_resource.h:23