Source code of Windows XP (NT5)
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.
|
|
/*
* File: icomchan.h * * Network media channel interface definitions * * Revision History: * * 10/09/96 mikev created */
#ifndef _ICOMCHAN_H
#define _ICOMCHAN_H
#include "incommon.h"
#include "iprop.h"
//
// status code definitions for channel events passed upward
// to IH323ConfAdvise::ChannelEvent();
//
#define CHANNEL_OPEN 0x00000001
#define CHANNEL_ACTIVE 0x00000002 // started streaming
#define CHANNEL_REJECTED 0x00000003
#define CHANNEL_NO_CAPABILITY 0x00000004 // remote end is not capable of supporting
// the media type of this channel
#define CHANNEL_CLOSED 0x00000005
#define CHANNEL_OPEN_ERROR 0x00000007
#define CHANNEL_VIDEO_TS_TRADEOFF 0x00000008
#define CHANNEL_REMOTE_PAUSE_ON 0x00000009
#define CHANNEL_REMOTE_PAUSE_OFF 0x0000000A
//
// ICommChannel
//
#undef INTERFACE
#define INTERFACE ICommChannel
DECLARE_INTERFACE(ICommChannel) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR * ppvObj) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; STDMETHOD(GetProperty)(THIS_ DWORD prop, PVOID pBuf, LPUINT pcbBuf) PURE; STDMETHOD(SetProperty)(THIS_ DWORD prop, PVOID pBuf, UINT cbBuf) PURE; STDMETHOD(IsChannelOpen)(THIS_ BOOL *pbOpen) PURE; STDMETHOD(Open)(THIS_ DWORD dwLocalFormatID, IH323Endpoint *pConnection) PURE; STDMETHOD(Close)(THIS) PURE; STDMETHOD(SetAdviseInterface)(THIS_ interface IH323ConfAdvise *pH323ConfAdvise) PURE; STDMETHOD(EnableOpen)(THIS_ BOOL bEnable)PURE; STDMETHOD(GetMediaType)(THIS_ LPGUID pGuid)PURE; STDMETHOD_(BOOL, IsSendChannel) (THIS) PURE; STDMETHOD_(IMediaChannel *, GetMediaChannel) (THIS) PURE; STDMETHOD(Preview)(THIS_ MEDIA_FORMAT_ID idLocalFormat, IMediaChannel * pMediaChannel)PURE; STDMETHOD(PauseNetworkStream)(THIS_ BOOL fPause)PURE; STDMETHOD_(BOOL, IsNetworkStreamPaused)(THIS) PURE; STDMETHOD_(BOOL, IsRemotePaused)(THIS) PURE; STDMETHOD_(MEDIA_FORMAT_ID, GetConfiguredFormatID) (THIS) PURE; STDMETHOD(GetRemoteAddress)(THIS_ PSOCKADDR_IN pAddrOutput) PURE; };
#undef INTERFACE
#define INTERFACE IStreamSignal
DECLARE_INTERFACE(IStreamSignal) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR * ppvObj) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; STDMETHOD(PictureUpdateRequest)(THIS)PURE; STDMETHOD(GetVersionInfo)(THIS_ PCC_VENDORINFO* ppLocalVendorInfo, PCC_VENDORINFO *ppRemoteVendorInfo) PURE; };
//
// IVideoDevice
//
#undef INTERFACE
#define INTERFACE IVideoDevice
DECLARE_INTERFACE(IVideoDevice) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR * ppvObj) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE;
// Capture Device related methods
STDMETHOD(GetNumCapDev)(THIS) PURE; STDMETHOD(GetMaxCapDevNameLen)(THIS) PURE; STDMETHOD(EnumCapDev)(THIS_ DWORD *pdwCapDevIDs, TCHAR *pszCapDevNames, DWORD dwNumCapDev) PURE; STDMETHOD(GetCurrCapDevID)(THIS) PURE; STDMETHOD(SetCurrCapDevID)(THIS_ int nCapDevID) PURE; };
#endif //#ifndef _ICOMCHAN_H
|