Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

77 lines
1.6 KiB

/*******************************************************************************
Module Name:
bgitem.h
Abstract:
Defines CBridgeItem and CBridgeItemList for storing info for bridge objects
Author:
Qianbo Huai (qhuai) Jan 27 2000
*******************************************************************************/
#ifndef _BGITEM_H
#define _BGITEM_H
class CBridgeItem
{
public:
CBridgeItem ();
~CBridgeItem ();
// forward link
CBridgeItem *next;
// backward link
CBridgeItem *prev;
// caller identity
BSTR bstrID;
BSTR bstrName;
// call controls
ITBasicCallControl *pCallH323;
ITBasicCallControl *pCallSDP;
// terminals
ITTerminal *pTermHSAud;
ITTerminal *pTermHSVid;
ITTerminal *pTermSHAud;
ITTerminal *pTermSHVid;
// h323 side streams
ITStream *pStreamHAudCap;
ITStream *pStreamHAudRen;
ITStream *pStreamHVidCap;
ITStream *pStreamHVidRen;
// sdp side streams
ITStream *pStreamSAudCap;
ITStream *pStreamSAudRen;
ITStream *pStreamSVidCap;
ITStream *pStreamSVidRen;
};
class CBridgeItemList
{
public:
CBridgeItemList ();
~CBridgeItemList ();
CBridgeItem *FindByH323 (IUnknown *pIUnknown);
CBridgeItem *FindBySDP (IUnknown *pIUnknown);
void TakeOut (CBridgeItem *pItem);
CBridgeItem *DeleteFirst ();
void Append (CBridgeItem *pItem);
BOOL GetAllItems (CBridgeItem ***pItemArray, int *pNum);
BOOL IsEmpty ();
private:
CBridgeItem *Find (int flag, IUnknown *pIUnknown);
CBridgeItem *m_pHead;
};
#endif