FineKernelToolKit 3.1.0

- 総合概要
- 名前空間
- クラス
- ファイル

- ファイル一覧

AudioBase_CLI.h
[詳解]
1 // AudioBase_CLI.h
2
3 #pragma once
4
5 #include <FK/Audio.h>
6 #include "Model_CLI.h"
7
8 namespace FK_CLI
9 {
11
31 public ref class fk_AudioBase abstract {
32 internal:
33 ::fk_AudioBase *pAudio;
34 bool dFlg;
35
36 ::fk_AudioBase * GetP(void);
37
38 public:
40 fk_AudioBase();
41
43 ~fk_AudioBase();
44
46 !fk_AudioBase();
47
49
55 property double Gain {
56 double get();
57 void set(double);
58 }
59
61
65 property int QueueSize {
66 int get();
67 void set(int);
68 }
69
71
83 property bool LoopMode {
84 bool get();
85 void set(bool);
86 }
87
89
97 property fk_Vector^ Position {
98 fk_Vector^ get();
99 void set(fk_Vector^);
100 }
101
103
111 property fk_Model^ Model {
112 fk_Model^ get();
113 void set(fk_Model^);
114 }
115
117
123 property double Distance {
124 double get();
125 void set(double);
126 }
127
129
138 property bool SurroundMode {
139 bool get();
140 void set(bool);
141 }
142
144
145
147
159 virtual bool Open(String^ name) abstract;
160
162
173 virtual bool Ready(void) abstract;
174
176
190 virtual bool Play(void) abstract;
191
193
204 virtual double Tell(void) abstract;
205
207
214 virtual void Seek(double time) abstract;
215
217
225 virtual void Stop(void) abstract;
226
228
233 virtual void End(void) abstract;
234
236
245 void Pause(void);
246
248
250
251
253
264 void SetLoopArea(double start, double end);
265
266
268
275 double GetLoopStartTime(void);
276
278
285 double GetLoopEndTime(void);
287
289
290
292
300 static bool Init(void);
301
303
312 static bool GetInit(void);
313
315
335 static void Sleep(double time);
337
339
340
342
359 static void SetListenerModel(fk_Model^ model);
360
362
370 static fk_Model^ GetListenerModel(void);
372 };
373 }
374
375 /****************************************************************************
376 *
377 * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
378 *
379 * Redistribution and use in source and binary forms,
380 * with or without modification, are permitted provided that the
381 * following conditions are met:
382 *
383 * - Redistributions of source code must retain the above
384 * copyright notice, this list of conditions and the
385 * following disclaimer.
386 *
387 * - Redistributions in binary form must reproduce the above
388 * copyright notice, this list of conditions and the
389 * following disclaimer in the documentation and/or
390 * other materials provided with the distribution.
391 *
392 * - Neither the name of the copyright holders nor the names
393 * of its contributors may be used to endorse or promote
394 * products derived from this software without specific
395 * prior written permission.
396 *
397 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
398 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
399 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
400 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
401 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
402 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
403 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
404 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
405 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
406 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
407 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
408 * POSSIBILITY OF SUCH DAMAGE.
409 *
410 ****************************************************************************/
411 /****************************************************************************
412 *
413 * Copyright (c) 1999-2016, Fine Kernel Project, All rights reserved.
414 *
415 * 本ソフトウェアおよびソースコードのライセンスは、基本的に
416 * 「修正 BSD ライセンス」に従います。以下にその詳細を記します。
417 *
418 * ソースコード形式かバイナリ形式か、変更するかしないかを問わず、
419 * 以下の条件を満たす場合に限り、再頒布および使用が許可されます。
420 *
421 * - ソースコードを再頒布する場合、上記の著作権表示、本条件一覧、
422 * および下記免責条項を含めること。
423 *
424 * - バイナリ形式で再頒布する場合、頒布物に付属のドキュメント等の
425 * 資料に、上記の著作権表示、本条件一覧、および下記免責条項を
426 * 含めること。
427 *
428 * - 書面による特別の許可なしに、本ソフトウェアから派生した製品の
429 * 宣伝または販売促進に、本ソフトウェアの著作権者の名前または
430 * コントリビューターの名前を使用してはならない。
431 *
432 * 本ソフトウェアは、著作権者およびコントリビューターによって「現
433 * 状のまま」提供されており、明示黙示を問わず、商業的な使用可能性、
434 * および特定の目的に対する適合性に関す暗黙の保証も含め、またそれ
435 * に限定されない、いかなる保証もないものとします。著作権者もコン
436 * トリビューターも、事由のいかんを問わず、損害発生の原因いかんを
437 * 問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その
438 * 他の)不法行為であるかを問わず、仮にそのような損害が発生する可
439 * 能性を知らされていたとしても、本ソフトウェアの使用によって発生
440 * した(代替品または代用サービスの調達、使用の喪失、データの喪失、
441 * 利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、
442 * 間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害に
443 * ついて、一切責任を負わないものとします。
444 *
445 ****************************************************************************/
FK_CLI::fk_AudioBase::SetLoopArea
void SetLoopArea(double start, double end)
ループエリア設定メソッド
FK_CLI::fk_AudioBase::Position
fk_Vector^ Position
サラウンド音源位置プロパティ
Definition: AudioBase_CLI.h:97
FK_CLI::fk_AudioBase::SetListenerModel
static void SetListenerModel(fk_Model^ model)
サラウンドリスナー同期モデル設定メソッド
FK_CLI::fk_AudioBase::Sleep
static void Sleep(double time)
プロセススリープメソッド
FK_CLI::fk_AudioBase::Ready
virtual bool Ready(void) override
再生開始可能状態取得メソッド
FK_CLI::fk_AudioBase::Play
virtual bool Play(void) override
再生メソッド
FK_CLI::fk_AudioBase::~fk_AudioBase
~fk_AudioBase()
デストラクタ
FK_CLI::fk_AudioBase::GetListenerModel
static fk_Model^ GetListenerModel(void)
サラウンドリスナーモデル取得メソッド
FK_CLI::fk_AudioBase::QueueSize
int QueueSize
キューバッファサイズプロパティ
Definition: AudioBase_CLI.h:65
FK_CLI::fk_AudioBase::GetLoopStartTime
double GetLoopStartTime(void)
ループ開始点取得メソッド
FK_CLI::fk_AudioBase::LoopMode
bool LoopMode
ループモードプロパティ
Definition: AudioBase_CLI.h:83
FK_CLI::fk_AudioBase::Init
static bool Init(void)
オーディオシステム初期化メソッド
FK_CLI::fk_AudioBase::Seek
virtual void Seek(double time) override
再生位置頭出しメソッド
FK_CLI::fk_Vector
3次元ベクトルを管理するクラス
Definition: Vector_CLI.h:37
FK_CLI::fk_AudioBase::Stop
virtual void Stop(void) override
停止メソッド
FK_CLI::fk_AudioBase::GetLoopEndTime
double GetLoopEndTime(void)
ループ終了点取得メソッド
FK_CLI::fk_AudioBase::Open
virtual bool Open(String^ name) override
オーディオデータ読み込みメソッド
FK_CLI::fk_Model
モデルを生成、管理するクラス
Definition: Model_CLI.h:125
FK_CLI::fk_AudioBase::GetInit
static bool GetInit(void)
オーディオシステム初期化状態取得メソッド
FK_CLI::fk_AudioBase::Gain
double Gain
音量プロパティ
Definition: AudioBase_CLI.h:55
FK_CLI::fk_AudioBase::Distance
double Distance
サラウンド音源有効距離プロパティ
Definition: AudioBase_CLI.h:123
FK_CLI::fk_AudioBase::Tell
virtual double Tell(void) override
再生位置取得メソッド
FK_CLI::fk_AudioBase::Pause
void Pause(void)
ポーズメソッド
Model_CLI.h
FK_CLI::fk_AudioBase::fk_AudioBase
fk_AudioBase()
コンストラクタ
FK_CLI::fk_AudioBase
オーディオ基底クラス
Definition: AudioBase_CLI.h:31
FK_CLI::fk_AudioBase::End
virtual void End(void) override
オーディオデータ解放メソッド
FK_CLI::fk_AudioBase::Model
fk_Model^ Model
サラウンド音源同期モデルプロパティ
Definition: AudioBase_CLI.h:111
FK_CLI::fk_AudioBase::SurroundMode
bool SurroundMode
サラウンド効果状態プロパティ
Definition: AudioBase_CLI.h:138
FK_CLI
Definition: AppWindow_CLI.h:11