Develop and Download Open Source Software

Browse Subversion Repository

Contents of /trunk/CSoundEffector.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1 - (show annotations) (download) (as text)
Sun Aug 15 01:53:13 2010 UTC (13 years, 9 months ago) by okadu
File MIME type: text/x-chdr
File size: 1311 byte(s)


1 #ifndef CSOUNDEFFECTOR_H_INCLUDED
2 #define CSOUNDEFFECTOR_H_INCLUDED
3
4 class CNamedObject;
5 class CModelPlugin;
6 class CSoundEffector;
7 class CScene;
8
9 /*
10 * サウンドエフェクタ状態
11 */
12 class CSoundState{
13 friend class CSoundEffector;
14 private:
15 int m_State; // 状態
16 bool m_ApplyFlag; // 適用フラグ
17 CWave m_Wave; // サウンドデータ
18 public:
19 CSoundState(){ Reset(); }
20 ~CSoundState();
21 void Reset(){ m_State = 0; }
22 void Confirm(CSoundEffector *, bool);
23 };
24
25 // 反復子
26 typedef list<CSoundState>::iterator ISoundState;
27 typedef set<CSoundState *>::iterator ISPSoundState;
28
29 /*
30 * サウンドエフェクタ
31 */
32 class CSoundEffector{
33 private:
34 static set<CSoundState *> ms_PlayList; // プレイリスト
35 string m_WaveFileName; // wave ファイル名
36 CNamedObject *m_Link; // 接続先オブジェクト
37 VEC3 m_SourceCoord; // 位置
38 int m_Volume; // 音量
39 bool m_Loop; // ループ
40 CSoundState *m_LinkState; // 状態変数
41 public:
42 static void InitPlayList();
43 static void DeleteSound(CSoundState *ss){ ms_PlayList.erase(ss); }
44 char *Read(char *, CModelPlugin *);
45 void LoadData(CSoundState *);
46 void SetPos(CSoundState *);
47 void PlayWave(CSoundState *);
48 void Link(CSoundState *);
49 void Register(CScene *);
50 };
51
52 // 反復子
53 typedef list<CSoundEffector>::iterator ISoundEffector;
54
55 #endif

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26