The Game Kit Table of Contents       The Game Kit Index

BSimpleGameSound

継承元: BGameSound

宣言箇所: be/game/SimpleGameSound.h

ライブラリ: libgame.so

アロケーション: コンストラクタのみ

概要

BSimpleGameSoundクラスはメモリに残って変化することのないような、単純なサウンドエフェクトを代表する。

BSimpleGameSoundを使うのは単純だ:

   BSimpleGameSound *mysound = new BSimpleGameSound("soundfile.wav");

   ...

   mysound.StartPlaying();

(訳注:上のコードは動きません。get_ref_for_path()関数を利用して、entry_ref構造体を渡しましょう)

このコードの断片は、"soundfile.wav"というファイルにあるサウンドを再生するオブジェクトを作っている。サウンドを再生するのは非常に単純でStartPlaying()を呼び出せばよい。

現在のBeOSのバージョンでは、BSimpleGameSoundの複製を作ると、サウンドデータのバッファも複製される。したがって、メモリにサウンドエフェクトの複数のコピーを持つことになる。コードを書くときに、多くのメモリをすばやく消費してしまう可能性のあることに注意してください。


コンストラクタとデストラクタ


BSimpleGameSound()

                                                         
  

BSimpleGameSound(const entry_ref *inFile,
      BGameSoundDevice *device = NULL)

BSimpleGameSound(const void *inData, size_t inFrameCount,
      const gs_audio_format *format,
      BGameSoundDevice *device = NULL)

BSimpleGameSound(const BSimpleGameSound &other)

指定されたのサウンドを再生するオブジェクトを準備する。コンストラクタの最初の書式は inFileによって指定されたサウンドをメモリにあらかじめすべて読み込む。。

コンストラクタの2つ目の書式は、inDataにあらかじめメモリに読み込まれたサウンドデータのポインタを受け入れる。 inFrameCountはバッファに入っているオーディオのフレーム数を指定する。そして、formatはオーディオデータのフォーマットを指定する。

どちらの場合も deviceはサウンドを再生するのに使用されるべきサウンドデバイスを指定する。NULLはデフォルトのサウンドプレイヤーを使用する。

現在ではdeviceは常にNULLでなくてはいけません。

コンストラクタの最後の書式は、別のBSimpleGameSoundオブジェクトを複製する。

BSimpleGameSoundのインスタンスを作成したあとはサウンドがきちんと作成されたかどうかInitCheck()を使用して、調べる必要がある。


~BSimpleGameSound

                                                         
  

virtual ~BSimpleGameSound()

典型的なデストラクタです。


メンバ関数


InitCheck()

                                                         
  

status_t InitCheck(void) const

オブジェクトのインスタンスがきちんと作成できたかどうかを示すstatus_t型の変数を返す。

返値

B_OK. サウンドはきちんと初期化された。

B_ERROR. サウンドプレイヤーを作成できなかった。

B_NO_MEMORY. サウンドを予め読み込むだけのメモリがなかった。

BSoundFileエラー。サウンドファイルは無効か、合わない

他のエラー。サウンドプレイヤーが返したエラーかもしれない。


SetIsLooping() , IsLooping()

                                                         
  

status_t SetIsLooping(bool looping)

bool IsLooping(void) const

SetIsLooping()loopingtruetrueの時サウンドのループをオンにし、loopingfalseのときオフにする。

IsLooping()は現在ループが有効になっているかどうかを示すフラグを返す。

返値

B_OK. エラーなしに、ループはオンまたはオフにされた。

B_ERROR. プレイヤーは適切に初期化されなかった。


The Game Kit Table of Contents       The Game Kit Index

訳者 big56

eir@mb.kcom.ne.jp

【運営会社「パラダイムシフト」サービス】

無料ホームページ   携帯ホームページ   無料ホームページ作成   レンタルサーバー   ブログ   ホテル   アンドロイド   旅行 口コミ   旅行情報   国際電話   ホテル比較