1 /* 2 * Copyright 2001-2008, 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 * inFile, 19 BGameSoundDevice * device = NULL); 20 BSimpleGameSound(const char * inFile, 21 BGameSoundDevice * device = NULL); 22 BSimpleGameSound(const void * inData, 23 size_t inFrameCount, 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 status_t Init(const entry_ref * inFile); 39 status_t Init(const void* inData, int64 inFrameCount, 40 const gs_audio_format* format); 41 42 /* leave these declarations private unless you plan on actually implementing and using them. */ 43 BSimpleGameSound(); 44 BSimpleGameSound& operator=(const BSimpleGameSound&); 45 46 /* fbc data and virtuals */ 47 48 uint32 _reserved_BSimpleGameSound_[12]; 49 50 virtual status_t _Reserved_BSimpleGameSound_0(int32 arg, ...); 51 virtual status_t _Reserved_BSimpleGameSound_1(int32 arg, ...); 52 virtual status_t _Reserved_BSimpleGameSound_2(int32 arg, ...); 53 virtual status_t _Reserved_BSimpleGameSound_3(int32 arg, ...); 54 virtual status_t _Reserved_BSimpleGameSound_4(int32 arg, ...); 55 virtual status_t _Reserved_BSimpleGameSound_5(int32 arg, ...); 56 virtual status_t _Reserved_BSimpleGameSound_6(int32 arg, ...); 57 virtual status_t _Reserved_BSimpleGameSound_7(int32 arg, ...); 58 virtual status_t _Reserved_BSimpleGameSound_8(int32 arg, ...); 59 virtual status_t _Reserved_BSimpleGameSound_9(int32 arg, ...); 60 virtual status_t _Reserved_BSimpleGameSound_10(int32 arg, ...); 61 virtual status_t _Reserved_BSimpleGameSound_11(int32 arg, ...); 62 virtual status_t _Reserved_BSimpleGameSound_12(int32 arg, ...); 63 virtual status_t _Reserved_BSimpleGameSound_13(int32 arg, ...); 64 virtual status_t _Reserved_BSimpleGameSound_14(int32 arg, ...); 65 virtual status_t _Reserved_BSimpleGameSound_15(int32 arg, ...); 66 virtual status_t _Reserved_BSimpleGameSound_16(int32 arg, ...); 67 virtual status_t _Reserved_BSimpleGameSound_17(int32 arg, ...); 68 virtual status_t _Reserved_BSimpleGameSound_18(int32 arg, ...); 69 virtual status_t _Reserved_BSimpleGameSound_19(int32 arg, ...); 70 virtual status_t _Reserved_BSimpleGameSound_20(int32 arg, ...); 71 virtual status_t _Reserved_BSimpleGameSound_21(int32 arg, ...); 72 virtual status_t _Reserved_BSimpleGameSound_22(int32 arg, ...); 73 virtual status_t _Reserved_BSimpleGameSound_23(int32 arg, ...); 74 75 }; 76 77 #endif // _SIMPLE_GAME_SOUND_H 78 79