Make UEFI boot-platform build again
[haiku.git] / headers / os / game / StreamingGameSound.h
blob17f97f7b9ce914c4aae7a38568d812dd8d32aaf8
1 /*
2 * Copyright 2001-2002, Haiku Inc. All Rights Reserved.
3 * Distributed under the terms of the MIT License.
5 * Author:
6 * Christopher ML Zumwalt May (zummy@users.sf.net)
7 */
8 #ifndef _STREAMINGGAMESOUND_H
9 #define _STREAMINGGAMESOUND_H
12 #include <SupportDefs.h>
13 #include <GameSound.h>
14 #include <Locker.h>
17 class BStreamingGameSound : public BGameSound {
18 public:
19 BStreamingGameSound(size_t bufferFrameCount,
20 const gs_audio_format* format,
21 size_t bufferCount = 2,
22 BGameSoundDevice* device = NULL);
24 virtual ~BStreamingGameSound();
26 virtual BGameSound* Clone() const;
28 virtual status_t SetStreamHook(void (*hook)(void* cookie,
29 void* buffer, size_t byteCount,
30 BStreamingGameSound* me),
31 void* cookie);
32 virtual void FillBuffer(void* buffer, size_t byteCount);
34 virtual status_t SetAttributes(gs_attribute* attributes,
35 size_t attributeCount);
37 virtual status_t Perform(int32 selector, void* data);
39 protected:
40 BStreamingGameSound(BGameSoundDevice* device);
42 virtual status_t SetParameters(size_t bufferFrameCount,
43 const gs_audio_format* format,
44 size_t bufferCount);
46 bool Lock();
47 void Unlock();
49 private:
50 BStreamingGameSound();
51 BStreamingGameSound(
52 const BStreamingGameSound& other);
53 BStreamingGameSound& operator=(const BStreamingGameSound& other);
54 // not implemented
56 virtual status_t _Reserved_BStreamingGameSound_0(int32 arg,...);
57 virtual status_t _Reserved_BStreamingGameSound_1(int32 arg,...);
58 virtual status_t _Reserved_BStreamingGameSound_2(int32 arg,...);
59 virtual status_t _Reserved_BStreamingGameSound_3(int32 arg,...);
60 virtual status_t _Reserved_BStreamingGameSound_4(int32 arg,...);
61 virtual status_t _Reserved_BStreamingGameSound_5(int32 arg,...);
62 virtual status_t _Reserved_BStreamingGameSound_6(int32 arg,...);
63 virtual status_t _Reserved_BStreamingGameSound_7(int32 arg,...);
64 virtual status_t _Reserved_BStreamingGameSound_8(int32 arg,...);
65 virtual status_t _Reserved_BStreamingGameSound_9(int32 arg,...);
66 virtual status_t _Reserved_BStreamingGameSound_10(int32 arg,...);
67 virtual status_t _Reserved_BStreamingGameSound_11(int32 arg,...);
68 virtual status_t _Reserved_BStreamingGameSound_12(int32 arg,...);
69 virtual status_t _Reserved_BStreamingGameSound_13(int32 arg,...);
70 virtual status_t _Reserved_BStreamingGameSound_14(int32 arg,...);
71 virtual status_t _Reserved_BStreamingGameSound_15(int32 arg,...);
72 virtual status_t _Reserved_BStreamingGameSound_16(int32 arg,...);
73 virtual status_t _Reserved_BStreamingGameSound_17(int32 arg,...);
74 virtual status_t _Reserved_BStreamingGameSound_18(int32 arg,...);
75 virtual status_t _Reserved_BStreamingGameSound_19(int32 arg,...);
76 virtual status_t _Reserved_BStreamingGameSound_20(int32 arg,...);
77 virtual status_t _Reserved_BStreamingGameSound_21(int32 arg,...);
78 virtual status_t _Reserved_BStreamingGameSound_22(int32 arg,...);
79 virtual status_t _Reserved_BStreamingGameSound_23(int32 arg,...);
81 private:
82 void (*fStreamHook)(void* cookie, void* buffer,
83 size_t bytes, BStreamingGameSound* sound);
84 void* fStreamCookie;
85 BLocker fLock;
87 uint32 _reserved[12];
91 #endif // _STREAMING_GAME_SOUND_H