fx_man.h

来自「An interactive water fountain. A realis」· C头文件 代码 · 共 144 行

H
144
字号
/*Copyright (C) 1994-1995 Apogee Software, Ltd.This program is free software; you can redistribute it and/ormodify it under the terms of the GNU General Public Licenseas published by the Free Software Foundation; either version 2of the License, or (at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the GNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.Modifications for JonoF's port by Jonathon Fowler (jonof@edgenetwk.com)*//**********************************************************************   module: FX_MAN.H   author: James R. Dose   date:   March 17, 1994   Public header for FX_MAN.C   (c) Copyright 1994 James R. Dose.  All Rights Reserved.**********************************************************************/#ifndef __FX_MAN_H#define __FX_MAN_H#include "compat.h"typedef struct   {   int32_t MaxVoices;   int32_t MaxSampleBits;   int32_t MaxChannels;   } fx_device;#define MonoFx   1#define StereoFx 2typedef struct   {   uint32_t Address;   uint32_t Type;   uint32_t Interrupt;   uint32_t Dma8;   uint32_t Dma16;   uint32_t Midi;   uint32_t Emu;   } fx_blaster_config;enum FX_ERRORS   {   FX_Warning = -2,   FX_Error = -1,   FX_Ok = 0,   FX_ASSVersion,   FX_BlasterError,   FX_SoundCardError,   FX_InvalidCard,   FX_MultiVocError,   FX_DPMI_Error   };/*enum fx_BLASTER_Types   {   fx_SB     = 1,   fx_SBPro  = 2,   fx_SB20   = 3,   fx_SBPro2 = 4,   fx_SB16   = 6   };*/char *FX_ErrorString( int32_t ErrorNumber );//int32_t   FX_SetupCard( int32_t SoundCard, fx_device *device );//int32_t   FX_GetBlasterSettings( fx_blaster_config *blaster );//int32_t   FX_SetupSoundBlaster( fx_blaster_config blaster, int32_t *MaxVoices, int32_t *MaxSampleBits, int32_t *MaxChannels );int32_t   FX_Init( int32_t SoundCard, int32_t numvoices, int32_t numchannels, int32_t samplebits, unsigned mixrate );int32_t   FX_Shutdown( void );int32_t   FX_SetCallBack( void ( *function )( uint32_t ) );void  FX_SetVolume( int32_t volume );int32_t   FX_GetVolume( void );void  FX_SetReverseStereo( int32_t setting );int32_t   FX_GetReverseStereo( void );void  FX_SetReverb( int32_t reverb );void  FX_SetFastReverb( int32_t reverb );int32_t   FX_GetMaxReverbDelay( void );int32_t   FX_GetReverbDelay( void );void  FX_SetReverbDelay( int32_t delay );int32_t FX_VoiceAvailable( int32_t priority );int32_t FX_EndLooping( int32_t handle );int32_t FX_SetPan( int32_t handle, int32_t vol, int32_t left, int32_t right );int32_t FX_SetPitch( int32_t handle, int32_t pitchoffset );int32_t FX_SetFrequency( int32_t handle, int32_t frequency );int32_t FX_PlayVOC( char *ptr, int32_t pitchoffset, int32_t vol, int32_t left, int32_t right,       int32_t priority, uint32_t callbackval );int32_t FX_PlayLoopedVOC( char *ptr, int32_t loopstart, int32_t loopend,       int32_t pitchoffset, int32_t vol, int32_t left, int32_t right, int32_t priority,       uint32_t callbackval );int32_t FX_PlayWAV( char *ptr, int32_t pitchoffset, int32_t vol, int32_t left, int32_t right,       int32_t priority, uint32_t callbackval );int32_t FX_PlayLoopedWAV( char *ptr, int32_t loopstart, int32_t loopend,       int32_t pitchoffset, int32_t vol, int32_t left, int32_t right, int32_t priority,       uint32_t callbackval );int32_t FX_PlayLoopedOGG( char *ptr, int32_t loopstart, int32_t loopend,       int32_t pitchoffset, int32_t vol, int32_t left, int32_t right, int32_t priority,       uint32_t callbackval );int32_t FX_PlayOGG3D( char *ptr, int32_t pitchoffset, int32_t angle, int32_t distance,       int32_t priority, uint32_t callbackval );int32_t FX_PlayVOC3D( char *ptr, int32_t pitchoffset, int32_t angle, int32_t distance,       int32_t priority, uint32_t callbackval );int32_t FX_PlayWAV3D( char *ptr, int32_t pitchoffset, int32_t angle, int32_t distance,       int32_t priority, uint32_t callbackval );int32_t FX_PlayRaw( char *ptr, uint32_t length, unsigned rate,       int32_t pitchoffset, int32_t vol, int32_t left, int32_t right, int32_t priority,       uint32_t callbackval );int32_t FX_PlayLoopedRaw( char *ptr, uint32_t length, char *loopstart,       char *loopend, unsigned rate, int32_t pitchoffset, int32_t vol, int32_t left,       int32_t right, int32_t priority, uint32_t callbackval );int32_t FX_Pan3D( int32_t handle, int32_t angle, int32_t distance );int32_t FX_SoundActive( int32_t handle );int32_t FX_SoundsPlaying( void );int32_t FX_StopSound( int32_t handle );int32_t FX_StopAllSounds( void );int32_t FX_StartDemandFeedPlayback( void ( *function )( char **ptr, uint32_t *length ),       int32_t rate, int32_t pitchoffset, int32_t vol, int32_t left, int32_t right,       int32_t priority, uint32_t callbackval );int32_t  FX_StartRecording( int32_t MixRate, void ( *function )( char *ptr, int32_t length ) );void FX_StopRecord( void );void FX_Update(void);#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?