プラグイン
Decoder.h
Go to the documentation of this file.
1 #pragma once
2 
56 #include "Mix/Plugin/Common.h"
57 #include "Mix/Plugin/IReader.h"
58 
59 namespace Mix{ namespace Plugin{ namespace Sound{
60 
63  class IDecoder
64  {
65  protected:
67  virtual ~IDecoder( void ){}
68 
69  public:
74  virtual bool Initialize( Mix::Plugin::IReader* pSrc ) = 0;
77  virtual void Destroy( void ) = 0;
78 
81  virtual LPCWAVEFORMATEX GetFormat( void ) = 0;
82 
85  virtual unsigned long long GetPosition( void ) = 0;
88  virtual unsigned long long GetSize( void ) = 0;
89 
95  virtual unsigned int Read( Mix::Plugin::IReader* pSrc, void* pDst, unsigned int size ) = 0;
96 
99  virtual void Reset( Mix::Plugin::IReader* pSrc ) = 0;
100  };
101 
102 }}}
virtual ~IDecoder(void)
デストラクタ
Definition: Decoder.h:67
サウンドデコーダーインターフェース
Definition: Decoder.h:63
virtual bool Initialize(Mix::Plugin::IReader *pSrc)=0
初期化します
リーダーインターフェースインクルードファイル
ルート
virtual void Destroy(void)=0
自身を破棄します
virtual void Reset(Mix::Plugin::IReader *pSrc)=0
波形の読み取り位置をを先頭に戻します
virtual unsigned long long GetPosition(void)=0
波形の読み取り位置を取得します
virtual unsigned long long GetSize(void)=0
波形のサイズを取得します
リーダーインターフェース
Definition: IReader.h:10
virtual LPCWAVEFORMATEX GetFormat(void)=0
波形のフォーマットを取得します
virtual unsigned int Read(Mix::Plugin::IReader *pSrc, void *pDst, unsigned int size)=0
波形を読み取ります