HatchitResource
ht_audio_resource.h
1 
15 #pragma once
16 
17 #include <ht_platform.h> //HT_API
18 #include <ht_resource.h> //FileResource<T>
19 
20 namespace Hatchit
21 {
22  namespace Resource
23  {
24  class HT_API Audio final : public FileResource<Audio>
25  {
26  public:
27  Audio(Core::Guid ID);
28  virtual ~Audio() = default;
29 
30  //Required function for all RefCounted classes
31  bool Initialize(const std::string& fileName);
32 
33  const std::string& GetFileName() const;
34  int GetNumChannels() const;
35  unsigned int GetSampleRate() const;
36  int GetSampleDepth() const;
37  float GetSoundLength() const;
38 
39  private:
40  std::string m_fileName;
41  int m_numChannels;
42  unsigned int m_sampleRate;
43  int m_sampleDepth;
44  float m_soundLength;
45  };
46 
47  using AudioResourceHandle = Core::Handle<const Audio>;
48  }
49 }
Definition: ht_resource.h:35
Hatchit Engine Copyright(c) 2015-2016 Third-Degree.
Definition: ht_assimp.h:31
Definition: ht_audio_resource.h:24