xref: /haiku/headers/os/game/SimpleGameSound.h (revision e81a954787e50e56a7f06f72705b7859b6ab06d1)
1 /*
2  *  Copyright 2001-2010, Haiku Inc. All Rights Reserved.
3  *  Distributed under the terms of the MIT License.
4  */
5 #ifndef _SIMPLEGAMESOUND_H
6 #define _SIMPLEGAMESOUND_H
7 
8 
9 #include <GameSoundDefs.h>
10 #include <GameSound.h>
11 
12 
13 struct entry_ref;
14 
15 
16 class BSimpleGameSound : public BGameSound {
17 public:
18 								BSimpleGameSound(const entry_ref* file,
19 									BGameSoundDevice* device = NULL);
20 								BSimpleGameSound(const char* file,
21 									BGameSoundDevice* device = NULL);
22 								BSimpleGameSound(const void* data,
23 									size_t frameCount,
24 									const gs_audio_format* format,
25 									BGameSoundDevice* device = NULL);
26 								BSimpleGameSound(const BSimpleGameSound& other);
27 
28 	virtual						~BSimpleGameSound();
29 
30 	virtual	BGameSound*			Clone() const;
31 
32 	virtual	status_t 			Perform(int32 selector, void* data);
33 
34 			status_t			SetIsLooping(bool looping);
35 			bool				IsLooping() const;
36 
37 private:
38 								BSimpleGameSound();
39 			BSimpleGameSound&	operator=(const BSimpleGameSound& other);
40 									// not implemented
41 
42 			status_t	 		Init(const entry_ref* file);
43 			status_t 			Init(const void* data, int64 frameCount,
44 									const gs_audio_format* format);
45 
46 	virtual	status_t			_Reserved_BSimpleGameSound_0(int32 arg, ...);
47 	virtual	status_t			_Reserved_BSimpleGameSound_1(int32 arg, ...);
48 	virtual	status_t			_Reserved_BSimpleGameSound_2(int32 arg, ...);
49 	virtual	status_t			_Reserved_BSimpleGameSound_3(int32 arg, ...);
50 	virtual	status_t			_Reserved_BSimpleGameSound_4(int32 arg, ...);
51 	virtual	status_t			_Reserved_BSimpleGameSound_5(int32 arg, ...);
52 	virtual	status_t			_Reserved_BSimpleGameSound_6(int32 arg, ...);
53 	virtual	status_t			_Reserved_BSimpleGameSound_7(int32 arg, ...);
54 	virtual	status_t			_Reserved_BSimpleGameSound_8(int32 arg, ...);
55 	virtual	status_t			_Reserved_BSimpleGameSound_9(int32 arg, ...);
56 	virtual	status_t			_Reserved_BSimpleGameSound_10(int32 arg, ...);
57 	virtual	status_t			_Reserved_BSimpleGameSound_11(int32 arg, ...);
58 	virtual	status_t			_Reserved_BSimpleGameSound_12(int32 arg, ...);
59 	virtual	status_t			_Reserved_BSimpleGameSound_13(int32 arg, ...);
60 	virtual	status_t			_Reserved_BSimpleGameSound_14(int32 arg, ...);
61 	virtual	status_t			_Reserved_BSimpleGameSound_15(int32 arg, ...);
62 	virtual	status_t			_Reserved_BSimpleGameSound_16(int32 arg, ...);
63 	virtual	status_t			_Reserved_BSimpleGameSound_17(int32 arg, ...);
64 	virtual	status_t			_Reserved_BSimpleGameSound_18(int32 arg, ...);
65 	virtual	status_t			_Reserved_BSimpleGameSound_19(int32 arg, ...);
66 	virtual	status_t			_Reserved_BSimpleGameSound_20(int32 arg, ...);
67 	virtual	status_t			_Reserved_BSimpleGameSound_21(int32 arg, ...);
68 	virtual	status_t			_Reserved_BSimpleGameSound_22(int32 arg, ...);
69 	virtual	status_t			_Reserved_BSimpleGameSound_23(int32 arg, ...);
70 
71 private:
72 			uint32				_reserved[12];
73 };
74 
75 
76 #endif	// _SIMPLE_GAME_SOUND_H
77