windows-nt/Source/XPSP1/NT/enduser/netmeeting/av/callcont/api_util.x
2020-09-26 16:20:57 +08:00

171 lines
6.9 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/******************************************************************************
*
* INTEL Corporation Proprietary Information
* Copyright (c) 1994, 1995, 1996 Intel Corporation.
*
* This listing is supplied under the terms of a license agreement
* with INTEL Corporation and may not be used, copied, nor disclosed
* except in accordance with the terms of that agreement.
*
*****************************************************************************/
/******************************************************************************
*
* $Workfile: api_util.x $
* $Revision: 1.10 $
* $Modtime: 11 Oct 1996 14:27:46 $
* $Log: S:/STURGEON/SRC/H245/INCLUDE/VCS/api_util.x_v $
Rev 1.10 11 Oct 1996 15:20:22 EHOWARDX
Fixed H245CopyCap() bug.
Rev 1.9 28 Aug 1996 11:41:16 EHOWARDX
const changes.
Rev 1.8 09 Jul 1996 17:10:46 EHOWARDX
Fixed pointer offset bug in processing DataType from received
OpenLogicalChannel.
Rev 1.7 17 Jun 1996 18:07:58 EHOWARDX
Changed argument to build_totcap_cap_client_from_capability().
Rev 1.6 14 Jun 1996 18:55:56 EHOWARDX
Geneva update.
Rev 1.5 29 May 1996 15:21:48 EHOWARDX
Change to use HRESULT.
Rev 1.4 28 May 1996 14:10:06 EHOWARDX
Tel Aviv update.
Rev 1.3 16 May 1996 15:56:52 EHOWARDX
Changed set_capability prototype.
Renamed free_mux_cap to del_mux_cap.
Renamed convert_mux_cap to set_mux_cap.
Rev 1.2 14 May 1996 15:55:14 EHOWARDX
Added del_mux_cap.
Rev 1.1 13 May 1996 23:15:58 EHOWARDX
Fixed remote termcap handling.
Rev 1.0 09 May 1996 21:05:02 EHOWARDX
Initial revision.
Rev 1.12.1.2 09 May 1996 19:32:16 EHOWARDX
Redesigned thread locking logic.
Added new API functions.
Rev 1.12.1.1 23 Apr 1996 18:07:02 EHOWARDX
Missed one...
Rev 1.12.1.0 23 Apr 1996 17:57:24 EHOWARDX
Changed struct ObjectID * to ObjectID.
Rev 1.12 15 Apr 1996 13:57:22 cjutzi
- added conflict resolution.
Rev 1.11 12 Apr 1996 15:25:16 cjutzi
- completed NonStandard w/ ObjectID
- cleandup the cleanup and dealloc of caps for NonStandard Parameters
Rev 1.10 01 Apr 1996 16:42:44 cjutzi
- changed EndConnection and Shutdown
Rev 1.9 18 Mar 1996 15:22:18 cjutzi
Rev 1.8 08 Mar 1996 14:02:28 cjutzi
- added free mux table and element calls
Rev 1.7 05 Mar 1996 17:35:14 cjutzi
Rev 1.6 01 Mar 1996 13:50:08 cjutzi
- added debug message stuff for tracking fsm events.. (map_fsm_event)
Rev 1.5 26 Feb 1996 11:06:46 cjutzi
- added simultanoius caps.. and fixed bugs..
lot's o-changes..
Rev 1.4 15 Feb 1996 10:54:24 cjutzi
- changed some interfaces.. andded define macro for updateing tcap.
Rev 1.3 09 Feb 1996 16:58:34 cjutzi
- cleanup.. and some fixes..
- added and or changed headers to reflect the log of changes
*
*****************************************************************************/
#define disable_cap_link(p) {(p)->value.bit_mask &= ~capability_present;}
extern BYTE DataTypeMap[];
unsigned ObjectIdLength (const NonStandardIdentifier *pIdentifier);
CapabilityTableLink find_capid_by_entrynumber (struct TerminalCapabilitySet *,H245_CAPID_T);
CapabilityTableLink alloc_link_cap_entry ( struct TerminalCapabilitySet *);
HRESULT load_cap (struct Capability *pCapability, const H245_TOTCAP_T *pTotCap);
void free_cap (struct Capability *pCapability, const H245_TOTCAP_T *pTotCap);
HRESULT build_totcap_from_captbl (H245_TOTCAP_T *,CapabilityTableLink, int);
HRESULT build_totcap_cap_n_client_from_capability (struct Capability *, H245_DATA_T, unsigned short, H245_TOTCAP_T *);
void clean_cap_table( struct TerminalCapabilitySet *);
HRESULT del_cap_link ( struct TerminalCapabilitySet *, CapabilityTableLink);
Tracker_T * alloc_link_tracker (struct InstanceStruct *pInstance,
API_TRACKER_T,
DWORD_PTR,
API_TRACKER_STATE_T,
API_TRACKER_CH_ALLOC_T,
API_TRACKER_CH_T,
H245_DATA_T,
H245_CHANNEL_T,
H245_CHANNEL_T,
DWORD);
void unlink_dealloc_tracker (struct InstanceStruct *pInstance, Tracker_T *);
Tracker_T * find_tracker_by_txchannel(struct InstanceStruct *pInstance, DWORD, API_TRACKER_CH_ALLOC_T);
Tracker_T * find_tracker_by_rxchannel(struct InstanceStruct *pInstance, DWORD, API_TRACKER_CH_ALLOC_T);
Tracker_T * find_tracker_by_pointer (struct InstanceStruct *pInstance, Tracker_T *);
Tracker_T * find_tracker_by_type (struct InstanceStruct *pInstance, API_TRACKER_T, Tracker_T *);
void del_mux_cap (struct TerminalCapabilitySet *pTermCapSet);
HRESULT set_mux_cap (
struct InstanceStruct *pInstance,
struct TerminalCapabilitySet *pTermCapSet,
H245_TOTCAP_T *pTotCap);
HRESULT set_capability (
struct InstanceStruct *pInstance,
struct TerminalCapabilitySet *pTermCapSet,
H245_TOTCAP_T *pTotCap);
HRESULT set_cap_descriptor (
struct InstanceStruct *pInstance,
H245_CAPDESC_T *pCapDesc,
H245_CAPDESCID_T *pCapDescId,
struct TerminalCapabilitySet *pTermCapSet);
HRESULT del_cap_descriptor (
struct InstanceStruct *pInstance,
H245_CAPDESCID_T CapDescId,
struct TerminalCapabilitySet *pTermCapSet);
HRESULT build_totcap_from_mux(H245_TOTCAP_T *pTotCap, MultiplexCapability *pMuxCap, H245_CAPDIR_T Dir);
LPSTR map_api_error (HRESULT);
void free_mux_desc_list (MultiplexEntryDescriptorLink);
H245_LINK_T * alloc_link (int);
void dealloc_simultaneous_cap (CapabilityDescriptor *);
LPSTR map_fsm_event (DWORD);
LPSTR map_tracker_type (API_TRACKER_T);
void free_mux_table_list (H245_MUX_TABLE_T *);
void free_mux_el_list (H245_MUX_ENTRY_ELEMENT_T *);
unsigned ObjectIdLength (const NonStandardIdentifier *pIdentifier);
void FreeNonStandardParameter(NonStandardParameter *pFree);
HRESULT CopyNonStandardParameter(NonStandardParameter *pNew, const NonStandardParameter *pOld);
void FreeH222Cap(H222Capability *pFree);
HRESULT CopyH222Cap(H222Capability *pNew, const H222Capability *pOld);
void FreeH2250Cap(H2250Capability *pFree);
HRESULT CopyH2250Cap(H2250Capability *pNew, const H2250Capability *pOld);