1*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 2*f81fb7c4SAndroid Build Coastguard Worker * 3*f81fb7c4SAndroid Build Coastguard Worker * File: 4*f81fb7c4SAndroid Build Coastguard Worker * eas.h 5*f81fb7c4SAndroid Build Coastguard Worker * 6*f81fb7c4SAndroid Build Coastguard Worker * Contents and purpose: 7*f81fb7c4SAndroid Build Coastguard Worker * The public interface header for the EAS synthesizer. 8*f81fb7c4SAndroid Build Coastguard Worker * 9*f81fb7c4SAndroid Build Coastguard Worker * This header only contains declarations that are specific 10*f81fb7c4SAndroid Build Coastguard Worker * to this implementation. 11*f81fb7c4SAndroid Build Coastguard Worker * 12*f81fb7c4SAndroid Build Coastguard Worker * DO NOT MODIFY THIS FILE! 13*f81fb7c4SAndroid Build Coastguard Worker * 14*f81fb7c4SAndroid Build Coastguard Worker * Copyright Sonic Network Inc. 2005, 2006 15*f81fb7c4SAndroid Build Coastguard Worker 16*f81fb7c4SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 17*f81fb7c4SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 18*f81fb7c4SAndroid Build Coastguard Worker * You may obtain a copy of the License at 19*f81fb7c4SAndroid Build Coastguard Worker * 20*f81fb7c4SAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 21*f81fb7c4SAndroid Build Coastguard Worker * 22*f81fb7c4SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 23*f81fb7c4SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 24*f81fb7c4SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 25*f81fb7c4SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 26*f81fb7c4SAndroid Build Coastguard Worker * limitations under the License. 27*f81fb7c4SAndroid Build Coastguard Worker * 28*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 29*f81fb7c4SAndroid Build Coastguard Worker * Revision Control: 30*f81fb7c4SAndroid Build Coastguard Worker * $Revision: 852 $ 31*f81fb7c4SAndroid Build Coastguard Worker * $Date: 2007-09-04 11:43:49 -0700 (Tue, 04 Sep 2007) $ 32*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 33*f81fb7c4SAndroid Build Coastguard Worker */ 34*f81fb7c4SAndroid Build Coastguard Worker 35*f81fb7c4SAndroid Build Coastguard Worker #ifndef _EAS_H 36*f81fb7c4SAndroid Build Coastguard Worker #define _EAS_H 37*f81fb7c4SAndroid Build Coastguard Worker 38*f81fb7c4SAndroid Build Coastguard Worker #include "eas_types.h" 39*f81fb7c4SAndroid Build Coastguard Worker 40*f81fb7c4SAndroid Build Coastguard Worker /* for C++ linkage */ 41*f81fb7c4SAndroid Build Coastguard Worker #ifdef __cplusplus 42*f81fb7c4SAndroid Build Coastguard Worker extern "C" { 43*f81fb7c4SAndroid Build Coastguard Worker #endif 44*f81fb7c4SAndroid Build Coastguard Worker 45*f81fb7c4SAndroid Build Coastguard Worker /* library version macro */ 46*f81fb7c4SAndroid Build Coastguard Worker #define MAKE_LIB_VERSION(a,b,c,d) (((((((EAS_U32) a <<8) | (EAS_U32) b) << 8) | (EAS_U32) c) << 8) | (EAS_U32) d) 47*f81fb7c4SAndroid Build Coastguard Worker #define LIB_VERSION MAKE_LIB_VERSION(3, 6, 10, 14) 48*f81fb7c4SAndroid Build Coastguard Worker 49*f81fb7c4SAndroid Build Coastguard Worker typedef struct 50*f81fb7c4SAndroid Build Coastguard Worker { 51*f81fb7c4SAndroid Build Coastguard Worker EAS_U32 libVersion; 52*f81fb7c4SAndroid Build Coastguard Worker EAS_BOOL checkedVersion; 53*f81fb7c4SAndroid Build Coastguard Worker EAS_I32 maxVoices; 54*f81fb7c4SAndroid Build Coastguard Worker EAS_I32 numChannels; 55*f81fb7c4SAndroid Build Coastguard Worker EAS_I32 sampleRate; 56*f81fb7c4SAndroid Build Coastguard Worker EAS_I32 mixBufferSize; 57*f81fb7c4SAndroid Build Coastguard Worker EAS_BOOL filterEnabled; 58*f81fb7c4SAndroid Build Coastguard Worker EAS_U32 buildTimeStamp; 59*f81fb7c4SAndroid Build Coastguard Worker EAS_CHAR *buildGUID; 60*f81fb7c4SAndroid Build Coastguard Worker } S_EAS_LIB_CONFIG; 61*f81fb7c4SAndroid Build Coastguard Worker 62*f81fb7c4SAndroid Build Coastguard Worker /* enumerated effects module numbers for configuration */ 63*f81fb7c4SAndroid Build Coastguard Worker typedef enum 64*f81fb7c4SAndroid Build Coastguard Worker { 65*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_ENHANCER = 0, 66*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_COMPRESSOR, 67*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_REVERB, 68*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_CHORUS, 69*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_WIDENER, 70*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_GRAPHIC_EQ, 71*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_WOW, 72*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_MAXIMIZER, 73*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_TONECONTROLEQ, 74*f81fb7c4SAndroid Build Coastguard Worker NUM_EFFECTS_MODULES 75*f81fb7c4SAndroid Build Coastguard Worker } E_FX_MODULES; 76*f81fb7c4SAndroid Build Coastguard Worker 77*f81fb7c4SAndroid Build Coastguard Worker /* enumerated optional module numbers for configuration */ 78*f81fb7c4SAndroid Build Coastguard Worker typedef enum 79*f81fb7c4SAndroid Build Coastguard Worker { 80*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_MMAPI_TONE_CONTROL = 0, 81*f81fb7c4SAndroid Build Coastguard Worker EAS_MODULE_METRICS 82*f81fb7c4SAndroid Build Coastguard Worker } E_OPT_MODULES; 83*f81fb7c4SAndroid Build Coastguard Worker #define NUM_OPTIONAL_MODULES 2 84*f81fb7c4SAndroid Build Coastguard Worker 85*f81fb7c4SAndroid Build Coastguard Worker /* enumerated audio decoders for configuration */ 86*f81fb7c4SAndroid Build Coastguard Worker typedef enum 87*f81fb7c4SAndroid Build Coastguard Worker { 88*f81fb7c4SAndroid Build Coastguard Worker EAS_DECODER_PCM = 0, 89*f81fb7c4SAndroid Build Coastguard Worker EAS_DECODER_SMAF_ADPCM, 90*f81fb7c4SAndroid Build Coastguard Worker EAS_DECODER_IMA_ADPCM, 91*f81fb7c4SAndroid Build Coastguard Worker EAS_DECODER_7BIT_SMAF_ADPCM, 92*f81fb7c4SAndroid Build Coastguard Worker EAS_DECODER_NOT_SUPPORTED 93*f81fb7c4SAndroid Build Coastguard Worker } E_DECODER_MODULES; 94*f81fb7c4SAndroid Build Coastguard Worker #define NUM_DECODER_MODULES 4 95*f81fb7c4SAndroid Build Coastguard Worker 96*f81fb7c4SAndroid Build Coastguard Worker /* defines for EAS_PEOpenStream flags parameter */ 97*f81fb7c4SAndroid Build Coastguard Worker #define PCM_FLAGS_STEREO 0x00000100 /* stream is stereo */ 98*f81fb7c4SAndroid Build Coastguard Worker #define PCM_FLAGS_8_BIT 0x00000001 /* 8-bit format */ 99*f81fb7c4SAndroid Build Coastguard Worker #define PCM_FLAGS_UNSIGNED 0x00000010 /* unsigned format */ 100*f81fb7c4SAndroid Build Coastguard Worker #define PCM_FLAGS_STREAMING 0x80000000 /* streaming mode */ 101*f81fb7c4SAndroid Build Coastguard Worker 102*f81fb7c4SAndroid Build Coastguard Worker /* maximum volume setting */ 103*f81fb7c4SAndroid Build Coastguard Worker #define EAS_MAX_VOLUME 100 104*f81fb7c4SAndroid Build Coastguard Worker 105*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 106*f81fb7c4SAndroid Build Coastguard Worker * EAS_Init() 107*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 108*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 109*f81fb7c4SAndroid Build Coastguard Worker * Initialize the synthesizer library 110*f81fb7c4SAndroid Build Coastguard Worker * 111*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 112*f81fb7c4SAndroid Build Coastguard Worker * polyphony - number of voices to play (dynamic memory model only) 113*f81fb7c4SAndroid Build Coastguard Worker * ppLibData - pointer to data handle variable for this instance 114*f81fb7c4SAndroid Build Coastguard Worker * 115*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 116*f81fb7c4SAndroid Build Coastguard Worker * 117*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 118*f81fb7c4SAndroid Build Coastguard Worker */ 119*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Init (EAS_DATA_HANDLE *ppEASData); 120*f81fb7c4SAndroid Build Coastguard Worker 121*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 122*f81fb7c4SAndroid Build Coastguard Worker * EAS_Config() 123*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 124*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 125*f81fb7c4SAndroid Build Coastguard Worker * Returns a pointer to a structure containing the configuration options 126*f81fb7c4SAndroid Build Coastguard Worker * in this library build. 127*f81fb7c4SAndroid Build Coastguard Worker * 128*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 129*f81fb7c4SAndroid Build Coastguard Worker * 130*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 131*f81fb7c4SAndroid Build Coastguard Worker * 132*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 133*f81fb7c4SAndroid Build Coastguard Worker */ 134*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC const S_EAS_LIB_CONFIG *EAS_Config (void); 135*f81fb7c4SAndroid Build Coastguard Worker 136*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 137*f81fb7c4SAndroid Build Coastguard Worker * EAS_Shutdown() 138*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 139*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 140*f81fb7c4SAndroid Build Coastguard Worker * Shuts down the library. Deallocates any memory associated with the 141*f81fb7c4SAndroid Build Coastguard Worker * synthesizer (dynamic memory model only) 142*f81fb7c4SAndroid Build Coastguard Worker * 143*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 144*f81fb7c4SAndroid Build Coastguard Worker * pEASData - handle to data for this instance 145*f81fb7c4SAndroid Build Coastguard Worker * 146*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 147*f81fb7c4SAndroid Build Coastguard Worker * 148*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 149*f81fb7c4SAndroid Build Coastguard Worker */ 150*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Shutdown (EAS_DATA_HANDLE pEASData); 151*f81fb7c4SAndroid Build Coastguard Worker 152*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 153*f81fb7c4SAndroid Build Coastguard Worker * EAS_Render() 154*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 155*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 156*f81fb7c4SAndroid Build Coastguard Worker * Parse the Midi data and render PCM audio data. 157*f81fb7c4SAndroid Build Coastguard Worker * 158*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 159*f81fb7c4SAndroid Build Coastguard Worker * pEASData - buffer for internal EAS data 160*f81fb7c4SAndroid Build Coastguard Worker * pOut - output buffer pointer 161*f81fb7c4SAndroid Build Coastguard Worker * nNumRequested - requested num samples to generate 162*f81fb7c4SAndroid Build Coastguard Worker * pnNumGenerated - actual number of samples generated 163*f81fb7c4SAndroid Build Coastguard Worker * 164*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 165*f81fb7c4SAndroid Build Coastguard Worker * EAS_SUCCESS if PCM data was successfully rendered 166*f81fb7c4SAndroid Build Coastguard Worker * 167*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 168*f81fb7c4SAndroid Build Coastguard Worker */ 169*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Render (EAS_DATA_HANDLE pEASData, EAS_PCM *pOut, EAS_I32 numRequested, EAS_I32 *pNumGenerated); 170*f81fb7c4SAndroid Build Coastguard Worker 171*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 172*f81fb7c4SAndroid Build Coastguard Worker * EAS_SetTransposition) 173*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 174*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 175*f81fb7c4SAndroid Build Coastguard Worker * Sets the key tranposition for the synthesizer. Transposes all 176*f81fb7c4SAndroid Build Coastguard Worker * melodic instruments by the specified amount. Range is limited 177*f81fb7c4SAndroid Build Coastguard Worker * to +/-12 semitones. 178*f81fb7c4SAndroid Build Coastguard Worker * 179*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 180*f81fb7c4SAndroid Build Coastguard Worker * pEASData - handle to data for this instance 181*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - handle to stream 182*f81fb7c4SAndroid Build Coastguard Worker * transposition - +/-12 semitones 183*f81fb7c4SAndroid Build Coastguard Worker * 184*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 185*f81fb7c4SAndroid Build Coastguard Worker * 186*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 187*f81fb7c4SAndroid Build Coastguard Worker * 188*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 189*f81fb7c4SAndroid Build Coastguard Worker */ 190*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_SetTransposition (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 transposition); 191*f81fb7c4SAndroid Build Coastguard Worker #define MAX_TRANSPOSE 12 192*f81fb7c4SAndroid Build Coastguard Worker 193*f81fb7c4SAndroid Build Coastguard Worker 194*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 195*f81fb7c4SAndroid Build Coastguard Worker * EAS_SetVolume() 196*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 197*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 198*f81fb7c4SAndroid Build Coastguard Worker * Set the master volume for the mixer. The default volume setting is 199*f81fb7c4SAndroid Build Coastguard Worker * 90 (-10 dB). The volume range is 0 to 100 in 1dB increments. 200*f81fb7c4SAndroid Build Coastguard Worker * 201*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 202*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 203*f81fb7c4SAndroid Build Coastguard Worker * volume - the desired master volume 204*f81fb7c4SAndroid Build Coastguard Worker * 205*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 206*f81fb7c4SAndroid Build Coastguard Worker * 207*f81fb7c4SAndroid Build Coastguard Worker * 208*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 209*f81fb7c4SAndroid Build Coastguard Worker * overrides any previously set master volume from sysex 210*f81fb7c4SAndroid Build Coastguard Worker * 211*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 212*f81fb7c4SAndroid Build Coastguard Worker */ 213*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_SetVolume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 volume); 214*f81fb7c4SAndroid Build Coastguard Worker 215*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 216*f81fb7c4SAndroid Build Coastguard Worker * EAS_OpenFile() 217*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 218*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 219*f81fb7c4SAndroid Build Coastguard Worker * Opens a file for audio playback. 220*f81fb7c4SAndroid Build Coastguard Worker * 221*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 222*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 223*f81fb7c4SAndroid Build Coastguard Worker * locator - pointer to filename or other locating information 224*f81fb7c4SAndroid Build Coastguard Worker * pStreamHandle - pointer to stream handle variable 225*f81fb7c4SAndroid Build Coastguard Worker * 226*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 227*f81fb7c4SAndroid Build Coastguard Worker * 228*f81fb7c4SAndroid Build Coastguard Worker * 229*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 230*f81fb7c4SAndroid Build Coastguard Worker * 231*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 232*f81fb7c4SAndroid Build Coastguard Worker */ 233*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_OpenFile (EAS_DATA_HANDLE pEASData, EAS_FILE_LOCATOR locator, EAS_HANDLE *pStreamHandle); 234*f81fb7c4SAndroid Build Coastguard Worker 235*f81fb7c4SAndroid Build Coastguard Worker #ifdef MMAPI_SUPPORT 236*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 237*f81fb7c4SAndroid Build Coastguard Worker * EAS_MMAPIToneControl() 238*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 239*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 240*f81fb7c4SAndroid Build Coastguard Worker * Opens a ToneControl file for audio playback. 241*f81fb7c4SAndroid Build Coastguard Worker * 242*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 243*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 244*f81fb7c4SAndroid Build Coastguard Worker * locator - pointer to filename or other locating information 245*f81fb7c4SAndroid Build Coastguard Worker * pStreamHandle - pointer to stream handle variable 246*f81fb7c4SAndroid Build Coastguard Worker * 247*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 248*f81fb7c4SAndroid Build Coastguard Worker * 249*f81fb7c4SAndroid Build Coastguard Worker * 250*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 251*f81fb7c4SAndroid Build Coastguard Worker * 252*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 253*f81fb7c4SAndroid Build Coastguard Worker */ 254*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_MMAPIToneControl (EAS_DATA_HANDLE pEASData, EAS_FILE_LOCATOR locator, EAS_HANDLE *pStreamHandle); 255*f81fb7c4SAndroid Build Coastguard Worker 256*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 257*f81fb7c4SAndroid Build Coastguard Worker * EAS_GetWaveFmtChunk 258*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 259*f81fb7c4SAndroid Build Coastguard Worker * Helper function to retrieve WAVE file fmt chunk for MMAPI 260*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 261*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to EAS persistent data object 262*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - stream handle 263*f81fb7c4SAndroid Build Coastguard Worker * pFmtChunk - pointer to pointer to FMT chunk data 264*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 265*f81fb7c4SAndroid Build Coastguard Worker */ 266*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_GetWaveFmtChunk (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_VOID_PTR *ppFmtChunk); 267*f81fb7c4SAndroid Build Coastguard Worker #endif 268*f81fb7c4SAndroid Build Coastguard Worker 269*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 270*f81fb7c4SAndroid Build Coastguard Worker * EAS_GetFileType 271*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 272*f81fb7c4SAndroid Build Coastguard Worker * Returns the file type (see eas_types.h for enumerations) 273*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 274*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to EAS persistent data object 275*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - stream handle 276*f81fb7c4SAndroid Build Coastguard Worker * pFileType - pointer to variable to receive file type 277*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 278*f81fb7c4SAndroid Build Coastguard Worker */ 279*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_GetFileType (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pFileType); 280*f81fb7c4SAndroid Build Coastguard Worker 281*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 282*f81fb7c4SAndroid Build Coastguard Worker * EAS_ParseMetaData() 283*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 284*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 285*f81fb7c4SAndroid Build Coastguard Worker * 286*f81fb7c4SAndroid Build Coastguard Worker * 287*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 288*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 289*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 290*f81fb7c4SAndroid Build Coastguard Worker * playLength - pointer to variable to store the play length (in msecs) 291*f81fb7c4SAndroid Build Coastguard Worker * 292*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 293*f81fb7c4SAndroid Build Coastguard Worker * 294*f81fb7c4SAndroid Build Coastguard Worker * 295*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 296*f81fb7c4SAndroid Build Coastguard Worker * - resets the parser to the start of the file 297*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 298*f81fb7c4SAndroid Build Coastguard Worker */ 299*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_ParseMetaData (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPlayLength); 300*f81fb7c4SAndroid Build Coastguard Worker 301*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 302*f81fb7c4SAndroid Build Coastguard Worker * EAS_Prepare() 303*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 304*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 305*f81fb7c4SAndroid Build Coastguard Worker * Prepares the synthesizer to play the file or stream. Parses the first 306*f81fb7c4SAndroid Build Coastguard Worker * frame of data from the file and arms the synthesizer. 307*f81fb7c4SAndroid Build Coastguard Worker * 308*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 309*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 310*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 311*f81fb7c4SAndroid Build Coastguard Worker * 312*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 313*f81fb7c4SAndroid Build Coastguard Worker * 314*f81fb7c4SAndroid Build Coastguard Worker * 315*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 316*f81fb7c4SAndroid Build Coastguard Worker * 317*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 318*f81fb7c4SAndroid Build Coastguard Worker */ 319*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Prepare (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 320*f81fb7c4SAndroid Build Coastguard Worker 321*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 322*f81fb7c4SAndroid Build Coastguard Worker * EAS_State() 323*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 324*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 325*f81fb7c4SAndroid Build Coastguard Worker * Returns the state of an audio file or stream. 326*f81fb7c4SAndroid Build Coastguard Worker * 327*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 328*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 329*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 330*f81fb7c4SAndroid Build Coastguard Worker * 331*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 332*f81fb7c4SAndroid Build Coastguard Worker * 333*f81fb7c4SAndroid Build Coastguard Worker * 334*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 335*f81fb7c4SAndroid Build Coastguard Worker * 336*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 337*f81fb7c4SAndroid Build Coastguard Worker */ 338*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_State (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_STATE *pState); 339*f81fb7c4SAndroid Build Coastguard Worker 340*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 341*f81fb7c4SAndroid Build Coastguard Worker * EAS_RegisterMetaDataCallback() 342*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 343*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 344*f81fb7c4SAndroid Build Coastguard Worker * Registers a metadata callback function for parsed metadata. To 345*f81fb7c4SAndroid Build Coastguard Worker * de-register the callback, call this function again with parameter 346*f81fb7c4SAndroid Build Coastguard Worker * cbFunc set to NULL. 347*f81fb7c4SAndroid Build Coastguard Worker * 348*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 349*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 350*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 351*f81fb7c4SAndroid Build Coastguard Worker * cbFunc - pointer to host callback function 352*f81fb7c4SAndroid Build Coastguard Worker * metaDataBuffer - pointer to metadata buffer 353*f81fb7c4SAndroid Build Coastguard Worker * metaDataBufSize - maximum size of the metadata buffer 354*f81fb7c4SAndroid Build Coastguard Worker * 355*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 356*f81fb7c4SAndroid Build Coastguard Worker * 357*f81fb7c4SAndroid Build Coastguard Worker * 358*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 359*f81fb7c4SAndroid Build Coastguard Worker * 360*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 361*f81fb7c4SAndroid Build Coastguard Worker */ 362*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_RegisterMetaDataCallback ( 363*f81fb7c4SAndroid Build Coastguard Worker EAS_DATA_HANDLE pEASData, 364*f81fb7c4SAndroid Build Coastguard Worker EAS_HANDLE streamHandle, 365*f81fb7c4SAndroid Build Coastguard Worker EAS_METADATA_CBFUNC cbFunc, 366*f81fb7c4SAndroid Build Coastguard Worker char *metaDataBuffer, 367*f81fb7c4SAndroid Build Coastguard Worker EAS_I32 metaDataBufSize, 368*f81fb7c4SAndroid Build Coastguard Worker EAS_VOID_PTR pUserData); 369*f81fb7c4SAndroid Build Coastguard Worker 370*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 371*f81fb7c4SAndroid Build Coastguard Worker * EAS_GetNoteCount () 372*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 373*f81fb7c4SAndroid Build Coastguard Worker * Returns the total number of notes played in this stream 374*f81fb7c4SAndroid Build Coastguard Worker * 375*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 376*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 377*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 378*f81fb7c4SAndroid Build Coastguard Worker * pNoteCount - pointer to variable to receive note count 379*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 380*f81fb7c4SAndroid Build Coastguard Worker */ 381*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_GetNoteCount (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 *pNoteCount); 382*f81fb7c4SAndroid Build Coastguard Worker 383*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 384*f81fb7c4SAndroid Build Coastguard Worker * EAS_CloseFile() 385*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 386*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 387*f81fb7c4SAndroid Build Coastguard Worker * Closes an audio file or stream. Playback should have either paused or 388*f81fb7c4SAndroid Build Coastguard Worker * completed (EAS_State returns EAS_PAUSED or EAS_STOPPED). 389*f81fb7c4SAndroid Build Coastguard Worker * 390*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 391*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 392*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 393*f81fb7c4SAndroid Build Coastguard Worker * 394*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 395*f81fb7c4SAndroid Build Coastguard Worker * 396*f81fb7c4SAndroid Build Coastguard Worker * 397*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 398*f81fb7c4SAndroid Build Coastguard Worker * 399*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 400*f81fb7c4SAndroid Build Coastguard Worker */ 401*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_CloseFile (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 402*f81fb7c4SAndroid Build Coastguard Worker 403*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 404*f81fb7c4SAndroid Build Coastguard Worker * EAS_OpenMIDIStream() 405*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 406*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 407*f81fb7c4SAndroid Build Coastguard Worker * Opens a raw MIDI stream allowing the host to route MIDI cable data directly to the synthesizer 408*f81fb7c4SAndroid Build Coastguard Worker * 409*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 410*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 411*f81fb7c4SAndroid Build Coastguard Worker * pStreamHandle - pointer to variable to hold file or stream handle 412*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - open stream or NULL for new synthesizer instance 413*f81fb7c4SAndroid Build Coastguard Worker * 414*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 415*f81fb7c4SAndroid Build Coastguard Worker * 416*f81fb7c4SAndroid Build Coastguard Worker * 417*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 418*f81fb7c4SAndroid Build Coastguard Worker * 419*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 420*f81fb7c4SAndroid Build Coastguard Worker */ 421*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_OpenMIDIStream (EAS_DATA_HANDLE pEASData, EAS_HANDLE *pStreamHandle, EAS_HANDLE streamHandle); 422*f81fb7c4SAndroid Build Coastguard Worker 423*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 424*f81fb7c4SAndroid Build Coastguard Worker * EAS_WriteMIDIStream() 425*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 426*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 427*f81fb7c4SAndroid Build Coastguard Worker * Send data to the MIDI stream device 428*f81fb7c4SAndroid Build Coastguard Worker * 429*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 430*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 431*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - stream handle 432*f81fb7c4SAndroid Build Coastguard Worker * pBuffer - pointer to buffer 433*f81fb7c4SAndroid Build Coastguard Worker * count - number of bytes to write 434*f81fb7c4SAndroid Build Coastguard Worker * 435*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 436*f81fb7c4SAndroid Build Coastguard Worker * 437*f81fb7c4SAndroid Build Coastguard Worker * 438*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 439*f81fb7c4SAndroid Build Coastguard Worker * 440*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 441*f81fb7c4SAndroid Build Coastguard Worker */ 442*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_WriteMIDIStream(EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_U8 *pBuffer, EAS_I32 count); 443*f81fb7c4SAndroid Build Coastguard Worker 444*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 445*f81fb7c4SAndroid Build Coastguard Worker * EAS_CloseMIDIStream() 446*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 447*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 448*f81fb7c4SAndroid Build Coastguard Worker * Closes a raw MIDI stream 449*f81fb7c4SAndroid Build Coastguard Worker * 450*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 451*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 452*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - stream handle 453*f81fb7c4SAndroid Build Coastguard Worker * 454*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 455*f81fb7c4SAndroid Build Coastguard Worker * 456*f81fb7c4SAndroid Build Coastguard Worker * 457*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 458*f81fb7c4SAndroid Build Coastguard Worker * 459*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 460*f81fb7c4SAndroid Build Coastguard Worker */ 461*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_CloseMIDIStream (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 462*f81fb7c4SAndroid Build Coastguard Worker 463*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 464*f81fb7c4SAndroid Build Coastguard Worker * EAS_Locate() 465*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 466*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 467*f81fb7c4SAndroid Build Coastguard Worker * Locate into the file associated with the handle. 468*f81fb7c4SAndroid Build Coastguard Worker * 469*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 470*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 471*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file handle 472*f81fb7c4SAndroid Build Coastguard Worker * milliseconds - playback offset from start of file in milliseconds 473*f81fb7c4SAndroid Build Coastguard Worker * 474*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 475*f81fb7c4SAndroid Build Coastguard Worker * 476*f81fb7c4SAndroid Build Coastguard Worker * 477*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 478*f81fb7c4SAndroid Build Coastguard Worker * the actual offset will be quantized to the closest update period, typically 479*f81fb7c4SAndroid Build Coastguard Worker * a resolution of 5.9ms. Notes that are started prior to this time will not 480*f81fb7c4SAndroid Build Coastguard Worker * sound. Any notes currently playing will be shut off. 481*f81fb7c4SAndroid Build Coastguard Worker * 482*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 483*f81fb7c4SAndroid Build Coastguard Worker */ 484*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Locate (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 milliseconds, EAS_BOOL offset); 485*f81fb7c4SAndroid Build Coastguard Worker 486*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 487*f81fb7c4SAndroid Build Coastguard Worker * EAS_GetLocation() 488*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 489*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 490*f81fb7c4SAndroid Build Coastguard Worker * Returns the current playback offset 491*f81fb7c4SAndroid Build Coastguard Worker * 492*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 493*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to overall EAS data structure 494*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file handle 495*f81fb7c4SAndroid Build Coastguard Worker * 496*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 497*f81fb7c4SAndroid Build Coastguard Worker * The offset in milliseconds from the start of the current sequence, quantized 498*f81fb7c4SAndroid Build Coastguard Worker * to the nearest update period. Actual resolution is typically 5.9 ms. 499*f81fb7c4SAndroid Build Coastguard Worker * 500*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 501*f81fb7c4SAndroid Build Coastguard Worker * 502*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 503*f81fb7c4SAndroid Build Coastguard Worker */ 504*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_GetLocation (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pTime); 505*f81fb7c4SAndroid Build Coastguard Worker 506*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 507*f81fb7c4SAndroid Build Coastguard Worker * EAS_Pause() 508*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 509*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 510*f81fb7c4SAndroid Build Coastguard Worker * Pauses the playback of the data associated with this handle. The audio 511*f81fb7c4SAndroid Build Coastguard Worker * is gracefully ramped down to prevent clicks and pops. It may take several 512*f81fb7c4SAndroid Build Coastguard Worker * buffers of audio before the audio is muted. 513*f81fb7c4SAndroid Build Coastguard Worker * 514*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 515*f81fb7c4SAndroid Build Coastguard Worker * psEASData - pointer to overall EAS data structure 516*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 517*f81fb7c4SAndroid Build Coastguard Worker * 518*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 519*f81fb7c4SAndroid Build Coastguard Worker * 520*f81fb7c4SAndroid Build Coastguard Worker * 521*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 522*f81fb7c4SAndroid Build Coastguard Worker * 523*f81fb7c4SAndroid Build Coastguard Worker * 524*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 525*f81fb7c4SAndroid Build Coastguard Worker */ 526*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Pause (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 527*f81fb7c4SAndroid Build Coastguard Worker 528*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 529*f81fb7c4SAndroid Build Coastguard Worker * EAS_Resume() 530*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 531*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 532*f81fb7c4SAndroid Build Coastguard Worker * Resumes the playback of the data associated with this handle. The audio 533*f81fb7c4SAndroid Build Coastguard Worker * is gracefully ramped up to prevent clicks and pops. 534*f81fb7c4SAndroid Build Coastguard Worker * 535*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 536*f81fb7c4SAndroid Build Coastguard Worker * psEASData - pointer to overall EAS data structure 537*f81fb7c4SAndroid Build Coastguard Worker * streamHandle - file or stream handle 538*f81fb7c4SAndroid Build Coastguard Worker * 539*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 540*f81fb7c4SAndroid Build Coastguard Worker * 541*f81fb7c4SAndroid Build Coastguard Worker * 542*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 543*f81fb7c4SAndroid Build Coastguard Worker * 544*f81fb7c4SAndroid Build Coastguard Worker * 545*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 546*f81fb7c4SAndroid Build Coastguard Worker */ 547*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_Resume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 548*f81fb7c4SAndroid Build Coastguard Worker 549*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 550*f81fb7c4SAndroid Build Coastguard Worker * EAS_SetParameter() 551*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 552*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 553*f81fb7c4SAndroid Build Coastguard Worker * Set the parameter of a module. See E_MODULES for a list of modules 554*f81fb7c4SAndroid Build Coastguard Worker * and the header files of the modules for a list of parameters. 555*f81fb7c4SAndroid Build Coastguard Worker * 556*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 557*f81fb7c4SAndroid Build Coastguard Worker * psEASData - pointer to overall EAS data structure 558*f81fb7c4SAndroid Build Coastguard Worker * handle - file or stream handle 559*f81fb7c4SAndroid Build Coastguard Worker * module - enumerated module number 560*f81fb7c4SAndroid Build Coastguard Worker * param - enumerated parameter number 561*f81fb7c4SAndroid Build Coastguard Worker * value - new parameter value 562*f81fb7c4SAndroid Build Coastguard Worker * 563*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 564*f81fb7c4SAndroid Build Coastguard Worker * 565*f81fb7c4SAndroid Build Coastguard Worker * 566*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 567*f81fb7c4SAndroid Build Coastguard Worker * 568*f81fb7c4SAndroid Build Coastguard Worker * 569*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 570*f81fb7c4SAndroid Build Coastguard Worker */ 571*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_SetParameter (EAS_DATA_HANDLE pEASData, EAS_I32 module, EAS_I32 param, EAS_I32 value); 572*f81fb7c4SAndroid Build Coastguard Worker 573*f81fb7c4SAndroid Build Coastguard Worker #ifdef _METRICS_ENABLED 574*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 575*f81fb7c4SAndroid Build Coastguard Worker * EAS_MetricsReport() 576*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 577*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 578*f81fb7c4SAndroid Build Coastguard Worker * Displays the current metrics through the EAS_Report interface. 579*f81fb7c4SAndroid Build Coastguard Worker * 580*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 581*f81fb7c4SAndroid Build Coastguard Worker * pEASData - instance data handle 582*f81fb7c4SAndroid Build Coastguard Worker * 583*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 584*f81fb7c4SAndroid Build Coastguard Worker * 585*f81fb7c4SAndroid Build Coastguard Worker * 586*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 587*f81fb7c4SAndroid Build Coastguard Worker * 588*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 589*f81fb7c4SAndroid Build Coastguard Worker */ 590*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_MetricsReport (EAS_DATA_HANDLE pEASData); 591*f81fb7c4SAndroid Build Coastguard Worker 592*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 593*f81fb7c4SAndroid Build Coastguard Worker * EAS_MetricsReset() 594*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 595*f81fb7c4SAndroid Build Coastguard Worker * Purpose: 596*f81fb7c4SAndroid Build Coastguard Worker * Displays the current metrics through the EAS_Report interface. 597*f81fb7c4SAndroid Build Coastguard Worker * 598*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 599*f81fb7c4SAndroid Build Coastguard Worker * pEASData - instance data handle 600*f81fb7c4SAndroid Build Coastguard Worker * 601*f81fb7c4SAndroid Build Coastguard Worker * Outputs: 602*f81fb7c4SAndroid Build Coastguard Worker * 603*f81fb7c4SAndroid Build Coastguard Worker * 604*f81fb7c4SAndroid Build Coastguard Worker * Side Effects: 605*f81fb7c4SAndroid Build Coastguard Worker * 606*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 607*f81fb7c4SAndroid Build Coastguard Worker */ 608*f81fb7c4SAndroid Build Coastguard Worker EAS_PUBLIC EAS_RESULT EAS_MetricsReset (EAS_DATA_HANDLE pEASData); 609*f81fb7c4SAndroid Build Coastguard Worker #endif 610*f81fb7c4SAndroid Build Coastguard Worker 611*f81fb7c4SAndroid Build Coastguard Worker /*---------------------------------------------------------------------------- 612*f81fb7c4SAndroid Build Coastguard Worker * EAS_SearchFile 613*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 614*f81fb7c4SAndroid Build Coastguard Worker * Search file for specific sequence starting at current file 615*f81fb7c4SAndroid Build Coastguard Worker * position. Returns offset to start of sequence. 616*f81fb7c4SAndroid Build Coastguard Worker * 617*f81fb7c4SAndroid Build Coastguard Worker * Inputs: 618*f81fb7c4SAndroid Build Coastguard Worker * pEASData - pointer to EAS persistent data object 619*f81fb7c4SAndroid Build Coastguard Worker * fileHandle - file handle 620*f81fb7c4SAndroid Build Coastguard Worker * searchString - pointer to search sequence 621*f81fb7c4SAndroid Build Coastguard Worker * len - length of search sequence 622*f81fb7c4SAndroid Build Coastguard Worker * pOffset - pointer to variable to store offset to sequence 623*f81fb7c4SAndroid Build Coastguard Worker * 624*f81fb7c4SAndroid Build Coastguard Worker * Returns EAS_EOF if end-of-file is reached 625*f81fb7c4SAndroid Build Coastguard Worker *---------------------------------------------------------------------------- 626*f81fb7c4SAndroid Build Coastguard Worker */ 627*f81fb7c4SAndroid Build Coastguard Worker EAS_RESULT EAS_SearchFile (EAS_DATA_HANDLE pEASData, EAS_FILE_HANDLE fileHandle, const EAS_U8 *searchString, EAS_I32 len, EAS_I32 *pOffset); 628*f81fb7c4SAndroid Build Coastguard Worker 629*f81fb7c4SAndroid Build Coastguard Worker #ifdef __cplusplus 630*f81fb7c4SAndroid Build Coastguard Worker } /* end extern "C" */ 631*f81fb7c4SAndroid Build Coastguard Worker #endif 632*f81fb7c4SAndroid Build Coastguard Worker 633*f81fb7c4SAndroid Build Coastguard Worker #endif /* #ifndef _EAS_H */ 634