Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1 | pmbaty | 1 | #ifndef S3_SOUND_H |
| 2 | #define S3_SOUND_H |
||
| 3 | |||
| 4 | // External typedefs |
||
| 5 | |||
| 6 | typedef float tF32; |
||
| 7 | typedef struct tS3_sound_source tS3_sound_source; |
||
| 8 | typedef tS3_sound_source* tS3_sound_source_ptr; |
||
| 9 | typedef int tS3_sound_tag; |
||
| 10 | typedef int tS3_sound_id; |
||
| 11 | typedef int tS3_type; |
||
| 12 | typedef int tS3_repeats; |
||
| 13 | typedef int tS3_volume; |
||
| 14 | typedef int tS3_effect_tag; |
||
| 15 | typedef long tS3_priority; |
||
| 16 | typedef long tS3_pitch; |
||
| 17 | typedef long tS3_speed; |
||
| 18 | typedef struct tS3_outlet tS3_outlet; |
||
| 19 | typedef tS3_outlet* tS3_outlet_ptr; |
||
| 20 | |||
| 21 | typedef void tS3_sample_filter(tS3_effect_tag, tS3_sound_tag); |
||
| 22 | |||
| 23 | typedef struct tS3_vector3 { |
||
| 24 | tF32 x; |
||
| 25 | tF32 y; |
||
| 26 | tF32 z; |
||
| 27 | } tS3_vector3; |
||
| 28 | |||
| 29 | int S3Init(char* path, int low_memory_mode); |
||
| 30 | void S3Shutdown(void); |
||
| 31 | |||
| 32 | void S3Disable(void); |
||
| 33 | void S3Enable(void); |
||
| 34 | |||
| 35 | void S3Set3DSoundEnvironment(float a1, float a2, float a3); |
||
| 36 | int S3BindAmbientSoundToOutlet(tS3_outlet_ptr pOutlet, int pSound, tS3_sound_source* source, float pMax_distance, int pPeriod, int pRepeats, int pVolume, int pPitch, int pSpeed); |
||
| 37 | |||
| 38 | tS3_sound_tag S3StartSound3D(tS3_outlet_ptr pOutlet, tS3_sound_id pSound, tS3_vector3* pInitial_position, tS3_vector3* pInitial_velocity, tS3_repeats pRepeats, tS3_volume pVolume, tS3_pitch pPitch, tS3_speed pSpeed); |
||
| 39 | |||
| 40 | tS3_outlet_ptr S3CreateOutlet(int unk1, int pChannel_count); |
||
| 41 | void S3ReleaseOutlet(tS3_outlet_ptr outlet); |
||
| 42 | int S3ReleaseSound(tS3_sound_id id); |
||
| 43 | int S3ReleaseSoundSource(tS3_sound_source_ptr src); |
||
| 44 | |||
| 45 | int S3ChangeVolume(tS3_sound_tag pTag, tS3_volume pVolume); |
||
| 46 | |||
| 47 | void S3Service(int inside_cockpit, int unk1); |
||
| 48 | |||
| 49 | int S3LoadSample(tS3_sound_id id); |
||
| 50 | tS3_sound_tag S3StartSound(tS3_outlet_ptr pOutlet, tS3_sound_id pSound); |
||
| 51 | tS3_sound_tag S3StartSound2(tS3_outlet_ptr pOutlet, tS3_sound_id pSound, tS3_repeats pRepeats, tS3_volume pLVolume, tS3_volume pRVolume, tS3_pitch pPitch, tS3_speed pSpeed); |
||
| 52 | void S3StopAllOutletSounds(void); |
||
| 53 | int S3SoundStillPlaying(tS3_sound_tag pSound); |
||
| 54 | int S3ChangePitchSpeed(tS3_sound_tag pTag, tS3_pitch pNew_pitch); |
||
| 55 | int S3StopSound(tS3_sound_tag pSound_tag); |
||
| 56 | int S3StopOutletSound(tS3_outlet_ptr pOutlet); |
||
| 57 | int S3SetOutletVolume(tS3_outlet_ptr pOutlet, tS3_volume pVolume); |
||
| 58 | void S3UpdateSoundSource(tS3_outlet_ptr outlet, tS3_sound_tag tag, tS3_sound_source_ptr src, float pMax_distance_squared, int pPeriod, tS3_repeats pAmbient_repeats, tS3_volume pVolume, int pPitch, tS3_speed pSpeed); |
||
| 59 | |||
| 60 | int S3IsCDAPlaying2(void); |
||
| 61 | |||
| 62 | int S3SetEffects(tS3_sample_filter* filter1, tS3_sample_filter* filter2); |
||
| 63 | |||
| 64 | #endif |