156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * File:
456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * eas_config.h
556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Contents and purpose:
756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This header declares the Configuration Module interface (CM). The CM
856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * is a module compiled external to the library that sets the configuration
956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * for this build. It allows the library to find optional components and
1056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * links to static memory allocations (when used in a static configuration).
1156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
1256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * NOTE: This module is not intended to be modified by the customer. It
1356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * needs to be included in the build process with the correct configuration
1456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * defines (see the library documentation for information on how to configure
1556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * the library).
1656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
1756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * DO NOT MODIFY THIS FILE!
1856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
1956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Copyright 2005 Sonic Network Inc.
207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * you may not use this file except in compliance with the License.
237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * You may obtain a copy of the License at
247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * See the License for the specific language governing permissions and
317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * limitations under the License.
3256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
3356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
3456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Revision Control:
3556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *   $Revision: 82 $
3656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *   $Date: 2006-07-10 11:45:19 -0700 (Mon, 10 Jul 2006) $
3756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
3856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
3956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
4056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks// sentinel
4156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifndef _EAS_CONFIG_H
4256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define _EAS_CONFIG_H
4356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
4456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#include "eas_types.h"
4556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
4656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* list of enumerators for optional modules */
4756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef enum {
4856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_FILE_PARSERS = 1
4956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} E_CM_ENUM_MODULES;
5056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
5156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* list of enumerators for module and memory pointers */
5256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef enum {
5356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_EAS_DATA = 1,
5456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_MIX_BUFFER,
5556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_SYNTH_DATA,
5656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_MIDI_DATA,
5756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_SMF_DATA,
5856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_XMF_DATA,
5956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_SMAF_DATA,
6056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_PCM_DATA,
6156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_MIDI_STREAM_DATA,
6256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_METRICS_DATA,
6356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_OTA_DATA,
6456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_IMELODY_DATA,
6556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_RTTTL_DATA,
6656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_WAVE_DATA,
6756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CM_CMF_DATA
6856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} E_CM_DATA_MODULES;
6956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
7056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef struct
7156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{
7256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    int maxSMFStreams;
7356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    void *pSMFData;
7456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    void *pSMFStream;
7556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} S_EAS_SMF_PTRS;
7656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
7756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef struct
7856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{
7956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    int maxSMAFStreams;
8056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    void *pSMAFData;
8156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    void *pSMAFStream;
8256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} S_EAS_SMAF_PTRS;
8356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
8456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
8556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMStaticMemoryModel()
8656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
8756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
8856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function returns true if EAS has been configured for
8956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * a static memory model. There are some limitations in the
9056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * static memory model, see the documentation for more
9156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * information.
9256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
9456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  returns EAS_TRUE if a module is found
9556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
9656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
9756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_BOOL EAS_CMStaticMemoryModel (void);
9856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
9956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
10056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMEnumModules()
10156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
10256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
10356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function is used to find pointers to optional modules.
10456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
10556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs:
10656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  module          - module number
10756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
10856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
10956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  returns a pointer to the module function table or NULL if no module
11056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
11156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
11256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_VOID_PTR EAS_CMEnumModules (EAS_INT module);
11356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
11456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
11556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMEnumData()
11656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
11756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
11856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function is used to find pointers to static memory allocations.
11956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
12056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs:
12156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  dataModule          - enumerated module number
12256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
12356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
12456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns handle to data or NULL if not found
12556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
12656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
12756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_VOID_PTR EAS_CMEnumData (EAS_INT dataModule);
12856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
12956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
13056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMEnumFXModules()
13156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
13256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
13356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function is used to find pointers to optional effects modules.
13456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
13556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs:
13656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  module          - enumerated module number
13756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pModule         - pointer to module interface
13856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
13956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
14056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  Returns pointer to function table or NULL if not found
14156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
14256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
14356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_VOID_PTR EAS_CMEnumFXModules (EAS_INT module);
14456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
14556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
14656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMEnumFXData()
14756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
14856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
14956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function is used to find pointers to static memory allocations.
15056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
15156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs:
15256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  dataModule          - enumerated module number
15356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pData               - pointer to handle variable
15456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
15556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
15656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns handle to data or NULL if not found
15756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
15856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
15956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_VOID_PTR EAS_CMEnumFXData (EAS_INT dataModule);
16056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
16156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
16256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMEnumOptModules()
16356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
16456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
16556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function is used to find pointers to optional modules.
16656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
16756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs:
16856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  module          - enumerated module number
16956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
17056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
17156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  returns pointer to function table or NULL if no module
17256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
17356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
17456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_VOID_PTR EAS_CMEnumOptModules (EAS_INT module);
17556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
17656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*----------------------------------------------------------------------------
17756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CMEnumOptData()
17856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
17956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
18056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This function is used to find pointers to static memory allocations.
18156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
18256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs:
18356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  dataModule          - enumerated module number
18456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
18556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs:
18656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns handle to data or NULL if not found
18756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *----------------------------------------------------------------------------
18856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/
18956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_VOID_PTR EAS_CMEnumOptData (EAS_INT dataModule);
19056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks
19156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif /* end _EAS_CONFIG_H */
192