From 3d61697e688c99ff9265238b2eab474f7f1bcfc8 Mon Sep 17 00:00:00 2001 From: Octasic Inc Date: Wed, 23 Nov 2005 15:07:18 +0200 Subject: importing OCT612x-01.00-PR38 --- software/include/oct6100api/oct6100_channel_inst.h | 386 +++++++++++++++++++++ 1 file changed, 386 insertions(+) create mode 100644 software/include/oct6100api/oct6100_channel_inst.h (limited to 'software/include/oct6100api/oct6100_channel_inst.h') diff --git a/software/include/oct6100api/oct6100_channel_inst.h b/software/include/oct6100api/oct6100_channel_inst.h new file mode 100644 index 0000000..8480c98 --- /dev/null +++ b/software/include/oct6100api/oct6100_channel_inst.h @@ -0,0 +1,386 @@ +/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\ + +File: oct6100_channel_inst.h + + Copyright (c) 2001-2005 Octasic Inc. + +Description: + + File containing all defines, macros, and structures pertaining to the file + oct6100_channel.c. All elements defined in this file are for public + usage of the API. All private elements are defined in the + oct6100_channel_priv.h file. + +This file is part of the Octasic OCT6100 GPL API . The OCT6100 GPL API is +free software; you can redistribute it and/or modify it under the terms of +the GNU General Public License as published by the Free Software Foundation; +either version 2 of the License, or (at your option) any later version. + +The OCT6100 GPL API is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +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 License +along with the OCT6100 GPL API; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + +$Octasic_Release: OCT612xAPI-01.00-PR38 $ + +$Octasic_Revision: 84 $ + +\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/ + +#ifndef __OCT6100_CHANNEL_INST_H__ +#define __OCT6100_CHANNEL_INST_H__ + +/***************************** INCLUDE FILES *******************************/ + +/***************************** DEFINES *************************************/ + +/***************************** TYPES ***************************************/ + +typedef struct _OCT6100_API_CHANNEL_TDM_ +{ + /* Laws. */ + UINT8 byRinPcmLaw; + UINT8 bySinPcmLaw; + UINT8 byRoutPcmLaw; + UINT8 bySoutPcmLaw; + + /* RIN port. */ + UINT16 usRinTimeslot; + UINT16 usRinStream; + + /* SIN port. */ + UINT16 usSinTimeslot; + UINT16 usSinStream; + + /* ROUT port. */ + UINT16 usRoutTimeslot; + UINT16 usRoutStream; + + /* SOUT port. */ + UINT16 usSoutTimeslot; + UINT16 usSoutStream; + + /* ROUT broadcast info. */ + UINT16 usRoutBrdcastTsstFirstEntry; + UINT16 usRoutBrdcastTsstNumEntry; + + /* SOUT broadcast info. */ + UINT16 usSoutBrdcastTsstFirstEntry; + UINT16 usSoutBrdcastTsstNumEntry; + + UINT8 byRinNumTssts; + UINT8 bySinNumTssts; + UINT8 byRoutNumTssts; + UINT8 bySoutNumTssts; + +} tOCT6100_API_CHANNEL_TDM, *tPOCT6100_API_CHANNEL_TDM; + +typedef struct _OCT6100_API_CHANNEL_VQE_ +{ + UINT8 fEnableNlp; + UINT8 fEnableTailDisplacement; + UINT16 usTailDisplacement; + UINT16 usTailLength; + + UINT8 fSinDcOffsetRemoval; + UINT8 fRinDcOffsetRemoval; + UINT8 fRinLevelControl; + UINT8 fSoutLevelControl; + + UINT8 fRinAutomaticLevelControl; + UINT8 fSoutAutomaticLevelControl; + INT8 chRinAutomaticLevelControlTargetDb; + INT8 chSoutAutomaticLevelControlTargetDb; + + UINT8 fRinHighLevelCompensation; + INT8 chRinHighLevelCompensationThresholdDb; + + UINT8 bySoutAutomaticListenerEnhancementGainDb; + UINT8 fSoutNaturalListenerEnhancement; + + UINT8 fSoutAdaptiveNoiseReduction; + UINT8 fDtmfToneRemoval; + UINT8 fAcousticEcho; + UINT8 byComfortNoiseMode; + + UINT8 byNonLinearityBehaviorA; + UINT8 byNonLinearityBehaviorB; + INT8 chRinLevelControlGainDb; + INT8 chSoutLevelControlGainDb; + + INT8 chDefaultErlDb; + INT8 chAecDefaultErlDb; + + UINT8 fRoutNoiseReduction; + INT8 chAnrSnrEnhancementDb; + + UINT8 fEnableMusicProtection; + UINT8 fIdleCodeDetection; + + UINT8 byAnrVoiceNoiseSegregation; + UINT8 bySoutNaturalListenerEnhancementGainDb; + + UINT16 usToneDisablerVqeActivationDelay; + UINT16 usAecTailLength; + + UINT8 byDoubleTalkBehavior; + UINT8 fSoutNoiseBleaching; + + + + UINT8 fSoutConferencingNoiseReduction; + + + +} tOCT6100_API_CHANNEL_VQE, *tPOCT6100_API_CHANNEL_VQE; + +typedef struct _OCT6100_API_CHANNEL_CODEC_ +{ + UINT8 byAdpcmNibblePosition; + UINT8 fEnableSilenceSuppression; + + UINT8 byEncoderPort; + UINT8 byEncodingRate; + + UINT8 byDecoderPort; + UINT8 byDecodingRate; + + UINT8 byPhase; + UINT8 byPhasingType; + +} tOCT6100_API_CHANNEL_CODEC, *tPOCT6100_API_CHANNEL_CODEC; + +typedef struct _OCT6100_API_CHANNEL_ +{ + /*=======================================================================*/ + /* Channel configuration. */ + + /* Flag specifying whether the entry is used or not. */ + UINT8 fReserved; + + /* Count used to manage entry handles allocated to user. */ + UINT8 byEntryOpenCnt; + + /* Is this a bidirectionnal channel? */ + UINT8 fBiDirChannel; + + /* Enable tone disabler? */ + UINT8 fEnableToneDisabler; + + /* TSI chariot memory entry for the Rin/Rout stream. */ + UINT16 usRinRoutTsiMemIndex; + + /* TSI chariot memory entry for the Sin/Sout stream. */ + UINT16 usSinSoutTsiMemIndex; + + /* Additional TSI entry used to temporarily store the SIN signal. */ + UINT16 usExtraSinTsiMemIndex; + UINT16 usExtraSinTsiDependencyCnt; + + /* Additional TSI entry used to temporarily store the RIN signal. */ + UINT16 usExtraRinTsiMemIndex; + UINT16 usExtraRinTsiDependencyCnt; + + /* Conversion chariot memory entry. */ + UINT16 usRinRoutConversionMemIndex; + UINT16 usSinSoutConversionMemIndex; + + /* TSST control memory entry. */ + UINT16 usRinTsstIndex; + UINT16 usSinTsstIndex; + UINT16 usRoutTsstIndex; + UINT16 usSoutTsstIndex; + + /* SSPX memory entry. */ + UINT16 usEchoMemIndex; + + /* Active mixer events count to test for last event. */ + UINT16 usMixerEventCnt; + + /* User channel ID, transparently passed to the user. */ + UINT32 ulUserChanId; + + /* Copy events. */ + UINT16 usSinCopyEventIndex; + UINT16 usSoutCopyEventIndex; + + /* Silence events. */ + UINT16 usRinSilenceEventIndex; + UINT16 usSinSilenceEventIndex; + + /* TDM configuration. */ + tOCT6100_API_CHANNEL_TDM TdmConfig; + + /* VQE configuration. */ + tOCT6100_API_CHANNEL_VQE VqeConfig; + + /* Current echo operation mode. */ + UINT8 byEchoOperationMode; + + /* Currently muted ports. */ + UINT16 usMutedPorts; + + /*=======================================================================*/ + + + /*=======================================================================*/ + /* Statistics section. */ + + INT16 sComfortNoiseLevel; + + UINT16 usCurrentEchoDelay; + UINT16 usMaxEchoDelay; + + UINT16 usNumEchoPathChanges; + UINT16 usNumEchoPathChangesOfst; + + INT16 sCurrentERL; + INT16 sCurrentERLE; + + INT16 sMaxERL; + INT16 sMaxERLE; + + INT16 sRinLevel; + INT16 sSinLevel; + + INT16 sRinAppliedGain; + INT16 sSoutAppliedGain; + + UINT8 byToneDisablerStatus; + + /*=======================================================================*/ + + + /*=======================================================================*/ + /* Bridge information. */ + + UINT16 usBridgeIndex; + + UINT8 fMute; + UINT8 fTap; + UINT8 fBeingTapped; + UINT8 fCopyEventCreated; + + UINT16 usLoadEventIndex; + UINT16 usSubStoreEventIndex; + + UINT16 usFlexConfParticipantIndex; + UINT16 usTapBridgeIndex; + UINT16 usTapChanIndex; + + /*=======================================================================*/ + + + /*=======================================================================*/ + /* Buffer playout information. */ + + UINT32 ulRinBufWritePtr; + UINT32 ulRinBufSkipPtr; + + UINT8 fSoutBufPlaying; + UINT8 fRinBufPlaying; + + UINT8 fRinBufPlayoutNotifyOnStop; + UINT8 fRinBufPlayoutRepeatUsed; + + UINT32 ulSoutBufWritePtr; + UINT32 ulSoutBufSkipPtr; + + UINT8 fSoutBufPlayoutNotifyOnStop; + UINT8 fSoutBufPlayoutRepeatUsed; + + UINT8 fRinHardStop; + UINT8 fSoutHardStop; + + UINT32 ulRinUserBufPlayoutEventId; + UINT32 ulSoutUserBufPlayoutEventId; + + UINT8 byRinPlayoutStopEventType; + UINT8 bySoutPlayoutStopEventType; + + UINT8 fRinBufAdded; + UINT8 fSoutBufAdded; + + UINT8 fBufPlayoutActive; + + /*=======================================================================*/ + + + /*=======================================================================*/ + /* Copy events information. */ + + /* Number of copy events created. */ + UINT16 usCopyEventCnt; + + /*=======================================================================*/ + + + /*=======================================================================*/ + /* Extended tone detection info. */ + + /* Enable extended tone detection. */ + UINT8 fEnableExtToneDetection; + + UINT16 usExtToneChanIndex; + UINT16 usExtToneMixerIndex; + UINT16 usExtToneTsiIndex; + + /* Mode of operation of the channel based on the extended tone detection configuration. */ + UINT32 ulExtToneChanMode; + + /*=======================================================================*/ + + /* Tone detection state. */ + /* This array is configured as follow. */ + /* Index 0 contain event 0 to 31 and Index 1 contains event 32 - 55 */ + UINT32 aulToneConf[ 2 ]; + UINT32 ulLastSSToneDetected; + UINT32 ulLastSSToneTimestamp; + + /*=======================================================================*/ + + + /*=======================================================================*/ + + /* Index of the phasing TSST */ + UINT16 usPhasingTsstIndex; + + /* State of the codec structure associated to this channel. */ + UINT8 fSinSoutCodecActive; + UINT8 fRinRoutCodecActive; + + /* Codec configuration. */ + tOCT6100_API_CHANNEL_CODEC CodecConfig; + + /*=======================================================================*/ + + + + + + + + /* Nlp Conf Dword, index 0 contains the dword where the dword is located. and + index 1 is the actual value of the dword.*/ + UINT32 aulNlpConfDword[ cOCT6100_MAX_NLP_CONF_DWORD ][ 2 ]; + +} tOCT6100_API_CHANNEL, *tPOCT6100_API_CHANNEL; + +typedef struct _OCT6100_API_BIDIR_CHANNEL_ +{ + UINT16 usFirstChanIndex; + UINT16 usSecondChanIndex; + + /* Flag specifying whether the entry is used or not. */ + UINT8 fReserved; + + /* Count used to manage entry handles allocated to user. */ + UINT8 byEntryOpenCnt; + +} tOCT6100_API_BIDIR_CHANNEL, *tPOCT6100_API_BIDIR_CHANNEL; + +#endif /* __OCT6100_CHANNEL_INST_H__ */ -- cgit v1.2.3