blob: c787808b73542437c695914a8db2754592512b63 [file] [log] [blame]
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error This stub requires an updated version of <rpcndr.h>
#endif
#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif
#ifndef __rtccore_h__
#define __rtccore_h__
#ifndef __IRTCClient_FWD_DEFINED__
#define __IRTCClient_FWD_DEFINED__
typedef struct IRTCClient IRTCClient;
#endif
#ifndef __IRTCClient2_FWD_DEFINED__
#define __IRTCClient2_FWD_DEFINED__
typedef struct IRTCClient2 IRTCClient2;
#endif
#ifndef __IRTCClientPresence_FWD_DEFINED__
#define __IRTCClientPresence_FWD_DEFINED__
typedef struct IRTCClientPresence IRTCClientPresence;
#endif
#ifndef __IRTCClientPresence2_FWD_DEFINED__
#define __IRTCClientPresence2_FWD_DEFINED__
typedef struct IRTCClientPresence2 IRTCClientPresence2;
#endif
#ifndef __IRTCClientProvisioning_FWD_DEFINED__
#define __IRTCClientProvisioning_FWD_DEFINED__
typedef struct IRTCClientProvisioning IRTCClientProvisioning;
#endif
#ifndef __IRTCClientProvisioning2_FWD_DEFINED__
#define __IRTCClientProvisioning2_FWD_DEFINED__
typedef struct IRTCClientProvisioning2 IRTCClientProvisioning2;
#endif
#ifndef __IRTCProfile_FWD_DEFINED__
#define __IRTCProfile_FWD_DEFINED__
typedef struct IRTCProfile IRTCProfile;
#endif
#ifndef __IRTCProfile2_FWD_DEFINED__
#define __IRTCProfile2_FWD_DEFINED__
typedef struct IRTCProfile2 IRTCProfile2;
#endif
#ifndef __IRTCSession_FWD_DEFINED__
#define __IRTCSession_FWD_DEFINED__
typedef struct IRTCSession IRTCSession;
#endif
#ifndef __IRTCSession2_FWD_DEFINED__
#define __IRTCSession2_FWD_DEFINED__
typedef struct IRTCSession2 IRTCSession2;
#endif
#ifndef __IRTCSessionCallControl_FWD_DEFINED__
#define __IRTCSessionCallControl_FWD_DEFINED__
typedef struct IRTCSessionCallControl IRTCSessionCallControl;
#endif
#ifndef __IRTCParticipant_FWD_DEFINED__
#define __IRTCParticipant_FWD_DEFINED__
typedef struct IRTCParticipant IRTCParticipant;
#endif
#ifndef __IRTCRoamingEvent_FWD_DEFINED__
#define __IRTCRoamingEvent_FWD_DEFINED__
typedef struct IRTCRoamingEvent IRTCRoamingEvent;
#endif
#ifndef __IRTCProfileEvent_FWD_DEFINED__
#define __IRTCProfileEvent_FWD_DEFINED__
typedef struct IRTCProfileEvent IRTCProfileEvent;
#endif
#ifndef __IRTCProfileEvent2_FWD_DEFINED__
#define __IRTCProfileEvent2_FWD_DEFINED__
typedef struct IRTCProfileEvent2 IRTCProfileEvent2;
#endif
#ifndef __IRTCClientEvent_FWD_DEFINED__
#define __IRTCClientEvent_FWD_DEFINED__
typedef struct IRTCClientEvent IRTCClientEvent;
#endif
#ifndef __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
#define __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
typedef struct IRTCRegistrationStateChangeEvent IRTCRegistrationStateChangeEvent;
#endif
#ifndef __IRTCSessionStateChangeEvent_FWD_DEFINED__
#define __IRTCSessionStateChangeEvent_FWD_DEFINED__
typedef struct IRTCSessionStateChangeEvent IRTCSessionStateChangeEvent;
#endif
#ifndef __IRTCSessionStateChangeEvent2_FWD_DEFINED__
#define __IRTCSessionStateChangeEvent2_FWD_DEFINED__
typedef struct IRTCSessionStateChangeEvent2 IRTCSessionStateChangeEvent2;
#endif
#ifndef __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
#define __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
typedef struct IRTCSessionOperationCompleteEvent IRTCSessionOperationCompleteEvent;
#endif
#ifndef __IRTCSessionOperationCompleteEvent2_FWD_DEFINED__
#define __IRTCSessionOperationCompleteEvent2_FWD_DEFINED__
typedef struct IRTCSessionOperationCompleteEvent2 IRTCSessionOperationCompleteEvent2;
#endif
#ifndef __IRTCParticipantStateChangeEvent_FWD_DEFINED__
#define __IRTCParticipantStateChangeEvent_FWD_DEFINED__
typedef struct IRTCParticipantStateChangeEvent IRTCParticipantStateChangeEvent;
#endif
#ifndef __IRTCMediaEvent_FWD_DEFINED__
#define __IRTCMediaEvent_FWD_DEFINED__
typedef struct IRTCMediaEvent IRTCMediaEvent;
#endif
#ifndef __IRTCIntensityEvent_FWD_DEFINED__
#define __IRTCIntensityEvent_FWD_DEFINED__
typedef struct IRTCIntensityEvent IRTCIntensityEvent;
#endif
#ifndef __IRTCMessagingEvent_FWD_DEFINED__
#define __IRTCMessagingEvent_FWD_DEFINED__
typedef struct IRTCMessagingEvent IRTCMessagingEvent;
#endif
#ifndef __IRTCBuddyEvent_FWD_DEFINED__
#define __IRTCBuddyEvent_FWD_DEFINED__
typedef struct IRTCBuddyEvent IRTCBuddyEvent;
#endif
#ifndef __IRTCBuddyEvent2_FWD_DEFINED__
#define __IRTCBuddyEvent2_FWD_DEFINED__
typedef struct IRTCBuddyEvent2 IRTCBuddyEvent2;
#endif
#ifndef __IRTCWatcherEvent_FWD_DEFINED__
#define __IRTCWatcherEvent_FWD_DEFINED__
typedef struct IRTCWatcherEvent IRTCWatcherEvent;
#endif
#ifndef __IRTCWatcherEvent2_FWD_DEFINED__
#define __IRTCWatcherEvent2_FWD_DEFINED__
typedef struct IRTCWatcherEvent2 IRTCWatcherEvent2;
#endif
#ifndef __IRTCBuddyGroupEvent_FWD_DEFINED__
#define __IRTCBuddyGroupEvent_FWD_DEFINED__
typedef struct IRTCBuddyGroupEvent IRTCBuddyGroupEvent;
#endif
#ifndef __IRTCInfoEvent_FWD_DEFINED__
#define __IRTCInfoEvent_FWD_DEFINED__
typedef struct IRTCInfoEvent IRTCInfoEvent;
#endif
#ifndef __IRTCMediaRequestEvent_FWD_DEFINED__
#define __IRTCMediaRequestEvent_FWD_DEFINED__
typedef struct IRTCMediaRequestEvent IRTCMediaRequestEvent;
#endif
#ifndef __IRTCReInviteEvent_FWD_DEFINED__
#define __IRTCReInviteEvent_FWD_DEFINED__
typedef struct IRTCReInviteEvent IRTCReInviteEvent;
#endif
#ifndef __IRTCPresencePropertyEvent_FWD_DEFINED__
#define __IRTCPresencePropertyEvent_FWD_DEFINED__
typedef struct IRTCPresencePropertyEvent IRTCPresencePropertyEvent;
#endif
#ifndef __IRTCPresenceDataEvent_FWD_DEFINED__
#define __IRTCPresenceDataEvent_FWD_DEFINED__
typedef struct IRTCPresenceDataEvent IRTCPresenceDataEvent;
#endif
#ifndef __IRTCPresenceStatusEvent_FWD_DEFINED__
#define __IRTCPresenceStatusEvent_FWD_DEFINED__
typedef struct IRTCPresenceStatusEvent IRTCPresenceStatusEvent;
#endif
#ifndef __IRTCCollection_FWD_DEFINED__
#define __IRTCCollection_FWD_DEFINED__
typedef struct IRTCCollection IRTCCollection;
#endif
#ifndef __IRTCEnumParticipants_FWD_DEFINED__
#define __IRTCEnumParticipants_FWD_DEFINED__
typedef struct IRTCEnumParticipants IRTCEnumParticipants;
#endif
#ifndef __IRTCEnumProfiles_FWD_DEFINED__
#define __IRTCEnumProfiles_FWD_DEFINED__
typedef struct IRTCEnumProfiles IRTCEnumProfiles;
#endif
#ifndef __IRTCEnumBuddies_FWD_DEFINED__
#define __IRTCEnumBuddies_FWD_DEFINED__
typedef struct IRTCEnumBuddies IRTCEnumBuddies;
#endif
#ifndef __IRTCEnumWatchers_FWD_DEFINED__
#define __IRTCEnumWatchers_FWD_DEFINED__
typedef struct IRTCEnumWatchers IRTCEnumWatchers;
#endif
#ifndef __IRTCEnumGroups_FWD_DEFINED__
#define __IRTCEnumGroups_FWD_DEFINED__
typedef struct IRTCEnumGroups IRTCEnumGroups;
#endif
#ifndef __IRTCPresenceContact_FWD_DEFINED__
#define __IRTCPresenceContact_FWD_DEFINED__
typedef struct IRTCPresenceContact IRTCPresenceContact;
#endif
#ifndef __IRTCBuddy_FWD_DEFINED__
#define __IRTCBuddy_FWD_DEFINED__
typedef struct IRTCBuddy IRTCBuddy;
#endif
#ifndef __IRTCBuddy2_FWD_DEFINED__
#define __IRTCBuddy2_FWD_DEFINED__
typedef struct IRTCBuddy2 IRTCBuddy2;
#endif
#ifndef __IRTCWatcher_FWD_DEFINED__
#define __IRTCWatcher_FWD_DEFINED__
typedef struct IRTCWatcher IRTCWatcher;
#endif
#ifndef __IRTCWatcher2_FWD_DEFINED__
#define __IRTCWatcher2_FWD_DEFINED__
typedef struct IRTCWatcher2 IRTCWatcher2;
#endif
#ifndef __IRTCBuddyGroup_FWD_DEFINED__
#define __IRTCBuddyGroup_FWD_DEFINED__
typedef struct IRTCBuddyGroup IRTCBuddyGroup;
#endif
#ifndef __IRTCEventNotification_FWD_DEFINED__
#define __IRTCEventNotification_FWD_DEFINED__
typedef struct IRTCEventNotification IRTCEventNotification;
#endif
#ifndef __IRTCDispatchEventNotification_FWD_DEFINED__
#define __IRTCDispatchEventNotification_FWD_DEFINED__
typedef struct IRTCDispatchEventNotification IRTCDispatchEventNotification;
#endif
#ifndef __IRTCPortManager_FWD_DEFINED__
#define __IRTCPortManager_FWD_DEFINED__
typedef struct IRTCPortManager IRTCPortManager;
#endif
#ifndef __IRTCSessionPortManagement_FWD_DEFINED__
#define __IRTCSessionPortManagement_FWD_DEFINED__
typedef struct IRTCSessionPortManagement IRTCSessionPortManagement;
#endif
#ifndef __IRTCClientPortManagement_FWD_DEFINED__
#define __IRTCClientPortManagement_FWD_DEFINED__
typedef struct IRTCClientPortManagement IRTCClientPortManagement;
#endif
#ifndef __IRTCUserSearch_FWD_DEFINED__
#define __IRTCUserSearch_FWD_DEFINED__
typedef struct IRTCUserSearch IRTCUserSearch;
#endif
#ifndef __IRTCUserSearchQuery_FWD_DEFINED__
#define __IRTCUserSearchQuery_FWD_DEFINED__
typedef struct IRTCUserSearchQuery IRTCUserSearchQuery;
#endif
#ifndef __IRTCUserSearchResult_FWD_DEFINED__
#define __IRTCUserSearchResult_FWD_DEFINED__
typedef struct IRTCUserSearchResult IRTCUserSearchResult;
#endif
#ifndef __IRTCEnumUserSearchResults_FWD_DEFINED__
#define __IRTCEnumUserSearchResults_FWD_DEFINED__
typedef struct IRTCEnumUserSearchResults IRTCEnumUserSearchResults;
#endif
#ifndef __IRTCUserSearchResultsEvent_FWD_DEFINED__
#define __IRTCUserSearchResultsEvent_FWD_DEFINED__
typedef struct IRTCUserSearchResultsEvent IRTCUserSearchResultsEvent;
#endif
#ifndef __IRTCSessionReferStatusEvent_FWD_DEFINED__
#define __IRTCSessionReferStatusEvent_FWD_DEFINED__
typedef struct IRTCSessionReferStatusEvent IRTCSessionReferStatusEvent;
#endif
#ifndef __IRTCSessionReferredEvent_FWD_DEFINED__
#define __IRTCSessionReferredEvent_FWD_DEFINED__
typedef struct IRTCSessionReferredEvent IRTCSessionReferredEvent;
#endif
#ifndef __IRTCSessionDescriptionManager_FWD_DEFINED__
#define __IRTCSessionDescriptionManager_FWD_DEFINED__
typedef struct IRTCSessionDescriptionManager IRTCSessionDescriptionManager;
#endif
#ifndef __IRTCEnumPresenceDevices_FWD_DEFINED__
#define __IRTCEnumPresenceDevices_FWD_DEFINED__
typedef struct IRTCEnumPresenceDevices IRTCEnumPresenceDevices;
#endif
#ifndef __IRTCPresenceDevice_FWD_DEFINED__
#define __IRTCPresenceDevice_FWD_DEFINED__
typedef struct IRTCPresenceDevice IRTCPresenceDevice;
#endif
#ifndef __IRTCProfile_FWD_DEFINED__
#define __IRTCProfile_FWD_DEFINED__
typedef struct IRTCProfile IRTCProfile;
#endif
#ifndef __IRTCProfile2_FWD_DEFINED__
#define __IRTCProfile2_FWD_DEFINED__
typedef struct IRTCProfile2 IRTCProfile2;
#endif
#ifndef __IRTCEnumProfiles_FWD_DEFINED__
#define __IRTCEnumProfiles_FWD_DEFINED__
typedef struct IRTCEnumProfiles IRTCEnumProfiles;
#endif
#ifndef __IRTCSession_FWD_DEFINED__
#define __IRTCSession_FWD_DEFINED__
typedef struct IRTCSession IRTCSession;
#endif
#ifndef __IRTCSession2_FWD_DEFINED__
#define __IRTCSession2_FWD_DEFINED__
typedef struct IRTCSession2 IRTCSession2;
#endif
#ifndef __IRTCSessionCallControl_FWD_DEFINED__
#define __IRTCSessionCallControl_FWD_DEFINED__
typedef struct IRTCSessionCallControl IRTCSessionCallControl;
#endif
#ifndef __IRTCParticipant_FWD_DEFINED__
#define __IRTCParticipant_FWD_DEFINED__
typedef struct IRTCParticipant IRTCParticipant;
#endif
#ifndef __IRTCEnumParticipants_FWD_DEFINED__
#define __IRTCEnumParticipants_FWD_DEFINED__
typedef struct IRTCEnumParticipants IRTCEnumParticipants;
#endif
#ifndef __IRTCCollection_FWD_DEFINED__
#define __IRTCCollection_FWD_DEFINED__
typedef struct IRTCCollection IRTCCollection;
#endif
#ifndef __IRTCPresenceContact_FWD_DEFINED__
#define __IRTCPresenceContact_FWD_DEFINED__
typedef struct IRTCPresenceContact IRTCPresenceContact;
#endif
#ifndef __IRTCBuddy_FWD_DEFINED__
#define __IRTCBuddy_FWD_DEFINED__
typedef struct IRTCBuddy IRTCBuddy;
#endif
#ifndef __IRTCBuddy2_FWD_DEFINED__
#define __IRTCBuddy2_FWD_DEFINED__
typedef struct IRTCBuddy2 IRTCBuddy2;
#endif
#ifndef __IRTCEnumBuddies_FWD_DEFINED__
#define __IRTCEnumBuddies_FWD_DEFINED__
typedef struct IRTCEnumBuddies IRTCEnumBuddies;
#endif
#ifndef __IRTCWatcher_FWD_DEFINED__
#define __IRTCWatcher_FWD_DEFINED__
typedef struct IRTCWatcher IRTCWatcher;
#endif
#ifndef __IRTCWatcher2_FWD_DEFINED__
#define __IRTCWatcher2_FWD_DEFINED__
typedef struct IRTCWatcher2 IRTCWatcher2;
#endif
#ifndef __IRTCEnumWatchers_FWD_DEFINED__
#define __IRTCEnumWatchers_FWD_DEFINED__
typedef struct IRTCEnumWatchers IRTCEnumWatchers;
#endif
#ifndef __IRTCBuddyGroup_FWD_DEFINED__
#define __IRTCBuddyGroup_FWD_DEFINED__
typedef struct IRTCBuddyGroup IRTCBuddyGroup;
#endif
#ifndef __IRTCEnumGroups_FWD_DEFINED__
#define __IRTCEnumGroups_FWD_DEFINED__
typedef struct IRTCEnumGroups IRTCEnumGroups;
#endif
#ifndef __IRTCUserSearchQuery_FWD_DEFINED__
#define __IRTCUserSearchQuery_FWD_DEFINED__
typedef struct IRTCUserSearchQuery IRTCUserSearchQuery;
#endif
#ifndef __IRTCUserSearchResult_FWD_DEFINED__
#define __IRTCUserSearchResult_FWD_DEFINED__
typedef struct IRTCUserSearchResult IRTCUserSearchResult;
#endif
#ifndef __IRTCEnumUserSearchResults_FWD_DEFINED__
#define __IRTCEnumUserSearchResults_FWD_DEFINED__
typedef struct IRTCEnumUserSearchResults IRTCEnumUserSearchResults;
#endif
#ifndef __IRTCEventNotification_FWD_DEFINED__
#define __IRTCEventNotification_FWD_DEFINED__
typedef struct IRTCEventNotification IRTCEventNotification;
#endif
#ifndef __IRTCClientEvent_FWD_DEFINED__
#define __IRTCClientEvent_FWD_DEFINED__
typedef struct IRTCClientEvent IRTCClientEvent;
#endif
#ifndef __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
#define __IRTCRegistrationStateChangeEvent_FWD_DEFINED__
typedef struct IRTCRegistrationStateChangeEvent IRTCRegistrationStateChangeEvent;
#endif
#ifndef __IRTCSessionStateChangeEvent_FWD_DEFINED__
#define __IRTCSessionStateChangeEvent_FWD_DEFINED__
typedef struct IRTCSessionStateChangeEvent IRTCSessionStateChangeEvent;
#endif
#ifndef __IRTCSessionStateChangeEvent2_FWD_DEFINED__
#define __IRTCSessionStateChangeEvent2_FWD_DEFINED__
typedef struct IRTCSessionStateChangeEvent2 IRTCSessionStateChangeEvent2;
#endif
#ifndef __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
#define __IRTCSessionOperationCompleteEvent_FWD_DEFINED__
typedef struct IRTCSessionOperationCompleteEvent IRTCSessionOperationCompleteEvent;
#endif
#ifndef __IRTCSessionOperationCompleteEvent2_FWD_DEFINED__
#define __IRTCSessionOperationCompleteEvent2_FWD_DEFINED__
typedef struct IRTCSessionOperationCompleteEvent2 IRTCSessionOperationCompleteEvent2;
#endif
#ifndef __IRTCParticipantStateChangeEvent_FWD_DEFINED__
#define __IRTCParticipantStateChangeEvent_FWD_DEFINED__
typedef struct IRTCParticipantStateChangeEvent IRTCParticipantStateChangeEvent;
#endif
#ifndef __IRTCMediaEvent_FWD_DEFINED__
#define __IRTCMediaEvent_FWD_DEFINED__
typedef struct IRTCMediaEvent IRTCMediaEvent;
#endif
#ifndef __IRTCIntensityEvent_FWD_DEFINED__
#define __IRTCIntensityEvent_FWD_DEFINED__
typedef struct IRTCIntensityEvent IRTCIntensityEvent;
#endif
#ifndef __IRTCMessagingEvent_FWD_DEFINED__
#define __IRTCMessagingEvent_FWD_DEFINED__
typedef struct IRTCMessagingEvent IRTCMessagingEvent;
#endif
#ifndef __IRTCBuddyEvent_FWD_DEFINED__
#define __IRTCBuddyEvent_FWD_DEFINED__
typedef struct IRTCBuddyEvent IRTCBuddyEvent;
#endif
#ifndef __IRTCBuddyEvent2_FWD_DEFINED__
#define __IRTCBuddyEvent2_FWD_DEFINED__
typedef struct IRTCBuddyEvent2 IRTCBuddyEvent2;
#endif
#ifndef __IRTCWatcherEvent_FWD_DEFINED__
#define __IRTCWatcherEvent_FWD_DEFINED__
typedef struct IRTCWatcherEvent IRTCWatcherEvent;
#endif
#ifndef __IRTCPortManager_FWD_DEFINED__
#define __IRTCPortManager_FWD_DEFINED__
typedef struct IRTCPortManager IRTCPortManager;
#endif
#ifndef __IRTCSessionPortManagement_FWD_DEFINED__
#define __IRTCSessionPortManagement_FWD_DEFINED__
typedef struct IRTCSessionPortManagement IRTCSessionPortManagement;
#endif
#ifndef __IRTCClientPortManagement_FWD_DEFINED__
#define __IRTCClientPortManagement_FWD_DEFINED__
typedef struct IRTCClientPortManagement IRTCClientPortManagement;
#endif
#ifndef __IRTCWatcherEvent2_FWD_DEFINED__
#define __IRTCWatcherEvent2_FWD_DEFINED__
typedef struct IRTCWatcherEvent2 IRTCWatcherEvent2;
#endif
#ifndef __IRTCBuddyGroupEvent_FWD_DEFINED__
#define __IRTCBuddyGroupEvent_FWD_DEFINED__
typedef struct IRTCBuddyGroupEvent IRTCBuddyGroupEvent;
#endif
#ifndef __IRTCProfileEvent_FWD_DEFINED__
#define __IRTCProfileEvent_FWD_DEFINED__
typedef struct IRTCProfileEvent IRTCProfileEvent;
#endif
#ifndef __IRTCProfileEvent2_FWD_DEFINED__
#define __IRTCProfileEvent2_FWD_DEFINED__
typedef struct IRTCProfileEvent2 IRTCProfileEvent2;
#endif
#ifndef __IRTCUserSearchResultsEvent_FWD_DEFINED__
#define __IRTCUserSearchResultsEvent_FWD_DEFINED__
typedef struct IRTCUserSearchResultsEvent IRTCUserSearchResultsEvent;
#endif
#ifndef __IRTCInfoEvent_FWD_DEFINED__
#define __IRTCInfoEvent_FWD_DEFINED__
typedef struct IRTCInfoEvent IRTCInfoEvent;
#endif
#ifndef __IRTCRoamingEvent_FWD_DEFINED__
#define __IRTCRoamingEvent_FWD_DEFINED__
typedef struct IRTCRoamingEvent IRTCRoamingEvent;
#endif
#ifndef __IRTCMediaRequestEvent_FWD_DEFINED__
#define __IRTCMediaRequestEvent_FWD_DEFINED__
typedef struct IRTCMediaRequestEvent IRTCMediaRequestEvent;
#endif
#ifndef __IRTCReInviteEvent_FWD_DEFINED__
#define __IRTCReInviteEvent_FWD_DEFINED__
typedef struct IRTCReInviteEvent IRTCReInviteEvent;
#endif
#ifndef __IRTCPresencePropertyEvent_FWD_DEFINED__
#define __IRTCPresencePropertyEvent_FWD_DEFINED__
typedef struct IRTCPresencePropertyEvent IRTCPresencePropertyEvent;
#endif
#ifndef __IRTCPresenceDataEvent_FWD_DEFINED__
#define __IRTCPresenceDataEvent_FWD_DEFINED__
typedef struct IRTCPresenceDataEvent IRTCPresenceDataEvent;
#endif
#ifndef __IRTCPresenceStatusEvent_FWD_DEFINED__
#define __IRTCPresenceStatusEvent_FWD_DEFINED__
typedef struct IRTCPresenceStatusEvent IRTCPresenceStatusEvent;
#endif
#ifndef __IRTCSessionReferStatusEvent_FWD_DEFINED__
#define __IRTCSessionReferStatusEvent_FWD_DEFINED__
typedef struct IRTCSessionReferStatusEvent IRTCSessionReferStatusEvent;
#endif
#ifndef __IRTCSessionReferredEvent_FWD_DEFINED__
#define __IRTCSessionReferredEvent_FWD_DEFINED__
typedef struct IRTCSessionReferredEvent IRTCSessionReferredEvent;
#endif
#ifndef __IRTCSessionDescriptionManager_FWD_DEFINED__
#define __IRTCSessionDescriptionManager_FWD_DEFINED__
typedef struct IRTCSessionDescriptionManager IRTCSessionDescriptionManager;
#endif
#ifndef __IRTCEnumPresenceDevices_FWD_DEFINED__
#define __IRTCEnumPresenceDevices_FWD_DEFINED__
typedef struct IRTCEnumPresenceDevices IRTCEnumPresenceDevices;
#endif
#ifndef __IRTCPresenceDevice_FWD_DEFINED__
#define __IRTCPresenceDevice_FWD_DEFINED__
typedef struct IRTCPresenceDevice IRTCPresenceDevice;
#endif
#ifndef __IRTCDispatchEventNotification_FWD_DEFINED__
#define __IRTCDispatchEventNotification_FWD_DEFINED__
typedef struct IRTCDispatchEventNotification IRTCDispatchEventNotification;
#endif
#ifndef __RTCClient_FWD_DEFINED__
#define __RTCClient_FWD_DEFINED__
#ifdef __cplusplus
typedef class RTCClient RTCClient;
#else
typedef struct RTCClient RTCClient;
#endif
#endif
#include "oaidl.h"
#include "ocidl.h"
#include "control.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifndef __MIDL_user_allocate_free_DEFINED__
#define __MIDL_user_allocate_free_DEFINED__
void *__RPC_API MIDL_user_allocate(size_t);
void __RPC_API MIDL_user_free(void *);
#endif
typedef enum RTC_AUDIO_DEVICE {
RTCAD_SPEAKER = 0,RTCAD_MICROPHONE = RTCAD_SPEAKER + 1
} RTC_AUDIO_DEVICE;
typedef enum RTC_VIDEO_DEVICE {
RTCVD_RECEIVE = 0,RTCVD_PREVIEW = RTCVD_RECEIVE + 1
} RTC_VIDEO_DEVICE;
typedef enum RTC_EVENT {
RTCE_CLIENT = 0,
RTCE_REGISTRATION_STATE_CHANGE,RTCE_SESSION_STATE_CHANGE,RTCE_SESSION_OPERATION_COMPLETE,
RTCE_PARTICIPANT_STATE_CHANGE,RTCE_MEDIA,RTCE_INTENSITY,RTCE_MESSAGING,RTCE_BUDDY,
RTCE_WATCHER,RTCE_PROFILE,RTCE_USERSEARCH,RTCE_INFO,RTCE_GROUP,RTCE_MEDIA_REQUEST,
RTCE_ROAMING,RTCE_PRESENCE_PROPERTY,RTCE_PRESENCE_DATA,
RTCE_PRESENCE_STATUS,RTCE_SESSION_REFER_STATUS,RTCE_SESSION_REFERRED,RTCE_REINVITE
} RTC_EVENT;
typedef enum RTC_LISTEN_MODE {
RTCLM_NONE = 0,
RTCLM_DYNAMIC,RTCLM_BOTH
} RTC_LISTEN_MODE;
typedef enum RTC_CLIENT_EVENT_TYPE {
RTCCET_VOLUME_CHANGE = 0,
RTCCET_DEVICE_CHANGE,RTCCET_NETWORK_QUALITY_CHANGE,RTCCET_ASYNC_CLEANUP_DONE
} RTC_CLIENT_EVENT_TYPE;
typedef enum RTC_BUDDY_EVENT_TYPE {
RTCBET_BUDDY_ADD = 0,
RTCBET_BUDDY_REMOVE,RTCBET_BUDDY_UPDATE,RTCBET_BUDDY_STATE_CHANGE,
RTCBET_BUDDY_ROAMED,RTCBET_BUDDY_SUBSCRIBED
} RTC_BUDDY_EVENT_TYPE;
typedef enum RTC_WATCHER_EVENT_TYPE {
RTCWET_WATCHER_ADD = 0,
RTCWET_WATCHER_REMOVE,RTCWET_WATCHER_UPDATE,RTCWET_WATCHER_OFFERING,
RTCWET_WATCHER_ROAMED
} RTC_WATCHER_EVENT_TYPE;
typedef enum RTC_GROUP_EVENT_TYPE {
RTCGET_GROUP_ADD = 0,
RTCGET_GROUP_REMOVE,RTCGET_GROUP_UPDATE,RTCGET_GROUP_BUDDY_ADD,
RTCGET_GROUP_BUDDY_REMOVE,RTCGET_GROUP_ROAMED
} RTC_GROUP_EVENT_TYPE;
typedef enum RTC_TERMINATE_REASON {
RTCTR_NORMAL = 0,
RTCTR_DND,RTCTR_BUSY,RTCTR_REJECT,RTCTR_TIMEOUT,RTCTR_SHUTDOWN,
RTCTR_INSUFFICIENT_SECURITY_LEVEL,RTCTR_NOT_SUPPORTED
} RTC_TERMINATE_REASON;
typedef enum RTC_REGISTRATION_STATE {
RTCRS_NOT_REGISTERED = 0,
RTCRS_REGISTERING,RTCRS_REGISTERED,RTCRS_REJECTED,RTCRS_UNREGISTERING,RTCRS_ERROR,
RTCRS_LOGGED_OFF,RTCRS_LOCAL_PA_LOGGED_OFF,RTCRS_REMOTE_PA_LOGGED_OFF
} RTC_REGISTRATION_STATE;
typedef enum RTC_SESSION_STATE {
RTCSS_IDLE = 0,
RTCSS_INCOMING,RTCSS_ANSWERING,RTCSS_INPROGRESS,RTCSS_CONNECTED,RTCSS_DISCONNECTED,
RTCSS_HOLD,RTCSS_REFER
} RTC_SESSION_STATE;
typedef enum RTC_PARTICIPANT_STATE {
RTCPS_IDLE = 0,
RTCPS_PENDING,RTCPS_INCOMING,RTCPS_ANSWERING,RTCPS_INPROGRESS,RTCPS_ALERTING,
RTCPS_CONNECTED,RTCPS_DISCONNECTING,RTCPS_DISCONNECTED
} RTC_PARTICIPANT_STATE;
typedef enum RTC_WATCHER_STATE {
RTCWS_UNKNOWN = 0,
RTCWS_OFFERING,RTCWS_ALLOWED,RTCWS_BLOCKED,RTCWS_DENIED,RTCWS_PROMPT
} RTC_WATCHER_STATE;
typedef enum RTC_ACE_SCOPE {
RTCAS_SCOPE_USER = 0,
RTCAS_SCOPE_DOMAIN,RTCAS_SCOPE_ALL
} RTC_ACE_SCOPE;
typedef enum RTC_OFFER_WATCHER_MODE {
RTCOWM_OFFER_WATCHER_EVENT = 0,RTCOWM_AUTOMATICALLY_ADD_WATCHER = RTCOWM_OFFER_WATCHER_EVENT + 1
} RTC_OFFER_WATCHER_MODE;
typedef enum RTC_WATCHER_MATCH_MODE {
RTCWMM_EXACT_MATCH = 0,RTCWMM_BEST_ACE_MATCH = RTCWMM_EXACT_MATCH + 1
} RTC_WATCHER_MATCH_MODE;
typedef enum RTC_PRIVACY_MODE {
RTCPM_BLOCK_LIST_EXCLUDED = 0,RTCPM_ALLOW_LIST_ONLY = RTCPM_BLOCK_LIST_EXCLUDED + 1
} RTC_PRIVACY_MODE;
typedef enum RTC_SESSION_TYPE {
RTCST_PC_TO_PC = 0,
RTCST_PC_TO_PHONE,RTCST_PHONE_TO_PHONE,RTCST_IM,RTCST_MULTIPARTY_IM,RTCST_APPLICATION
} RTC_SESSION_TYPE;
typedef enum RTC_PRESENCE_STATUS {
RTCXS_PRESENCE_OFFLINE = 0,
RTCXS_PRESENCE_ONLINE,RTCXS_PRESENCE_AWAY,RTCXS_PRESENCE_IDLE,RTCXS_PRESENCE_BUSY,
RTCXS_PRESENCE_BE_RIGHT_BACK,RTCXS_PRESENCE_ON_THE_PHONE,RTCXS_PRESENCE_OUT_TO_LUNCH
} RTC_PRESENCE_STATUS;
typedef enum RTC_BUDDY_SUBSCRIPTION_TYPE {
RTCBT_SUBSCRIBED = 0,
RTCBT_ALWAYS_OFFLINE,RTCBT_ALWAYS_ONLINE,RTCBT_POLL
} RTC_BUDDY_SUBSCRIPTION_TYPE;
typedef enum RTC_MEDIA_EVENT_TYPE {
RTCMET_STOPPED = 0,
RTCMET_STARTED,RTCMET_FAILED
} RTC_MEDIA_EVENT_TYPE;
typedef enum RTC_MEDIA_EVENT_REASON {
RTCMER_NORMAL = 0,
RTCMER_HOLD,RTCMER_TIMEOUT,RTCMER_BAD_DEVICE,RTCMER_NO_PORT,RTCMER_PORT_MAPPING_FAILED,
RTCMER_REMOTE_REQUEST
} RTC_MEDIA_EVENT_REASON;
typedef enum RTC_MESSAGING_EVENT_TYPE {
RTCMSET_MESSAGE = 0,RTCMSET_STATUS = RTCMSET_MESSAGE + 1
} RTC_MESSAGING_EVENT_TYPE;
typedef enum RTC_MESSAGING_USER_STATUS {
RTCMUS_IDLE = 0,
RTCMUS_TYPING
} RTC_MESSAGING_USER_STATUS;
typedef enum RTC_DTMF {
RTC_DTMF_0 = 0,
RTC_DTMF_1,RTC_DTMF_2,RTC_DTMF_3,RTC_DTMF_4,RTC_DTMF_5,RTC_DTMF_6,RTC_DTMF_7,RTC_DTMF_8,RTC_DTMF_9,
RTC_DTMF_STAR,RTC_DTMF_POUND,RTC_DTMF_A,RTC_DTMF_B,RTC_DTMF_C,RTC_DTMF_D,RTC_DTMF_FLASH
} RTC_DTMF;
typedef enum RTC_PROVIDER_URI {
RTCPU_URIHOMEPAGE = 0,
RTCPU_URIHELPDESK,RTCPU_URIPERSONALACCOUNT,RTCPU_URIDISPLAYDURINGCALL,
RTCPU_URIDISPLAYDURINGIDLE
} RTC_PROVIDER_URI;
typedef enum RTC_RING_TYPE {
RTCRT_PHONE = 0,
RTCRT_MESSAGE,RTCRT_RINGBACK
} RTC_RING_TYPE;
typedef enum RTC_T120_APPLET {
RTCTA_WHITEBOARD = 0,
RTCTA_APPSHARING
} RTC_T120_APPLET;
typedef enum RTC_PORT_TYPE {
RTCPT_AUDIO_RTP = 0,
RTCPT_AUDIO_RTCP,RTCPT_VIDEO_RTP,RTCPT_VIDEO_RTCP,RTCPT_SIP
} RTC_PORT_TYPE;
typedef enum RTC_USER_SEARCH_COLUMN {
RTCUSC_URI = 0,
RTCUSC_DISPLAYNAME,RTCUSC_TITLE,RTCUSC_OFFICE,RTCUSC_PHONE,RTCUSC_COMPANY,RTCUSC_CITY,
RTCUSC_STATE,RTCUSC_COUNTRY,RTCUSC_EMAIL
} RTC_USER_SEARCH_COLUMN;
typedef enum RTC_USER_SEARCH_PREFERENCE {
RTCUSP_MAX_MATCHES = 0,
RTCUSP_TIME_LIMIT
} RTC_USER_SEARCH_PREFERENCE;
typedef enum RTC_ROAMING_EVENT_TYPE {
RTCRET_BUDDY_ROAMING = 0,
RTCRET_WATCHER_ROAMING,RTCRET_PRESENCE_ROAMING,RTCRET_PROFILE_ROAMING,
RTCRET_WPENDING_ROAMING
} RTC_ROAMING_EVENT_TYPE;
typedef enum RTC_PROFILE_EVENT_TYPE {
RTCPFET_PROFILE_GET = 0,
RTCPFET_PROFILE_UPDATE
} RTC_PROFILE_EVENT_TYPE;
typedef enum RTC_ANSWER_MODE {
RTCAM_OFFER_SESSION_EVENT = 0,
RTCAM_AUTOMATICALLY_ACCEPT,RTCAM_AUTOMATICALLY_REJECT,RTCAM_NOT_SUPPORTED
} RTC_ANSWER_MODE;
typedef enum RTC_SESSION_REFER_STATUS {
RTCSRS_REFERRING = 0,
RTCSRS_ACCEPTED,RTCSRS_ERROR,RTCSRS_REJECTED,RTCSRS_DROPPED,RTCSRS_DONE
} RTC_SESSION_REFER_STATUS;
typedef enum RTC_PRESENCE_PROPERTY {
RTCPP_PHONENUMBER = 0,
RTCPP_DISPLAYNAME,RTCPP_EMAIL,RTCPP_DEVICE_NAME,RTCPP_MULTIPLE
} RTC_PRESENCE_PROPERTY;
typedef enum RTC_SECURITY_TYPE {
RTCSECT_AUDIO_VIDEO_MEDIA_ENCRYPTION = 0,
RTCSECT_T120_MEDIA_ENCRYPTION
} RTC_SECURITY_TYPE;
typedef enum RTC_SECURITY_LEVEL {
RTCSECL_UNSUPPORTED = 1,
RTCSECL_SUPPORTED,RTCSECL_REQUIRED
} RTC_SECURITY_LEVEL;
typedef enum RTC_REINVITE_STATE {
RTCRIN_INCOMING = 0,
RTCRIN_SUCCEEDED,RTCRIN_FAIL
} RTC_REINVITE_STATE;
#define RTCCS_FORCE_PROFILE 0x00000001
#define RTCCS_FAIL_ON_REDIRECT 0x00000002
#define RTCMT_AUDIO_SEND 0x00000001
#define RTCMT_AUDIO_RECEIVE 0x00000002
#define RTCMT_VIDEO_SEND 0x00000004
#define RTCMT_VIDEO_RECEIVE 0x00000008
#define RTCMT_T120_SENDRECV 0x00000010
#define RTCMT_ALL_RTP (RTCMT_AUDIO_SEND | RTCMT_AUDIO_RECEIVE | RTCMT_VIDEO_SEND | RTCMT_VIDEO_RECEIVE)
#define RTCMT_ALL (RTCMT_ALL_RTP | RTCMT_T120_SENDRECV)
#define RTCSI_PC_TO_PC 0x00000001
#define RTCSI_PC_TO_PHONE 0x00000002
#define RTCSI_PHONE_TO_PHONE 0x00000004
#define RTCSI_IM 0x00000008
#define RTCSI_MULTIPARTY_IM 0x00000010
#define RTCSI_APPLICATION 0x00000020
#define RTCTR_UDP 0x00000001
#define RTCTR_TCP 0x00000002
#define RTCTR_TLS 0x00000004
#define RTCAU_BASIC 0x00000001
#define RTCAU_DIGEST 0x00000002
#define RTCAU_NTLM 0x00000004
#define RTCAU_KERBEROS 0x00000008
#define RTCAU_USE_LOGON_CRED 0x00010000
#define RTCRF_REGISTER_INVITE_SESSIONS 0x00000001
#define RTCRF_REGISTER_MESSAGE_SESSIONS 0x00000002
#define RTCRF_REGISTER_PRESENCE 0x00000004
#define RTCRF_REGISTER_NOTIFY 0x00000008
#define RTCRF_REGISTER_ALL 0x0000000F
#define RTCRMF_BUDDY_ROAMING 0x00000001
#define RTCRMF_WATCHER_ROAMING 0x00000002
#define RTCRMF_PRESENCE_ROAMING 0x00000004
#define RTCRMF_PROFILE_ROAMING 0x00000008
#define RTCRMF_ALL_ROAMING 0x0000000F
#define RTCEF_CLIENT 0x00000001
#define RTCEF_REGISTRATION_STATE_CHANGE 0x00000002
#define RTCEF_SESSION_STATE_CHANGE 0x00000004
#define RTCEF_SESSION_OPERATION_COMPLETE 0x00000008
#define RTCEF_PARTICIPANT_STATE_CHANGE 0x00000010
#define RTCEF_MEDIA 0x00000020
#define RTCEF_INTENSITY 0x00000040
#define RTCEF_MESSAGING 0x00000080
#define RTCEF_BUDDY 0x00000100
#define RTCEF_WATCHER 0x00000200
#define RTCEF_PROFILE 0x00000400
#define RTCEF_USERSEARCH 0x00000800
#define RTCEF_INFO 0x00001000
#define RTCEF_GROUP 0x00002000
#define RTCEF_MEDIA_REQUEST 0x00004000
#define RTCEF_ROAMING 0x00010000
#define RTCEF_PRESENCE_PROPERTY 0x00020000
#define RTCEF_BUDDY2 0x00040000
#define RTCEF_WATCHER2 0x00080000
#define RTCEF_SESSION_REFER_STATUS 0x00100000
#define RTCEF_SESSION_REFERRED 0x00200000
#define RTCEF_REINVITE 0x00400000
#define RTCEF_PRESENCE_DATA 0x00800000
#define RTCEF_PRESENCE_STATUS 0x01000000
#define RTCEF_ALL 0x01FFFFFF
#define RTCIF_DISABLE_MEDIA 0x00000001
#define RTCIF_DISABLE_UPNP 0x00000002
#define RTCIF_ENABLE_SERVER_CLASS 0x00000004
#define RTCIF_DISABLE_STRICT_DNS 0x00000008
extern RPC_IF_HANDLE __MIDL_itf_rtccore_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_rtccore_0000_v0_0_s_ifspec;
#ifndef __IRTCClient_INTERFACE_DEFINED__
#define __IRTCClient_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCClient;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCClient : public IUnknown {
public:
virtual HRESULT WINAPI Initialize(void) = 0;
virtual HRESULT WINAPI Shutdown(void) = 0;
virtual HRESULT WINAPI PrepareForShutdown(void) = 0;
virtual HRESULT WINAPI put_EventFilter(__LONG32 lFilter) = 0;
virtual HRESULT WINAPI get_EventFilter(__LONG32 *plFilter) = 0;
virtual HRESULT WINAPI SetPreferredMediaTypes(__LONG32 lMediaTypes,VARIANT_BOOL fPersistent) = 0;
virtual HRESULT WINAPI get_PreferredMediaTypes(__LONG32 *plMediaTypes) = 0;
virtual HRESULT WINAPI get_MediaCapabilities(__LONG32 *plMediaTypes) = 0;
virtual HRESULT WINAPI CreateSession(RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession **ppSession) = 0;
virtual HRESULT WINAPI put_ListenForIncomingSessions(RTC_LISTEN_MODE enListen) = 0;
virtual HRESULT WINAPI get_ListenForIncomingSessions(RTC_LISTEN_MODE *penListen) = 0;
virtual HRESULT WINAPI get_NetworkAddresses(VARIANT_BOOL fTCP,VARIANT_BOOL fExternal,VARIANT *pvAddresses) = 0;
virtual HRESULT WINAPI put_Volume(RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume) = 0;
virtual HRESULT WINAPI get_Volume(RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume) = 0;
virtual HRESULT WINAPI put_AudioMuted(RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL fMuted) = 0;
virtual HRESULT WINAPI get_AudioMuted(RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL *pfMuted) = 0;
virtual HRESULT WINAPI get_IVideoWindow(RTC_VIDEO_DEVICE enDevice,IVideoWindow **ppIVideoWindow) = 0;
virtual HRESULT WINAPI put_PreferredAudioDevice(RTC_AUDIO_DEVICE enDevice,BSTR bstrDeviceName) = 0;
virtual HRESULT WINAPI get_PreferredAudioDevice(RTC_AUDIO_DEVICE enDevice,BSTR *pbstrDeviceName) = 0;
virtual HRESULT WINAPI put_PreferredVolume(RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume) = 0;
virtual HRESULT WINAPI get_PreferredVolume(RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume) = 0;
virtual HRESULT WINAPI put_PreferredAEC(VARIANT_BOOL bEnable) = 0;
virtual HRESULT WINAPI get_PreferredAEC(VARIANT_BOOL *pbEnabled) = 0;
virtual HRESULT WINAPI put_PreferredVideoDevice(BSTR bstrDeviceName) = 0;
virtual HRESULT WINAPI get_PreferredVideoDevice(BSTR *pbstrDeviceName) = 0;
virtual HRESULT WINAPI get_ActiveMedia(__LONG32 *plMediaType) = 0;
virtual HRESULT WINAPI put_MaxBitrate(__LONG32 lMaxBitrate) = 0;
virtual HRESULT WINAPI get_MaxBitrate(__LONG32 *plMaxBitrate) = 0;
virtual HRESULT WINAPI put_TemporalSpatialTradeOff(__LONG32 lValue) = 0;
virtual HRESULT WINAPI get_TemporalSpatialTradeOff(__LONG32 *plValue) = 0;
virtual HRESULT WINAPI get_NetworkQuality(__LONG32 *plNetworkQuality) = 0;
virtual HRESULT WINAPI StartT120Applet(RTC_T120_APPLET enApplet) = 0;
virtual HRESULT WINAPI StopT120Applets(void) = 0;
virtual HRESULT WINAPI get_IsT120AppletRunning(RTC_T120_APPLET enApplet,VARIANT_BOOL *pfRunning) = 0;
virtual HRESULT WINAPI get_LocalUserURI(BSTR *pbstrUserURI) = 0;
virtual HRESULT WINAPI put_LocalUserURI(BSTR bstrUserURI) = 0;
virtual HRESULT WINAPI get_LocalUserName(BSTR *pbstrUserName) = 0;
virtual HRESULT WINAPI put_LocalUserName(BSTR bstrUserName) = 0;
virtual HRESULT WINAPI PlayRing(RTC_RING_TYPE enType,VARIANT_BOOL bPlay) = 0;
virtual HRESULT WINAPI SendDTMF(RTC_DTMF enDTMF) = 0;
virtual HRESULT WINAPI InvokeTuningWizard(OAHWND hwndParent) = 0;
virtual HRESULT WINAPI get_IsTuned(VARIANT_BOOL *pfTuned) = 0;
};
#else
typedef struct IRTCClientVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCClient *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCClient *This);
ULONG (WINAPI *Release)(IRTCClient *This);
HRESULT (WINAPI *Initialize)(IRTCClient *This);
HRESULT (WINAPI *Shutdown)(IRTCClient *This);
HRESULT (WINAPI *PrepareForShutdown)(IRTCClient *This);
HRESULT (WINAPI *put_EventFilter)(IRTCClient *This,__LONG32 lFilter);
HRESULT (WINAPI *get_EventFilter)(IRTCClient *This,__LONG32 *plFilter);
HRESULT (WINAPI *SetPreferredMediaTypes)(IRTCClient *This,__LONG32 lMediaTypes,VARIANT_BOOL fPersistent);
HRESULT (WINAPI *get_PreferredMediaTypes)(IRTCClient *This,__LONG32 *plMediaTypes);
HRESULT (WINAPI *get_MediaCapabilities)(IRTCClient *This,__LONG32 *plMediaTypes);
HRESULT (WINAPI *CreateSession)(IRTCClient *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession **ppSession);
HRESULT (WINAPI *put_ListenForIncomingSessions)(IRTCClient *This,RTC_LISTEN_MODE enListen);
HRESULT (WINAPI *get_ListenForIncomingSessions)(IRTCClient *This,RTC_LISTEN_MODE *penListen);
HRESULT (WINAPI *get_NetworkAddresses)(IRTCClient *This,VARIANT_BOOL fTCP,VARIANT_BOOL fExternal,VARIANT *pvAddresses);
HRESULT (WINAPI *put_Volume)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume);
HRESULT (WINAPI *get_Volume)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume);
HRESULT (WINAPI *put_AudioMuted)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL fMuted);
HRESULT (WINAPI *get_AudioMuted)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL *pfMuted);
HRESULT (WINAPI *get_IVideoWindow)(IRTCClient *This,RTC_VIDEO_DEVICE enDevice,IVideoWindow **ppIVideoWindow);
HRESULT (WINAPI *put_PreferredAudioDevice)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,BSTR bstrDeviceName);
HRESULT (WINAPI *get_PreferredAudioDevice)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,BSTR *pbstrDeviceName);
HRESULT (WINAPI *put_PreferredVolume)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume);
HRESULT (WINAPI *get_PreferredVolume)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume);
HRESULT (WINAPI *put_PreferredAEC)(IRTCClient *This,VARIANT_BOOL bEnable);
HRESULT (WINAPI *get_PreferredAEC)(IRTCClient *This,VARIANT_BOOL *pbEnabled);
HRESULT (WINAPI *put_PreferredVideoDevice)(IRTCClient *This,BSTR bstrDeviceName);
HRESULT (WINAPI *get_PreferredVideoDevice)(IRTCClient *This,BSTR *pbstrDeviceName);
HRESULT (WINAPI *get_ActiveMedia)(IRTCClient *This,__LONG32 *plMediaType);
HRESULT (WINAPI *put_MaxBitrate)(IRTCClient *This,__LONG32 lMaxBitrate);
HRESULT (WINAPI *get_MaxBitrate)(IRTCClient *This,__LONG32 *plMaxBitrate);
HRESULT (WINAPI *put_TemporalSpatialTradeOff)(IRTCClient *This,__LONG32 lValue);
HRESULT (WINAPI *get_TemporalSpatialTradeOff)(IRTCClient *This,__LONG32 *plValue);
HRESULT (WINAPI *get_NetworkQuality)(IRTCClient *This,__LONG32 *plNetworkQuality);
HRESULT (WINAPI *StartT120Applet)(IRTCClient *This,RTC_T120_APPLET enApplet);
HRESULT (WINAPI *StopT120Applets)(IRTCClient *This);
HRESULT (WINAPI *get_IsT120AppletRunning)(IRTCClient *This,RTC_T120_APPLET enApplet,VARIANT_BOOL *pfRunning);
HRESULT (WINAPI *get_LocalUserURI)(IRTCClient *This,BSTR *pbstrUserURI);
HRESULT (WINAPI *put_LocalUserURI)(IRTCClient *This,BSTR bstrUserURI);
HRESULT (WINAPI *get_LocalUserName)(IRTCClient *This,BSTR *pbstrUserName);
HRESULT (WINAPI *put_LocalUserName)(IRTCClient *This,BSTR bstrUserName);
HRESULT (WINAPI *PlayRing)(IRTCClient *This,RTC_RING_TYPE enType,VARIANT_BOOL bPlay);
HRESULT (WINAPI *SendDTMF)(IRTCClient *This,RTC_DTMF enDTMF);
HRESULT (WINAPI *InvokeTuningWizard)(IRTCClient *This,OAHWND hwndParent);
HRESULT (WINAPI *get_IsTuned)(IRTCClient *This,VARIANT_BOOL *pfTuned);
END_INTERFACE
} IRTCClientVtbl;
struct IRTCClient {
CONST_VTBL struct IRTCClientVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCClient_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCClient_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCClient_Release(This) (This)->lpVtbl->Release(This)
#define IRTCClient_Initialize(This) (This)->lpVtbl->Initialize(This)
#define IRTCClient_Shutdown(This) (This)->lpVtbl->Shutdown(This)
#define IRTCClient_PrepareForShutdown(This) (This)->lpVtbl->PrepareForShutdown(This)
#define IRTCClient_put_EventFilter(This,lFilter) (This)->lpVtbl->put_EventFilter(This,lFilter)
#define IRTCClient_get_EventFilter(This,plFilter) (This)->lpVtbl->get_EventFilter(This,plFilter)
#define IRTCClient_SetPreferredMediaTypes(This,lMediaTypes,fPersistent) (This)->lpVtbl->SetPreferredMediaTypes(This,lMediaTypes,fPersistent)
#define IRTCClient_get_PreferredMediaTypes(This,plMediaTypes) (This)->lpVtbl->get_PreferredMediaTypes(This,plMediaTypes)
#define IRTCClient_get_MediaCapabilities(This,plMediaTypes) (This)->lpVtbl->get_MediaCapabilities(This,plMediaTypes)
#define IRTCClient_CreateSession(This,enType,bstrLocalPhoneURI,pProfile,lFlags,ppSession) (This)->lpVtbl->CreateSession(This,enType,bstrLocalPhoneURI,pProfile,lFlags,ppSession)
#define IRTCClient_put_ListenForIncomingSessions(This,enListen) (This)->lpVtbl->put_ListenForIncomingSessions(This,enListen)
#define IRTCClient_get_ListenForIncomingSessions(This,penListen) (This)->lpVtbl->get_ListenForIncomingSessions(This,penListen)
#define IRTCClient_get_NetworkAddresses(This,fTCP,fExternal,pvAddresses) (This)->lpVtbl->get_NetworkAddresses(This,fTCP,fExternal,pvAddresses)
#define IRTCClient_put_Volume(This,enDevice,lVolume) (This)->lpVtbl->put_Volume(This,enDevice,lVolume)
#define IRTCClient_get_Volume(This,enDevice,plVolume) (This)->lpVtbl->get_Volume(This,enDevice,plVolume)
#define IRTCClient_put_AudioMuted(This,enDevice,fMuted) (This)->lpVtbl->put_AudioMuted(This,enDevice,fMuted)
#define IRTCClient_get_AudioMuted(This,enDevice,pfMuted) (This)->lpVtbl->get_AudioMuted(This,enDevice,pfMuted)
#define IRTCClient_get_IVideoWindow(This,enDevice,ppIVideoWindow) (This)->lpVtbl->get_IVideoWindow(This,enDevice,ppIVideoWindow)
#define IRTCClient_put_PreferredAudioDevice(This,enDevice,bstrDeviceName) (This)->lpVtbl->put_PreferredAudioDevice(This,enDevice,bstrDeviceName)
#define IRTCClient_get_PreferredAudioDevice(This,enDevice,pbstrDeviceName) (This)->lpVtbl->get_PreferredAudioDevice(This,enDevice,pbstrDeviceName)
#define IRTCClient_put_PreferredVolume(This,enDevice,lVolume) (This)->lpVtbl->put_PreferredVolume(This,enDevice,lVolume)
#define IRTCClient_get_PreferredVolume(This,enDevice,plVolume) (This)->lpVtbl->get_PreferredVolume(This,enDevice,plVolume)
#define IRTCClient_put_PreferredAEC(This,bEnable) (This)->lpVtbl->put_PreferredAEC(This,bEnable)
#define IRTCClient_get_PreferredAEC(This,pbEnabled) (This)->lpVtbl->get_PreferredAEC(This,pbEnabled)
#define IRTCClient_put_PreferredVideoDevice(This,bstrDeviceName) (This)->lpVtbl->put_PreferredVideoDevice(This,bstrDeviceName)
#define IRTCClient_get_PreferredVideoDevice(This,pbstrDeviceName) (This)->lpVtbl->get_PreferredVideoDevice(This,pbstrDeviceName)
#define IRTCClient_get_ActiveMedia(This,plMediaType) (This)->lpVtbl->get_ActiveMedia(This,plMediaType)
#define IRTCClient_put_MaxBitrate(This,lMaxBitrate) (This)->lpVtbl->put_MaxBitrate(This,lMaxBitrate)
#define IRTCClient_get_MaxBitrate(This,plMaxBitrate) (This)->lpVtbl->get_MaxBitrate(This,plMaxBitrate)
#define IRTCClient_put_TemporalSpatialTradeOff(This,lValue) (This)->lpVtbl->put_TemporalSpatialTradeOff(This,lValue)
#define IRTCClient_get_TemporalSpatialTradeOff(This,plValue) (This)->lpVtbl->get_TemporalSpatialTradeOff(This,plValue)
#define IRTCClient_get_NetworkQuality(This,plNetworkQuality) (This)->lpVtbl->get_NetworkQuality(This,plNetworkQuality)
#define IRTCClient_StartT120Applet(This,enApplet) (This)->lpVtbl->StartT120Applet(This,enApplet)
#define IRTCClient_StopT120Applets(This) (This)->lpVtbl->StopT120Applets(This)
#define IRTCClient_get_IsT120AppletRunning(This,enApplet,pfRunning) (This)->lpVtbl->get_IsT120AppletRunning(This,enApplet,pfRunning)
#define IRTCClient_get_LocalUserURI(This,pbstrUserURI) (This)->lpVtbl->get_LocalUserURI(This,pbstrUserURI)
#define IRTCClient_put_LocalUserURI(This,bstrUserURI) (This)->lpVtbl->put_LocalUserURI(This,bstrUserURI)
#define IRTCClient_get_LocalUserName(This,pbstrUserName) (This)->lpVtbl->get_LocalUserName(This,pbstrUserName)
#define IRTCClient_put_LocalUserName(This,bstrUserName) (This)->lpVtbl->put_LocalUserName(This,bstrUserName)
#define IRTCClient_PlayRing(This,enType,bPlay) (This)->lpVtbl->PlayRing(This,enType,bPlay)
#define IRTCClient_SendDTMF(This,enDTMF) (This)->lpVtbl->SendDTMF(This,enDTMF)
#define IRTCClient_InvokeTuningWizard(This,hwndParent) (This)->lpVtbl->InvokeTuningWizard(This,hwndParent)
#define IRTCClient_get_IsTuned(This,pfTuned) (This)->lpVtbl->get_IsTuned(This,pfTuned)
#endif
#endif
HRESULT WINAPI IRTCClient_Initialize_Proxy(IRTCClient *This);
void __RPC_STUB IRTCClient_Initialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_Shutdown_Proxy(IRTCClient *This);
void __RPC_STUB IRTCClient_Shutdown_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_PrepareForShutdown_Proxy(IRTCClient *This);
void __RPC_STUB IRTCClient_PrepareForShutdown_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_EventFilter_Proxy(IRTCClient *This,__LONG32 lFilter);
void __RPC_STUB IRTCClient_put_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_EventFilter_Proxy(IRTCClient *This,__LONG32 *plFilter);
void __RPC_STUB IRTCClient_get_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_SetPreferredMediaTypes_Proxy(IRTCClient *This,__LONG32 lMediaTypes,VARIANT_BOOL fPersistent);
void __RPC_STUB IRTCClient_SetPreferredMediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_PreferredMediaTypes_Proxy(IRTCClient *This,__LONG32 *plMediaTypes);
void __RPC_STUB IRTCClient_get_PreferredMediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_MediaCapabilities_Proxy(IRTCClient *This,__LONG32 *plMediaTypes);
void __RPC_STUB IRTCClient_get_MediaCapabilities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_CreateSession_Proxy(IRTCClient *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession **ppSession);
void __RPC_STUB IRTCClient_CreateSession_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_ListenForIncomingSessions_Proxy(IRTCClient *This,RTC_LISTEN_MODE enListen);
void __RPC_STUB IRTCClient_put_ListenForIncomingSessions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_ListenForIncomingSessions_Proxy(IRTCClient *This,RTC_LISTEN_MODE *penListen);
void __RPC_STUB IRTCClient_get_ListenForIncomingSessions_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_NetworkAddresses_Proxy(IRTCClient *This,VARIANT_BOOL fTCP,VARIANT_BOOL fExternal,VARIANT *pvAddresses);
void __RPC_STUB IRTCClient_get_NetworkAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_Volume_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume);
void __RPC_STUB IRTCClient_put_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_Volume_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume);
void __RPC_STUB IRTCClient_get_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_AudioMuted_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL fMuted);
void __RPC_STUB IRTCClient_put_AudioMuted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_AudioMuted_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL *pfMuted);
void __RPC_STUB IRTCClient_get_AudioMuted_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_IVideoWindow_Proxy(IRTCClient *This,RTC_VIDEO_DEVICE enDevice,IVideoWindow **ppIVideoWindow);
void __RPC_STUB IRTCClient_get_IVideoWindow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_PreferredAudioDevice_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,BSTR bstrDeviceName);
void __RPC_STUB IRTCClient_put_PreferredAudioDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_PreferredAudioDevice_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,BSTR *pbstrDeviceName);
void __RPC_STUB IRTCClient_get_PreferredAudioDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_PreferredVolume_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume);
void __RPC_STUB IRTCClient_put_PreferredVolume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_PreferredVolume_Proxy(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume);
void __RPC_STUB IRTCClient_get_PreferredVolume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_PreferredAEC_Proxy(IRTCClient *This,VARIANT_BOOL bEnable);
void __RPC_STUB IRTCClient_put_PreferredAEC_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_PreferredAEC_Proxy(IRTCClient *This,VARIANT_BOOL *pbEnabled);
void __RPC_STUB IRTCClient_get_PreferredAEC_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_PreferredVideoDevice_Proxy(IRTCClient *This,BSTR bstrDeviceName);
void __RPC_STUB IRTCClient_put_PreferredVideoDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_PreferredVideoDevice_Proxy(IRTCClient *This,BSTR *pbstrDeviceName);
void __RPC_STUB IRTCClient_get_PreferredVideoDevice_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_ActiveMedia_Proxy(IRTCClient *This,__LONG32 *plMediaType);
void __RPC_STUB IRTCClient_get_ActiveMedia_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_MaxBitrate_Proxy(IRTCClient *This,__LONG32 lMaxBitrate);
void __RPC_STUB IRTCClient_put_MaxBitrate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_MaxBitrate_Proxy(IRTCClient *This,__LONG32 *plMaxBitrate);
void __RPC_STUB IRTCClient_get_MaxBitrate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_TemporalSpatialTradeOff_Proxy(IRTCClient *This,__LONG32 lValue);
void __RPC_STUB IRTCClient_put_TemporalSpatialTradeOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_TemporalSpatialTradeOff_Proxy(IRTCClient *This,__LONG32 *plValue);
void __RPC_STUB IRTCClient_get_TemporalSpatialTradeOff_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_NetworkQuality_Proxy(IRTCClient *This,__LONG32 *plNetworkQuality);
void __RPC_STUB IRTCClient_get_NetworkQuality_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_StartT120Applet_Proxy(IRTCClient *This,RTC_T120_APPLET enApplet);
void __RPC_STUB IRTCClient_StartT120Applet_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_StopT120Applets_Proxy(IRTCClient *This);
void __RPC_STUB IRTCClient_StopT120Applets_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_IsT120AppletRunning_Proxy(IRTCClient *This,RTC_T120_APPLET enApplet,VARIANT_BOOL *pfRunning);
void __RPC_STUB IRTCClient_get_IsT120AppletRunning_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_LocalUserURI_Proxy(IRTCClient *This,BSTR *pbstrUserURI);
void __RPC_STUB IRTCClient_get_LocalUserURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_LocalUserURI_Proxy(IRTCClient *This,BSTR bstrUserURI);
void __RPC_STUB IRTCClient_put_LocalUserURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_LocalUserName_Proxy(IRTCClient *This,BSTR *pbstrUserName);
void __RPC_STUB IRTCClient_get_LocalUserName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_put_LocalUserName_Proxy(IRTCClient *This,BSTR bstrUserName);
void __RPC_STUB IRTCClient_put_LocalUserName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_PlayRing_Proxy(IRTCClient *This,RTC_RING_TYPE enType,VARIANT_BOOL bPlay);
void __RPC_STUB IRTCClient_PlayRing_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_SendDTMF_Proxy(IRTCClient *This,RTC_DTMF enDTMF);
void __RPC_STUB IRTCClient_SendDTMF_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_InvokeTuningWizard_Proxy(IRTCClient *This,OAHWND hwndParent);
void __RPC_STUB IRTCClient_InvokeTuningWizard_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient_get_IsTuned_Proxy(IRTCClient *This,VARIANT_BOOL *pfTuned);
void __RPC_STUB IRTCClient_get_IsTuned_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCClient2_INTERFACE_DEFINED__
#define __IRTCClient2_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCClient2;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCClient2 : public IRTCClient {
public:
virtual HRESULT WINAPI put_AnswerMode(RTC_SESSION_TYPE enType,RTC_ANSWER_MODE enMode) = 0;
virtual HRESULT WINAPI get_AnswerMode(RTC_SESSION_TYPE enType,RTC_ANSWER_MODE *penMode) = 0;
virtual HRESULT WINAPI InvokeTuningWizardEx(OAHWND hwndParent,VARIANT_BOOL fAllowAudio,VARIANT_BOOL fAllowVideo) = 0;
virtual HRESULT WINAPI get_Version(__LONG32 *plVersion) = 0;
virtual HRESULT WINAPI put_ClientName(BSTR bstrClientName) = 0;
virtual HRESULT WINAPI put_ClientCurVer(BSTR bstrClientCurVer) = 0;
virtual HRESULT WINAPI InitializeEx(__LONG32 lFlags) = 0;
virtual HRESULT WINAPI CreateSessionWithDescription(BSTR bstrContentType,BSTR bstrSessionDescription,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession2 **ppSession2) = 0;
virtual HRESULT WINAPI SetSessionDescriptionManager(IRTCSessionDescriptionManager *pSessionDescriptionManager) = 0;
virtual HRESULT WINAPI put_PreferredSecurityLevel(RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL enSecurityLevel) = 0;
virtual HRESULT WINAPI get_PreferredSecurityLevel(RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel) = 0;
virtual HRESULT WINAPI put_AllowedPorts(__LONG32 lTransport,RTC_LISTEN_MODE enListenMode) = 0;
virtual HRESULT WINAPI get_AllowedPorts(__LONG32 lTransport,RTC_LISTEN_MODE *penListenMode) = 0;
};
#else
typedef struct IRTCClient2Vtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCClient2 *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCClient2 *This);
ULONG (WINAPI *Release)(IRTCClient2 *This);
HRESULT (WINAPI *Initialize)(IRTCClient2 *This);
HRESULT (WINAPI *Shutdown)(IRTCClient2 *This);
HRESULT (WINAPI *PrepareForShutdown)(IRTCClient2 *This);
HRESULT (WINAPI *put_EventFilter)(IRTCClient2 *This,__LONG32 lFilter);
HRESULT (WINAPI *get_EventFilter)(IRTCClient2 *This,__LONG32 *plFilter);
HRESULT (WINAPI *SetPreferredMediaTypes)(IRTCClient2 *This,__LONG32 lMediaTypes,VARIANT_BOOL fPersistent);
HRESULT (WINAPI *get_PreferredMediaTypes)(IRTCClient2 *This,__LONG32 *plMediaTypes);
HRESULT (WINAPI *get_MediaCapabilities)(IRTCClient2 *This,__LONG32 *plMediaTypes);
HRESULT (WINAPI *CreateSession)(IRTCClient2 *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession **ppSession);
HRESULT (WINAPI *put_ListenForIncomingSessions)(IRTCClient2 *This,RTC_LISTEN_MODE enListen);
HRESULT (WINAPI *get_ListenForIncomingSessions)(IRTCClient2 *This,RTC_LISTEN_MODE *penListen);
HRESULT (WINAPI *get_NetworkAddresses)(IRTCClient2 *This,VARIANT_BOOL fTCP,VARIANT_BOOL fExternal,VARIANT *pvAddresses);
HRESULT (WINAPI *put_Volume)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume);
HRESULT (WINAPI *get_Volume)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume);
HRESULT (WINAPI *put_AudioMuted)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL fMuted);
HRESULT (WINAPI *get_AudioMuted)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,VARIANT_BOOL *pfMuted);
HRESULT (WINAPI *get_IVideoWindow)(IRTCClient2 *This,RTC_VIDEO_DEVICE enDevice,IVideoWindow **ppIVideoWindow);
HRESULT (WINAPI *put_PreferredAudioDevice)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,BSTR bstrDeviceName);
HRESULT (WINAPI *get_PreferredAudioDevice)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,BSTR *pbstrDeviceName);
HRESULT (WINAPI *put_PreferredVolume)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,__LONG32 lVolume);
HRESULT (WINAPI *get_PreferredVolume)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,__LONG32 *plVolume);
HRESULT (WINAPI *put_PreferredAEC)(IRTCClient2 *This,VARIANT_BOOL bEnable);
HRESULT (WINAPI *get_PreferredAEC)(IRTCClient2 *This,VARIANT_BOOL *pbEnabled);
HRESULT (WINAPI *put_PreferredVideoDevice)(IRTCClient2 *This,BSTR bstrDeviceName);
HRESULT (WINAPI *get_PreferredVideoDevice)(IRTCClient2 *This,BSTR *pbstrDeviceName);
HRESULT (WINAPI *get_ActiveMedia)(IRTCClient2 *This,__LONG32 *plMediaType);
HRESULT (WINAPI *put_MaxBitrate)(IRTCClient2 *This,__LONG32 lMaxBitrate);
HRESULT (WINAPI *get_MaxBitrate)(IRTCClient2 *This,__LONG32 *plMaxBitrate);
HRESULT (WINAPI *put_TemporalSpatialTradeOff)(IRTCClient2 *This,__LONG32 lValue);
HRESULT (WINAPI *get_TemporalSpatialTradeOff)(IRTCClient2 *This,__LONG32 *plValue);
HRESULT (WINAPI *get_NetworkQuality)(IRTCClient2 *This,__LONG32 *plNetworkQuality);
HRESULT (WINAPI *StartT120Applet)(IRTCClient2 *This,RTC_T120_APPLET enApplet);
HRESULT (WINAPI *StopT120Applets)(IRTCClient2 *This);
HRESULT (WINAPI *get_IsT120AppletRunning)(IRTCClient2 *This,RTC_T120_APPLET enApplet,VARIANT_BOOL *pfRunning);
HRESULT (WINAPI *get_LocalUserURI)(IRTCClient2 *This,BSTR *pbstrUserURI);
HRESULT (WINAPI *put_LocalUserURI)(IRTCClient2 *This,BSTR bstrUserURI);
HRESULT (WINAPI *get_LocalUserName)(IRTCClient2 *This,BSTR *pbstrUserName);
HRESULT (WINAPI *put_LocalUserName)(IRTCClient2 *This,BSTR bstrUserName);
HRESULT (WINAPI *PlayRing)(IRTCClient2 *This,RTC_RING_TYPE enType,VARIANT_BOOL bPlay);
HRESULT (WINAPI *SendDTMF)(IRTCClient2 *This,RTC_DTMF enDTMF);
HRESULT (WINAPI *InvokeTuningWizard)(IRTCClient2 *This,OAHWND hwndParent);
HRESULT (WINAPI *get_IsTuned)(IRTCClient2 *This,VARIANT_BOOL *pfTuned);
HRESULT (WINAPI *put_AnswerMode)(IRTCClient2 *This,RTC_SESSION_TYPE enType,RTC_ANSWER_MODE enMode);
HRESULT (WINAPI *get_AnswerMode)(IRTCClient2 *This,RTC_SESSION_TYPE enType,RTC_ANSWER_MODE *penMode);
HRESULT (WINAPI *InvokeTuningWizardEx)(IRTCClient2 *This,OAHWND hwndParent,VARIANT_BOOL fAllowAudio,VARIANT_BOOL fAllowVideo);
HRESULT (WINAPI *get_Version)(IRTCClient2 *This,__LONG32 *plVersion);
HRESULT (WINAPI *put_ClientName)(IRTCClient2 *This,BSTR bstrClientName);
HRESULT (WINAPI *put_ClientCurVer)(IRTCClient2 *This,BSTR bstrClientCurVer);
HRESULT (WINAPI *InitializeEx)(IRTCClient2 *This,__LONG32 lFlags);
HRESULT (WINAPI *CreateSessionWithDescription)(IRTCClient2 *This,BSTR bstrContentType,BSTR bstrSessionDescription,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession2 **ppSession2);
HRESULT (WINAPI *SetSessionDescriptionManager)(IRTCClient2 *This,IRTCSessionDescriptionManager *pSessionDescriptionManager);
HRESULT (WINAPI *put_PreferredSecurityLevel)(IRTCClient2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL enSecurityLevel);
HRESULT (WINAPI *get_PreferredSecurityLevel)(IRTCClient2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel);
HRESULT (WINAPI *put_AllowedPorts)(IRTCClient2 *This,__LONG32 lTransport,RTC_LISTEN_MODE enListenMode);
HRESULT (WINAPI *get_AllowedPorts)(IRTCClient2 *This,__LONG32 lTransport,RTC_LISTEN_MODE *penListenMode);
END_INTERFACE
} IRTCClient2Vtbl;
struct IRTCClient2 {
CONST_VTBL struct IRTCClient2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCClient2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCClient2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCClient2_Release(This) (This)->lpVtbl->Release(This)
#define IRTCClient2_Initialize(This) (This)->lpVtbl->Initialize(This)
#define IRTCClient2_Shutdown(This) (This)->lpVtbl->Shutdown(This)
#define IRTCClient2_PrepareForShutdown(This) (This)->lpVtbl->PrepareForShutdown(This)
#define IRTCClient2_put_EventFilter(This,lFilter) (This)->lpVtbl->put_EventFilter(This,lFilter)
#define IRTCClient2_get_EventFilter(This,plFilter) (This)->lpVtbl->get_EventFilter(This,plFilter)
#define IRTCClient2_SetPreferredMediaTypes(This,lMediaTypes,fPersistent) (This)->lpVtbl->SetPreferredMediaTypes(This,lMediaTypes,fPersistent)
#define IRTCClient2_get_PreferredMediaTypes(This,plMediaTypes) (This)->lpVtbl->get_PreferredMediaTypes(This,plMediaTypes)
#define IRTCClient2_get_MediaCapabilities(This,plMediaTypes) (This)->lpVtbl->get_MediaCapabilities(This,plMediaTypes)
#define IRTCClient2_CreateSession(This,enType,bstrLocalPhoneURI,pProfile,lFlags,ppSession) (This)->lpVtbl->CreateSession(This,enType,bstrLocalPhoneURI,pProfile,lFlags,ppSession)
#define IRTCClient2_put_ListenForIncomingSessions(This,enListen) (This)->lpVtbl->put_ListenForIncomingSessions(This,enListen)
#define IRTCClient2_get_ListenForIncomingSessions(This,penListen) (This)->lpVtbl->get_ListenForIncomingSessions(This,penListen)
#define IRTCClient2_get_NetworkAddresses(This,fTCP,fExternal,pvAddresses) (This)->lpVtbl->get_NetworkAddresses(This,fTCP,fExternal,pvAddresses)
#define IRTCClient2_put_Volume(This,enDevice,lVolume) (This)->lpVtbl->put_Volume(This,enDevice,lVolume)
#define IRTCClient2_get_Volume(This,enDevice,plVolume) (This)->lpVtbl->get_Volume(This,enDevice,plVolume)
#define IRTCClient2_put_AudioMuted(This,enDevice,fMuted) (This)->lpVtbl->put_AudioMuted(This,enDevice,fMuted)
#define IRTCClient2_get_AudioMuted(This,enDevice,pfMuted) (This)->lpVtbl->get_AudioMuted(This,enDevice,pfMuted)
#define IRTCClient2_get_IVideoWindow(This,enDevice,ppIVideoWindow) (This)->lpVtbl->get_IVideoWindow(This,enDevice,ppIVideoWindow)
#define IRTCClient2_put_PreferredAudioDevice(This,enDevice,bstrDeviceName) (This)->lpVtbl->put_PreferredAudioDevice(This,enDevice,bstrDeviceName)
#define IRTCClient2_get_PreferredAudioDevice(This,enDevice,pbstrDeviceName) (This)->lpVtbl->get_PreferredAudioDevice(This,enDevice,pbstrDeviceName)
#define IRTCClient2_put_PreferredVolume(This,enDevice,lVolume) (This)->lpVtbl->put_PreferredVolume(This,enDevice,lVolume)
#define IRTCClient2_get_PreferredVolume(This,enDevice,plVolume) (This)->lpVtbl->get_PreferredVolume(This,enDevice,plVolume)
#define IRTCClient2_put_PreferredAEC(This,bEnable) (This)->lpVtbl->put_PreferredAEC(This,bEnable)
#define IRTCClient2_get_PreferredAEC(This,pbEnabled) (This)->lpVtbl->get_PreferredAEC(This,pbEnabled)
#define IRTCClient2_put_PreferredVideoDevice(This,bstrDeviceName) (This)->lpVtbl->put_PreferredVideoDevice(This,bstrDeviceName)
#define IRTCClient2_get_PreferredVideoDevice(This,pbstrDeviceName) (This)->lpVtbl->get_PreferredVideoDevice(This,pbstrDeviceName)
#define IRTCClient2_get_ActiveMedia(This,plMediaType) (This)->lpVtbl->get_ActiveMedia(This,plMediaType)
#define IRTCClient2_put_MaxBitrate(This,lMaxBitrate) (This)->lpVtbl->put_MaxBitrate(This,lMaxBitrate)
#define IRTCClient2_get_MaxBitrate(This,plMaxBitrate) (This)->lpVtbl->get_MaxBitrate(This,plMaxBitrate)
#define IRTCClient2_put_TemporalSpatialTradeOff(This,lValue) (This)->lpVtbl->put_TemporalSpatialTradeOff(This,lValue)
#define IRTCClient2_get_TemporalSpatialTradeOff(This,plValue) (This)->lpVtbl->get_TemporalSpatialTradeOff(This,plValue)
#define IRTCClient2_get_NetworkQuality(This,plNetworkQuality) (This)->lpVtbl->get_NetworkQuality(This,plNetworkQuality)
#define IRTCClient2_StartT120Applet(This,enApplet) (This)->lpVtbl->StartT120Applet(This,enApplet)
#define IRTCClient2_StopT120Applets(This) (This)->lpVtbl->StopT120Applets(This)
#define IRTCClient2_get_IsT120AppletRunning(This,enApplet,pfRunning) (This)->lpVtbl->get_IsT120AppletRunning(This,enApplet,pfRunning)
#define IRTCClient2_get_LocalUserURI(This,pbstrUserURI) (This)->lpVtbl->get_LocalUserURI(This,pbstrUserURI)
#define IRTCClient2_put_LocalUserURI(This,bstrUserURI) (This)->lpVtbl->put_LocalUserURI(This,bstrUserURI)
#define IRTCClient2_get_LocalUserName(This,pbstrUserName) (This)->lpVtbl->get_LocalUserName(This,pbstrUserName)
#define IRTCClient2_put_LocalUserName(This,bstrUserName) (This)->lpVtbl->put_LocalUserName(This,bstrUserName)
#define IRTCClient2_PlayRing(This,enType,bPlay) (This)->lpVtbl->PlayRing(This,enType,bPlay)
#define IRTCClient2_SendDTMF(This,enDTMF) (This)->lpVtbl->SendDTMF(This,enDTMF)
#define IRTCClient2_InvokeTuningWizard(This,hwndParent) (This)->lpVtbl->InvokeTuningWizard(This,hwndParent)
#define IRTCClient2_get_IsTuned(This,pfTuned) (This)->lpVtbl->get_IsTuned(This,pfTuned)
#define IRTCClient2_put_AnswerMode(This,enType,enMode) (This)->lpVtbl->put_AnswerMode(This,enType,enMode)
#define IRTCClient2_get_AnswerMode(This,enType,penMode) (This)->lpVtbl->get_AnswerMode(This,enType,penMode)
#define IRTCClient2_InvokeTuningWizardEx(This,hwndParent,fAllowAudio,fAllowVideo) (This)->lpVtbl->InvokeTuningWizardEx(This,hwndParent,fAllowAudio,fAllowVideo)
#define IRTCClient2_get_Version(This,plVersion) (This)->lpVtbl->get_Version(This,plVersion)
#define IRTCClient2_put_ClientName(This,bstrClientName) (This)->lpVtbl->put_ClientName(This,bstrClientName)
#define IRTCClient2_put_ClientCurVer(This,bstrClientCurVer) (This)->lpVtbl->put_ClientCurVer(This,bstrClientCurVer)
#define IRTCClient2_InitializeEx(This,lFlags) (This)->lpVtbl->InitializeEx(This,lFlags)
#define IRTCClient2_CreateSessionWithDescription(This,bstrContentType,bstrSessionDescription,pProfile,lFlags,ppSession2) (This)->lpVtbl->CreateSessionWithDescription(This,bstrContentType,bstrSessionDescription,pProfile,lFlags,ppSession2)
#define IRTCClient2_SetSessionDescriptionManager(This,pSessionDescriptionManager) (This)->lpVtbl->SetSessionDescriptionManager(This,pSessionDescriptionManager)
#define IRTCClient2_put_PreferredSecurityLevel(This,enSecurityType,enSecurityLevel) (This)->lpVtbl->put_PreferredSecurityLevel(This,enSecurityType,enSecurityLevel)
#define IRTCClient2_get_PreferredSecurityLevel(This,enSecurityType,penSecurityLevel) (This)->lpVtbl->get_PreferredSecurityLevel(This,enSecurityType,penSecurityLevel)
#define IRTCClient2_put_AllowedPorts(This,lTransport,enListenMode) (This)->lpVtbl->put_AllowedPorts(This,lTransport,enListenMode)
#define IRTCClient2_get_AllowedPorts(This,lTransport,penListenMode) (This)->lpVtbl->get_AllowedPorts(This,lTransport,penListenMode)
#endif
#endif
HRESULT WINAPI IRTCClient2_put_AnswerMode_Proxy(IRTCClient2 *This,RTC_SESSION_TYPE enType,RTC_ANSWER_MODE enMode);
void __RPC_STUB IRTCClient2_put_AnswerMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_get_AnswerMode_Proxy(IRTCClient2 *This,RTC_SESSION_TYPE enType,RTC_ANSWER_MODE *penMode);
void __RPC_STUB IRTCClient2_get_AnswerMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_InvokeTuningWizardEx_Proxy(IRTCClient2 *This,OAHWND hwndParent,VARIANT_BOOL fAllowAudio,VARIANT_BOOL fAllowVideo);
void __RPC_STUB IRTCClient2_InvokeTuningWizardEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_get_Version_Proxy(IRTCClient2 *This,__LONG32 *plVersion);
void __RPC_STUB IRTCClient2_get_Version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_put_ClientName_Proxy(IRTCClient2 *This,BSTR bstrClientName);
void __RPC_STUB IRTCClient2_put_ClientName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_put_ClientCurVer_Proxy(IRTCClient2 *This,BSTR bstrClientCurVer);
void __RPC_STUB IRTCClient2_put_ClientCurVer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_InitializeEx_Proxy(IRTCClient2 *This,__LONG32 lFlags);
void __RPC_STUB IRTCClient2_InitializeEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_CreateSessionWithDescription_Proxy(IRTCClient2 *This,BSTR bstrContentType,BSTR bstrSessionDescription,IRTCProfile *pProfile,__LONG32 lFlags,IRTCSession2 **ppSession2);
void __RPC_STUB IRTCClient2_CreateSessionWithDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_SetSessionDescriptionManager_Proxy(IRTCClient2 *This,IRTCSessionDescriptionManager *pSessionDescriptionManager);
void __RPC_STUB IRTCClient2_SetSessionDescriptionManager_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_put_PreferredSecurityLevel_Proxy(IRTCClient2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL enSecurityLevel);
void __RPC_STUB IRTCClient2_put_PreferredSecurityLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_get_PreferredSecurityLevel_Proxy(IRTCClient2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel);
void __RPC_STUB IRTCClient2_get_PreferredSecurityLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_put_AllowedPorts_Proxy(IRTCClient2 *This,__LONG32 lTransport,RTC_LISTEN_MODE enListenMode);
void __RPC_STUB IRTCClient2_put_AllowedPorts_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClient2_get_AllowedPorts_Proxy(IRTCClient2 *This,__LONG32 lTransport,RTC_LISTEN_MODE *penListenMode);
void __RPC_STUB IRTCClient2_get_AllowedPorts_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCClientPresence_INTERFACE_DEFINED__
#define __IRTCClientPresence_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCClientPresence;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCClientPresence : public IUnknown {
public:
virtual HRESULT WINAPI EnablePresence(VARIANT_BOOL fUseStorage,VARIANT varStorage) = 0;
virtual HRESULT WINAPI Export(VARIANT varStorage) = 0;
virtual HRESULT WINAPI Import(VARIANT varStorage,VARIANT_BOOL fReplaceAll) = 0;
virtual HRESULT WINAPI EnumerateBuddies(IRTCEnumBuddies **ppEnum) = 0;
virtual HRESULT WINAPI get_Buddies(IRTCCollection **ppCollection) = 0;
virtual HRESULT WINAPI get_Buddy(BSTR bstrPresentityURI,IRTCBuddy **ppBuddy) = 0;
virtual HRESULT WINAPI AddBuddy(BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy **ppBuddy) = 0;
virtual HRESULT WINAPI RemoveBuddy(IRTCBuddy *pBuddy) = 0;
virtual HRESULT WINAPI EnumerateWatchers(IRTCEnumWatchers **ppEnum) = 0;
virtual HRESULT WINAPI get_Watchers(IRTCCollection **ppCollection) = 0;
virtual HRESULT WINAPI get_Watcher(BSTR bstrPresentityURI,IRTCWatcher **ppWatcher) = 0;
virtual HRESULT WINAPI AddWatcher(BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fBlocked,VARIANT_BOOL fPersistent,IRTCWatcher **ppWatcher) = 0;
virtual HRESULT WINAPI RemoveWatcher(IRTCWatcher *pWatcher) = 0;
virtual HRESULT WINAPI SetLocalPresenceInfo(RTC_PRESENCE_STATUS enStatus,BSTR bstrNotes) = 0;
virtual HRESULT WINAPI get_OfferWatcherMode(RTC_OFFER_WATCHER_MODE *penMode) = 0;
virtual HRESULT WINAPI put_OfferWatcherMode(RTC_OFFER_WATCHER_MODE enMode) = 0;
virtual HRESULT WINAPI get_PrivacyMode(RTC_PRIVACY_MODE *penMode) = 0;
virtual HRESULT WINAPI put_PrivacyMode(RTC_PRIVACY_MODE enMode) = 0;
};
#else
typedef struct IRTCClientPresenceVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCClientPresence *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCClientPresence *This);
ULONG (WINAPI *Release)(IRTCClientPresence *This);
HRESULT (WINAPI *EnablePresence)(IRTCClientPresence *This,VARIANT_BOOL fUseStorage,VARIANT varStorage);
HRESULT (WINAPI *Export)(IRTCClientPresence *This,VARIANT varStorage);
HRESULT (WINAPI *Import)(IRTCClientPresence *This,VARIANT varStorage,VARIANT_BOOL fReplaceAll);
HRESULT (WINAPI *EnumerateBuddies)(IRTCClientPresence *This,IRTCEnumBuddies **ppEnum);
HRESULT (WINAPI *get_Buddies)(IRTCClientPresence *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *get_Buddy)(IRTCClientPresence *This,BSTR bstrPresentityURI,IRTCBuddy **ppBuddy);
HRESULT (WINAPI *AddBuddy)(IRTCClientPresence *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy **ppBuddy);
HRESULT (WINAPI *RemoveBuddy)(IRTCClientPresence *This,IRTCBuddy *pBuddy);
HRESULT (WINAPI *EnumerateWatchers)(IRTCClientPresence *This,IRTCEnumWatchers **ppEnum);
HRESULT (WINAPI *get_Watchers)(IRTCClientPresence *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *get_Watcher)(IRTCClientPresence *This,BSTR bstrPresentityURI,IRTCWatcher **ppWatcher);
HRESULT (WINAPI *AddWatcher)(IRTCClientPresence *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fBlocked,VARIANT_BOOL fPersistent,IRTCWatcher **ppWatcher);
HRESULT (WINAPI *RemoveWatcher)(IRTCClientPresence *This,IRTCWatcher *pWatcher);
HRESULT (WINAPI *SetLocalPresenceInfo)(IRTCClientPresence *This,RTC_PRESENCE_STATUS enStatus,BSTR bstrNotes);
HRESULT (WINAPI *get_OfferWatcherMode)(IRTCClientPresence *This,RTC_OFFER_WATCHER_MODE *penMode);
HRESULT (WINAPI *put_OfferWatcherMode)(IRTCClientPresence *This,RTC_OFFER_WATCHER_MODE enMode);
HRESULT (WINAPI *get_PrivacyMode)(IRTCClientPresence *This,RTC_PRIVACY_MODE *penMode);
HRESULT (WINAPI *put_PrivacyMode)(IRTCClientPresence *This,RTC_PRIVACY_MODE enMode);
END_INTERFACE
} IRTCClientPresenceVtbl;
struct IRTCClientPresence {
CONST_VTBL struct IRTCClientPresenceVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCClientPresence_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCClientPresence_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCClientPresence_Release(This) (This)->lpVtbl->Release(This)
#define IRTCClientPresence_EnablePresence(This,fUseStorage,varStorage) (This)->lpVtbl->EnablePresence(This,fUseStorage,varStorage)
#define IRTCClientPresence_Export(This,varStorage) (This)->lpVtbl->Export(This,varStorage)
#define IRTCClientPresence_Import(This,varStorage,fReplaceAll) (This)->lpVtbl->Import(This,varStorage,fReplaceAll)
#define IRTCClientPresence_EnumerateBuddies(This,ppEnum) (This)->lpVtbl->EnumerateBuddies(This,ppEnum)
#define IRTCClientPresence_get_Buddies(This,ppCollection) (This)->lpVtbl->get_Buddies(This,ppCollection)
#define IRTCClientPresence_get_Buddy(This,bstrPresentityURI,ppBuddy) (This)->lpVtbl->get_Buddy(This,bstrPresentityURI,ppBuddy)
#define IRTCClientPresence_AddBuddy(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,pProfile,lFlags,ppBuddy) (This)->lpVtbl->AddBuddy(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,pProfile,lFlags,ppBuddy)
#define IRTCClientPresence_RemoveBuddy(This,pBuddy) (This)->lpVtbl->RemoveBuddy(This,pBuddy)
#define IRTCClientPresence_EnumerateWatchers(This,ppEnum) (This)->lpVtbl->EnumerateWatchers(This,ppEnum)
#define IRTCClientPresence_get_Watchers(This,ppCollection) (This)->lpVtbl->get_Watchers(This,ppCollection)
#define IRTCClientPresence_get_Watcher(This,bstrPresentityURI,ppWatcher) (This)->lpVtbl->get_Watcher(This,bstrPresentityURI,ppWatcher)
#define IRTCClientPresence_AddWatcher(This,bstrPresentityURI,bstrUserName,bstrData,fBlocked,fPersistent,ppWatcher) (This)->lpVtbl->AddWatcher(This,bstrPresentityURI,bstrUserName,bstrData,fBlocked,fPersistent,ppWatcher)
#define IRTCClientPresence_RemoveWatcher(This,pWatcher) (This)->lpVtbl->RemoveWatcher(This,pWatcher)
#define IRTCClientPresence_SetLocalPresenceInfo(This,enStatus,bstrNotes) (This)->lpVtbl->SetLocalPresenceInfo(This,enStatus,bstrNotes)
#define IRTCClientPresence_get_OfferWatcherMode(This,penMode) (This)->lpVtbl->get_OfferWatcherMode(This,penMode)
#define IRTCClientPresence_put_OfferWatcherMode(This,enMode) (This)->lpVtbl->put_OfferWatcherMode(This,enMode)
#define IRTCClientPresence_get_PrivacyMode(This,penMode) (This)->lpVtbl->get_PrivacyMode(This,penMode)
#define IRTCClientPresence_put_PrivacyMode(This,enMode) (This)->lpVtbl->put_PrivacyMode(This,enMode)
#endif
#endif
HRESULT WINAPI IRTCClientPresence_EnablePresence_Proxy(IRTCClientPresence *This,VARIANT_BOOL fUseStorage,VARIANT varStorage);
void __RPC_STUB IRTCClientPresence_EnablePresence_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_Export_Proxy(IRTCClientPresence *This,VARIANT varStorage);
void __RPC_STUB IRTCClientPresence_Export_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_Import_Proxy(IRTCClientPresence *This,VARIANT varStorage,VARIANT_BOOL fReplaceAll);
void __RPC_STUB IRTCClientPresence_Import_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_EnumerateBuddies_Proxy(IRTCClientPresence *This,IRTCEnumBuddies **ppEnum);
void __RPC_STUB IRTCClientPresence_EnumerateBuddies_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_get_Buddies_Proxy(IRTCClientPresence *This,IRTCCollection **ppCollection);
void __RPC_STUB IRTCClientPresence_get_Buddies_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_get_Buddy_Proxy(IRTCClientPresence *This,BSTR bstrPresentityURI,IRTCBuddy **ppBuddy);
void __RPC_STUB IRTCClientPresence_get_Buddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_AddBuddy_Proxy(IRTCClientPresence *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy **ppBuddy);
void __RPC_STUB IRTCClientPresence_AddBuddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_RemoveBuddy_Proxy(IRTCClientPresence *This,IRTCBuddy *pBuddy);
void __RPC_STUB IRTCClientPresence_RemoveBuddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_EnumerateWatchers_Proxy(IRTCClientPresence *This,IRTCEnumWatchers **ppEnum);
void __RPC_STUB IRTCClientPresence_EnumerateWatchers_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_get_Watchers_Proxy(IRTCClientPresence *This,IRTCCollection **ppCollection);
void __RPC_STUB IRTCClientPresence_get_Watchers_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_get_Watcher_Proxy(IRTCClientPresence *This,BSTR bstrPresentityURI,IRTCWatcher **ppWatcher);
void __RPC_STUB IRTCClientPresence_get_Watcher_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_AddWatcher_Proxy(IRTCClientPresence *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fBlocked,VARIANT_BOOL fPersistent,IRTCWatcher **ppWatcher);
void __RPC_STUB IRTCClientPresence_AddWatcher_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_RemoveWatcher_Proxy(IRTCClientPresence *This,IRTCWatcher *pWatcher);
void __RPC_STUB IRTCClientPresence_RemoveWatcher_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_SetLocalPresenceInfo_Proxy(IRTCClientPresence *This,RTC_PRESENCE_STATUS enStatus,BSTR bstrNotes);
void __RPC_STUB IRTCClientPresence_SetLocalPresenceInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_get_OfferWatcherMode_Proxy(IRTCClientPresence *This,RTC_OFFER_WATCHER_MODE *penMode);
void __RPC_STUB IRTCClientPresence_get_OfferWatcherMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_put_OfferWatcherMode_Proxy(IRTCClientPresence *This,RTC_OFFER_WATCHER_MODE enMode);
void __RPC_STUB IRTCClientPresence_put_OfferWatcherMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_get_PrivacyMode_Proxy(IRTCClientPresence *This,RTC_PRIVACY_MODE *penMode);
void __RPC_STUB IRTCClientPresence_get_PrivacyMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence_put_PrivacyMode_Proxy(IRTCClientPresence *This,RTC_PRIVACY_MODE enMode);
void __RPC_STUB IRTCClientPresence_put_PrivacyMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCClientPresence2_INTERFACE_DEFINED__
#define __IRTCClientPresence2_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCClientPresence2;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCClientPresence2 : public IRTCClientPresence {
public:
virtual HRESULT WINAPI EnablePresenceEx(IRTCProfile *pProfile,VARIANT varStorage,__LONG32 lFlags) = 0;
virtual HRESULT WINAPI DisablePresence(void) = 0;
virtual HRESULT WINAPI AddGroup(BSTR bstrGroupName,BSTR bstrData,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddyGroup **ppGroup) = 0;
virtual HRESULT WINAPI RemoveGroup(IRTCBuddyGroup *pGroup) = 0;
virtual HRESULT WINAPI EnumerateGroups(IRTCEnumGroups **ppEnum) = 0;
virtual HRESULT WINAPI get_Groups(IRTCCollection **ppCollection) = 0;
virtual HRESULT WINAPI get_Group(BSTR bstrGroupName,IRTCBuddyGroup **ppGroup) = 0;
virtual HRESULT WINAPI AddWatcherEx(BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,RTC_WATCHER_STATE enState,VARIANT_BOOL fPersistent,RTC_ACE_SCOPE enScope,IRTCProfile *pProfile,__LONG32 lFlags,IRTCWatcher2 **ppWatcher) = 0;
virtual HRESULT WINAPI get_WatcherEx(RTC_WATCHER_MATCH_MODE enMode,BSTR bstrPresentityURI,IRTCWatcher2 **ppWatcher) = 0;
virtual HRESULT WINAPI put_PresenceProperty(RTC_PRESENCE_PROPERTY enProperty,BSTR bstrProperty) = 0;
virtual HRESULT WINAPI get_PresenceProperty(RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty) = 0;
virtual HRESULT WINAPI SetPresenceData(BSTR bstrNamespace,BSTR bstrData) = 0;
virtual HRESULT WINAPI GetPresenceData(BSTR *pbstrNamespace,BSTR *pbstrData) = 0;
virtual HRESULT WINAPI GetLocalPresenceInfo(RTC_PRESENCE_STATUS *penStatus,BSTR *pbstrNotes) = 0;
virtual HRESULT WINAPI AddBuddyEx(BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,RTC_BUDDY_SUBSCRIPTION_TYPE enSubscriptionType,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy2 **ppBuddy) = 0;
};
#else
typedef struct IRTCClientPresence2Vtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCClientPresence2 *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCClientPresence2 *This);
ULONG (WINAPI *Release)(IRTCClientPresence2 *This);
HRESULT (WINAPI *EnablePresence)(IRTCClientPresence2 *This,VARIANT_BOOL fUseStorage,VARIANT varStorage);
HRESULT (WINAPI *Export)(IRTCClientPresence2 *This,VARIANT varStorage);
HRESULT (WINAPI *Import)(IRTCClientPresence2 *This,VARIANT varStorage,VARIANT_BOOL fReplaceAll);
HRESULT (WINAPI *EnumerateBuddies)(IRTCClientPresence2 *This,IRTCEnumBuddies **ppEnum);
HRESULT (WINAPI *get_Buddies)(IRTCClientPresence2 *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *get_Buddy)(IRTCClientPresence2 *This,BSTR bstrPresentityURI,IRTCBuddy **ppBuddy);
HRESULT (WINAPI *AddBuddy)(IRTCClientPresence2 *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy **ppBuddy);
HRESULT (WINAPI *RemoveBuddy)(IRTCClientPresence2 *This,IRTCBuddy *pBuddy);
HRESULT (WINAPI *EnumerateWatchers)(IRTCClientPresence2 *This,IRTCEnumWatchers **ppEnum);
HRESULT (WINAPI *get_Watchers)(IRTCClientPresence2 *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *get_Watcher)(IRTCClientPresence2 *This,BSTR bstrPresentityURI,IRTCWatcher **ppWatcher);
HRESULT (WINAPI *AddWatcher)(IRTCClientPresence2 *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fBlocked,VARIANT_BOOL fPersistent,IRTCWatcher **ppWatcher);
HRESULT (WINAPI *RemoveWatcher)(IRTCClientPresence2 *This,IRTCWatcher *pWatcher);
HRESULT (WINAPI *SetLocalPresenceInfo)(IRTCClientPresence2 *This,RTC_PRESENCE_STATUS enStatus,BSTR bstrNotes);
HRESULT (WINAPI *get_OfferWatcherMode)(IRTCClientPresence2 *This,RTC_OFFER_WATCHER_MODE *penMode);
HRESULT (WINAPI *put_OfferWatcherMode)(IRTCClientPresence2 *This,RTC_OFFER_WATCHER_MODE enMode);
HRESULT (WINAPI *get_PrivacyMode)(IRTCClientPresence2 *This,RTC_PRIVACY_MODE *penMode);
HRESULT (WINAPI *put_PrivacyMode)(IRTCClientPresence2 *This,RTC_PRIVACY_MODE enMode);
HRESULT (WINAPI *EnablePresenceEx)(IRTCClientPresence2 *This,IRTCProfile *pProfile,VARIANT varStorage,__LONG32 lFlags);
HRESULT (WINAPI *DisablePresence)(IRTCClientPresence2 *This);
HRESULT (WINAPI *AddGroup)(IRTCClientPresence2 *This,BSTR bstrGroupName,BSTR bstrData,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddyGroup **ppGroup);
HRESULT (WINAPI *RemoveGroup)(IRTCClientPresence2 *This,IRTCBuddyGroup *pGroup);
HRESULT (WINAPI *EnumerateGroups)(IRTCClientPresence2 *This,IRTCEnumGroups **ppEnum);
HRESULT (WINAPI *get_Groups)(IRTCClientPresence2 *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *get_Group)(IRTCClientPresence2 *This,BSTR bstrGroupName,IRTCBuddyGroup **ppGroup);
HRESULT (WINAPI *AddWatcherEx)(IRTCClientPresence2 *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,RTC_WATCHER_STATE enState,VARIANT_BOOL fPersistent,RTC_ACE_SCOPE enScope,IRTCProfile *pProfile,__LONG32 lFlags,IRTCWatcher2 **ppWatcher);
HRESULT (WINAPI *get_WatcherEx)(IRTCClientPresence2 *This,RTC_WATCHER_MATCH_MODE enMode,BSTR bstrPresentityURI,IRTCWatcher2 **ppWatcher);
HRESULT (WINAPI *put_PresenceProperty)(IRTCClientPresence2 *This,RTC_PRESENCE_PROPERTY enProperty,BSTR bstrProperty);
HRESULT (WINAPI *get_PresenceProperty)(IRTCClientPresence2 *This,RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty);
HRESULT (WINAPI *SetPresenceData)(IRTCClientPresence2 *This,BSTR bstrNamespace,BSTR bstrData);
HRESULT (WINAPI *GetPresenceData)(IRTCClientPresence2 *This,BSTR *pbstrNamespace,BSTR *pbstrData);
HRESULT (WINAPI *GetLocalPresenceInfo)(IRTCClientPresence2 *This,RTC_PRESENCE_STATUS *penStatus,BSTR *pbstrNotes);
HRESULT (WINAPI *AddBuddyEx)(IRTCClientPresence2 *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,RTC_BUDDY_SUBSCRIPTION_TYPE enSubscriptionType,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy2 **ppBuddy);
END_INTERFACE
} IRTCClientPresence2Vtbl;
struct IRTCClientPresence2 {
CONST_VTBL struct IRTCClientPresence2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCClientPresence2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCClientPresence2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCClientPresence2_Release(This) (This)->lpVtbl->Release(This)
#define IRTCClientPresence2_EnablePresence(This,fUseStorage,varStorage) (This)->lpVtbl->EnablePresence(This,fUseStorage,varStorage)
#define IRTCClientPresence2_Export(This,varStorage) (This)->lpVtbl->Export(This,varStorage)
#define IRTCClientPresence2_Import(This,varStorage,fReplaceAll) (This)->lpVtbl->Import(This,varStorage,fReplaceAll)
#define IRTCClientPresence2_EnumerateBuddies(This,ppEnum) (This)->lpVtbl->EnumerateBuddies(This,ppEnum)
#define IRTCClientPresence2_get_Buddies(This,ppCollection) (This)->lpVtbl->get_Buddies(This,ppCollection)
#define IRTCClientPresence2_get_Buddy(This,bstrPresentityURI,ppBuddy) (This)->lpVtbl->get_Buddy(This,bstrPresentityURI,ppBuddy)
#define IRTCClientPresence2_AddBuddy(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,pProfile,lFlags,ppBuddy) (This)->lpVtbl->AddBuddy(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,pProfile,lFlags,ppBuddy)
#define IRTCClientPresence2_RemoveBuddy(This,pBuddy) (This)->lpVtbl->RemoveBuddy(This,pBuddy)
#define IRTCClientPresence2_EnumerateWatchers(This,ppEnum) (This)->lpVtbl->EnumerateWatchers(This,ppEnum)
#define IRTCClientPresence2_get_Watchers(This,ppCollection) (This)->lpVtbl->get_Watchers(This,ppCollection)
#define IRTCClientPresence2_get_Watcher(This,bstrPresentityURI,ppWatcher) (This)->lpVtbl->get_Watcher(This,bstrPresentityURI,ppWatcher)
#define IRTCClientPresence2_AddWatcher(This,bstrPresentityURI,bstrUserName,bstrData,fBlocked,fPersistent,ppWatcher) (This)->lpVtbl->AddWatcher(This,bstrPresentityURI,bstrUserName,bstrData,fBlocked,fPersistent,ppWatcher)
#define IRTCClientPresence2_RemoveWatcher(This,pWatcher) (This)->lpVtbl->RemoveWatcher(This,pWatcher)
#define IRTCClientPresence2_SetLocalPresenceInfo(This,enStatus,bstrNotes) (This)->lpVtbl->SetLocalPresenceInfo(This,enStatus,bstrNotes)
#define IRTCClientPresence2_get_OfferWatcherMode(This,penMode) (This)->lpVtbl->get_OfferWatcherMode(This,penMode)
#define IRTCClientPresence2_put_OfferWatcherMode(This,enMode) (This)->lpVtbl->put_OfferWatcherMode(This,enMode)
#define IRTCClientPresence2_get_PrivacyMode(This,penMode) (This)->lpVtbl->get_PrivacyMode(This,penMode)
#define IRTCClientPresence2_put_PrivacyMode(This,enMode) (This)->lpVtbl->put_PrivacyMode(This,enMode)
#define IRTCClientPresence2_EnablePresenceEx(This,pProfile,varStorage,lFlags) (This)->lpVtbl->EnablePresenceEx(This,pProfile,varStorage,lFlags)
#define IRTCClientPresence2_DisablePresence(This) (This)->lpVtbl->DisablePresence(This)
#define IRTCClientPresence2_AddGroup(This,bstrGroupName,bstrData,pProfile,lFlags,ppGroup) (This)->lpVtbl->AddGroup(This,bstrGroupName,bstrData,pProfile,lFlags,ppGroup)
#define IRTCClientPresence2_RemoveGroup(This,pGroup) (This)->lpVtbl->RemoveGroup(This,pGroup)
#define IRTCClientPresence2_EnumerateGroups(This,ppEnum) (This)->lpVtbl->EnumerateGroups(This,ppEnum)
#define IRTCClientPresence2_get_Groups(This,ppCollection) (This)->lpVtbl->get_Groups(This,ppCollection)
#define IRTCClientPresence2_get_Group(This,bstrGroupName,ppGroup) (This)->lpVtbl->get_Group(This,bstrGroupName,ppGroup)
#define IRTCClientPresence2_AddWatcherEx(This,bstrPresentityURI,bstrUserName,bstrData,enState,fPersistent,enScope,pProfile,lFlags,ppWatcher) (This)->lpVtbl->AddWatcherEx(This,bstrPresentityURI,bstrUserName,bstrData,enState,fPersistent,enScope,pProfile,lFlags,ppWatcher)
#define IRTCClientPresence2_get_WatcherEx(This,enMode,bstrPresentityURI,ppWatcher) (This)->lpVtbl->get_WatcherEx(This,enMode,bstrPresentityURI,ppWatcher)
#define IRTCClientPresence2_put_PresenceProperty(This,enProperty,bstrProperty) (This)->lpVtbl->put_PresenceProperty(This,enProperty,bstrProperty)
#define IRTCClientPresence2_get_PresenceProperty(This,enProperty,pbstrProperty) (This)->lpVtbl->get_PresenceProperty(This,enProperty,pbstrProperty)
#define IRTCClientPresence2_SetPresenceData(This,bstrNamespace,bstrData) (This)->lpVtbl->SetPresenceData(This,bstrNamespace,bstrData)
#define IRTCClientPresence2_GetPresenceData(This,pbstrNamespace,pbstrData) (This)->lpVtbl->GetPresenceData(This,pbstrNamespace,pbstrData)
#define IRTCClientPresence2_GetLocalPresenceInfo(This,penStatus,pbstrNotes) (This)->lpVtbl->GetLocalPresenceInfo(This,penStatus,pbstrNotes)
#define IRTCClientPresence2_AddBuddyEx(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,enSubscriptionType,pProfile,lFlags,ppBuddy) (This)->lpVtbl->AddBuddyEx(This,bstrPresentityURI,bstrUserName,bstrData,fPersistent,enSubscriptionType,pProfile,lFlags,ppBuddy)
#endif
#endif
HRESULT WINAPI IRTCClientPresence2_EnablePresenceEx_Proxy(IRTCClientPresence2 *This,IRTCProfile *pProfile,VARIANT varStorage,__LONG32 lFlags);
void __RPC_STUB IRTCClientPresence2_EnablePresenceEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_DisablePresence_Proxy(IRTCClientPresence2 *This);
void __RPC_STUB IRTCClientPresence2_DisablePresence_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_AddGroup_Proxy(IRTCClientPresence2 *This,BSTR bstrGroupName,BSTR bstrData,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddyGroup **ppGroup);
void __RPC_STUB IRTCClientPresence2_AddGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_RemoveGroup_Proxy(IRTCClientPresence2 *This,IRTCBuddyGroup *pGroup);
void __RPC_STUB IRTCClientPresence2_RemoveGroup_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_EnumerateGroups_Proxy(IRTCClientPresence2 *This,IRTCEnumGroups **ppEnum);
void __RPC_STUB IRTCClientPresence2_EnumerateGroups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_get_Groups_Proxy(IRTCClientPresence2 *This,IRTCCollection **ppCollection);
void __RPC_STUB IRTCClientPresence2_get_Groups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_get_Group_Proxy(IRTCClientPresence2 *This,BSTR bstrGroupName,IRTCBuddyGroup **ppGroup);
void __RPC_STUB IRTCClientPresence2_get_Group_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_AddWatcherEx_Proxy(IRTCClientPresence2 *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,RTC_WATCHER_STATE enState,VARIANT_BOOL fPersistent,RTC_ACE_SCOPE enScope,IRTCProfile *pProfile,__LONG32 lFlags,IRTCWatcher2 **ppWatcher);
void __RPC_STUB IRTCClientPresence2_AddWatcherEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_get_WatcherEx_Proxy(IRTCClientPresence2 *This,RTC_WATCHER_MATCH_MODE enMode,BSTR bstrPresentityURI,IRTCWatcher2 **ppWatcher);
void __RPC_STUB IRTCClientPresence2_get_WatcherEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_put_PresenceProperty_Proxy(IRTCClientPresence2 *This,RTC_PRESENCE_PROPERTY enProperty,BSTR bstrProperty);
void __RPC_STUB IRTCClientPresence2_put_PresenceProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_get_PresenceProperty_Proxy(IRTCClientPresence2 *This,RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty);
void __RPC_STUB IRTCClientPresence2_get_PresenceProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_SetPresenceData_Proxy(IRTCClientPresence2 *This,BSTR bstrNamespace,BSTR bstrData);
void __RPC_STUB IRTCClientPresence2_SetPresenceData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_GetPresenceData_Proxy(IRTCClientPresence2 *This,BSTR *pbstrNamespace,BSTR *pbstrData);
void __RPC_STUB IRTCClientPresence2_GetPresenceData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_GetLocalPresenceInfo_Proxy(IRTCClientPresence2 *This,RTC_PRESENCE_STATUS *penStatus,BSTR *pbstrNotes);
void __RPC_STUB IRTCClientPresence2_GetLocalPresenceInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientPresence2_AddBuddyEx_Proxy(IRTCClientPresence2 *This,BSTR bstrPresentityURI,BSTR bstrUserName,BSTR bstrData,VARIANT_BOOL fPersistent,RTC_BUDDY_SUBSCRIPTION_TYPE enSubscriptionType,IRTCProfile *pProfile,__LONG32 lFlags,IRTCBuddy2 **ppBuddy);
void __RPC_STUB IRTCClientPresence2_AddBuddyEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCClientProvisioning_INTERFACE_DEFINED__
#define __IRTCClientProvisioning_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCClientProvisioning;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCClientProvisioning : public IUnknown {
public:
virtual HRESULT WINAPI CreateProfile(BSTR bstrProfileXML,IRTCProfile **ppProfile) = 0;
virtual HRESULT WINAPI EnableProfile(IRTCProfile *pProfile,__LONG32 lRegisterFlags) = 0;
virtual HRESULT WINAPI DisableProfile(IRTCProfile *pProfile) = 0;
virtual HRESULT WINAPI EnumerateProfiles(IRTCEnumProfiles **ppEnum) = 0;
virtual HRESULT WINAPI get_Profiles(IRTCCollection **ppCollection) = 0;
virtual HRESULT WINAPI GetProfile(BSTR bstrUserAccount,BSTR bstrUserPassword,BSTR bstrUserURI,BSTR bstrServer,__LONG32 lTransport,LONG_PTR lCookie) = 0;
virtual HRESULT WINAPI get_SessionCapabilities(__LONG32 *plSupportedSessions) = 0;
};
#else
typedef struct IRTCClientProvisioningVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCClientProvisioning *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCClientProvisioning *This);
ULONG (WINAPI *Release)(IRTCClientProvisioning *This);
HRESULT (WINAPI *CreateProfile)(IRTCClientProvisioning *This,BSTR bstrProfileXML,IRTCProfile **ppProfile);
HRESULT (WINAPI *EnableProfile)(IRTCClientProvisioning *This,IRTCProfile *pProfile,__LONG32 lRegisterFlags);
HRESULT (WINAPI *DisableProfile)(IRTCClientProvisioning *This,IRTCProfile *pProfile);
HRESULT (WINAPI *EnumerateProfiles)(IRTCClientProvisioning *This,IRTCEnumProfiles **ppEnum);
HRESULT (WINAPI *get_Profiles)(IRTCClientProvisioning *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *GetProfile)(IRTCClientProvisioning *This,BSTR bstrUserAccount,BSTR bstrUserPassword,BSTR bstrUserURI,BSTR bstrServer,__LONG32 lTransport,LONG_PTR lCookie);
HRESULT (WINAPI *get_SessionCapabilities)(IRTCClientProvisioning *This,__LONG32 *plSupportedSessions);
END_INTERFACE
} IRTCClientProvisioningVtbl;
struct IRTCClientProvisioning {
CONST_VTBL struct IRTCClientProvisioningVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCClientProvisioning_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCClientProvisioning_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCClientProvisioning_Release(This) (This)->lpVtbl->Release(This)
#define IRTCClientProvisioning_CreateProfile(This,bstrProfileXML,ppProfile) (This)->lpVtbl->CreateProfile(This,bstrProfileXML,ppProfile)
#define IRTCClientProvisioning_EnableProfile(This,pProfile,lRegisterFlags) (This)->lpVtbl->EnableProfile(This,pProfile,lRegisterFlags)
#define IRTCClientProvisioning_DisableProfile(This,pProfile) (This)->lpVtbl->DisableProfile(This,pProfile)
#define IRTCClientProvisioning_EnumerateProfiles(This,ppEnum) (This)->lpVtbl->EnumerateProfiles(This,ppEnum)
#define IRTCClientProvisioning_get_Profiles(This,ppCollection) (This)->lpVtbl->get_Profiles(This,ppCollection)
#define IRTCClientProvisioning_GetProfile(This,bstrUserAccount,bstrUserPassword,bstrUserURI,bstrServer,lTransport,lCookie) (This)->lpVtbl->GetProfile(This,bstrUserAccount,bstrUserPassword,bstrUserURI,bstrServer,lTransport,lCookie)
#define IRTCClientProvisioning_get_SessionCapabilities(This,plSupportedSessions) (This)->lpVtbl->get_SessionCapabilities(This,plSupportedSessions)
#endif
#endif
HRESULT WINAPI IRTCClientProvisioning_CreateProfile_Proxy(IRTCClientProvisioning *This,BSTR bstrProfileXML,IRTCProfile **ppProfile);
void __RPC_STUB IRTCClientProvisioning_CreateProfile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientProvisioning_EnableProfile_Proxy(IRTCClientProvisioning *This,IRTCProfile *pProfile,__LONG32 lRegisterFlags);
void __RPC_STUB IRTCClientProvisioning_EnableProfile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientProvisioning_DisableProfile_Proxy(IRTCClientProvisioning *This,IRTCProfile *pProfile);
void __RPC_STUB IRTCClientProvisioning_DisableProfile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientProvisioning_EnumerateProfiles_Proxy(IRTCClientProvisioning *This,IRTCEnumProfiles **ppEnum);
void __RPC_STUB IRTCClientProvisioning_EnumerateProfiles_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientProvisioning_get_Profiles_Proxy(IRTCClientProvisioning *This,IRTCCollection **ppCollection);
void __RPC_STUB IRTCClientProvisioning_get_Profiles_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientProvisioning_GetProfile_Proxy(IRTCClientProvisioning *This,BSTR bstrUserAccount,BSTR bstrUserPassword,BSTR bstrUserURI,BSTR bstrServer,__LONG32 lTransport,LONG_PTR lCookie);
void __RPC_STUB IRTCClientProvisioning_GetProfile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCClientProvisioning_get_SessionCapabilities_Proxy(IRTCClientProvisioning *This,__LONG32 *plSupportedSessions);
void __RPC_STUB IRTCClientProvisioning_get_SessionCapabilities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCClientProvisioning2_INTERFACE_DEFINED__
#define __IRTCClientProvisioning2_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCClientProvisioning2;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCClientProvisioning2 : public IRTCClientProvisioning {
public:
virtual HRESULT WINAPI EnableProfileEx(IRTCProfile *pProfile,__LONG32 lRegisterFlags,__LONG32 lRoamingFlags) = 0;
};
#else
typedef struct IRTCClientProvisioning2Vtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCClientProvisioning2 *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCClientProvisioning2 *This);
ULONG (WINAPI *Release)(IRTCClientProvisioning2 *This);
HRESULT (WINAPI *CreateProfile)(IRTCClientProvisioning2 *This,BSTR bstrProfileXML,IRTCProfile **ppProfile);
HRESULT (WINAPI *EnableProfile)(IRTCClientProvisioning2 *This,IRTCProfile *pProfile,__LONG32 lRegisterFlags);
HRESULT (WINAPI *DisableProfile)(IRTCClientProvisioning2 *This,IRTCProfile *pProfile);
HRESULT (WINAPI *EnumerateProfiles)(IRTCClientProvisioning2 *This,IRTCEnumProfiles **ppEnum);
HRESULT (WINAPI *get_Profiles)(IRTCClientProvisioning2 *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *GetProfile)(IRTCClientProvisioning2 *This,BSTR bstrUserAccount,BSTR bstrUserPassword,BSTR bstrUserURI,BSTR bstrServer,__LONG32 lTransport,LONG_PTR lCookie);
HRESULT (WINAPI *get_SessionCapabilities)(IRTCClientProvisioning2 *This,__LONG32 *plSupportedSessions);
HRESULT (WINAPI *EnableProfileEx)(IRTCClientProvisioning2 *This,IRTCProfile *pProfile,__LONG32 lRegisterFlags,__LONG32 lRoamingFlags);
END_INTERFACE
} IRTCClientProvisioning2Vtbl;
struct IRTCClientProvisioning2 {
CONST_VTBL struct IRTCClientProvisioning2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCClientProvisioning2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCClientProvisioning2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCClientProvisioning2_Release(This) (This)->lpVtbl->Release(This)
#define IRTCClientProvisioning2_CreateProfile(This,bstrProfileXML,ppProfile) (This)->lpVtbl->CreateProfile(This,bstrProfileXML,ppProfile)
#define IRTCClientProvisioning2_EnableProfile(This,pProfile,lRegisterFlags) (This)->lpVtbl->EnableProfile(This,pProfile,lRegisterFlags)
#define IRTCClientProvisioning2_DisableProfile(This,pProfile) (This)->lpVtbl->DisableProfile(This,pProfile)
#define IRTCClientProvisioning2_EnumerateProfiles(This,ppEnum) (This)->lpVtbl->EnumerateProfiles(This,ppEnum)
#define IRTCClientProvisioning2_get_Profiles(This,ppCollection) (This)->lpVtbl->get_Profiles(This,ppCollection)
#define IRTCClientProvisioning2_GetProfile(This,bstrUserAccount,bstrUserPassword,bstrUserURI,bstrServer,lTransport,lCookie) (This)->lpVtbl->GetProfile(This,bstrUserAccount,bstrUserPassword,bstrUserURI,bstrServer,lTransport,lCookie)
#define IRTCClientProvisioning2_get_SessionCapabilities(This,plSupportedSessions) (This)->lpVtbl->get_SessionCapabilities(This,plSupportedSessions)
#define IRTCClientProvisioning2_EnableProfileEx(This,pProfile,lRegisterFlags,lRoamingFlags) (This)->lpVtbl->EnableProfileEx(This,pProfile,lRegisterFlags,lRoamingFlags)
#endif
#endif
HRESULT WINAPI IRTCClientProvisioning2_EnableProfileEx_Proxy(IRTCClientProvisioning2 *This,IRTCProfile *pProfile,__LONG32 lRegisterFlags,__LONG32 lRoamingFlags);
void __RPC_STUB IRTCClientProvisioning2_EnableProfileEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCProfile_INTERFACE_DEFINED__
#define __IRTCProfile_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCProfile;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCProfile : public IUnknown {
public:
virtual HRESULT WINAPI get_Key(BSTR *pbstrKey) = 0;
virtual HRESULT WINAPI get_Name(BSTR *pbstrName) = 0;
virtual HRESULT WINAPI get_XML(BSTR *pbstrXML) = 0;
virtual HRESULT WINAPI get_ProviderName(BSTR *pbstrName) = 0;
virtual HRESULT WINAPI get_ProviderURI(RTC_PROVIDER_URI enURI,BSTR *pbstrURI) = 0;
virtual HRESULT WINAPI get_ProviderData(BSTR *pbstrData) = 0;
virtual HRESULT WINAPI get_ClientName(BSTR *pbstrName) = 0;
virtual HRESULT WINAPI get_ClientBanner(VARIANT_BOOL *pfBanner) = 0;
virtual HRESULT WINAPI get_ClientMinVer(BSTR *pbstrMinVer) = 0;
virtual HRESULT WINAPI get_ClientCurVer(BSTR *pbstrCurVer) = 0;
virtual HRESULT WINAPI get_ClientUpdateURI(BSTR *pbstrUpdateURI) = 0;
virtual HRESULT WINAPI get_ClientData(BSTR *pbstrData) = 0;
virtual HRESULT WINAPI get_UserURI(BSTR *pbstrUserURI) = 0;
virtual HRESULT WINAPI get_UserName(BSTR *pbstrUserName) = 0;
virtual HRESULT WINAPI get_UserAccount(BSTR *pbstrUserAccount) = 0;
virtual HRESULT WINAPI SetCredentials(BSTR bstrUserURI,BSTR bstrUserAccount,BSTR bstrPassword) = 0;
virtual HRESULT WINAPI get_SessionCapabilities(__LONG32 *plSupportedSessions) = 0;
virtual HRESULT WINAPI get_State(RTC_REGISTRATION_STATE *penState) = 0;
};
#else
typedef struct IRTCProfileVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCProfile *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCProfile *This);
ULONG (WINAPI *Release)(IRTCProfile *This);
HRESULT (WINAPI *get_Key)(IRTCProfile *This,BSTR *pbstrKey);
HRESULT (WINAPI *get_Name)(IRTCProfile *This,BSTR *pbstrName);
HRESULT (WINAPI *get_XML)(IRTCProfile *This,BSTR *pbstrXML);
HRESULT (WINAPI *get_ProviderName)(IRTCProfile *This,BSTR *pbstrName);
HRESULT (WINAPI *get_ProviderURI)(IRTCProfile *This,RTC_PROVIDER_URI enURI,BSTR *pbstrURI);
HRESULT (WINAPI *get_ProviderData)(IRTCProfile *This,BSTR *pbstrData);
HRESULT (WINAPI *get_ClientName)(IRTCProfile *This,BSTR *pbstrName);
HRESULT (WINAPI *get_ClientBanner)(IRTCProfile *This,VARIANT_BOOL *pfBanner);
HRESULT (WINAPI *get_ClientMinVer)(IRTCProfile *This,BSTR *pbstrMinVer);
HRESULT (WINAPI *get_ClientCurVer)(IRTCProfile *This,BSTR *pbstrCurVer);
HRESULT (WINAPI *get_ClientUpdateURI)(IRTCProfile *This,BSTR *pbstrUpdateURI);
HRESULT (WINAPI *get_ClientData)(IRTCProfile *This,BSTR *pbstrData);
HRESULT (WINAPI *get_UserURI)(IRTCProfile *This,BSTR *pbstrUserURI);
HRESULT (WINAPI *get_UserName)(IRTCProfile *This,BSTR *pbstrUserName);
HRESULT (WINAPI *get_UserAccount)(IRTCProfile *This,BSTR *pbstrUserAccount);
HRESULT (WINAPI *SetCredentials)(IRTCProfile *This,BSTR bstrUserURI,BSTR bstrUserAccount,BSTR bstrPassword);
HRESULT (WINAPI *get_SessionCapabilities)(IRTCProfile *This,__LONG32 *plSupportedSessions);
HRESULT (WINAPI *get_State)(IRTCProfile *This,RTC_REGISTRATION_STATE *penState);
END_INTERFACE
} IRTCProfileVtbl;
struct IRTCProfile {
CONST_VTBL struct IRTCProfileVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCProfile_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCProfile_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCProfile_Release(This) (This)->lpVtbl->Release(This)
#define IRTCProfile_get_Key(This,pbstrKey) (This)->lpVtbl->get_Key(This,pbstrKey)
#define IRTCProfile_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName)
#define IRTCProfile_get_XML(This,pbstrXML) (This)->lpVtbl->get_XML(This,pbstrXML)
#define IRTCProfile_get_ProviderName(This,pbstrName) (This)->lpVtbl->get_ProviderName(This,pbstrName)
#define IRTCProfile_get_ProviderURI(This,enURI,pbstrURI) (This)->lpVtbl->get_ProviderURI(This,enURI,pbstrURI)
#define IRTCProfile_get_ProviderData(This,pbstrData) (This)->lpVtbl->get_ProviderData(This,pbstrData)
#define IRTCProfile_get_ClientName(This,pbstrName) (This)->lpVtbl->get_ClientName(This,pbstrName)
#define IRTCProfile_get_ClientBanner(This,pfBanner) (This)->lpVtbl->get_ClientBanner(This,pfBanner)
#define IRTCProfile_get_ClientMinVer(This,pbstrMinVer) (This)->lpVtbl->get_ClientMinVer(This,pbstrMinVer)
#define IRTCProfile_get_ClientCurVer(This,pbstrCurVer) (This)->lpVtbl->get_ClientCurVer(This,pbstrCurVer)
#define IRTCProfile_get_ClientUpdateURI(This,pbstrUpdateURI) (This)->lpVtbl->get_ClientUpdateURI(This,pbstrUpdateURI)
#define IRTCProfile_get_ClientData(This,pbstrData) (This)->lpVtbl->get_ClientData(This,pbstrData)
#define IRTCProfile_get_UserURI(This,pbstrUserURI) (This)->lpVtbl->get_UserURI(This,pbstrUserURI)
#define IRTCProfile_get_UserName(This,pbstrUserName) (This)->lpVtbl->get_UserName(This,pbstrUserName)
#define IRTCProfile_get_UserAccount(This,pbstrUserAccount) (This)->lpVtbl->get_UserAccount(This,pbstrUserAccount)
#define IRTCProfile_SetCredentials(This,bstrUserURI,bstrUserAccount,bstrPassword) (This)->lpVtbl->SetCredentials(This,bstrUserURI,bstrUserAccount,bstrPassword)
#define IRTCProfile_get_SessionCapabilities(This,plSupportedSessions) (This)->lpVtbl->get_SessionCapabilities(This,plSupportedSessions)
#define IRTCProfile_get_State(This,penState) (This)->lpVtbl->get_State(This,penState)
#endif
#endif
HRESULT WINAPI IRTCProfile_get_Key_Proxy(IRTCProfile *This,BSTR *pbstrKey);
void __RPC_STUB IRTCProfile_get_Key_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_Name_Proxy(IRTCProfile *This,BSTR *pbstrName);
void __RPC_STUB IRTCProfile_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_XML_Proxy(IRTCProfile *This,BSTR *pbstrXML);
void __RPC_STUB IRTCProfile_get_XML_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ProviderName_Proxy(IRTCProfile *This,BSTR *pbstrName);
void __RPC_STUB IRTCProfile_get_ProviderName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ProviderURI_Proxy(IRTCProfile *This,RTC_PROVIDER_URI enURI,BSTR *pbstrURI);
void __RPC_STUB IRTCProfile_get_ProviderURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ProviderData_Proxy(IRTCProfile *This,BSTR *pbstrData);
void __RPC_STUB IRTCProfile_get_ProviderData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ClientName_Proxy(IRTCProfile *This,BSTR *pbstrName);
void __RPC_STUB IRTCProfile_get_ClientName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ClientBanner_Proxy(IRTCProfile *This,VARIANT_BOOL *pfBanner);
void __RPC_STUB IRTCProfile_get_ClientBanner_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ClientMinVer_Proxy(IRTCProfile *This,BSTR *pbstrMinVer);
void __RPC_STUB IRTCProfile_get_ClientMinVer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ClientCurVer_Proxy(IRTCProfile *This,BSTR *pbstrCurVer);
void __RPC_STUB IRTCProfile_get_ClientCurVer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ClientUpdateURI_Proxy(IRTCProfile *This,BSTR *pbstrUpdateURI);
void __RPC_STUB IRTCProfile_get_ClientUpdateURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_ClientData_Proxy(IRTCProfile *This,BSTR *pbstrData);
void __RPC_STUB IRTCProfile_get_ClientData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_UserURI_Proxy(IRTCProfile *This,BSTR *pbstrUserURI);
void __RPC_STUB IRTCProfile_get_UserURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_UserName_Proxy(IRTCProfile *This,BSTR *pbstrUserName);
void __RPC_STUB IRTCProfile_get_UserName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_UserAccount_Proxy(IRTCProfile *This,BSTR *pbstrUserAccount);
void __RPC_STUB IRTCProfile_get_UserAccount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_SetCredentials_Proxy(IRTCProfile *This,BSTR bstrUserURI,BSTR bstrUserAccount,BSTR bstrPassword);
void __RPC_STUB IRTCProfile_SetCredentials_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_SessionCapabilities_Proxy(IRTCProfile *This,__LONG32 *plSupportedSessions);
void __RPC_STUB IRTCProfile_get_SessionCapabilities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile_get_State_Proxy(IRTCProfile *This,RTC_REGISTRATION_STATE *penState);
void __RPC_STUB IRTCProfile_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCProfile2_INTERFACE_DEFINED__
#define __IRTCProfile2_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCProfile2;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCProfile2 : public IRTCProfile {
public:
virtual HRESULT WINAPI get_Realm(BSTR *pbstrRealm) = 0;
virtual HRESULT WINAPI put_Realm(BSTR bstrRealm) = 0;
virtual HRESULT WINAPI get_AllowedAuth(__LONG32 *plAllowedAuth) = 0;
virtual HRESULT WINAPI put_AllowedAuth(__LONG32 lAllowedAuth) = 0;
};
#else
typedef struct IRTCProfile2Vtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCProfile2 *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCProfile2 *This);
ULONG (WINAPI *Release)(IRTCProfile2 *This);
HRESULT (WINAPI *get_Key)(IRTCProfile2 *This,BSTR *pbstrKey);
HRESULT (WINAPI *get_Name)(IRTCProfile2 *This,BSTR *pbstrName);
HRESULT (WINAPI *get_XML)(IRTCProfile2 *This,BSTR *pbstrXML);
HRESULT (WINAPI *get_ProviderName)(IRTCProfile2 *This,BSTR *pbstrName);
HRESULT (WINAPI *get_ProviderURI)(IRTCProfile2 *This,RTC_PROVIDER_URI enURI,BSTR *pbstrURI);
HRESULT (WINAPI *get_ProviderData)(IRTCProfile2 *This,BSTR *pbstrData);
HRESULT (WINAPI *get_ClientName)(IRTCProfile2 *This,BSTR *pbstrName);
HRESULT (WINAPI *get_ClientBanner)(IRTCProfile2 *This,VARIANT_BOOL *pfBanner);
HRESULT (WINAPI *get_ClientMinVer)(IRTCProfile2 *This,BSTR *pbstrMinVer);
HRESULT (WINAPI *get_ClientCurVer)(IRTCProfile2 *This,BSTR *pbstrCurVer);
HRESULT (WINAPI *get_ClientUpdateURI)(IRTCProfile2 *This,BSTR *pbstrUpdateURI);
HRESULT (WINAPI *get_ClientData)(IRTCProfile2 *This,BSTR *pbstrData);
HRESULT (WINAPI *get_UserURI)(IRTCProfile2 *This,BSTR *pbstrUserURI);
HRESULT (WINAPI *get_UserName)(IRTCProfile2 *This,BSTR *pbstrUserName);
HRESULT (WINAPI *get_UserAccount)(IRTCProfile2 *This,BSTR *pbstrUserAccount);
HRESULT (WINAPI *SetCredentials)(IRTCProfile2 *This,BSTR bstrUserURI,BSTR bstrUserAccount,BSTR bstrPassword);
HRESULT (WINAPI *get_SessionCapabilities)(IRTCProfile2 *This,__LONG32 *plSupportedSessions);
HRESULT (WINAPI *get_State)(IRTCProfile2 *This,RTC_REGISTRATION_STATE *penState);
HRESULT (WINAPI *get_Realm)(IRTCProfile2 *This,BSTR *pbstrRealm);
HRESULT (WINAPI *put_Realm)(IRTCProfile2 *This,BSTR bstrRealm);
HRESULT (WINAPI *get_AllowedAuth)(IRTCProfile2 *This,__LONG32 *plAllowedAuth);
HRESULT (WINAPI *put_AllowedAuth)(IRTCProfile2 *This,__LONG32 lAllowedAuth);
END_INTERFACE
} IRTCProfile2Vtbl;
struct IRTCProfile2 {
CONST_VTBL struct IRTCProfile2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCProfile2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCProfile2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCProfile2_Release(This) (This)->lpVtbl->Release(This)
#define IRTCProfile2_get_Key(This,pbstrKey) (This)->lpVtbl->get_Key(This,pbstrKey)
#define IRTCProfile2_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName)
#define IRTCProfile2_get_XML(This,pbstrXML) (This)->lpVtbl->get_XML(This,pbstrXML)
#define IRTCProfile2_get_ProviderName(This,pbstrName) (This)->lpVtbl->get_ProviderName(This,pbstrName)
#define IRTCProfile2_get_ProviderURI(This,enURI,pbstrURI) (This)->lpVtbl->get_ProviderURI(This,enURI,pbstrURI)
#define IRTCProfile2_get_ProviderData(This,pbstrData) (This)->lpVtbl->get_ProviderData(This,pbstrData)
#define IRTCProfile2_get_ClientName(This,pbstrName) (This)->lpVtbl->get_ClientName(This,pbstrName)
#define IRTCProfile2_get_ClientBanner(This,pfBanner) (This)->lpVtbl->get_ClientBanner(This,pfBanner)
#define IRTCProfile2_get_ClientMinVer(This,pbstrMinVer) (This)->lpVtbl->get_ClientMinVer(This,pbstrMinVer)
#define IRTCProfile2_get_ClientCurVer(This,pbstrCurVer) (This)->lpVtbl->get_ClientCurVer(This,pbstrCurVer)
#define IRTCProfile2_get_ClientUpdateURI(This,pbstrUpdateURI) (This)->lpVtbl->get_ClientUpdateURI(This,pbstrUpdateURI)
#define IRTCProfile2_get_ClientData(This,pbstrData) (This)->lpVtbl->get_ClientData(This,pbstrData)
#define IRTCProfile2_get_UserURI(This,pbstrUserURI) (This)->lpVtbl->get_UserURI(This,pbstrUserURI)
#define IRTCProfile2_get_UserName(This,pbstrUserName) (This)->lpVtbl->get_UserName(This,pbstrUserName)
#define IRTCProfile2_get_UserAccount(This,pbstrUserAccount) (This)->lpVtbl->get_UserAccount(This,pbstrUserAccount)
#define IRTCProfile2_SetCredentials(This,bstrUserURI,bstrUserAccount,bstrPassword) (This)->lpVtbl->SetCredentials(This,bstrUserURI,bstrUserAccount,bstrPassword)
#define IRTCProfile2_get_SessionCapabilities(This,plSupportedSessions) (This)->lpVtbl->get_SessionCapabilities(This,plSupportedSessions)
#define IRTCProfile2_get_State(This,penState) (This)->lpVtbl->get_State(This,penState)
#define IRTCProfile2_get_Realm(This,pbstrRealm) (This)->lpVtbl->get_Realm(This,pbstrRealm)
#define IRTCProfile2_put_Realm(This,bstrRealm) (This)->lpVtbl->put_Realm(This,bstrRealm)
#define IRTCProfile2_get_AllowedAuth(This,plAllowedAuth) (This)->lpVtbl->get_AllowedAuth(This,plAllowedAuth)
#define IRTCProfile2_put_AllowedAuth(This,lAllowedAuth) (This)->lpVtbl->put_AllowedAuth(This,lAllowedAuth)
#endif
#endif
HRESULT WINAPI IRTCProfile2_get_Realm_Proxy(IRTCProfile2 *This,BSTR *pbstrRealm);
void __RPC_STUB IRTCProfile2_get_Realm_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile2_put_Realm_Proxy(IRTCProfile2 *This,BSTR bstrRealm);
void __RPC_STUB IRTCProfile2_put_Realm_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile2_get_AllowedAuth_Proxy(IRTCProfile2 *This,__LONG32 *plAllowedAuth);
void __RPC_STUB IRTCProfile2_get_AllowedAuth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCProfile2_put_AllowedAuth_Proxy(IRTCProfile2 *This,__LONG32 lAllowedAuth);
void __RPC_STUB IRTCProfile2_put_AllowedAuth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCSession_INTERFACE_DEFINED__
#define __IRTCSession_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCSession;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCSession : public IUnknown {
public:
virtual HRESULT WINAPI get_Client(IRTCClient **ppClient) = 0;
virtual HRESULT WINAPI get_State(RTC_SESSION_STATE *penState) = 0;
virtual HRESULT WINAPI get_Type(RTC_SESSION_TYPE *penType) = 0;
virtual HRESULT WINAPI get_Profile(IRTCProfile **ppProfile) = 0;
virtual HRESULT WINAPI get_Participants(IRTCCollection **ppCollection) = 0;
virtual HRESULT WINAPI Answer(void) = 0;
virtual HRESULT WINAPI Terminate(RTC_TERMINATE_REASON enReason) = 0;
virtual HRESULT WINAPI Redirect(RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags) = 0;
virtual HRESULT WINAPI AddParticipant(BSTR bstrAddress,BSTR bstrName,IRTCParticipant **ppParticipant) = 0;
virtual HRESULT WINAPI RemoveParticipant(IRTCParticipant *pParticipant) = 0;
virtual HRESULT WINAPI EnumerateParticipants(IRTCEnumParticipants **ppEnum) = 0;
virtual HRESULT WINAPI get_CanAddParticipants(VARIANT_BOOL *pfCanAdd) = 0;
virtual HRESULT WINAPI get_RedirectedUserURI(BSTR *pbstrUserURI) = 0;
virtual HRESULT WINAPI get_RedirectedUserName(BSTR *pbstrUserName) = 0;
virtual HRESULT WINAPI NextRedirectedUser(void) = 0;
virtual HRESULT WINAPI SendMessage(BSTR bstrMessageHeader,BSTR bstrMessage,LONG_PTR lCookie) = 0;
virtual HRESULT WINAPI SendMessageStatus(RTC_MESSAGING_USER_STATUS enUserStatus,LONG_PTR lCookie) = 0;
virtual HRESULT WINAPI AddStream(__LONG32 lMediaType,LONG_PTR lCookie) = 0;
virtual HRESULT WINAPI RemoveStream(__LONG32 lMediaType,LONG_PTR lCookie) = 0;
virtual HRESULT WINAPI put_EncryptionKey(__LONG32 lMediaType,BSTR EncryptionKey) = 0;
};
#else
typedef struct IRTCSessionVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCSession *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCSession *This);
ULONG (WINAPI *Release)(IRTCSession *This);
HRESULT (WINAPI *get_Client)(IRTCSession *This,IRTCClient **ppClient);
HRESULT (WINAPI *get_State)(IRTCSession *This,RTC_SESSION_STATE *penState);
HRESULT (WINAPI *get_Type)(IRTCSession *This,RTC_SESSION_TYPE *penType);
HRESULT (WINAPI *get_Profile)(IRTCSession *This,IRTCProfile **ppProfile);
HRESULT (WINAPI *get_Participants)(IRTCSession *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *Answer)(IRTCSession *This);
HRESULT (WINAPI *Terminate)(IRTCSession *This,RTC_TERMINATE_REASON enReason);
HRESULT (WINAPI *Redirect)(IRTCSession *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags);
HRESULT (WINAPI *AddParticipant)(IRTCSession *This,BSTR bstrAddress,BSTR bstrName,IRTCParticipant **ppParticipant);
HRESULT (WINAPI *RemoveParticipant)(IRTCSession *This,IRTCParticipant *pParticipant);
HRESULT (WINAPI *EnumerateParticipants)(IRTCSession *This,IRTCEnumParticipants **ppEnum);
HRESULT (WINAPI *get_CanAddParticipants)(IRTCSession *This,VARIANT_BOOL *pfCanAdd);
HRESULT (WINAPI *get_RedirectedUserURI)(IRTCSession *This,BSTR *pbstrUserURI);
HRESULT (WINAPI *get_RedirectedUserName)(IRTCSession *This,BSTR *pbstrUserName);
HRESULT (WINAPI *NextRedirectedUser)(IRTCSession *This);
HRESULT (WINAPI *SendMessage)(IRTCSession *This,BSTR bstrMessageHeader,BSTR bstrMessage,LONG_PTR lCookie);
HRESULT (WINAPI *SendMessageStatus)(IRTCSession *This,RTC_MESSAGING_USER_STATUS enUserStatus,LONG_PTR lCookie);
HRESULT (WINAPI *AddStream)(IRTCSession *This,__LONG32 lMediaType,LONG_PTR lCookie);
HRESULT (WINAPI *RemoveStream)(IRTCSession *This,__LONG32 lMediaType,LONG_PTR lCookie);
HRESULT (WINAPI *put_EncryptionKey)(IRTCSession *This,__LONG32 lMediaType,BSTR EncryptionKey);
END_INTERFACE
} IRTCSessionVtbl;
struct IRTCSession {
CONST_VTBL struct IRTCSessionVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCSession_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCSession_Release(This) (This)->lpVtbl->Release(This)
#define IRTCSession_get_Client(This,ppClient) (This)->lpVtbl->get_Client(This,ppClient)
#define IRTCSession_get_State(This,penState) (This)->lpVtbl->get_State(This,penState)
#define IRTCSession_get_Type(This,penType) (This)->lpVtbl->get_Type(This,penType)
#define IRTCSession_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile)
#define IRTCSession_get_Participants(This,ppCollection) (This)->lpVtbl->get_Participants(This,ppCollection)
#define IRTCSession_Answer(This) (This)->lpVtbl->Answer(This)
#define IRTCSession_Terminate(This,enReason) (This)->lpVtbl->Terminate(This,enReason)
#define IRTCSession_Redirect(This,enType,bstrLocalPhoneURI,pProfile,lFlags) (This)->lpVtbl->Redirect(This,enType,bstrLocalPhoneURI,pProfile,lFlags)
#define IRTCSession_AddParticipant(This,bstrAddress,bstrName,ppParticipant) (This)->lpVtbl->AddParticipant(This,bstrAddress,bstrName,ppParticipant)
#define IRTCSession_RemoveParticipant(This,pParticipant) (This)->lpVtbl->RemoveParticipant(This,pParticipant)
#define IRTCSession_EnumerateParticipants(This,ppEnum) (This)->lpVtbl->EnumerateParticipants(This,ppEnum)
#define IRTCSession_get_CanAddParticipants(This,pfCanAdd) (This)->lpVtbl->get_CanAddParticipants(This,pfCanAdd)
#define IRTCSession_get_RedirectedUserURI(This,pbstrUserURI) (This)->lpVtbl->get_RedirectedUserURI(This,pbstrUserURI)
#define IRTCSession_get_RedirectedUserName(This,pbstrUserName) (This)->lpVtbl->get_RedirectedUserName(This,pbstrUserName)
#define IRTCSession_NextRedirectedUser(This) (This)->lpVtbl->NextRedirectedUser(This)
#define IRTCSession_SendMessage(This,bstrMessageHeader,bstrMessage,lCookie) (This)->lpVtbl->SendMessage(This,bstrMessageHeader,bstrMessage,lCookie)
#define IRTCSession_SendMessageStatus(This,enUserStatus,lCookie) (This)->lpVtbl->SendMessageStatus(This,enUserStatus,lCookie)
#define IRTCSession_AddStream(This,lMediaType,lCookie) (This)->lpVtbl->AddStream(This,lMediaType,lCookie)
#define IRTCSession_RemoveStream(This,lMediaType,lCookie) (This)->lpVtbl->RemoveStream(This,lMediaType,lCookie)
#define IRTCSession_put_EncryptionKey(This,lMediaType,EncryptionKey) (This)->lpVtbl->put_EncryptionKey(This,lMediaType,EncryptionKey)
#endif
#endif
HRESULT WINAPI IRTCSession_get_Client_Proxy(IRTCSession *This,IRTCClient **ppClient);
void __RPC_STUB IRTCSession_get_Client_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_State_Proxy(IRTCSession *This,RTC_SESSION_STATE *penState);
void __RPC_STUB IRTCSession_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_Type_Proxy(IRTCSession *This,RTC_SESSION_TYPE *penType);
void __RPC_STUB IRTCSession_get_Type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_Profile_Proxy(IRTCSession *This,IRTCProfile **ppProfile);
void __RPC_STUB IRTCSession_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_Participants_Proxy(IRTCSession *This,IRTCCollection **ppCollection);
void __RPC_STUB IRTCSession_get_Participants_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_Answer_Proxy(IRTCSession *This);
void __RPC_STUB IRTCSession_Answer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_Terminate_Proxy(IRTCSession *This,RTC_TERMINATE_REASON enReason);
void __RPC_STUB IRTCSession_Terminate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_Redirect_Proxy(IRTCSession *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags);
void __RPC_STUB IRTCSession_Redirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_AddParticipant_Proxy(IRTCSession *This,BSTR bstrAddress,BSTR bstrName,IRTCParticipant **ppParticipant);
void __RPC_STUB IRTCSession_AddParticipant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_RemoveParticipant_Proxy(IRTCSession *This,IRTCParticipant *pParticipant);
void __RPC_STUB IRTCSession_RemoveParticipant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_EnumerateParticipants_Proxy(IRTCSession *This,IRTCEnumParticipants **ppEnum);
void __RPC_STUB IRTCSession_EnumerateParticipants_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_CanAddParticipants_Proxy(IRTCSession *This,VARIANT_BOOL *pfCanAdd);
void __RPC_STUB IRTCSession_get_CanAddParticipants_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_RedirectedUserURI_Proxy(IRTCSession *This,BSTR *pbstrUserURI);
void __RPC_STUB IRTCSession_get_RedirectedUserURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_get_RedirectedUserName_Proxy(IRTCSession *This,BSTR *pbstrUserName);
void __RPC_STUB IRTCSession_get_RedirectedUserName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_NextRedirectedUser_Proxy(IRTCSession *This);
void __RPC_STUB IRTCSession_NextRedirectedUser_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_SendMessage_Proxy(IRTCSession *This,BSTR bstrMessageHeader,BSTR bstrMessage,LONG_PTR lCookie);
void __RPC_STUB IRTCSession_SendMessage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_SendMessageStatus_Proxy(IRTCSession *This,RTC_MESSAGING_USER_STATUS enUserStatus,LONG_PTR lCookie);
void __RPC_STUB IRTCSession_SendMessageStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_AddStream_Proxy(IRTCSession *This,__LONG32 lMediaType,LONG_PTR lCookie);
void __RPC_STUB IRTCSession_AddStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_RemoveStream_Proxy(IRTCSession *This,__LONG32 lMediaType,LONG_PTR lCookie);
void __RPC_STUB IRTCSession_RemoveStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IRTCSession_put_EncryptionKey_Proxy(IRTCSession *This,__LONG32 lMediaType,BSTR EncryptionKey);
void __RPC_STUB IRTCSession_put_EncryptionKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#ifndef __IRTCSession2_INTERFACE_DEFINED__
#define __IRTCSession2_INTERFACE_DEFINED__
EXTERN_C const IID IID_IRTCSession2;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IRTCSession2 : public IRTCSession {
public:
virtual HRESULT WINAPI SendInfo(BSTR bstrInfoHeader,BSTR bstrInfo,LONG_PTR lCookie) = 0;
virtual HRESULT WINAPI put_PreferredSecurityLevel(RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL enSecurityLevel) = 0;
virtual HRESULT WINAPI get_PreferredSecurityLevel(RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel) = 0;
virtual HRESULT WINAPI IsSecurityEnabled(RTC_SECURITY_TYPE enSecurityType,VARIANT_BOOL *pfSecurityEnabled) = 0;
virtual HRESULT WINAPI AnswerWithSessionDescription(BSTR bstrContentType,BSTR bstrSessionDescription) = 0;
virtual HRESULT WINAPI ReInviteWithSessionDescription(BSTR bstrContentType,BSTR bstrSessionDescription,LONG_PTR lCookie) = 0;
};
#else
typedef struct IRTCSession2Vtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IRTCSession2 *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IRTCSession2 *This);
ULONG (WINAPI *Release)(IRTCSession2 *This);
HRESULT (WINAPI *get_Client)(IRTCSession2 *This,IRTCClient **ppClient);
HRESULT (WINAPI *get_State)(IRTCSession2 *This,RTC_SESSION_STATE *penState);
HRESULT (WINAPI *get_Type)(IRTCSession2 *This,RTC_SESSION_TYPE *penType);
HRESULT (WINAPI *get_Profile)(IRTCSession2 *This,IRTCProfile **ppProfile);
HRESULT (WINAPI *get_Participants)(IRTCSession2 *This,IRTCCollection **ppCollection);
HRESULT (WINAPI *Answer)(IRTCSession2 *This);
HRESULT (WINAPI *Terminate)(IRTCSession2 *This,RTC_TERMINATE_REASON enReason);
HRESULT (WINAPI *Redirect)(IRTCSession2 *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,__LONG32 lFlags);
HRESULT (WINAPI *AddParticipant)(IRTCSession2 *This,BSTR bstrAddress,BSTR bstrName,IRTCParticipant **ppParticipant);
HRESULT (WINAPI *RemoveParticipant)(IRTCSession2 *This,IRTCParticipant *pParticipant);
HRESULT (WINAPI *EnumerateParticipants)(IRTCSession2 *This,IRTCEnumParticipants **ppEnum);
HRESULT (WINAPI *get_CanAddParticipants)(IRTCSession2 *This,VARIANT_BOOL *pfCanAdd);
HRESULT (WINAPI *get_RedirectedUserURI)(IRTCSession2 *This,BSTR *pbstrUserURI);
HRESULT (WINAPI *get_RedirectedUserName)(IRTCSession2 *This,BSTR *pbstrUserName);
HRESULT (WINAPI *NextRedirectedUser)(IRTCSession2 *This);
HRESULT (WINAPI *SendMessage)(IRTCSession2 *This,BSTR bstrMessageHeader,BSTR bstrMessage,LONG_PTR lCookie);
HRESULT (WINAPI *SendMessageStatus)(IRTCSession2 *This,RTC_MESSAGING_USER_STATUS enUserStatus,LONG_PTR lCookie);
HRESULT (WINAPI *AddStream)(IRTCSession2 *This,__LONG32 lMediaType,LONG_PTR lCookie);
HRESULT (WINAPI *RemoveStream)(IRTCSession2 *This,__LONG32 lMediaType,LONG_PTR lCookie);
HRESULT (WINAPI *put_EncryptionKey)(IRTCSession2 *This,__LONG32 lMediaType,BSTR EncryptionKey);
HRESULT (WINAPI *SendInfo)(IRTCSession2 *This,BSTR bstrInfoHeader,BSTR bstrInfo,LONG_PTR lCookie);
HRESULT (WINAPI *put_PreferredSecurityLevel)(IRTCSession2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL enSecurityLevel);
HRESULT (WINAPI *get_PreferredSecurityLevel)(IRTCSession2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel);
HRESULT (WINAPI *IsSecurityEnabled)(IRTCSession2 *This,RTC_SECURITY_TYPE enSecurityType,VARIANT_BOOL *pfSecurityEnabled);
HRESULT (WINAPI *AnswerWithSessionDescription)(IRTCSession2 *This,BSTR bstrContentType,BSTR bstrSessionDescription);
HRESULT (WINAPI *ReInviteWithSessionDescription)(IRTCSession2 *This,BSTR bstrContentType,BSTR bstrSessionDescription,LONG_PTR lCookie);
END_INTERFACE
} IRTCSession2Vtbl;
struct IRTCSession2 {
CONST_VTBL struct IRTCSession2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IRTCSession2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRTCSession2_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRTCSession2_Release(This) (This)->lpVtbl->Release(This)
#define IRTCSession2_get_Client(This,ppClient) (This)->lpVtbl->get_Client(This,ppClient)
#define IRTCSession2_get_State(This,penState) (This)->lpVtbl->get_State(This,penState)
#define IRTCSession2_get_Type(This,penType) (This)->lpVtbl->get_Type(This,penType)
#define IRTCSession2_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile)
#define IRTCSession2_get_Participants(This,ppCollection) (This)->lpVtbl->get_Participants(This,ppCollection)
#define IRTCSession2_Answer(This) (This)->lpVtbl->Answer(This)
#define IRTCSession2_Terminate(This,enReason) (This)->lpVtbl->Terminate(This,enReason)
#define IRTCSession2_Redirect(This,enType,bstrLocalPhoneURI,pProfile,lFlags) (This)->lpVtbl->Redirect(This,enType,bstrLocalPhoneURI,pProfile,lFlags)
#define IRTCSession2_AddParticipant(This,bstrAddress,bstrName,ppParticipant) (This)->lpVtbl->AddParticipant(This,bstrAddress,bstrName,ppParticipant)
#define IRTCSession2_RemoveParticipant(This,pParticipant) (This)->lpVtbl->RemoveParticipant(This,pParticipant)
#define IRTCSession2_EnumerateParticipants(This,ppEnum) (This)->lpVtbl->EnumerateParticipants(This,ppEnum)
#define IRTCSession2_get_CanAddParticipants(This,pfCanAdd) (This)->lpVtbl->get_CanAddParticipants(This,pfCanAdd)
#define IRTCSession2_get_RedirectedUserURI(This,pbstrUserURI) (This)->lpVtbl->get_RedirectedUserURI(This,pbstrUserURI)
#define IRTCSession2_get_RedirectedUserName(This,pbstrUserName) (This)->lpVtbl->get_RedirectedUserName(This,pbstrUserName)
#define IRTCSession2_NextRedirectedUser(This) (This)->lpVtbl->NextRedirectedUser(This)
#define IRTCSession2_SendMessage(This,bstrMessageHeader,bstrMessage,lCookie) (This)->lpVtbl->SendMessage(This,bstrMessageHeader,bstrMessage,lCookie)
#define IRTCSession2_SendMessageStatus(This,enUserStatus,lCookie) (This)->lpVtbl->SendMessageStatus(This,enUserStatus,lCookie)
#define IRTCSession2_AddStream(This,lMediaType,lCookie) (This)->lpVtbl->AddStream(This,lMediaType,lCookie)
#define IRTCSession2_RemoveStream(This,lMediaType,lCookie) (This)->lpVtbl->RemoveStream(This,lMediaType,lCookie)
#define IRTCSession2_put_EncryptionKey(This,lMediaType,EncryptionKey) (This)->lpVtbl->put_EncryptionKey(This,lMediaType,EncryptionKey)
#define IRTCSession2_SendInfo(This,bstrInfoHeader,bstrInfo,lCookie) (This)->lpVtbl->SendInfo(This,bstrInfoHeader,bstrInfo,lCookie)
#define IRTCSession2_put_PreferredSecurityLevel(This,enSecurityType,enSecurityLevel) (This)->lpVtbl->put_PreferredSecurityLevel(This,enSecurityType,enSecurityLevel