Mercurial > games > semicongine
diff fuhtark_test/include/winapi/rtccore.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fuhtark_test/include/winapi/rtccore.h Wed Nov 26 21:36:48 2025 +0700 @@ -0,0 +1,4820 @@ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the w64 mingw-runtime package. + * No warranty is given; refer to the file DISCLAIMER 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(long lFilter) = 0; + virtual HRESULT WINAPI get_EventFilter(long *plFilter) = 0; + virtual HRESULT WINAPI SetPreferredMediaTypes(long lMediaTypes,VARIANT_BOOL fPersistent) = 0; + virtual HRESULT WINAPI get_PreferredMediaTypes(long *plMediaTypes) = 0; + virtual HRESULT WINAPI get_MediaCapabilities(long *plMediaTypes) = 0; + virtual HRESULT WINAPI CreateSession(RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,long 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,long lVolume) = 0; + virtual HRESULT WINAPI get_Volume(RTC_AUDIO_DEVICE enDevice,long *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,long lVolume) = 0; + virtual HRESULT WINAPI get_PreferredVolume(RTC_AUDIO_DEVICE enDevice,long *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(long *plMediaType) = 0; + virtual HRESULT WINAPI put_MaxBitrate(long lMaxBitrate) = 0; + virtual HRESULT WINAPI get_MaxBitrate(long *plMaxBitrate) = 0; + virtual HRESULT WINAPI put_TemporalSpatialTradeOff(long lValue) = 0; + virtual HRESULT WINAPI get_TemporalSpatialTradeOff(long *plValue) = 0; + virtual HRESULT WINAPI get_NetworkQuality(long *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,long lFilter); + HRESULT (WINAPI *get_EventFilter)(IRTCClient *This,long *plFilter); + HRESULT (WINAPI *SetPreferredMediaTypes)(IRTCClient *This,long lMediaTypes,VARIANT_BOOL fPersistent); + HRESULT (WINAPI *get_PreferredMediaTypes)(IRTCClient *This,long *plMediaTypes); + HRESULT (WINAPI *get_MediaCapabilities)(IRTCClient *This,long *plMediaTypes); + HRESULT (WINAPI *CreateSession)(IRTCClient *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,long 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,long lVolume); + HRESULT (WINAPI *get_Volume)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,long *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,long lVolume); + HRESULT (WINAPI *get_PreferredVolume)(IRTCClient *This,RTC_AUDIO_DEVICE enDevice,long *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,long *plMediaType); + HRESULT (WINAPI *put_MaxBitrate)(IRTCClient *This,long lMaxBitrate); + HRESULT (WINAPI *get_MaxBitrate)(IRTCClient *This,long *plMaxBitrate); + HRESULT (WINAPI *put_TemporalSpatialTradeOff)(IRTCClient *This,long lValue); + HRESULT (WINAPI *get_TemporalSpatialTradeOff)(IRTCClient *This,long *plValue); + HRESULT (WINAPI *get_NetworkQuality)(IRTCClient *This,long *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,long 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,long *plFilter); + void __RPC_STUB IRTCClient_get_EventFilter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCClient_SetPreferredMediaTypes_Proxy(IRTCClient *This,long 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,long *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,long *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,long 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,long 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,long *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,long 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,long *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,long *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,long 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,long *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,long 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,long *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,long *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(long *plVersion) = 0; + virtual HRESULT WINAPI put_ClientName(BSTR bstrClientName) = 0; + virtual HRESULT WINAPI put_ClientCurVer(BSTR bstrClientCurVer) = 0; + virtual HRESULT WINAPI InitializeEx(long lFlags) = 0; + virtual HRESULT WINAPI CreateSessionWithDescription(BSTR bstrContentType,BSTR bstrSessionDescription,IRTCProfile *pProfile,long 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(long lTransport,RTC_LISTEN_MODE enListenMode) = 0; + virtual HRESULT WINAPI get_AllowedPorts(long 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,long lFilter); + HRESULT (WINAPI *get_EventFilter)(IRTCClient2 *This,long *plFilter); + HRESULT (WINAPI *SetPreferredMediaTypes)(IRTCClient2 *This,long lMediaTypes,VARIANT_BOOL fPersistent); + HRESULT (WINAPI *get_PreferredMediaTypes)(IRTCClient2 *This,long *plMediaTypes); + HRESULT (WINAPI *get_MediaCapabilities)(IRTCClient2 *This,long *plMediaTypes); + HRESULT (WINAPI *CreateSession)(IRTCClient2 *This,RTC_SESSION_TYPE enType,BSTR bstrLocalPhoneURI,IRTCProfile *pProfile,long 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,long lVolume); + HRESULT (WINAPI *get_Volume)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,long *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,long lVolume); + HRESULT (WINAPI *get_PreferredVolume)(IRTCClient2 *This,RTC_AUDIO_DEVICE enDevice,long *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,long *plMediaType); + HRESULT (WINAPI *put_MaxBitrate)(IRTCClient2 *This,long lMaxBitrate); + HRESULT (WINAPI *get_MaxBitrate)(IRTCClient2 *This,long *plMaxBitrate); + HRESULT (WINAPI *put_TemporalSpatialTradeOff)(IRTCClient2 *This,long lValue); + HRESULT (WINAPI *get_TemporalSpatialTradeOff)(IRTCClient2 *This,long *plValue); + HRESULT (WINAPI *get_NetworkQuality)(IRTCClient2 *This,long *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,long *plVersion); + HRESULT (WINAPI *put_ClientName)(IRTCClient2 *This,BSTR bstrClientName); + HRESULT (WINAPI *put_ClientCurVer)(IRTCClient2 *This,BSTR bstrClientCurVer); + HRESULT (WINAPI *InitializeEx)(IRTCClient2 *This,long lFlags); + HRESULT (WINAPI *CreateSessionWithDescription)(IRTCClient2 *This,BSTR bstrContentType,BSTR bstrSessionDescription,IRTCProfile *pProfile,long 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,long lTransport,RTC_LISTEN_MODE enListenMode); + HRESULT (WINAPI *get_AllowedPorts)(IRTCClient2 *This,long 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,long *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,long 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,long 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,long 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,long 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,long 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,long 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,long 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,long lFlags) = 0; + virtual HRESULT WINAPI DisablePresence(void) = 0; + virtual HRESULT WINAPI AddGroup(BSTR bstrGroupName,BSTR bstrData,IRTCProfile *pProfile,long 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,long 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,long 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,long 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,long lFlags); + HRESULT (WINAPI *DisablePresence)(IRTCClientPresence2 *This); + HRESULT (WINAPI *AddGroup)(IRTCClientPresence2 *This,BSTR bstrGroupName,BSTR bstrData,IRTCProfile *pProfile,long 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,long 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,long 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,long 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,long 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,long 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,long 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,long 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,long lTransport,LONG_PTR lCookie) = 0; + virtual HRESULT WINAPI get_SessionCapabilities(long *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,long 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,long lTransport,LONG_PTR lCookie); + HRESULT (WINAPI *get_SessionCapabilities)(IRTCClientProvisioning *This,long *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,long 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,long 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,long *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,long lRegisterFlags,long 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,long 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,long lTransport,LONG_PTR lCookie); + HRESULT (WINAPI *get_SessionCapabilities)(IRTCClientProvisioning2 *This,long *plSupportedSessions); + HRESULT (WINAPI *EnableProfileEx)(IRTCClientProvisioning2 *This,IRTCProfile *pProfile,long lRegisterFlags,long 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,long lRegisterFlags,long 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(long *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,long *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,long *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(long *plAllowedAuth) = 0; + virtual HRESULT WINAPI put_AllowedAuth(long 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,long *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,long *plAllowedAuth); + HRESULT (WINAPI *put_AllowedAuth)(IRTCProfile2 *This,long 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,long *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,long 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,long 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(long lMediaType,LONG_PTR lCookie) = 0; + virtual HRESULT WINAPI RemoveStream(long lMediaType,LONG_PTR lCookie) = 0; + virtual HRESULT WINAPI put_EncryptionKey(long 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,long 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,long lMediaType,LONG_PTR lCookie); + HRESULT (WINAPI *RemoveStream)(IRTCSession *This,long lMediaType,LONG_PTR lCookie); + HRESULT (WINAPI *put_EncryptionKey)(IRTCSession *This,long 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,long 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,long 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,long 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,long 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,long 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,long lMediaType,LONG_PTR lCookie); + HRESULT (WINAPI *RemoveStream)(IRTCSession2 *This,long lMediaType,LONG_PTR lCookie); + HRESULT (WINAPI *put_EncryptionKey)(IRTCSession2 *This,long 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) +#define IRTCSession2_get_PreferredSecurityLevel(This,enSecurityType,penSecurityLevel) (This)->lpVtbl->get_PreferredSecurityLevel(This,enSecurityType,penSecurityLevel) +#define IRTCSession2_IsSecurityEnabled(This,enSecurityType,pfSecurityEnabled) (This)->lpVtbl->IsSecurityEnabled(This,enSecurityType,pfSecurityEnabled) +#define IRTCSession2_AnswerWithSessionDescription(This,bstrContentType,bstrSessionDescription) (This)->lpVtbl->AnswerWithSessionDescription(This,bstrContentType,bstrSessionDescription) +#define IRTCSession2_ReInviteWithSessionDescription(This,bstrContentType,bstrSessionDescription,lCookie) (This)->lpVtbl->ReInviteWithSessionDescription(This,bstrContentType,bstrSessionDescription,lCookie) +#endif +#endif + HRESULT WINAPI IRTCSession2_SendInfo_Proxy(IRTCSession2 *This,BSTR bstrInfoHeader,BSTR bstrInfo,LONG_PTR lCookie); + void __RPC_STUB IRTCSession2_SendInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSession2_put_PreferredSecurityLevel_Proxy(IRTCSession2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL enSecurityLevel); + void __RPC_STUB IRTCSession2_put_PreferredSecurityLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSession2_get_PreferredSecurityLevel_Proxy(IRTCSession2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel); + void __RPC_STUB IRTCSession2_get_PreferredSecurityLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSession2_IsSecurityEnabled_Proxy(IRTCSession2 *This,RTC_SECURITY_TYPE enSecurityType,VARIANT_BOOL *pfSecurityEnabled); + void __RPC_STUB IRTCSession2_IsSecurityEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSession2_AnswerWithSessionDescription_Proxy(IRTCSession2 *This,BSTR bstrContentType,BSTR bstrSessionDescription); + void __RPC_STUB IRTCSession2_AnswerWithSessionDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSession2_ReInviteWithSessionDescription_Proxy(IRTCSession2 *This,BSTR bstrContentType,BSTR bstrSessionDescription,LONG_PTR lCookie); + void __RPC_STUB IRTCSession2_ReInviteWithSessionDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionCallControl_INTERFACE_DEFINED__ +#define __IRTCSessionCallControl_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionCallControl; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionCallControl : public IUnknown { + public: + virtual HRESULT WINAPI Hold(LONG_PTR lCookie) = 0; + virtual HRESULT WINAPI UnHold(LONG_PTR lCookie) = 0; + virtual HRESULT WINAPI Forward(BSTR bstrForwardToURI) = 0; + virtual HRESULT WINAPI Refer(BSTR bstrReferToURI,BSTR bstrReferCookie) = 0; + virtual HRESULT WINAPI put_ReferredByURI(BSTR bstrReferredByURI) = 0; + virtual HRESULT WINAPI get_ReferredByURI(BSTR *pbstrReferredByURI) = 0; + virtual HRESULT WINAPI put_ReferCookie(BSTR bstrReferCookie) = 0; + virtual HRESULT WINAPI get_ReferCookie(BSTR *pbstrReferCookie) = 0; + virtual HRESULT WINAPI get_IsReferred(VARIANT_BOOL *pfIsReferred) = 0; + }; +#else + typedef struct IRTCSessionCallControlVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionCallControl *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionCallControl *This); + ULONG (WINAPI *Release)(IRTCSessionCallControl *This); + HRESULT (WINAPI *Hold)(IRTCSessionCallControl *This,LONG_PTR lCookie); + HRESULT (WINAPI *UnHold)(IRTCSessionCallControl *This,LONG_PTR lCookie); + HRESULT (WINAPI *Forward)(IRTCSessionCallControl *This,BSTR bstrForwardToURI); + HRESULT (WINAPI *Refer)(IRTCSessionCallControl *This,BSTR bstrReferToURI,BSTR bstrReferCookie); + HRESULT (WINAPI *put_ReferredByURI)(IRTCSessionCallControl *This,BSTR bstrReferredByURI); + HRESULT (WINAPI *get_ReferredByURI)(IRTCSessionCallControl *This,BSTR *pbstrReferredByURI); + HRESULT (WINAPI *put_ReferCookie)(IRTCSessionCallControl *This,BSTR bstrReferCookie); + HRESULT (WINAPI *get_ReferCookie)(IRTCSessionCallControl *This,BSTR *pbstrReferCookie); + HRESULT (WINAPI *get_IsReferred)(IRTCSessionCallControl *This,VARIANT_BOOL *pfIsReferred); + END_INTERFACE + } IRTCSessionCallControlVtbl; + struct IRTCSessionCallControl { + CONST_VTBL struct IRTCSessionCallControlVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionCallControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionCallControl_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionCallControl_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionCallControl_Hold(This,lCookie) (This)->lpVtbl->Hold(This,lCookie) +#define IRTCSessionCallControl_UnHold(This,lCookie) (This)->lpVtbl->UnHold(This,lCookie) +#define IRTCSessionCallControl_Forward(This,bstrForwardToURI) (This)->lpVtbl->Forward(This,bstrForwardToURI) +#define IRTCSessionCallControl_Refer(This,bstrReferToURI,bstrReferCookie) (This)->lpVtbl->Refer(This,bstrReferToURI,bstrReferCookie) +#define IRTCSessionCallControl_put_ReferredByURI(This,bstrReferredByURI) (This)->lpVtbl->put_ReferredByURI(This,bstrReferredByURI) +#define IRTCSessionCallControl_get_ReferredByURI(This,pbstrReferredByURI) (This)->lpVtbl->get_ReferredByURI(This,pbstrReferredByURI) +#define IRTCSessionCallControl_put_ReferCookie(This,bstrReferCookie) (This)->lpVtbl->put_ReferCookie(This,bstrReferCookie) +#define IRTCSessionCallControl_get_ReferCookie(This,pbstrReferCookie) (This)->lpVtbl->get_ReferCookie(This,pbstrReferCookie) +#define IRTCSessionCallControl_get_IsReferred(This,pfIsReferred) (This)->lpVtbl->get_IsReferred(This,pfIsReferred) +#endif +#endif + HRESULT WINAPI IRTCSessionCallControl_Hold_Proxy(IRTCSessionCallControl *This,LONG_PTR lCookie); + void __RPC_STUB IRTCSessionCallControl_Hold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_UnHold_Proxy(IRTCSessionCallControl *This,LONG_PTR lCookie); + void __RPC_STUB IRTCSessionCallControl_UnHold_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_Forward_Proxy(IRTCSessionCallControl *This,BSTR bstrForwardToURI); + void __RPC_STUB IRTCSessionCallControl_Forward_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_Refer_Proxy(IRTCSessionCallControl *This,BSTR bstrReferToURI,BSTR bstrReferCookie); + void __RPC_STUB IRTCSessionCallControl_Refer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_put_ReferredByURI_Proxy(IRTCSessionCallControl *This,BSTR bstrReferredByURI); + void __RPC_STUB IRTCSessionCallControl_put_ReferredByURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_get_ReferredByURI_Proxy(IRTCSessionCallControl *This,BSTR *pbstrReferredByURI); + void __RPC_STUB IRTCSessionCallControl_get_ReferredByURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_put_ReferCookie_Proxy(IRTCSessionCallControl *This,BSTR bstrReferCookie); + void __RPC_STUB IRTCSessionCallControl_put_ReferCookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_get_ReferCookie_Proxy(IRTCSessionCallControl *This,BSTR *pbstrReferCookie); + void __RPC_STUB IRTCSessionCallControl_get_ReferCookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionCallControl_get_IsReferred_Proxy(IRTCSessionCallControl *This,VARIANT_BOOL *pfIsReferred); + void __RPC_STUB IRTCSessionCallControl_get_IsReferred_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCParticipant_INTERFACE_DEFINED__ +#define __IRTCParticipant_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCParticipant; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCParticipant : public IUnknown { + public: + virtual HRESULT WINAPI get_UserURI(BSTR *pbstrUserURI) = 0; + virtual HRESULT WINAPI get_Name(BSTR *pbstrName) = 0; + virtual HRESULT WINAPI get_Removable(VARIANT_BOOL *pfRemovable) = 0; + virtual HRESULT WINAPI get_State(RTC_PARTICIPANT_STATE *penState) = 0; + virtual HRESULT WINAPI get_Session(IRTCSession **ppSession) = 0; + }; +#else + typedef struct IRTCParticipantVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCParticipant *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCParticipant *This); + ULONG (WINAPI *Release)(IRTCParticipant *This); + HRESULT (WINAPI *get_UserURI)(IRTCParticipant *This,BSTR *pbstrUserURI); + HRESULT (WINAPI *get_Name)(IRTCParticipant *This,BSTR *pbstrName); + HRESULT (WINAPI *get_Removable)(IRTCParticipant *This,VARIANT_BOOL *pfRemovable); + HRESULT (WINAPI *get_State)(IRTCParticipant *This,RTC_PARTICIPANT_STATE *penState); + HRESULT (WINAPI *get_Session)(IRTCParticipant *This,IRTCSession **ppSession); + END_INTERFACE + } IRTCParticipantVtbl; + struct IRTCParticipant { + CONST_VTBL struct IRTCParticipantVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCParticipant_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCParticipant_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCParticipant_Release(This) (This)->lpVtbl->Release(This) +#define IRTCParticipant_get_UserURI(This,pbstrUserURI) (This)->lpVtbl->get_UserURI(This,pbstrUserURI) +#define IRTCParticipant_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName) +#define IRTCParticipant_get_Removable(This,pfRemovable) (This)->lpVtbl->get_Removable(This,pfRemovable) +#define IRTCParticipant_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCParticipant_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#endif +#endif + HRESULT WINAPI IRTCParticipant_get_UserURI_Proxy(IRTCParticipant *This,BSTR *pbstrUserURI); + void __RPC_STUB IRTCParticipant_get_UserURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCParticipant_get_Name_Proxy(IRTCParticipant *This,BSTR *pbstrName); + void __RPC_STUB IRTCParticipant_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCParticipant_get_Removable_Proxy(IRTCParticipant *This,VARIANT_BOOL *pfRemovable); + void __RPC_STUB IRTCParticipant_get_Removable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCParticipant_get_State_Proxy(IRTCParticipant *This,RTC_PARTICIPANT_STATE *penState); + void __RPC_STUB IRTCParticipant_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCParticipant_get_Session_Proxy(IRTCParticipant *This,IRTCSession **ppSession); + void __RPC_STUB IRTCParticipant_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif +#ifndef __IRTCRoamingEvent_INTERFACE_DEFINED__ +#define __IRTCRoamingEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCRoamingEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCRoamingEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_EventType(RTC_ROAMING_EVENT_TYPE *pEventType) = 0; + virtual HRESULT WINAPI get_Profile(IRTCProfile2 **ppProfile) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + }; +#else + typedef struct IRTCRoamingEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCRoamingEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCRoamingEvent *This); + ULONG (WINAPI *Release)(IRTCRoamingEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCRoamingEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCRoamingEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCRoamingEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCRoamingEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_EventType)(IRTCRoamingEvent *This,RTC_ROAMING_EVENT_TYPE *pEventType); + HRESULT (WINAPI *get_Profile)(IRTCRoamingEvent *This,IRTCProfile2 **ppProfile); + HRESULT (WINAPI *get_StatusCode)(IRTCRoamingEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCRoamingEvent *This,BSTR *pbstrStatusText); + END_INTERFACE + } IRTCRoamingEventVtbl; + struct IRTCRoamingEvent { + CONST_VTBL struct IRTCRoamingEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCRoamingEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCRoamingEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCRoamingEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCRoamingEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCRoamingEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCRoamingEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCRoamingEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCRoamingEvent_get_EventType(This,pEventType) (This)->lpVtbl->get_EventType(This,pEventType) +#define IRTCRoamingEvent_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCRoamingEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCRoamingEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#endif +#endif + HRESULT WINAPI IRTCRoamingEvent_get_EventType_Proxy(IRTCRoamingEvent *This,RTC_ROAMING_EVENT_TYPE *pEventType); + void __RPC_STUB IRTCRoamingEvent_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCRoamingEvent_get_Profile_Proxy(IRTCRoamingEvent *This,IRTCProfile2 **ppProfile); + void __RPC_STUB IRTCRoamingEvent_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCRoamingEvent_get_StatusCode_Proxy(IRTCRoamingEvent *This,long *plStatusCode); + void __RPC_STUB IRTCRoamingEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCRoamingEvent_get_StatusText_Proxy(IRTCRoamingEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCRoamingEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCProfileEvent_INTERFACE_DEFINED__ +#define __IRTCProfileEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCProfileEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCProfileEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Profile(IRTCProfile **ppProfile) = 0; + virtual HRESULT WINAPI get_Cookie(LONG_PTR *plCookie) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + }; +#else + typedef struct IRTCProfileEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCProfileEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCProfileEvent *This); + ULONG (WINAPI *Release)(IRTCProfileEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCProfileEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCProfileEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCProfileEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCProfileEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Profile)(IRTCProfileEvent *This,IRTCProfile **ppProfile); + HRESULT (WINAPI *get_Cookie)(IRTCProfileEvent *This,LONG_PTR *plCookie); + HRESULT (WINAPI *get_StatusCode)(IRTCProfileEvent *This,long *plStatusCode); + END_INTERFACE + } IRTCProfileEventVtbl; + struct IRTCProfileEvent { + CONST_VTBL struct IRTCProfileEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCProfileEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCProfileEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCProfileEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCProfileEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCProfileEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCProfileEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCProfileEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCProfileEvent_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCProfileEvent_get_Cookie(This,plCookie) (This)->lpVtbl->get_Cookie(This,plCookie) +#define IRTCProfileEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#endif +#endif + HRESULT WINAPI IRTCProfileEvent_get_Profile_Proxy(IRTCProfileEvent *This,IRTCProfile **ppProfile); + void __RPC_STUB IRTCProfileEvent_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCProfileEvent_get_Cookie_Proxy(IRTCProfileEvent *This,LONG_PTR *plCookie); + void __RPC_STUB IRTCProfileEvent_get_Cookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCProfileEvent_get_StatusCode_Proxy(IRTCProfileEvent *This,long *plStatusCode); + void __RPC_STUB IRTCProfileEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCProfileEvent2_INTERFACE_DEFINED__ +#define __IRTCProfileEvent2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCProfileEvent2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCProfileEvent2 : public IRTCProfileEvent { + public: + virtual HRESULT WINAPI get_EventType(RTC_PROFILE_EVENT_TYPE *pEventType) = 0; + }; +#else + typedef struct IRTCProfileEvent2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCProfileEvent2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCProfileEvent2 *This); + ULONG (WINAPI *Release)(IRTCProfileEvent2 *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCProfileEvent2 *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCProfileEvent2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCProfileEvent2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCProfileEvent2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Profile)(IRTCProfileEvent2 *This,IRTCProfile **ppProfile); + HRESULT (WINAPI *get_Cookie)(IRTCProfileEvent2 *This,LONG_PTR *plCookie); + HRESULT (WINAPI *get_StatusCode)(IRTCProfileEvent2 *This,long *plStatusCode); + HRESULT (WINAPI *get_EventType)(IRTCProfileEvent2 *This,RTC_PROFILE_EVENT_TYPE *pEventType); + END_INTERFACE + } IRTCProfileEvent2Vtbl; + struct IRTCProfileEvent2 { + CONST_VTBL struct IRTCProfileEvent2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCProfileEvent2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCProfileEvent2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCProfileEvent2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCProfileEvent2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCProfileEvent2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCProfileEvent2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCProfileEvent2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCProfileEvent2_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCProfileEvent2_get_Cookie(This,plCookie) (This)->lpVtbl->get_Cookie(This,plCookie) +#define IRTCProfileEvent2_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCProfileEvent2_get_EventType(This,pEventType) (This)->lpVtbl->get_EventType(This,pEventType) +#endif +#endif + HRESULT WINAPI IRTCProfileEvent2_get_EventType_Proxy(IRTCProfileEvent2 *This,RTC_PROFILE_EVENT_TYPE *pEventType); + void __RPC_STUB IRTCProfileEvent2_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCClientEvent_INTERFACE_DEFINED__ +#define __IRTCClientEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCClientEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCClientEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_EventType(RTC_CLIENT_EVENT_TYPE *penEventType) = 0; + virtual HRESULT WINAPI get_Client(IRTCClient **ppClient) = 0; + }; +#else + typedef struct IRTCClientEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCClientEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCClientEvent *This); + ULONG (WINAPI *Release)(IRTCClientEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCClientEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCClientEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCClientEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCClientEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_EventType)(IRTCClientEvent *This,RTC_CLIENT_EVENT_TYPE *penEventType); + HRESULT (WINAPI *get_Client)(IRTCClientEvent *This,IRTCClient **ppClient); + END_INTERFACE + } IRTCClientEventVtbl; + struct IRTCClientEvent { + CONST_VTBL struct IRTCClientEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCClientEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCClientEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCClientEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCClientEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCClientEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCClientEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCClientEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCClientEvent_get_EventType(This,penEventType) (This)->lpVtbl->get_EventType(This,penEventType) +#define IRTCClientEvent_get_Client(This,ppClient) (This)->lpVtbl->get_Client(This,ppClient) +#endif +#endif + HRESULT WINAPI IRTCClientEvent_get_EventType_Proxy(IRTCClientEvent *This,RTC_CLIENT_EVENT_TYPE *penEventType); + void __RPC_STUB IRTCClientEvent_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCClientEvent_get_Client_Proxy(IRTCClientEvent *This,IRTCClient **ppClient); + void __RPC_STUB IRTCClientEvent_get_Client_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCRegistrationStateChangeEvent_INTERFACE_DEFINED__ +#define __IRTCRegistrationStateChangeEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCRegistrationStateChangeEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCRegistrationStateChangeEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Profile(IRTCProfile **ppProfile) = 0; + virtual HRESULT WINAPI get_State(RTC_REGISTRATION_STATE *penState) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + }; +#else + typedef struct IRTCRegistrationStateChangeEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCRegistrationStateChangeEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCRegistrationStateChangeEvent *This); + ULONG (WINAPI *Release)(IRTCRegistrationStateChangeEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCRegistrationStateChangeEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCRegistrationStateChangeEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCRegistrationStateChangeEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCRegistrationStateChangeEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Profile)(IRTCRegistrationStateChangeEvent *This,IRTCProfile **ppProfile); + HRESULT (WINAPI *get_State)(IRTCRegistrationStateChangeEvent *This,RTC_REGISTRATION_STATE *penState); + HRESULT (WINAPI *get_StatusCode)(IRTCRegistrationStateChangeEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCRegistrationStateChangeEvent *This,BSTR *pbstrStatusText); + END_INTERFACE + } IRTCRegistrationStateChangeEventVtbl; + struct IRTCRegistrationStateChangeEvent { + CONST_VTBL struct IRTCRegistrationStateChangeEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCRegistrationStateChangeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCRegistrationStateChangeEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCRegistrationStateChangeEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCRegistrationStateChangeEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCRegistrationStateChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCRegistrationStateChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCRegistrationStateChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCRegistrationStateChangeEvent_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCRegistrationStateChangeEvent_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCRegistrationStateChangeEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCRegistrationStateChangeEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#endif +#endif + HRESULT WINAPI IRTCRegistrationStateChangeEvent_get_Profile_Proxy(IRTCRegistrationStateChangeEvent *This,IRTCProfile **ppProfile); + void __RPC_STUB IRTCRegistrationStateChangeEvent_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCRegistrationStateChangeEvent_get_State_Proxy(IRTCRegistrationStateChangeEvent *This,RTC_REGISTRATION_STATE *penState); + void __RPC_STUB IRTCRegistrationStateChangeEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCRegistrationStateChangeEvent_get_StatusCode_Proxy(IRTCRegistrationStateChangeEvent *This,long *plStatusCode); + void __RPC_STUB IRTCRegistrationStateChangeEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCRegistrationStateChangeEvent_get_StatusText_Proxy(IRTCRegistrationStateChangeEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCRegistrationStateChangeEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionStateChangeEvent_INTERFACE_DEFINED__ +#define __IRTCSessionStateChangeEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionStateChangeEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionStateChangeEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession **ppSession) = 0; + virtual HRESULT WINAPI get_State(RTC_SESSION_STATE *penState) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + }; +#else + typedef struct IRTCSessionStateChangeEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionStateChangeEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionStateChangeEvent *This); + ULONG (WINAPI *Release)(IRTCSessionStateChangeEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCSessionStateChangeEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCSessionStateChangeEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCSessionStateChangeEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCSessionStateChangeEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCSessionStateChangeEvent *This,IRTCSession **ppSession); + HRESULT (WINAPI *get_State)(IRTCSessionStateChangeEvent *This,RTC_SESSION_STATE *penState); + HRESULT (WINAPI *get_StatusCode)(IRTCSessionStateChangeEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCSessionStateChangeEvent *This,BSTR *pbstrStatusText); + END_INTERFACE + } IRTCSessionStateChangeEventVtbl; + struct IRTCSessionStateChangeEvent { + CONST_VTBL struct IRTCSessionStateChangeEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionStateChangeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionStateChangeEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionStateChangeEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionStateChangeEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCSessionStateChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCSessionStateChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCSessionStateChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCSessionStateChangeEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCSessionStateChangeEvent_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCSessionStateChangeEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCSessionStateChangeEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#endif +#endif + HRESULT WINAPI IRTCSessionStateChangeEvent_get_Session_Proxy(IRTCSessionStateChangeEvent *This,IRTCSession **ppSession); + void __RPC_STUB IRTCSessionStateChangeEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionStateChangeEvent_get_State_Proxy(IRTCSessionStateChangeEvent *This,RTC_SESSION_STATE *penState); + void __RPC_STUB IRTCSessionStateChangeEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionStateChangeEvent_get_StatusCode_Proxy(IRTCSessionStateChangeEvent *This,long *plStatusCode); + void __RPC_STUB IRTCSessionStateChangeEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionStateChangeEvent_get_StatusText_Proxy(IRTCSessionStateChangeEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCSessionStateChangeEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionStateChangeEvent2_INTERFACE_DEFINED__ +#define __IRTCSessionStateChangeEvent2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionStateChangeEvent2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionStateChangeEvent2 : public IRTCSessionStateChangeEvent { + public: + virtual HRESULT WINAPI get_MediaTypes(long *pMediaTypes) = 0; + virtual HRESULT WINAPI get_RemotePreferredSecurityLevel(RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel) = 0; + virtual HRESULT WINAPI get_IsForked(VARIANT_BOOL *pfIsForked) = 0; + virtual HRESULT WINAPI GetRemoteSessionDescription(BSTR *pbstrContentType,BSTR *pbstrSessionDescription) = 0; + }; +#else + typedef struct IRTCSessionStateChangeEvent2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionStateChangeEvent2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionStateChangeEvent2 *This); + ULONG (WINAPI *Release)(IRTCSessionStateChangeEvent2 *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCSessionStateChangeEvent2 *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCSessionStateChangeEvent2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCSessionStateChangeEvent2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCSessionStateChangeEvent2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCSessionStateChangeEvent2 *This,IRTCSession **ppSession); + HRESULT (WINAPI *get_State)(IRTCSessionStateChangeEvent2 *This,RTC_SESSION_STATE *penState); + HRESULT (WINAPI *get_StatusCode)(IRTCSessionStateChangeEvent2 *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCSessionStateChangeEvent2 *This,BSTR *pbstrStatusText); + HRESULT (WINAPI *get_MediaTypes)(IRTCSessionStateChangeEvent2 *This,long *pMediaTypes); + HRESULT (WINAPI *get_RemotePreferredSecurityLevel)(IRTCSessionStateChangeEvent2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel); + HRESULT (WINAPI *get_IsForked)(IRTCSessionStateChangeEvent2 *This,VARIANT_BOOL *pfIsForked); + HRESULT (WINAPI *GetRemoteSessionDescription)(IRTCSessionStateChangeEvent2 *This,BSTR *pbstrContentType,BSTR *pbstrSessionDescription); + END_INTERFACE + } IRTCSessionStateChangeEvent2Vtbl; + struct IRTCSessionStateChangeEvent2 { + CONST_VTBL struct IRTCSessionStateChangeEvent2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionStateChangeEvent2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionStateChangeEvent2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionStateChangeEvent2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionStateChangeEvent2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCSessionStateChangeEvent2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCSessionStateChangeEvent2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCSessionStateChangeEvent2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCSessionStateChangeEvent2_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCSessionStateChangeEvent2_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCSessionStateChangeEvent2_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCSessionStateChangeEvent2_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#define IRTCSessionStateChangeEvent2_get_MediaTypes(This,pMediaTypes) (This)->lpVtbl->get_MediaTypes(This,pMediaTypes) +#define IRTCSessionStateChangeEvent2_get_RemotePreferredSecurityLevel(This,enSecurityType,penSecurityLevel) (This)->lpVtbl->get_RemotePreferredSecurityLevel(This,enSecurityType,penSecurityLevel) +#define IRTCSessionStateChangeEvent2_get_IsForked(This,pfIsForked) (This)->lpVtbl->get_IsForked(This,pfIsForked) +#define IRTCSessionStateChangeEvent2_GetRemoteSessionDescription(This,pbstrContentType,pbstrSessionDescription) (This)->lpVtbl->GetRemoteSessionDescription(This,pbstrContentType,pbstrSessionDescription) +#endif +#endif + HRESULT WINAPI IRTCSessionStateChangeEvent2_get_MediaTypes_Proxy(IRTCSessionStateChangeEvent2 *This,long *pMediaTypes); + void __RPC_STUB IRTCSessionStateChangeEvent2_get_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionStateChangeEvent2_get_RemotePreferredSecurityLevel_Proxy(IRTCSessionStateChangeEvent2 *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel); + void __RPC_STUB IRTCSessionStateChangeEvent2_get_RemotePreferredSecurityLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionStateChangeEvent2_get_IsForked_Proxy(IRTCSessionStateChangeEvent2 *This,VARIANT_BOOL *pfIsForked); + void __RPC_STUB IRTCSessionStateChangeEvent2_get_IsForked_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionStateChangeEvent2_GetRemoteSessionDescription_Proxy(IRTCSessionStateChangeEvent2 *This,BSTR *pbstrContentType,BSTR *pbstrSessionDescription); + void __RPC_STUB IRTCSessionStateChangeEvent2_GetRemoteSessionDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionOperationCompleteEvent_INTERFACE_DEFINED__ +#define __IRTCSessionOperationCompleteEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionOperationCompleteEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionOperationCompleteEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession **ppSession) = 0; + virtual HRESULT WINAPI get_Cookie(LONG_PTR *plCookie) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + }; +#else + typedef struct IRTCSessionOperationCompleteEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionOperationCompleteEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionOperationCompleteEvent *This); + ULONG (WINAPI *Release)(IRTCSessionOperationCompleteEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCSessionOperationCompleteEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCSessionOperationCompleteEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCSessionOperationCompleteEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCSessionOperationCompleteEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCSessionOperationCompleteEvent *This,IRTCSession **ppSession); + HRESULT (WINAPI *get_Cookie)(IRTCSessionOperationCompleteEvent *This,LONG_PTR *plCookie); + HRESULT (WINAPI *get_StatusCode)(IRTCSessionOperationCompleteEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCSessionOperationCompleteEvent *This,BSTR *pbstrStatusText); + END_INTERFACE + } IRTCSessionOperationCompleteEventVtbl; + struct IRTCSessionOperationCompleteEvent { + CONST_VTBL struct IRTCSessionOperationCompleteEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionOperationCompleteEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionOperationCompleteEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionOperationCompleteEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionOperationCompleteEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCSessionOperationCompleteEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCSessionOperationCompleteEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCSessionOperationCompleteEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCSessionOperationCompleteEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCSessionOperationCompleteEvent_get_Cookie(This,plCookie) (This)->lpVtbl->get_Cookie(This,plCookie) +#define IRTCSessionOperationCompleteEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCSessionOperationCompleteEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#endif +#endif + HRESULT WINAPI IRTCSessionOperationCompleteEvent_get_Session_Proxy(IRTCSessionOperationCompleteEvent *This,IRTCSession **ppSession); + void __RPC_STUB IRTCSessionOperationCompleteEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionOperationCompleteEvent_get_Cookie_Proxy(IRTCSessionOperationCompleteEvent *This,LONG_PTR *plCookie); + void __RPC_STUB IRTCSessionOperationCompleteEvent_get_Cookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionOperationCompleteEvent_get_StatusCode_Proxy(IRTCSessionOperationCompleteEvent *This,long *plStatusCode); + void __RPC_STUB IRTCSessionOperationCompleteEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionOperationCompleteEvent_get_StatusText_Proxy(IRTCSessionOperationCompleteEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCSessionOperationCompleteEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionOperationCompleteEvent2_INTERFACE_DEFINED__ +#define __IRTCSessionOperationCompleteEvent2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionOperationCompleteEvent2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionOperationCompleteEvent2 : public IRTCSessionOperationCompleteEvent { + public: + virtual HRESULT WINAPI get_Participant(IRTCParticipant **ppParticipant) = 0; + virtual HRESULT WINAPI GetRemoteSessionDescription(BSTR *pbstrContentType,BSTR *pbstrSessionDescription) = 0; + }; +#else + typedef struct IRTCSessionOperationCompleteEvent2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionOperationCompleteEvent2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionOperationCompleteEvent2 *This); + ULONG (WINAPI *Release)(IRTCSessionOperationCompleteEvent2 *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCSessionOperationCompleteEvent2 *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCSessionOperationCompleteEvent2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCSessionOperationCompleteEvent2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCSessionOperationCompleteEvent2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCSessionOperationCompleteEvent2 *This,IRTCSession **ppSession); + HRESULT (WINAPI *get_Cookie)(IRTCSessionOperationCompleteEvent2 *This,LONG_PTR *plCookie); + HRESULT (WINAPI *get_StatusCode)(IRTCSessionOperationCompleteEvent2 *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCSessionOperationCompleteEvent2 *This,BSTR *pbstrStatusText); + HRESULT (WINAPI *get_Participant)(IRTCSessionOperationCompleteEvent2 *This,IRTCParticipant **ppParticipant); + HRESULT (WINAPI *GetRemoteSessionDescription)(IRTCSessionOperationCompleteEvent2 *This,BSTR *pbstrContentType,BSTR *pbstrSessionDescription); + END_INTERFACE + } IRTCSessionOperationCompleteEvent2Vtbl; + struct IRTCSessionOperationCompleteEvent2 { + CONST_VTBL struct IRTCSessionOperationCompleteEvent2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionOperationCompleteEvent2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionOperationCompleteEvent2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionOperationCompleteEvent2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionOperationCompleteEvent2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCSessionOperationCompleteEvent2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCSessionOperationCompleteEvent2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCSessionOperationCompleteEvent2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCSessionOperationCompleteEvent2_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCSessionOperationCompleteEvent2_get_Cookie(This,plCookie) (This)->lpVtbl->get_Cookie(This,plCookie) +#define IRTCSessionOperationCompleteEvent2_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCSessionOperationCompleteEvent2_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#define IRTCSessionOperationCompleteEvent2_get_Participant(This,ppParticipant) (This)->lpVtbl->get_Participant(This,ppParticipant) +#define IRTCSessionOperationCompleteEvent2_GetRemoteSessionDescription(This,pbstrContentType,pbstrSessionDescription) (This)->lpVtbl->GetRemoteSessionDescription(This,pbstrContentType,pbstrSessionDescription) +#endif +#endif + HRESULT WINAPI IRTCSessionOperationCompleteEvent2_get_Participant_Proxy(IRTCSessionOperationCompleteEvent2 *This,IRTCParticipant **ppParticipant); + void __RPC_STUB IRTCSessionOperationCompleteEvent2_get_Participant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionOperationCompleteEvent2_GetRemoteSessionDescription_Proxy(IRTCSessionOperationCompleteEvent2 *This,BSTR *pbstrContentType,BSTR *pbstrSessionDescription); + void __RPC_STUB IRTCSessionOperationCompleteEvent2_GetRemoteSessionDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCParticipantStateChangeEvent_INTERFACE_DEFINED__ +#define __IRTCParticipantStateChangeEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCParticipantStateChangeEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCParticipantStateChangeEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Participant(IRTCParticipant **ppParticipant) = 0; + virtual HRESULT WINAPI get_State(RTC_PARTICIPANT_STATE *penState) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + }; +#else + typedef struct IRTCParticipantStateChangeEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCParticipantStateChangeEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCParticipantStateChangeEvent *This); + ULONG (WINAPI *Release)(IRTCParticipantStateChangeEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCParticipantStateChangeEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCParticipantStateChangeEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCParticipantStateChangeEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCParticipantStateChangeEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Participant)(IRTCParticipantStateChangeEvent *This,IRTCParticipant **ppParticipant); + HRESULT (WINAPI *get_State)(IRTCParticipantStateChangeEvent *This,RTC_PARTICIPANT_STATE *penState); + HRESULT (WINAPI *get_StatusCode)(IRTCParticipantStateChangeEvent *This,long *plStatusCode); + END_INTERFACE + } IRTCParticipantStateChangeEventVtbl; + struct IRTCParticipantStateChangeEvent { + CONST_VTBL struct IRTCParticipantStateChangeEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCParticipantStateChangeEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCParticipantStateChangeEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCParticipantStateChangeEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCParticipantStateChangeEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCParticipantStateChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCParticipantStateChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCParticipantStateChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCParticipantStateChangeEvent_get_Participant(This,ppParticipant) (This)->lpVtbl->get_Participant(This,ppParticipant) +#define IRTCParticipantStateChangeEvent_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCParticipantStateChangeEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#endif +#endif + HRESULT WINAPI IRTCParticipantStateChangeEvent_get_Participant_Proxy(IRTCParticipantStateChangeEvent *This,IRTCParticipant **ppParticipant); + void __RPC_STUB IRTCParticipantStateChangeEvent_get_Participant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCParticipantStateChangeEvent_get_State_Proxy(IRTCParticipantStateChangeEvent *This,RTC_PARTICIPANT_STATE *penState); + void __RPC_STUB IRTCParticipantStateChangeEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCParticipantStateChangeEvent_get_StatusCode_Proxy(IRTCParticipantStateChangeEvent *This,long *plStatusCode); + void __RPC_STUB IRTCParticipantStateChangeEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCMediaEvent_INTERFACE_DEFINED__ +#define __IRTCMediaEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCMediaEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCMediaEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_MediaType(long *pMediaType) = 0; + virtual HRESULT WINAPI get_EventType(RTC_MEDIA_EVENT_TYPE *penEventType) = 0; + virtual HRESULT WINAPI get_EventReason(RTC_MEDIA_EVENT_REASON *penEventReason) = 0; + }; +#else + typedef struct IRTCMediaEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCMediaEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCMediaEvent *This); + ULONG (WINAPI *Release)(IRTCMediaEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCMediaEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCMediaEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCMediaEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCMediaEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_MediaType)(IRTCMediaEvent *This,long *pMediaType); + HRESULT (WINAPI *get_EventType)(IRTCMediaEvent *This,RTC_MEDIA_EVENT_TYPE *penEventType); + HRESULT (WINAPI *get_EventReason)(IRTCMediaEvent *This,RTC_MEDIA_EVENT_REASON *penEventReason); + END_INTERFACE + } IRTCMediaEventVtbl; + struct IRTCMediaEvent { + CONST_VTBL struct IRTCMediaEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCMediaEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCMediaEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCMediaEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCMediaEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCMediaEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCMediaEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCMediaEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCMediaEvent_get_MediaType(This,pMediaType) (This)->lpVtbl->get_MediaType(This,pMediaType) +#define IRTCMediaEvent_get_EventType(This,penEventType) (This)->lpVtbl->get_EventType(This,penEventType) +#define IRTCMediaEvent_get_EventReason(This,penEventReason) (This)->lpVtbl->get_EventReason(This,penEventReason) +#endif +#endif + HRESULT WINAPI IRTCMediaEvent_get_MediaType_Proxy(IRTCMediaEvent *This,long *pMediaType); + void __RPC_STUB IRTCMediaEvent_get_MediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaEvent_get_EventType_Proxy(IRTCMediaEvent *This,RTC_MEDIA_EVENT_TYPE *penEventType); + void __RPC_STUB IRTCMediaEvent_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaEvent_get_EventReason_Proxy(IRTCMediaEvent *This,RTC_MEDIA_EVENT_REASON *penEventReason); + void __RPC_STUB IRTCMediaEvent_get_EventReason_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCIntensityEvent_INTERFACE_DEFINED__ +#define __IRTCIntensityEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCIntensityEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCIntensityEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Level(long *plLevel) = 0; + virtual HRESULT WINAPI get_Min(long *plMin) = 0; + virtual HRESULT WINAPI get_Max(long *plMax) = 0; + virtual HRESULT WINAPI get_Direction(RTC_AUDIO_DEVICE *penDirection) = 0; + }; +#else + typedef struct IRTCIntensityEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCIntensityEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCIntensityEvent *This); + ULONG (WINAPI *Release)(IRTCIntensityEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCIntensityEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCIntensityEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCIntensityEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCIntensityEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Level)(IRTCIntensityEvent *This,long *plLevel); + HRESULT (WINAPI *get_Min)(IRTCIntensityEvent *This,long *plMin); + HRESULT (WINAPI *get_Max)(IRTCIntensityEvent *This,long *plMax); + HRESULT (WINAPI *get_Direction)(IRTCIntensityEvent *This,RTC_AUDIO_DEVICE *penDirection); + END_INTERFACE + } IRTCIntensityEventVtbl; + struct IRTCIntensityEvent { + CONST_VTBL struct IRTCIntensityEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCIntensityEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCIntensityEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCIntensityEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCIntensityEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCIntensityEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCIntensityEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCIntensityEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCIntensityEvent_get_Level(This,plLevel) (This)->lpVtbl->get_Level(This,plLevel) +#define IRTCIntensityEvent_get_Min(This,plMin) (This)->lpVtbl->get_Min(This,plMin) +#define IRTCIntensityEvent_get_Max(This,plMax) (This)->lpVtbl->get_Max(This,plMax) +#define IRTCIntensityEvent_get_Direction(This,penDirection) (This)->lpVtbl->get_Direction(This,penDirection) +#endif +#endif + HRESULT WINAPI IRTCIntensityEvent_get_Level_Proxy(IRTCIntensityEvent *This,long *plLevel); + void __RPC_STUB IRTCIntensityEvent_get_Level_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCIntensityEvent_get_Min_Proxy(IRTCIntensityEvent *This,long *plMin); + void __RPC_STUB IRTCIntensityEvent_get_Min_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCIntensityEvent_get_Max_Proxy(IRTCIntensityEvent *This,long *plMax); + void __RPC_STUB IRTCIntensityEvent_get_Max_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCIntensityEvent_get_Direction_Proxy(IRTCIntensityEvent *This,RTC_AUDIO_DEVICE *penDirection); + void __RPC_STUB IRTCIntensityEvent_get_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCMessagingEvent_INTERFACE_DEFINED__ +#define __IRTCMessagingEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCMessagingEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCMessagingEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession **ppSession) = 0; + virtual HRESULT WINAPI get_Participant(IRTCParticipant **ppParticipant) = 0; + virtual HRESULT WINAPI get_EventType(RTC_MESSAGING_EVENT_TYPE *penEventType) = 0; + virtual HRESULT WINAPI get_Message(BSTR *pbstrMessage) = 0; + virtual HRESULT WINAPI get_MessageHeader(BSTR *pbstrMessageHeader) = 0; + virtual HRESULT WINAPI get_UserStatus(RTC_MESSAGING_USER_STATUS *penUserStatus) = 0; + }; +#else + typedef struct IRTCMessagingEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCMessagingEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCMessagingEvent *This); + ULONG (WINAPI *Release)(IRTCMessagingEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCMessagingEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCMessagingEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCMessagingEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCMessagingEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCMessagingEvent *This,IRTCSession **ppSession); + HRESULT (WINAPI *get_Participant)(IRTCMessagingEvent *This,IRTCParticipant **ppParticipant); + HRESULT (WINAPI *get_EventType)(IRTCMessagingEvent *This,RTC_MESSAGING_EVENT_TYPE *penEventType); + HRESULT (WINAPI *get_Message)(IRTCMessagingEvent *This,BSTR *pbstrMessage); + HRESULT (WINAPI *get_MessageHeader)(IRTCMessagingEvent *This,BSTR *pbstrMessageHeader); + HRESULT (WINAPI *get_UserStatus)(IRTCMessagingEvent *This,RTC_MESSAGING_USER_STATUS *penUserStatus); + END_INTERFACE + } IRTCMessagingEventVtbl; + struct IRTCMessagingEvent { + CONST_VTBL struct IRTCMessagingEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCMessagingEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCMessagingEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCMessagingEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCMessagingEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCMessagingEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCMessagingEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCMessagingEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCMessagingEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCMessagingEvent_get_Participant(This,ppParticipant) (This)->lpVtbl->get_Participant(This,ppParticipant) +#define IRTCMessagingEvent_get_EventType(This,penEventType) (This)->lpVtbl->get_EventType(This,penEventType) +#define IRTCMessagingEvent_get_Message(This,pbstrMessage) (This)->lpVtbl->get_Message(This,pbstrMessage) +#define IRTCMessagingEvent_get_MessageHeader(This,pbstrMessageHeader) (This)->lpVtbl->get_MessageHeader(This,pbstrMessageHeader) +#define IRTCMessagingEvent_get_UserStatus(This,penUserStatus) (This)->lpVtbl->get_UserStatus(This,penUserStatus) +#endif +#endif + HRESULT WINAPI IRTCMessagingEvent_get_Session_Proxy(IRTCMessagingEvent *This,IRTCSession **ppSession); + void __RPC_STUB IRTCMessagingEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMessagingEvent_get_Participant_Proxy(IRTCMessagingEvent *This,IRTCParticipant **ppParticipant); + void __RPC_STUB IRTCMessagingEvent_get_Participant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMessagingEvent_get_EventType_Proxy(IRTCMessagingEvent *This,RTC_MESSAGING_EVENT_TYPE *penEventType); + void __RPC_STUB IRTCMessagingEvent_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMessagingEvent_get_Message_Proxy(IRTCMessagingEvent *This,BSTR *pbstrMessage); + void __RPC_STUB IRTCMessagingEvent_get_Message_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMessagingEvent_get_MessageHeader_Proxy(IRTCMessagingEvent *This,BSTR *pbstrMessageHeader); + void __RPC_STUB IRTCMessagingEvent_get_MessageHeader_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMessagingEvent_get_UserStatus_Proxy(IRTCMessagingEvent *This,RTC_MESSAGING_USER_STATUS *penUserStatus); + void __RPC_STUB IRTCMessagingEvent_get_UserStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCBuddyEvent_INTERFACE_DEFINED__ +#define __IRTCBuddyEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCBuddyEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCBuddyEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Buddy(IRTCBuddy **ppBuddy) = 0; + }; +#else + typedef struct IRTCBuddyEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCBuddyEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCBuddyEvent *This); + ULONG (WINAPI *Release)(IRTCBuddyEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCBuddyEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCBuddyEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCBuddyEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCBuddyEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Buddy)(IRTCBuddyEvent *This,IRTCBuddy **ppBuddy); + END_INTERFACE + } IRTCBuddyEventVtbl; + struct IRTCBuddyEvent { + CONST_VTBL struct IRTCBuddyEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCBuddyEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCBuddyEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCBuddyEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCBuddyEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCBuddyEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCBuddyEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCBuddyEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCBuddyEvent_get_Buddy(This,ppBuddy) (This)->lpVtbl->get_Buddy(This,ppBuddy) +#endif +#endif + HRESULT WINAPI IRTCBuddyEvent_get_Buddy_Proxy(IRTCBuddyEvent *This,IRTCBuddy **ppBuddy); + void __RPC_STUB IRTCBuddyEvent_get_Buddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCBuddyEvent2_INTERFACE_DEFINED__ +#define __IRTCBuddyEvent2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCBuddyEvent2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCBuddyEvent2 : public IRTCBuddyEvent { + public: + virtual HRESULT WINAPI get_EventType(RTC_BUDDY_EVENT_TYPE *pEventType) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + }; +#else + typedef struct IRTCBuddyEvent2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCBuddyEvent2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCBuddyEvent2 *This); + ULONG (WINAPI *Release)(IRTCBuddyEvent2 *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCBuddyEvent2 *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCBuddyEvent2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCBuddyEvent2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCBuddyEvent2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Buddy)(IRTCBuddyEvent2 *This,IRTCBuddy **ppBuddy); + HRESULT (WINAPI *get_EventType)(IRTCBuddyEvent2 *This,RTC_BUDDY_EVENT_TYPE *pEventType); + HRESULT (WINAPI *get_StatusCode)(IRTCBuddyEvent2 *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCBuddyEvent2 *This,BSTR *pbstrStatusText); + END_INTERFACE + } IRTCBuddyEvent2Vtbl; + struct IRTCBuddyEvent2 { + CONST_VTBL struct IRTCBuddyEvent2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCBuddyEvent2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCBuddyEvent2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCBuddyEvent2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCBuddyEvent2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCBuddyEvent2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCBuddyEvent2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCBuddyEvent2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCBuddyEvent2_get_Buddy(This,ppBuddy) (This)->lpVtbl->get_Buddy(This,ppBuddy) +#define IRTCBuddyEvent2_get_EventType(This,pEventType) (This)->lpVtbl->get_EventType(This,pEventType) +#define IRTCBuddyEvent2_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCBuddyEvent2_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#endif +#endif + HRESULT WINAPI IRTCBuddyEvent2_get_EventType_Proxy(IRTCBuddyEvent2 *This,RTC_BUDDY_EVENT_TYPE *pEventType); + void __RPC_STUB IRTCBuddyEvent2_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyEvent2_get_StatusCode_Proxy(IRTCBuddyEvent2 *This,long *plStatusCode); + void __RPC_STUB IRTCBuddyEvent2_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyEvent2_get_StatusText_Proxy(IRTCBuddyEvent2 *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCBuddyEvent2_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCWatcherEvent_INTERFACE_DEFINED__ +#define __IRTCWatcherEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCWatcherEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCWatcherEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Watcher(IRTCWatcher **ppWatcher) = 0; + }; +#else + typedef struct IRTCWatcherEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCWatcherEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCWatcherEvent *This); + ULONG (WINAPI *Release)(IRTCWatcherEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCWatcherEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCWatcherEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCWatcherEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCWatcherEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Watcher)(IRTCWatcherEvent *This,IRTCWatcher **ppWatcher); + END_INTERFACE + } IRTCWatcherEventVtbl; + struct IRTCWatcherEvent { + CONST_VTBL struct IRTCWatcherEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCWatcherEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCWatcherEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCWatcherEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCWatcherEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCWatcherEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCWatcherEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCWatcherEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCWatcherEvent_get_Watcher(This,ppWatcher) (This)->lpVtbl->get_Watcher(This,ppWatcher) +#endif +#endif + HRESULT WINAPI IRTCWatcherEvent_get_Watcher_Proxy(IRTCWatcherEvent *This,IRTCWatcher **ppWatcher); + void __RPC_STUB IRTCWatcherEvent_get_Watcher_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCWatcherEvent2_INTERFACE_DEFINED__ +#define __IRTCWatcherEvent2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCWatcherEvent2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCWatcherEvent2 : public IRTCWatcherEvent { + public: + virtual HRESULT WINAPI get_EventType(RTC_WATCHER_EVENT_TYPE *pEventType) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + }; +#else + typedef struct IRTCWatcherEvent2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCWatcherEvent2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCWatcherEvent2 *This); + ULONG (WINAPI *Release)(IRTCWatcherEvent2 *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCWatcherEvent2 *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCWatcherEvent2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCWatcherEvent2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCWatcherEvent2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Watcher)(IRTCWatcherEvent2 *This,IRTCWatcher **ppWatcher); + HRESULT (WINAPI *get_EventType)(IRTCWatcherEvent2 *This,RTC_WATCHER_EVENT_TYPE *pEventType); + HRESULT (WINAPI *get_StatusCode)(IRTCWatcherEvent2 *This,long *plStatusCode); + END_INTERFACE + } IRTCWatcherEvent2Vtbl; + struct IRTCWatcherEvent2 { + CONST_VTBL struct IRTCWatcherEvent2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCWatcherEvent2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCWatcherEvent2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCWatcherEvent2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCWatcherEvent2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCWatcherEvent2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCWatcherEvent2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCWatcherEvent2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCWatcherEvent2_get_Watcher(This,ppWatcher) (This)->lpVtbl->get_Watcher(This,ppWatcher) +#define IRTCWatcherEvent2_get_EventType(This,pEventType) (This)->lpVtbl->get_EventType(This,pEventType) +#define IRTCWatcherEvent2_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#endif +#endif + HRESULT WINAPI IRTCWatcherEvent2_get_EventType_Proxy(IRTCWatcherEvent2 *This,RTC_WATCHER_EVENT_TYPE *pEventType); + void __RPC_STUB IRTCWatcherEvent2_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCWatcherEvent2_get_StatusCode_Proxy(IRTCWatcherEvent2 *This,long *plStatusCode); + void __RPC_STUB IRTCWatcherEvent2_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCBuddyGroupEvent_INTERFACE_DEFINED__ +#define __IRTCBuddyGroupEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCBuddyGroupEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCBuddyGroupEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_EventType(RTC_GROUP_EVENT_TYPE *pEventType) = 0; + virtual HRESULT WINAPI get_Group(IRTCBuddyGroup **ppGroup) = 0; + virtual HRESULT WINAPI get_Buddy(IRTCBuddy2 **ppBuddy) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + }; +#else + typedef struct IRTCBuddyGroupEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCBuddyGroupEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCBuddyGroupEvent *This); + ULONG (WINAPI *Release)(IRTCBuddyGroupEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCBuddyGroupEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCBuddyGroupEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCBuddyGroupEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCBuddyGroupEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_EventType)(IRTCBuddyGroupEvent *This,RTC_GROUP_EVENT_TYPE *pEventType); + HRESULT (WINAPI *get_Group)(IRTCBuddyGroupEvent *This,IRTCBuddyGroup **ppGroup); + HRESULT (WINAPI *get_Buddy)(IRTCBuddyGroupEvent *This,IRTCBuddy2 **ppBuddy); + HRESULT (WINAPI *get_StatusCode)(IRTCBuddyGroupEvent *This,long *plStatusCode); + END_INTERFACE + } IRTCBuddyGroupEventVtbl; + struct IRTCBuddyGroupEvent { + CONST_VTBL struct IRTCBuddyGroupEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCBuddyGroupEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCBuddyGroupEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCBuddyGroupEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCBuddyGroupEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCBuddyGroupEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCBuddyGroupEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCBuddyGroupEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCBuddyGroupEvent_get_EventType(This,pEventType) (This)->lpVtbl->get_EventType(This,pEventType) +#define IRTCBuddyGroupEvent_get_Group(This,ppGroup) (This)->lpVtbl->get_Group(This,ppGroup) +#define IRTCBuddyGroupEvent_get_Buddy(This,ppBuddy) (This)->lpVtbl->get_Buddy(This,ppBuddy) +#define IRTCBuddyGroupEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#endif +#endif + HRESULT WINAPI IRTCBuddyGroupEvent_get_EventType_Proxy(IRTCBuddyGroupEvent *This,RTC_GROUP_EVENT_TYPE *pEventType); + void __RPC_STUB IRTCBuddyGroupEvent_get_EventType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroupEvent_get_Group_Proxy(IRTCBuddyGroupEvent *This,IRTCBuddyGroup **ppGroup); + void __RPC_STUB IRTCBuddyGroupEvent_get_Group_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroupEvent_get_Buddy_Proxy(IRTCBuddyGroupEvent *This,IRTCBuddy2 **ppBuddy); + void __RPC_STUB IRTCBuddyGroupEvent_get_Buddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroupEvent_get_StatusCode_Proxy(IRTCBuddyGroupEvent *This,long *plStatusCode); + void __RPC_STUB IRTCBuddyGroupEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCInfoEvent_INTERFACE_DEFINED__ +#define __IRTCInfoEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCInfoEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCInfoEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession2 **ppSession) = 0; + virtual HRESULT WINAPI get_Participant(IRTCParticipant **ppParticipant) = 0; + virtual HRESULT WINAPI get_Info(BSTR *pbstrInfo) = 0; + virtual HRESULT WINAPI get_InfoHeader(BSTR *pbstrInfoHeader) = 0; + }; +#else + typedef struct IRTCInfoEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCInfoEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCInfoEvent *This); + ULONG (WINAPI *Release)(IRTCInfoEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCInfoEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCInfoEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCInfoEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCInfoEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCInfoEvent *This,IRTCSession2 **ppSession); + HRESULT (WINAPI *get_Participant)(IRTCInfoEvent *This,IRTCParticipant **ppParticipant); + HRESULT (WINAPI *get_Info)(IRTCInfoEvent *This,BSTR *pbstrInfo); + HRESULT (WINAPI *get_InfoHeader)(IRTCInfoEvent *This,BSTR *pbstrInfoHeader); + END_INTERFACE + } IRTCInfoEventVtbl; + struct IRTCInfoEvent { + CONST_VTBL struct IRTCInfoEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCInfoEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCInfoEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCInfoEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCInfoEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCInfoEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCInfoEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCInfoEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCInfoEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCInfoEvent_get_Participant(This,ppParticipant) (This)->lpVtbl->get_Participant(This,ppParticipant) +#define IRTCInfoEvent_get_Info(This,pbstrInfo) (This)->lpVtbl->get_Info(This,pbstrInfo) +#define IRTCInfoEvent_get_InfoHeader(This,pbstrInfoHeader) (This)->lpVtbl->get_InfoHeader(This,pbstrInfoHeader) +#endif +#endif + HRESULT WINAPI IRTCInfoEvent_get_Session_Proxy(IRTCInfoEvent *This,IRTCSession2 **ppSession); + void __RPC_STUB IRTCInfoEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCInfoEvent_get_Participant_Proxy(IRTCInfoEvent *This,IRTCParticipant **ppParticipant); + void __RPC_STUB IRTCInfoEvent_get_Participant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCInfoEvent_get_Info_Proxy(IRTCInfoEvent *This,BSTR *pbstrInfo); + void __RPC_STUB IRTCInfoEvent_get_Info_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCInfoEvent_get_InfoHeader_Proxy(IRTCInfoEvent *This,BSTR *pbstrInfoHeader); + void __RPC_STUB IRTCInfoEvent_get_InfoHeader_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCMediaRequestEvent_INTERFACE_DEFINED__ +#define __IRTCMediaRequestEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCMediaRequestEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCMediaRequestEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession2 **ppSession) = 0; + virtual HRESULT WINAPI get_ProposedMedia(long *plMediaTypes) = 0; + virtual HRESULT WINAPI get_CurrentMedia(long *plMediaTypes) = 0; + virtual HRESULT WINAPI Accept(long lMediaTypes) = 0; + virtual HRESULT WINAPI get_RemotePreferredSecurityLevel(RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel) = 0; + virtual HRESULT WINAPI Reject(void) = 0; + virtual HRESULT WINAPI get_State(RTC_REINVITE_STATE *pState) = 0; + }; +#else + typedef struct IRTCMediaRequestEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCMediaRequestEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCMediaRequestEvent *This); + ULONG (WINAPI *Release)(IRTCMediaRequestEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCMediaRequestEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCMediaRequestEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCMediaRequestEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCMediaRequestEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCMediaRequestEvent *This,IRTCSession2 **ppSession); + HRESULT (WINAPI *get_ProposedMedia)(IRTCMediaRequestEvent *This,long *plMediaTypes); + HRESULT (WINAPI *get_CurrentMedia)(IRTCMediaRequestEvent *This,long *plMediaTypes); + HRESULT (WINAPI *Accept)(IRTCMediaRequestEvent *This,long lMediaTypes); + HRESULT (WINAPI *get_RemotePreferredSecurityLevel)(IRTCMediaRequestEvent *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel); + HRESULT (WINAPI *Reject)(IRTCMediaRequestEvent *This); + HRESULT (WINAPI *get_State)(IRTCMediaRequestEvent *This,RTC_REINVITE_STATE *pState); + END_INTERFACE + } IRTCMediaRequestEventVtbl; + struct IRTCMediaRequestEvent { + CONST_VTBL struct IRTCMediaRequestEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCMediaRequestEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCMediaRequestEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCMediaRequestEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCMediaRequestEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCMediaRequestEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCMediaRequestEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCMediaRequestEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCMediaRequestEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCMediaRequestEvent_get_ProposedMedia(This,plMediaTypes) (This)->lpVtbl->get_ProposedMedia(This,plMediaTypes) +#define IRTCMediaRequestEvent_get_CurrentMedia(This,plMediaTypes) (This)->lpVtbl->get_CurrentMedia(This,plMediaTypes) +#define IRTCMediaRequestEvent_Accept(This,lMediaTypes) (This)->lpVtbl->Accept(This,lMediaTypes) +#define IRTCMediaRequestEvent_get_RemotePreferredSecurityLevel(This,enSecurityType,penSecurityLevel) (This)->lpVtbl->get_RemotePreferredSecurityLevel(This,enSecurityType,penSecurityLevel) +#define IRTCMediaRequestEvent_Reject(This) (This)->lpVtbl->Reject(This) +#define IRTCMediaRequestEvent_get_State(This,pState) (This)->lpVtbl->get_State(This,pState) +#endif +#endif + HRESULT WINAPI IRTCMediaRequestEvent_get_Session_Proxy(IRTCMediaRequestEvent *This,IRTCSession2 **ppSession); + void __RPC_STUB IRTCMediaRequestEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaRequestEvent_get_ProposedMedia_Proxy(IRTCMediaRequestEvent *This,long *plMediaTypes); + void __RPC_STUB IRTCMediaRequestEvent_get_ProposedMedia_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaRequestEvent_get_CurrentMedia_Proxy(IRTCMediaRequestEvent *This,long *plMediaTypes); + void __RPC_STUB IRTCMediaRequestEvent_get_CurrentMedia_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaRequestEvent_Accept_Proxy(IRTCMediaRequestEvent *This,long lMediaTypes); + void __RPC_STUB IRTCMediaRequestEvent_Accept_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaRequestEvent_get_RemotePreferredSecurityLevel_Proxy(IRTCMediaRequestEvent *This,RTC_SECURITY_TYPE enSecurityType,RTC_SECURITY_LEVEL *penSecurityLevel); + void __RPC_STUB IRTCMediaRequestEvent_get_RemotePreferredSecurityLevel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaRequestEvent_Reject_Proxy(IRTCMediaRequestEvent *This); + void __RPC_STUB IRTCMediaRequestEvent_Reject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCMediaRequestEvent_get_State_Proxy(IRTCMediaRequestEvent *This,RTC_REINVITE_STATE *pState); + void __RPC_STUB IRTCMediaRequestEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCReInviteEvent_INTERFACE_DEFINED__ +#define __IRTCReInviteEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCReInviteEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCReInviteEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession2 **ppSession2) = 0; + virtual HRESULT WINAPI Accept(BSTR bstrContentType,BSTR bstrSessionDescription) = 0; + virtual HRESULT WINAPI Reject(void) = 0; + virtual HRESULT WINAPI get_State(RTC_REINVITE_STATE *pState) = 0; + virtual HRESULT WINAPI GetRemoteSessionDescription(BSTR *pbstrContentType,BSTR *pbstrSessionDescription) = 0; + }; +#else + typedef struct IRTCReInviteEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCReInviteEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCReInviteEvent *This); + ULONG (WINAPI *Release)(IRTCReInviteEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCReInviteEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCReInviteEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCReInviteEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCReInviteEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCReInviteEvent *This,IRTCSession2 **ppSession2); + HRESULT (WINAPI *Accept)(IRTCReInviteEvent *This,BSTR bstrContentType,BSTR bstrSessionDescription); + HRESULT (WINAPI *Reject)(IRTCReInviteEvent *This); + HRESULT (WINAPI *get_State)(IRTCReInviteEvent *This,RTC_REINVITE_STATE *pState); + HRESULT (WINAPI *GetRemoteSessionDescription)(IRTCReInviteEvent *This,BSTR *pbstrContentType,BSTR *pbstrSessionDescription); + END_INTERFACE + } IRTCReInviteEventVtbl; + struct IRTCReInviteEvent { + CONST_VTBL struct IRTCReInviteEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCReInviteEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCReInviteEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCReInviteEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCReInviteEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCReInviteEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCReInviteEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCReInviteEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCReInviteEvent_get_Session(This,ppSession2) (This)->lpVtbl->get_Session(This,ppSession2) +#define IRTCReInviteEvent_Accept(This,bstrContentType,bstrSessionDescription) (This)->lpVtbl->Accept(This,bstrContentType,bstrSessionDescription) +#define IRTCReInviteEvent_Reject(This) (This)->lpVtbl->Reject(This) +#define IRTCReInviteEvent_get_State(This,pState) (This)->lpVtbl->get_State(This,pState) +#define IRTCReInviteEvent_GetRemoteSessionDescription(This,pbstrContentType,pbstrSessionDescription) (This)->lpVtbl->GetRemoteSessionDescription(This,pbstrContentType,pbstrSessionDescription) +#endif +#endif + HRESULT WINAPI IRTCReInviteEvent_get_Session_Proxy(IRTCReInviteEvent *This,IRTCSession2 **ppSession2); + void __RPC_STUB IRTCReInviteEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCReInviteEvent_Accept_Proxy(IRTCReInviteEvent *This,BSTR bstrContentType,BSTR bstrSessionDescription); + void __RPC_STUB IRTCReInviteEvent_Accept_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCReInviteEvent_Reject_Proxy(IRTCReInviteEvent *This); + void __RPC_STUB IRTCReInviteEvent_Reject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCReInviteEvent_get_State_Proxy(IRTCReInviteEvent *This,RTC_REINVITE_STATE *pState); + void __RPC_STUB IRTCReInviteEvent_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCReInviteEvent_GetRemoteSessionDescription_Proxy(IRTCReInviteEvent *This,BSTR *pbstrContentType,BSTR *pbstrSessionDescription); + void __RPC_STUB IRTCReInviteEvent_GetRemoteSessionDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCPresencePropertyEvent_INTERFACE_DEFINED__ +#define __IRTCPresencePropertyEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCPresencePropertyEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCPresencePropertyEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + virtual HRESULT WINAPI get_PresenceProperty(RTC_PRESENCE_PROPERTY *penPresProp) = 0; + virtual HRESULT WINAPI get_Value(BSTR *pbstrValue) = 0; + }; +#else + typedef struct IRTCPresencePropertyEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCPresencePropertyEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCPresencePropertyEvent *This); + ULONG (WINAPI *Release)(IRTCPresencePropertyEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCPresencePropertyEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCPresencePropertyEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCPresencePropertyEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCPresencePropertyEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_StatusCode)(IRTCPresencePropertyEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCPresencePropertyEvent *This,BSTR *pbstrStatusText); + HRESULT (WINAPI *get_PresenceProperty)(IRTCPresencePropertyEvent *This,RTC_PRESENCE_PROPERTY *penPresProp); + HRESULT (WINAPI *get_Value)(IRTCPresencePropertyEvent *This,BSTR *pbstrValue); + END_INTERFACE + } IRTCPresencePropertyEventVtbl; + struct IRTCPresencePropertyEvent { + CONST_VTBL struct IRTCPresencePropertyEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCPresencePropertyEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCPresencePropertyEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCPresencePropertyEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCPresencePropertyEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCPresencePropertyEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCPresencePropertyEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCPresencePropertyEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCPresencePropertyEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCPresencePropertyEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#define IRTCPresencePropertyEvent_get_PresenceProperty(This,penPresProp) (This)->lpVtbl->get_PresenceProperty(This,penPresProp) +#define IRTCPresencePropertyEvent_get_Value(This,pbstrValue) (This)->lpVtbl->get_Value(This,pbstrValue) +#endif +#endif + HRESULT WINAPI IRTCPresencePropertyEvent_get_StatusCode_Proxy(IRTCPresencePropertyEvent *This,long *plStatusCode); + void __RPC_STUB IRTCPresencePropertyEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresencePropertyEvent_get_StatusText_Proxy(IRTCPresencePropertyEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCPresencePropertyEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresencePropertyEvent_get_PresenceProperty_Proxy(IRTCPresencePropertyEvent *This,RTC_PRESENCE_PROPERTY *penPresProp); + void __RPC_STUB IRTCPresencePropertyEvent_get_PresenceProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresencePropertyEvent_get_Value_Proxy(IRTCPresencePropertyEvent *This,BSTR *pbstrValue); + void __RPC_STUB IRTCPresencePropertyEvent_get_Value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCPresenceDataEvent_INTERFACE_DEFINED__ +#define __IRTCPresenceDataEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCPresenceDataEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCPresenceDataEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + virtual HRESULT WINAPI GetPresenceData(BSTR *pbstrNamespace,BSTR *pbstrData) = 0; + }; +#else + typedef struct IRTCPresenceDataEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCPresenceDataEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCPresenceDataEvent *This); + ULONG (WINAPI *Release)(IRTCPresenceDataEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCPresenceDataEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCPresenceDataEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCPresenceDataEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCPresenceDataEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_StatusCode)(IRTCPresenceDataEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCPresenceDataEvent *This,BSTR *pbstrStatusText); + HRESULT (WINAPI *GetPresenceData)(IRTCPresenceDataEvent *This,BSTR *pbstrNamespace,BSTR *pbstrData); + END_INTERFACE + } IRTCPresenceDataEventVtbl; + struct IRTCPresenceDataEvent { + CONST_VTBL struct IRTCPresenceDataEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCPresenceDataEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCPresenceDataEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCPresenceDataEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCPresenceDataEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCPresenceDataEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCPresenceDataEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCPresenceDataEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCPresenceDataEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCPresenceDataEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#define IRTCPresenceDataEvent_GetPresenceData(This,pbstrNamespace,pbstrData) (This)->lpVtbl->GetPresenceData(This,pbstrNamespace,pbstrData) +#endif +#endif + HRESULT WINAPI IRTCPresenceDataEvent_get_StatusCode_Proxy(IRTCPresenceDataEvent *This,long *plStatusCode); + void __RPC_STUB IRTCPresenceDataEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceDataEvent_get_StatusText_Proxy(IRTCPresenceDataEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCPresenceDataEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceDataEvent_GetPresenceData_Proxy(IRTCPresenceDataEvent *This,BSTR *pbstrNamespace,BSTR *pbstrData); + void __RPC_STUB IRTCPresenceDataEvent_GetPresenceData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCPresenceStatusEvent_INTERFACE_DEFINED__ +#define __IRTCPresenceStatusEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCPresenceStatusEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCPresenceStatusEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + virtual HRESULT WINAPI GetLocalPresenceInfo(RTC_PRESENCE_STATUS *penStatus,BSTR *pbstrNotes) = 0; + }; +#else + typedef struct IRTCPresenceStatusEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCPresenceStatusEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCPresenceStatusEvent *This); + ULONG (WINAPI *Release)(IRTCPresenceStatusEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCPresenceStatusEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCPresenceStatusEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCPresenceStatusEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCPresenceStatusEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_StatusCode)(IRTCPresenceStatusEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCPresenceStatusEvent *This,BSTR *pbstrStatusText); + HRESULT (WINAPI *GetLocalPresenceInfo)(IRTCPresenceStatusEvent *This,RTC_PRESENCE_STATUS *penStatus,BSTR *pbstrNotes); + END_INTERFACE + } IRTCPresenceStatusEventVtbl; + struct IRTCPresenceStatusEvent { + CONST_VTBL struct IRTCPresenceStatusEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCPresenceStatusEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCPresenceStatusEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCPresenceStatusEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCPresenceStatusEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCPresenceStatusEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCPresenceStatusEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCPresenceStatusEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCPresenceStatusEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCPresenceStatusEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#define IRTCPresenceStatusEvent_GetLocalPresenceInfo(This,penStatus,pbstrNotes) (This)->lpVtbl->GetLocalPresenceInfo(This,penStatus,pbstrNotes) +#endif +#endif + HRESULT WINAPI IRTCPresenceStatusEvent_get_StatusCode_Proxy(IRTCPresenceStatusEvent *This,long *plStatusCode); + void __RPC_STUB IRTCPresenceStatusEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceStatusEvent_get_StatusText_Proxy(IRTCPresenceStatusEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCPresenceStatusEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceStatusEvent_GetLocalPresenceInfo_Proxy(IRTCPresenceStatusEvent *This,RTC_PRESENCE_STATUS *penStatus,BSTR *pbstrNotes); + void __RPC_STUB IRTCPresenceStatusEvent_GetLocalPresenceInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCCollection_INTERFACE_DEFINED__ +#define __IRTCCollection_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCCollection; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCCollection : public IDispatch { + public: + virtual HRESULT WINAPI get_Count(long *lCount) = 0; + virtual HRESULT WINAPI get_Item(long Index,VARIANT *pVariant) = 0; + virtual HRESULT WINAPI get__NewEnum(IUnknown **ppNewEnum) = 0; + }; +#else + typedef struct IRTCCollectionVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCCollection *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCCollection *This); + ULONG (WINAPI *Release)(IRTCCollection *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCCollection *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCCollection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCCollection *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCCollection *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Count)(IRTCCollection *This,long *lCount); + HRESULT (WINAPI *get_Item)(IRTCCollection *This,long Index,VARIANT *pVariant); + HRESULT (WINAPI *get__NewEnum)(IRTCCollection *This,IUnknown **ppNewEnum); + END_INTERFACE + } IRTCCollectionVtbl; + struct IRTCCollection { + CONST_VTBL struct IRTCCollectionVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCCollection_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCCollection_Release(This) (This)->lpVtbl->Release(This) +#define IRTCCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCCollection_get_Count(This,lCount) (This)->lpVtbl->get_Count(This,lCount) +#define IRTCCollection_get_Item(This,Index,pVariant) (This)->lpVtbl->get_Item(This,Index,pVariant) +#define IRTCCollection_get__NewEnum(This,ppNewEnum) (This)->lpVtbl->get__NewEnum(This,ppNewEnum) +#endif +#endif + HRESULT WINAPI IRTCCollection_get_Count_Proxy(IRTCCollection *This,long *lCount); + void __RPC_STUB IRTCCollection_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCCollection_get_Item_Proxy(IRTCCollection *This,long Index,VARIANT *pVariant); + void __RPC_STUB IRTCCollection_get_Item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCCollection_get__NewEnum_Proxy(IRTCCollection *This,IUnknown **ppNewEnum); + void __RPC_STUB IRTCCollection_get__NewEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumParticipants_INTERFACE_DEFINED__ +#define __IRTCEnumParticipants_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumParticipants; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumParticipants : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCParticipant **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumParticipants **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumParticipantsVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumParticipants *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumParticipants *This); + ULONG (WINAPI *Release)(IRTCEnumParticipants *This); + HRESULT (WINAPI *Next)(IRTCEnumParticipants *This,ULONG celt,IRTCParticipant **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumParticipants *This); + HRESULT (WINAPI *Skip)(IRTCEnumParticipants *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumParticipants *This,IRTCEnumParticipants **ppEnum); + END_INTERFACE + } IRTCEnumParticipantsVtbl; + struct IRTCEnumParticipants { + CONST_VTBL struct IRTCEnumParticipantsVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumParticipants_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumParticipants_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumParticipants_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumParticipants_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumParticipants_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumParticipants_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumParticipants_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumParticipants_Next_Proxy(IRTCEnumParticipants *This,ULONG celt,IRTCParticipant **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumParticipants_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumParticipants_Reset_Proxy(IRTCEnumParticipants *This); + void __RPC_STUB IRTCEnumParticipants_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumParticipants_Skip_Proxy(IRTCEnumParticipants *This,ULONG celt); + void __RPC_STUB IRTCEnumParticipants_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumParticipants_Clone_Proxy(IRTCEnumParticipants *This,IRTCEnumParticipants **ppEnum); + void __RPC_STUB IRTCEnumParticipants_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumProfiles_INTERFACE_DEFINED__ +#define __IRTCEnumProfiles_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumProfiles; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumProfiles : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCProfile **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumProfiles **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumProfilesVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumProfiles *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumProfiles *This); + ULONG (WINAPI *Release)(IRTCEnumProfiles *This); + HRESULT (WINAPI *Next)(IRTCEnumProfiles *This,ULONG celt,IRTCProfile **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumProfiles *This); + HRESULT (WINAPI *Skip)(IRTCEnumProfiles *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumProfiles *This,IRTCEnumProfiles **ppEnum); + END_INTERFACE + } IRTCEnumProfilesVtbl; + struct IRTCEnumProfiles { + CONST_VTBL struct IRTCEnumProfilesVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumProfiles_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumProfiles_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumProfiles_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumProfiles_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumProfiles_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumProfiles_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumProfiles_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumProfiles_Next_Proxy(IRTCEnumProfiles *This,ULONG celt,IRTCProfile **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumProfiles_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumProfiles_Reset_Proxy(IRTCEnumProfiles *This); + void __RPC_STUB IRTCEnumProfiles_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumProfiles_Skip_Proxy(IRTCEnumProfiles *This,ULONG celt); + void __RPC_STUB IRTCEnumProfiles_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumProfiles_Clone_Proxy(IRTCEnumProfiles *This,IRTCEnumProfiles **ppEnum); + void __RPC_STUB IRTCEnumProfiles_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumBuddies_INTERFACE_DEFINED__ +#define __IRTCEnumBuddies_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumBuddies; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumBuddies : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCBuddy **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumBuddies **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumBuddiesVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumBuddies *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumBuddies *This); + ULONG (WINAPI *Release)(IRTCEnumBuddies *This); + HRESULT (WINAPI *Next)(IRTCEnumBuddies *This,ULONG celt,IRTCBuddy **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumBuddies *This); + HRESULT (WINAPI *Skip)(IRTCEnumBuddies *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumBuddies *This,IRTCEnumBuddies **ppEnum); + END_INTERFACE + } IRTCEnumBuddiesVtbl; + struct IRTCEnumBuddies { + CONST_VTBL struct IRTCEnumBuddiesVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumBuddies_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumBuddies_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumBuddies_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumBuddies_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumBuddies_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumBuddies_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumBuddies_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumBuddies_Next_Proxy(IRTCEnumBuddies *This,ULONG celt,IRTCBuddy **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumBuddies_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumBuddies_Reset_Proxy(IRTCEnumBuddies *This); + void __RPC_STUB IRTCEnumBuddies_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumBuddies_Skip_Proxy(IRTCEnumBuddies *This,ULONG celt); + void __RPC_STUB IRTCEnumBuddies_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumBuddies_Clone_Proxy(IRTCEnumBuddies *This,IRTCEnumBuddies **ppEnum); + void __RPC_STUB IRTCEnumBuddies_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumWatchers_INTERFACE_DEFINED__ +#define __IRTCEnumWatchers_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumWatchers; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumWatchers : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCWatcher **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumWatchers **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumWatchersVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumWatchers *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumWatchers *This); + ULONG (WINAPI *Release)(IRTCEnumWatchers *This); + HRESULT (WINAPI *Next)(IRTCEnumWatchers *This,ULONG celt,IRTCWatcher **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumWatchers *This); + HRESULT (WINAPI *Skip)(IRTCEnumWatchers *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumWatchers *This,IRTCEnumWatchers **ppEnum); + END_INTERFACE + } IRTCEnumWatchersVtbl; + struct IRTCEnumWatchers { + CONST_VTBL struct IRTCEnumWatchersVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumWatchers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumWatchers_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumWatchers_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumWatchers_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumWatchers_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumWatchers_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumWatchers_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumWatchers_Next_Proxy(IRTCEnumWatchers *This,ULONG celt,IRTCWatcher **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumWatchers_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumWatchers_Reset_Proxy(IRTCEnumWatchers *This); + void __RPC_STUB IRTCEnumWatchers_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumWatchers_Skip_Proxy(IRTCEnumWatchers *This,ULONG celt); + void __RPC_STUB IRTCEnumWatchers_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumWatchers_Clone_Proxy(IRTCEnumWatchers *This,IRTCEnumWatchers **ppEnum); + void __RPC_STUB IRTCEnumWatchers_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumGroups_INTERFACE_DEFINED__ +#define __IRTCEnumGroups_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumGroups; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumGroups : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCBuddyGroup **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumGroups **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumGroupsVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumGroups *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumGroups *This); + ULONG (WINAPI *Release)(IRTCEnumGroups *This); + HRESULT (WINAPI *Next)(IRTCEnumGroups *This,ULONG celt,IRTCBuddyGroup **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumGroups *This); + HRESULT (WINAPI *Skip)(IRTCEnumGroups *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumGroups *This,IRTCEnumGroups **ppEnum); + END_INTERFACE + } IRTCEnumGroupsVtbl; + struct IRTCEnumGroups { + CONST_VTBL struct IRTCEnumGroupsVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumGroups_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumGroups_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumGroups_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumGroups_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumGroups_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumGroups_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumGroups_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumGroups_Next_Proxy(IRTCEnumGroups *This,ULONG celt,IRTCBuddyGroup **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumGroups_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumGroups_Reset_Proxy(IRTCEnumGroups *This); + void __RPC_STUB IRTCEnumGroups_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumGroups_Skip_Proxy(IRTCEnumGroups *This,ULONG celt); + void __RPC_STUB IRTCEnumGroups_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumGroups_Clone_Proxy(IRTCEnumGroups *This,IRTCEnumGroups **ppEnum); + void __RPC_STUB IRTCEnumGroups_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif +#ifndef __IRTCPresenceContact_INTERFACE_DEFINED__ +#define __IRTCPresenceContact_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCPresenceContact; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCPresenceContact : public IUnknown { + public: + virtual HRESULT WINAPI get_PresentityURI(BSTR *pbstrPresentityURI) = 0; + virtual HRESULT WINAPI put_PresentityURI(BSTR bstrPresentityURI) = 0; + virtual HRESULT WINAPI get_Name(BSTR *pbstrName) = 0; + virtual HRESULT WINAPI put_Name(BSTR bstrName) = 0; + virtual HRESULT WINAPI get_Data(BSTR *pbstrData) = 0; + virtual HRESULT WINAPI put_Data(BSTR bstrData) = 0; + virtual HRESULT WINAPI get_Persistent(VARIANT_BOOL *pfPersistent) = 0; + virtual HRESULT WINAPI put_Persistent(VARIANT_BOOL fPersistent) = 0; + }; +#else + typedef struct IRTCPresenceContactVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCPresenceContact *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCPresenceContact *This); + ULONG (WINAPI *Release)(IRTCPresenceContact *This); + HRESULT (WINAPI *get_PresentityURI)(IRTCPresenceContact *This,BSTR *pbstrPresentityURI); + HRESULT (WINAPI *put_PresentityURI)(IRTCPresenceContact *This,BSTR bstrPresentityURI); + HRESULT (WINAPI *get_Name)(IRTCPresenceContact *This,BSTR *pbstrName); + HRESULT (WINAPI *put_Name)(IRTCPresenceContact *This,BSTR bstrName); + HRESULT (WINAPI *get_Data)(IRTCPresenceContact *This,BSTR *pbstrData); + HRESULT (WINAPI *put_Data)(IRTCPresenceContact *This,BSTR bstrData); + HRESULT (WINAPI *get_Persistent)(IRTCPresenceContact *This,VARIANT_BOOL *pfPersistent); + HRESULT (WINAPI *put_Persistent)(IRTCPresenceContact *This,VARIANT_BOOL fPersistent); + END_INTERFACE + } IRTCPresenceContactVtbl; + struct IRTCPresenceContact { + CONST_VTBL struct IRTCPresenceContactVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCPresenceContact_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCPresenceContact_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCPresenceContact_Release(This) (This)->lpVtbl->Release(This) +#define IRTCPresenceContact_get_PresentityURI(This,pbstrPresentityURI) (This)->lpVtbl->get_PresentityURI(This,pbstrPresentityURI) +#define IRTCPresenceContact_put_PresentityURI(This,bstrPresentityURI) (This)->lpVtbl->put_PresentityURI(This,bstrPresentityURI) +#define IRTCPresenceContact_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName) +#define IRTCPresenceContact_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName) +#define IRTCPresenceContact_get_Data(This,pbstrData) (This)->lpVtbl->get_Data(This,pbstrData) +#define IRTCPresenceContact_put_Data(This,bstrData) (This)->lpVtbl->put_Data(This,bstrData) +#define IRTCPresenceContact_get_Persistent(This,pfPersistent) (This)->lpVtbl->get_Persistent(This,pfPersistent) +#define IRTCPresenceContact_put_Persistent(This,fPersistent) (This)->lpVtbl->put_Persistent(This,fPersistent) +#endif +#endif + HRESULT WINAPI IRTCPresenceContact_get_PresentityURI_Proxy(IRTCPresenceContact *This,BSTR *pbstrPresentityURI); + void __RPC_STUB IRTCPresenceContact_get_PresentityURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_put_PresentityURI_Proxy(IRTCPresenceContact *This,BSTR bstrPresentityURI); + void __RPC_STUB IRTCPresenceContact_put_PresentityURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_get_Name_Proxy(IRTCPresenceContact *This,BSTR *pbstrName); + void __RPC_STUB IRTCPresenceContact_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_put_Name_Proxy(IRTCPresenceContact *This,BSTR bstrName); + void __RPC_STUB IRTCPresenceContact_put_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_get_Data_Proxy(IRTCPresenceContact *This,BSTR *pbstrData); + void __RPC_STUB IRTCPresenceContact_get_Data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_put_Data_Proxy(IRTCPresenceContact *This,BSTR bstrData); + void __RPC_STUB IRTCPresenceContact_put_Data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_get_Persistent_Proxy(IRTCPresenceContact *This,VARIANT_BOOL *pfPersistent); + void __RPC_STUB IRTCPresenceContact_get_Persistent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceContact_put_Persistent_Proxy(IRTCPresenceContact *This,VARIANT_BOOL fPersistent); + void __RPC_STUB IRTCPresenceContact_put_Persistent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCBuddy_INTERFACE_DEFINED__ +#define __IRTCBuddy_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCBuddy; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCBuddy : public IRTCPresenceContact { + public: + virtual HRESULT WINAPI get_Status(RTC_PRESENCE_STATUS *penStatus) = 0; + virtual HRESULT WINAPI get_Notes(BSTR *pbstrNotes) = 0; + }; +#else + typedef struct IRTCBuddyVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCBuddy *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCBuddy *This); + ULONG (WINAPI *Release)(IRTCBuddy *This); + HRESULT (WINAPI *get_PresentityURI)(IRTCBuddy *This,BSTR *pbstrPresentityURI); + HRESULT (WINAPI *put_PresentityURI)(IRTCBuddy *This,BSTR bstrPresentityURI); + HRESULT (WINAPI *get_Name)(IRTCBuddy *This,BSTR *pbstrName); + HRESULT (WINAPI *put_Name)(IRTCBuddy *This,BSTR bstrName); + HRESULT (WINAPI *get_Data)(IRTCBuddy *This,BSTR *pbstrData); + HRESULT (WINAPI *put_Data)(IRTCBuddy *This,BSTR bstrData); + HRESULT (WINAPI *get_Persistent)(IRTCBuddy *This,VARIANT_BOOL *pfPersistent); + HRESULT (WINAPI *put_Persistent)(IRTCBuddy *This,VARIANT_BOOL fPersistent); + HRESULT (WINAPI *get_Status)(IRTCBuddy *This,RTC_PRESENCE_STATUS *penStatus); + HRESULT (WINAPI *get_Notes)(IRTCBuddy *This,BSTR *pbstrNotes); + END_INTERFACE + } IRTCBuddyVtbl; + struct IRTCBuddy { + CONST_VTBL struct IRTCBuddyVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCBuddy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCBuddy_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCBuddy_Release(This) (This)->lpVtbl->Release(This) +#define IRTCBuddy_get_PresentityURI(This,pbstrPresentityURI) (This)->lpVtbl->get_PresentityURI(This,pbstrPresentityURI) +#define IRTCBuddy_put_PresentityURI(This,bstrPresentityURI) (This)->lpVtbl->put_PresentityURI(This,bstrPresentityURI) +#define IRTCBuddy_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName) +#define IRTCBuddy_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName) +#define IRTCBuddy_get_Data(This,pbstrData) (This)->lpVtbl->get_Data(This,pbstrData) +#define IRTCBuddy_put_Data(This,bstrData) (This)->lpVtbl->put_Data(This,bstrData) +#define IRTCBuddy_get_Persistent(This,pfPersistent) (This)->lpVtbl->get_Persistent(This,pfPersistent) +#define IRTCBuddy_put_Persistent(This,fPersistent) (This)->lpVtbl->put_Persistent(This,fPersistent) +#define IRTCBuddy_get_Status(This,penStatus) (This)->lpVtbl->get_Status(This,penStatus) +#define IRTCBuddy_get_Notes(This,pbstrNotes) (This)->lpVtbl->get_Notes(This,pbstrNotes) +#endif +#endif + HRESULT WINAPI IRTCBuddy_get_Status_Proxy(IRTCBuddy *This,RTC_PRESENCE_STATUS *penStatus); + void __RPC_STUB IRTCBuddy_get_Status_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy_get_Notes_Proxy(IRTCBuddy *This,BSTR *pbstrNotes); + void __RPC_STUB IRTCBuddy_get_Notes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCBuddy2_INTERFACE_DEFINED__ +#define __IRTCBuddy2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCBuddy2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCBuddy2 : public IRTCBuddy { + public: + virtual HRESULT WINAPI get_Profile(IRTCProfile2 **ppProfile) = 0; + virtual HRESULT WINAPI Refresh(void) = 0; + virtual HRESULT WINAPI EnumerateGroups(IRTCEnumGroups **ppEnum) = 0; + virtual HRESULT WINAPI get_Groups(IRTCCollection **ppCollection) = 0; + virtual HRESULT WINAPI get_PresenceProperty(RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty) = 0; + virtual HRESULT WINAPI EnumeratePresenceDevices(IRTCEnumPresenceDevices **ppEnumDevices) = 0; + virtual HRESULT WINAPI get_PresenceDevices(IRTCCollection **ppDevicesCollection) = 0; + virtual HRESULT WINAPI get_SubscriptionType(RTC_BUDDY_SUBSCRIPTION_TYPE *penSubscriptionType) = 0; + }; +#else + typedef struct IRTCBuddy2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCBuddy2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCBuddy2 *This); + ULONG (WINAPI *Release)(IRTCBuddy2 *This); + HRESULT (WINAPI *get_PresentityURI)(IRTCBuddy2 *This,BSTR *pbstrPresentityURI); + HRESULT (WINAPI *put_PresentityURI)(IRTCBuddy2 *This,BSTR bstrPresentityURI); + HRESULT (WINAPI *get_Name)(IRTCBuddy2 *This,BSTR *pbstrName); + HRESULT (WINAPI *put_Name)(IRTCBuddy2 *This,BSTR bstrName); + HRESULT (WINAPI *get_Data)(IRTCBuddy2 *This,BSTR *pbstrData); + HRESULT (WINAPI *put_Data)(IRTCBuddy2 *This,BSTR bstrData); + HRESULT (WINAPI *get_Persistent)(IRTCBuddy2 *This,VARIANT_BOOL *pfPersistent); + HRESULT (WINAPI *put_Persistent)(IRTCBuddy2 *This,VARIANT_BOOL fPersistent); + HRESULT (WINAPI *get_Status)(IRTCBuddy2 *This,RTC_PRESENCE_STATUS *penStatus); + HRESULT (WINAPI *get_Notes)(IRTCBuddy2 *This,BSTR *pbstrNotes); + HRESULT (WINAPI *get_Profile)(IRTCBuddy2 *This,IRTCProfile2 **ppProfile); + HRESULT (WINAPI *Refresh)(IRTCBuddy2 *This); + HRESULT (WINAPI *EnumerateGroups)(IRTCBuddy2 *This,IRTCEnumGroups **ppEnum); + HRESULT (WINAPI *get_Groups)(IRTCBuddy2 *This,IRTCCollection **ppCollection); + HRESULT (WINAPI *get_PresenceProperty)(IRTCBuddy2 *This,RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty); + HRESULT (WINAPI *EnumeratePresenceDevices)(IRTCBuddy2 *This,IRTCEnumPresenceDevices **ppEnumDevices); + HRESULT (WINAPI *get_PresenceDevices)(IRTCBuddy2 *This,IRTCCollection **ppDevicesCollection); + HRESULT (WINAPI *get_SubscriptionType)(IRTCBuddy2 *This,RTC_BUDDY_SUBSCRIPTION_TYPE *penSubscriptionType); + END_INTERFACE + } IRTCBuddy2Vtbl; + struct IRTCBuddy2 { + CONST_VTBL struct IRTCBuddy2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCBuddy2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCBuddy2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCBuddy2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCBuddy2_get_PresentityURI(This,pbstrPresentityURI) (This)->lpVtbl->get_PresentityURI(This,pbstrPresentityURI) +#define IRTCBuddy2_put_PresentityURI(This,bstrPresentityURI) (This)->lpVtbl->put_PresentityURI(This,bstrPresentityURI) +#define IRTCBuddy2_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName) +#define IRTCBuddy2_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName) +#define IRTCBuddy2_get_Data(This,pbstrData) (This)->lpVtbl->get_Data(This,pbstrData) +#define IRTCBuddy2_put_Data(This,bstrData) (This)->lpVtbl->put_Data(This,bstrData) +#define IRTCBuddy2_get_Persistent(This,pfPersistent) (This)->lpVtbl->get_Persistent(This,pfPersistent) +#define IRTCBuddy2_put_Persistent(This,fPersistent) (This)->lpVtbl->put_Persistent(This,fPersistent) +#define IRTCBuddy2_get_Status(This,penStatus) (This)->lpVtbl->get_Status(This,penStatus) +#define IRTCBuddy2_get_Notes(This,pbstrNotes) (This)->lpVtbl->get_Notes(This,pbstrNotes) +#define IRTCBuddy2_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCBuddy2_Refresh(This) (This)->lpVtbl->Refresh(This) +#define IRTCBuddy2_EnumerateGroups(This,ppEnum) (This)->lpVtbl->EnumerateGroups(This,ppEnum) +#define IRTCBuddy2_get_Groups(This,ppCollection) (This)->lpVtbl->get_Groups(This,ppCollection) +#define IRTCBuddy2_get_PresenceProperty(This,enProperty,pbstrProperty) (This)->lpVtbl->get_PresenceProperty(This,enProperty,pbstrProperty) +#define IRTCBuddy2_EnumeratePresenceDevices(This,ppEnumDevices) (This)->lpVtbl->EnumeratePresenceDevices(This,ppEnumDevices) +#define IRTCBuddy2_get_PresenceDevices(This,ppDevicesCollection) (This)->lpVtbl->get_PresenceDevices(This,ppDevicesCollection) +#define IRTCBuddy2_get_SubscriptionType(This,penSubscriptionType) (This)->lpVtbl->get_SubscriptionType(This,penSubscriptionType) +#endif +#endif + HRESULT WINAPI IRTCBuddy2_get_Profile_Proxy(IRTCBuddy2 *This,IRTCProfile2 **ppProfile); + void __RPC_STUB IRTCBuddy2_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_Refresh_Proxy(IRTCBuddy2 *This); + void __RPC_STUB IRTCBuddy2_Refresh_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_EnumerateGroups_Proxy(IRTCBuddy2 *This,IRTCEnumGroups **ppEnum); + void __RPC_STUB IRTCBuddy2_EnumerateGroups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_get_Groups_Proxy(IRTCBuddy2 *This,IRTCCollection **ppCollection); + void __RPC_STUB IRTCBuddy2_get_Groups_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_get_PresenceProperty_Proxy(IRTCBuddy2 *This,RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty); + void __RPC_STUB IRTCBuddy2_get_PresenceProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_EnumeratePresenceDevices_Proxy(IRTCBuddy2 *This,IRTCEnumPresenceDevices **ppEnumDevices); + void __RPC_STUB IRTCBuddy2_EnumeratePresenceDevices_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_get_PresenceDevices_Proxy(IRTCBuddy2 *This,IRTCCollection **ppDevicesCollection); + void __RPC_STUB IRTCBuddy2_get_PresenceDevices_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddy2_get_SubscriptionType_Proxy(IRTCBuddy2 *This,RTC_BUDDY_SUBSCRIPTION_TYPE *penSubscriptionType); + void __RPC_STUB IRTCBuddy2_get_SubscriptionType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCWatcher_INTERFACE_DEFINED__ +#define __IRTCWatcher_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCWatcher; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCWatcher : public IRTCPresenceContact { + public: + virtual HRESULT WINAPI get_State(RTC_WATCHER_STATE *penState) = 0; + virtual HRESULT WINAPI put_State(RTC_WATCHER_STATE enState) = 0; + }; +#else + typedef struct IRTCWatcherVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCWatcher *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCWatcher *This); + ULONG (WINAPI *Release)(IRTCWatcher *This); + HRESULT (WINAPI *get_PresentityURI)(IRTCWatcher *This,BSTR *pbstrPresentityURI); + HRESULT (WINAPI *put_PresentityURI)(IRTCWatcher *This,BSTR bstrPresentityURI); + HRESULT (WINAPI *get_Name)(IRTCWatcher *This,BSTR *pbstrName); + HRESULT (WINAPI *put_Name)(IRTCWatcher *This,BSTR bstrName); + HRESULT (WINAPI *get_Data)(IRTCWatcher *This,BSTR *pbstrData); + HRESULT (WINAPI *put_Data)(IRTCWatcher *This,BSTR bstrData); + HRESULT (WINAPI *get_Persistent)(IRTCWatcher *This,VARIANT_BOOL *pfPersistent); + HRESULT (WINAPI *put_Persistent)(IRTCWatcher *This,VARIANT_BOOL fPersistent); + HRESULT (WINAPI *get_State)(IRTCWatcher *This,RTC_WATCHER_STATE *penState); + HRESULT (WINAPI *put_State)(IRTCWatcher *This,RTC_WATCHER_STATE enState); + END_INTERFACE + } IRTCWatcherVtbl; + struct IRTCWatcher { + CONST_VTBL struct IRTCWatcherVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCWatcher_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCWatcher_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCWatcher_Release(This) (This)->lpVtbl->Release(This) +#define IRTCWatcher_get_PresentityURI(This,pbstrPresentityURI) (This)->lpVtbl->get_PresentityURI(This,pbstrPresentityURI) +#define IRTCWatcher_put_PresentityURI(This,bstrPresentityURI) (This)->lpVtbl->put_PresentityURI(This,bstrPresentityURI) +#define IRTCWatcher_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName) +#define IRTCWatcher_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName) +#define IRTCWatcher_get_Data(This,pbstrData) (This)->lpVtbl->get_Data(This,pbstrData) +#define IRTCWatcher_put_Data(This,bstrData) (This)->lpVtbl->put_Data(This,bstrData) +#define IRTCWatcher_get_Persistent(This,pfPersistent) (This)->lpVtbl->get_Persistent(This,pfPersistent) +#define IRTCWatcher_put_Persistent(This,fPersistent) (This)->lpVtbl->put_Persistent(This,fPersistent) +#define IRTCWatcher_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCWatcher_put_State(This,enState) (This)->lpVtbl->put_State(This,enState) +#endif +#endif + HRESULT WINAPI IRTCWatcher_get_State_Proxy(IRTCWatcher *This,RTC_WATCHER_STATE *penState); + void __RPC_STUB IRTCWatcher_get_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCWatcher_put_State_Proxy(IRTCWatcher *This,RTC_WATCHER_STATE enState); + void __RPC_STUB IRTCWatcher_put_State_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCWatcher2_INTERFACE_DEFINED__ +#define __IRTCWatcher2_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCWatcher2; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCWatcher2 : public IRTCWatcher { + public: + virtual HRESULT WINAPI get_Profile(IRTCProfile2 **ppProfile) = 0; + virtual HRESULT WINAPI get_Scope(RTC_ACE_SCOPE *penScope) = 0; + }; +#else + typedef struct IRTCWatcher2Vtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCWatcher2 *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCWatcher2 *This); + ULONG (WINAPI *Release)(IRTCWatcher2 *This); + HRESULT (WINAPI *get_PresentityURI)(IRTCWatcher2 *This,BSTR *pbstrPresentityURI); + HRESULT (WINAPI *put_PresentityURI)(IRTCWatcher2 *This,BSTR bstrPresentityURI); + HRESULT (WINAPI *get_Name)(IRTCWatcher2 *This,BSTR *pbstrName); + HRESULT (WINAPI *put_Name)(IRTCWatcher2 *This,BSTR bstrName); + HRESULT (WINAPI *get_Data)(IRTCWatcher2 *This,BSTR *pbstrData); + HRESULT (WINAPI *put_Data)(IRTCWatcher2 *This,BSTR bstrData); + HRESULT (WINAPI *get_Persistent)(IRTCWatcher2 *This,VARIANT_BOOL *pfPersistent); + HRESULT (WINAPI *put_Persistent)(IRTCWatcher2 *This,VARIANT_BOOL fPersistent); + HRESULT (WINAPI *get_State)(IRTCWatcher2 *This,RTC_WATCHER_STATE *penState); + HRESULT (WINAPI *put_State)(IRTCWatcher2 *This,RTC_WATCHER_STATE enState); + HRESULT (WINAPI *get_Profile)(IRTCWatcher2 *This,IRTCProfile2 **ppProfile); + HRESULT (WINAPI *get_Scope)(IRTCWatcher2 *This,RTC_ACE_SCOPE *penScope); + END_INTERFACE + } IRTCWatcher2Vtbl; + struct IRTCWatcher2 { + CONST_VTBL struct IRTCWatcher2Vtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCWatcher2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCWatcher2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCWatcher2_Release(This) (This)->lpVtbl->Release(This) +#define IRTCWatcher2_get_PresentityURI(This,pbstrPresentityURI) (This)->lpVtbl->get_PresentityURI(This,pbstrPresentityURI) +#define IRTCWatcher2_put_PresentityURI(This,bstrPresentityURI) (This)->lpVtbl->put_PresentityURI(This,bstrPresentityURI) +#define IRTCWatcher2_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName) +#define IRTCWatcher2_put_Name(This,bstrName) (This)->lpVtbl->put_Name(This,bstrName) +#define IRTCWatcher2_get_Data(This,pbstrData) (This)->lpVtbl->get_Data(This,pbstrData) +#define IRTCWatcher2_put_Data(This,bstrData) (This)->lpVtbl->put_Data(This,bstrData) +#define IRTCWatcher2_get_Persistent(This,pfPersistent) (This)->lpVtbl->get_Persistent(This,pfPersistent) +#define IRTCWatcher2_put_Persistent(This,fPersistent) (This)->lpVtbl->put_Persistent(This,fPersistent) +#define IRTCWatcher2_get_State(This,penState) (This)->lpVtbl->get_State(This,penState) +#define IRTCWatcher2_put_State(This,enState) (This)->lpVtbl->put_State(This,enState) +#define IRTCWatcher2_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCWatcher2_get_Scope(This,penScope) (This)->lpVtbl->get_Scope(This,penScope) +#endif +#endif + HRESULT WINAPI IRTCWatcher2_get_Profile_Proxy(IRTCWatcher2 *This,IRTCProfile2 **ppProfile); + void __RPC_STUB IRTCWatcher2_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCWatcher2_get_Scope_Proxy(IRTCWatcher2 *This,RTC_ACE_SCOPE *penScope); + void __RPC_STUB IRTCWatcher2_get_Scope_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCBuddyGroup_INTERFACE_DEFINED__ +#define __IRTCBuddyGroup_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCBuddyGroup; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCBuddyGroup : public IUnknown { + public: + virtual HRESULT WINAPI get_Name(BSTR *pbstrGroupName) = 0; + virtual HRESULT WINAPI put_Name(BSTR bstrGroupName) = 0; + virtual HRESULT WINAPI AddBuddy(IRTCBuddy *pBuddy) = 0; + virtual HRESULT WINAPI RemoveBuddy(IRTCBuddy *pBuddy) = 0; + virtual HRESULT WINAPI EnumerateBuddies(IRTCEnumBuddies **ppEnum) = 0; + virtual HRESULT WINAPI get_Buddies(IRTCCollection **ppCollection) = 0; + virtual HRESULT WINAPI get_Data(BSTR *pbstrData) = 0; + virtual HRESULT WINAPI put_Data(BSTR bstrData) = 0; + virtual HRESULT WINAPI get_Profile(IRTCProfile2 **ppProfile) = 0; + }; +#else + typedef struct IRTCBuddyGroupVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCBuddyGroup *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCBuddyGroup *This); + ULONG (WINAPI *Release)(IRTCBuddyGroup *This); + HRESULT (WINAPI *get_Name)(IRTCBuddyGroup *This,BSTR *pbstrGroupName); + HRESULT (WINAPI *put_Name)(IRTCBuddyGroup *This,BSTR bstrGroupName); + HRESULT (WINAPI *AddBuddy)(IRTCBuddyGroup *This,IRTCBuddy *pBuddy); + HRESULT (WINAPI *RemoveBuddy)(IRTCBuddyGroup *This,IRTCBuddy *pBuddy); + HRESULT (WINAPI *EnumerateBuddies)(IRTCBuddyGroup *This,IRTCEnumBuddies **ppEnum); + HRESULT (WINAPI *get_Buddies)(IRTCBuddyGroup *This,IRTCCollection **ppCollection); + HRESULT (WINAPI *get_Data)(IRTCBuddyGroup *This,BSTR *pbstrData); + HRESULT (WINAPI *put_Data)(IRTCBuddyGroup *This,BSTR bstrData); + HRESULT (WINAPI *get_Profile)(IRTCBuddyGroup *This,IRTCProfile2 **ppProfile); + END_INTERFACE + } IRTCBuddyGroupVtbl; + struct IRTCBuddyGroup { + CONST_VTBL struct IRTCBuddyGroupVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCBuddyGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCBuddyGroup_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCBuddyGroup_Release(This) (This)->lpVtbl->Release(This) +#define IRTCBuddyGroup_get_Name(This,pbstrGroupName) (This)->lpVtbl->get_Name(This,pbstrGroupName) +#define IRTCBuddyGroup_put_Name(This,bstrGroupName) (This)->lpVtbl->put_Name(This,bstrGroupName) +#define IRTCBuddyGroup_AddBuddy(This,pBuddy) (This)->lpVtbl->AddBuddy(This,pBuddy) +#define IRTCBuddyGroup_RemoveBuddy(This,pBuddy) (This)->lpVtbl->RemoveBuddy(This,pBuddy) +#define IRTCBuddyGroup_EnumerateBuddies(This,ppEnum) (This)->lpVtbl->EnumerateBuddies(This,ppEnum) +#define IRTCBuddyGroup_get_Buddies(This,ppCollection) (This)->lpVtbl->get_Buddies(This,ppCollection) +#define IRTCBuddyGroup_get_Data(This,pbstrData) (This)->lpVtbl->get_Data(This,pbstrData) +#define IRTCBuddyGroup_put_Data(This,bstrData) (This)->lpVtbl->put_Data(This,bstrData) +#define IRTCBuddyGroup_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#endif +#endif + HRESULT WINAPI IRTCBuddyGroup_get_Name_Proxy(IRTCBuddyGroup *This,BSTR *pbstrGroupName); + void __RPC_STUB IRTCBuddyGroup_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_put_Name_Proxy(IRTCBuddyGroup *This,BSTR bstrGroupName); + void __RPC_STUB IRTCBuddyGroup_put_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_AddBuddy_Proxy(IRTCBuddyGroup *This,IRTCBuddy *pBuddy); + void __RPC_STUB IRTCBuddyGroup_AddBuddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_RemoveBuddy_Proxy(IRTCBuddyGroup *This,IRTCBuddy *pBuddy); + void __RPC_STUB IRTCBuddyGroup_RemoveBuddy_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_EnumerateBuddies_Proxy(IRTCBuddyGroup *This,IRTCEnumBuddies **ppEnum); + void __RPC_STUB IRTCBuddyGroup_EnumerateBuddies_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_get_Buddies_Proxy(IRTCBuddyGroup *This,IRTCCollection **ppCollection); + void __RPC_STUB IRTCBuddyGroup_get_Buddies_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_get_Data_Proxy(IRTCBuddyGroup *This,BSTR *pbstrData); + void __RPC_STUB IRTCBuddyGroup_get_Data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_put_Data_Proxy(IRTCBuddyGroup *This,BSTR bstrData); + void __RPC_STUB IRTCBuddyGroup_put_Data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCBuddyGroup_get_Profile_Proxy(IRTCBuddyGroup *This,IRTCProfile2 **ppProfile); + void __RPC_STUB IRTCBuddyGroup_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEventNotification_INTERFACE_DEFINED__ +#define __IRTCEventNotification_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEventNotification; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEventNotification : public IUnknown { + public: + virtual HRESULT WINAPI Event(RTC_EVENT RTCEvent,IDispatch *pEvent) = 0; + }; +#else + typedef struct IRTCEventNotificationVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEventNotification *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEventNotification *This); + ULONG (WINAPI *Release)(IRTCEventNotification *This); + HRESULT (WINAPI *Event)(IRTCEventNotification *This,RTC_EVENT RTCEvent,IDispatch *pEvent); + END_INTERFACE + } IRTCEventNotificationVtbl; + struct IRTCEventNotification { + CONST_VTBL struct IRTCEventNotificationVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEventNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEventNotification_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEventNotification_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEventNotification_Event(This,RTCEvent,pEvent) (This)->lpVtbl->Event(This,RTCEvent,pEvent) +#endif +#endif + HRESULT WINAPI IRTCEventNotification_Event_Proxy(IRTCEventNotification *This,RTC_EVENT RTCEvent,IDispatch *pEvent); + void __RPC_STUB IRTCEventNotification_Event_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCPortManager_INTERFACE_DEFINED__ +#define __IRTCPortManager_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCPortManager; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCPortManager : public IUnknown { + public: + virtual HRESULT WINAPI GetMapping(BSTR bstrRemoteAddress,RTC_PORT_TYPE enPortType,BSTR *pbstrInternalLocalAddress,long *plInternalLocalPort,BSTR *pbstrExternalLocalAddress,long *plExternalLocalPort) = 0; + virtual HRESULT WINAPI UpdateRemoteAddress(BSTR bstrRemoteAddress,BSTR bstrInternalLocalAddress,long lInternalLocalPort,BSTR bstrExternalLocalAddress,long lExternalLocalPort) = 0; + virtual HRESULT WINAPI ReleaseMapping(BSTR bstrInternalLocalAddress,long lInternalLocalPort,BSTR bstrExternalLocalAddress,long lExternalLocalAddress) = 0; + }; +#else + typedef struct IRTCPortManagerVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCPortManager *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCPortManager *This); + ULONG (WINAPI *Release)(IRTCPortManager *This); + HRESULT (WINAPI *GetMapping)(IRTCPortManager *This,BSTR bstrRemoteAddress,RTC_PORT_TYPE enPortType,BSTR *pbstrInternalLocalAddress,long *plInternalLocalPort,BSTR *pbstrExternalLocalAddress,long *plExternalLocalPort); + HRESULT (WINAPI *UpdateRemoteAddress)(IRTCPortManager *This,BSTR bstrRemoteAddress,BSTR bstrInternalLocalAddress,long lInternalLocalPort,BSTR bstrExternalLocalAddress,long lExternalLocalPort); + HRESULT (WINAPI *ReleaseMapping)(IRTCPortManager *This,BSTR bstrInternalLocalAddress,long lInternalLocalPort,BSTR bstrExternalLocalAddress,long lExternalLocalAddress); + END_INTERFACE + } IRTCPortManagerVtbl; + struct IRTCPortManager { + CONST_VTBL struct IRTCPortManagerVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCPortManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCPortManager_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCPortManager_Release(This) (This)->lpVtbl->Release(This) +#define IRTCPortManager_GetMapping(This,bstrRemoteAddress,enPortType,pbstrInternalLocalAddress,plInternalLocalPort,pbstrExternalLocalAddress,plExternalLocalPort) (This)->lpVtbl->GetMapping(This,bstrRemoteAddress,enPortType,pbstrInternalLocalAddress,plInternalLocalPort,pbstrExternalLocalAddress,plExternalLocalPort) +#define IRTCPortManager_UpdateRemoteAddress(This,bstrRemoteAddress,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalPort) (This)->lpVtbl->UpdateRemoteAddress(This,bstrRemoteAddress,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalPort) +#define IRTCPortManager_ReleaseMapping(This,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalAddress) (This)->lpVtbl->ReleaseMapping(This,bstrInternalLocalAddress,lInternalLocalPort,bstrExternalLocalAddress,lExternalLocalAddress) +#endif +#endif + HRESULT WINAPI IRTCPortManager_GetMapping_Proxy(IRTCPortManager *This,BSTR bstrRemoteAddress,RTC_PORT_TYPE enPortType,BSTR *pbstrInternalLocalAddress,long *plInternalLocalPort,BSTR *pbstrExternalLocalAddress,long *plExternalLocalPort); + void __RPC_STUB IRTCPortManager_GetMapping_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPortManager_UpdateRemoteAddress_Proxy(IRTCPortManager *This,BSTR bstrRemoteAddress,BSTR bstrInternalLocalAddress,long lInternalLocalPort,BSTR bstrExternalLocalAddress,long lExternalLocalPort); + void __RPC_STUB IRTCPortManager_UpdateRemoteAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPortManager_ReleaseMapping_Proxy(IRTCPortManager *This,BSTR bstrInternalLocalAddress,long lInternalLocalPort,BSTR bstrExternalLocalAddress,long lExternalLocalAddress); + void __RPC_STUB IRTCPortManager_ReleaseMapping_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionPortManagement_INTERFACE_DEFINED__ +#define __IRTCSessionPortManagement_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionPortManagement; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionPortManagement : public IUnknown { + public: + virtual HRESULT WINAPI SetPortManager(IRTCPortManager *pPortManager) = 0; + }; +#else + typedef struct IRTCSessionPortManagementVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionPortManagement *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionPortManagement *This); + ULONG (WINAPI *Release)(IRTCSessionPortManagement *This); + HRESULT (WINAPI *SetPortManager)(IRTCSessionPortManagement *This,IRTCPortManager *pPortManager); + END_INTERFACE + } IRTCSessionPortManagementVtbl; + struct IRTCSessionPortManagement { + CONST_VTBL struct IRTCSessionPortManagementVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionPortManagement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionPortManagement_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionPortManagement_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionPortManagement_SetPortManager(This,pPortManager) (This)->lpVtbl->SetPortManager(This,pPortManager) +#endif +#endif + HRESULT WINAPI IRTCSessionPortManagement_SetPortManager_Proxy(IRTCSessionPortManagement *This,IRTCPortManager *pPortManager); + void __RPC_STUB IRTCSessionPortManagement_SetPortManager_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCClientPortManagement_INTERFACE_DEFINED__ +#define __IRTCClientPortManagement_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCClientPortManagement; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCClientPortManagement : public IUnknown { + public: + virtual HRESULT WINAPI StartListenAddressAndPort(BSTR bstrInternalLocalAddress,long lInternalLocalPort) = 0; + virtual HRESULT WINAPI StopListenAddressAndPort(BSTR bstrInternalLocalAddress,long lInternalLocalPort) = 0; + virtual HRESULT WINAPI GetPortRange(RTC_PORT_TYPE enPortType,long *plMinValue,long *plMaxValue) = 0; + }; +#else + typedef struct IRTCClientPortManagementVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCClientPortManagement *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCClientPortManagement *This); + ULONG (WINAPI *Release)(IRTCClientPortManagement *This); + HRESULT (WINAPI *StartListenAddressAndPort)(IRTCClientPortManagement *This,BSTR bstrInternalLocalAddress,long lInternalLocalPort); + HRESULT (WINAPI *StopListenAddressAndPort)(IRTCClientPortManagement *This,BSTR bstrInternalLocalAddress,long lInternalLocalPort); + HRESULT (WINAPI *GetPortRange)(IRTCClientPortManagement *This,RTC_PORT_TYPE enPortType,long *plMinValue,long *plMaxValue); + END_INTERFACE + } IRTCClientPortManagementVtbl; + struct IRTCClientPortManagement { + CONST_VTBL struct IRTCClientPortManagementVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCClientPortManagement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCClientPortManagement_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCClientPortManagement_Release(This) (This)->lpVtbl->Release(This) +#define IRTCClientPortManagement_StartListenAddressAndPort(This,bstrInternalLocalAddress,lInternalLocalPort) (This)->lpVtbl->StartListenAddressAndPort(This,bstrInternalLocalAddress,lInternalLocalPort) +#define IRTCClientPortManagement_StopListenAddressAndPort(This,bstrInternalLocalAddress,lInternalLocalPort) (This)->lpVtbl->StopListenAddressAndPort(This,bstrInternalLocalAddress,lInternalLocalPort) +#define IRTCClientPortManagement_GetPortRange(This,enPortType,plMinValue,plMaxValue) (This)->lpVtbl->GetPortRange(This,enPortType,plMinValue,plMaxValue) +#endif +#endif + HRESULT WINAPI IRTCClientPortManagement_StartListenAddressAndPort_Proxy(IRTCClientPortManagement *This,BSTR bstrInternalLocalAddress,long lInternalLocalPort); + void __RPC_STUB IRTCClientPortManagement_StartListenAddressAndPort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCClientPortManagement_StopListenAddressAndPort_Proxy(IRTCClientPortManagement *This,BSTR bstrInternalLocalAddress,long lInternalLocalPort); + void __RPC_STUB IRTCClientPortManagement_StopListenAddressAndPort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCClientPortManagement_GetPortRange_Proxy(IRTCClientPortManagement *This,RTC_PORT_TYPE enPortType,long *plMinValue,long *plMaxValue); + void __RPC_STUB IRTCClientPortManagement_GetPortRange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCUserSearch_INTERFACE_DEFINED__ +#define __IRTCUserSearch_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCUserSearch; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCUserSearch : public IUnknown { + public: + virtual HRESULT WINAPI CreateQuery(IRTCUserSearchQuery **ppQuery) = 0; + virtual HRESULT WINAPI ExecuteSearch(IRTCUserSearchQuery *pQuery,IRTCProfile *pProfile,LONG_PTR lCookie) = 0; + }; +#else + typedef struct IRTCUserSearchVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCUserSearch *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCUserSearch *This); + ULONG (WINAPI *Release)(IRTCUserSearch *This); + HRESULT (WINAPI *CreateQuery)(IRTCUserSearch *This,IRTCUserSearchQuery **ppQuery); + HRESULT (WINAPI *ExecuteSearch)(IRTCUserSearch *This,IRTCUserSearchQuery *pQuery,IRTCProfile *pProfile,LONG_PTR lCookie); + END_INTERFACE + } IRTCUserSearchVtbl; + struct IRTCUserSearch { + CONST_VTBL struct IRTCUserSearchVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCUserSearch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCUserSearch_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCUserSearch_Release(This) (This)->lpVtbl->Release(This) +#define IRTCUserSearch_CreateQuery(This,ppQuery) (This)->lpVtbl->CreateQuery(This,ppQuery) +#define IRTCUserSearch_ExecuteSearch(This,pQuery,pProfile,lCookie) (This)->lpVtbl->ExecuteSearch(This,pQuery,pProfile,lCookie) +#endif +#endif + HRESULT WINAPI IRTCUserSearch_CreateQuery_Proxy(IRTCUserSearch *This,IRTCUserSearchQuery **ppQuery); + void __RPC_STUB IRTCUserSearch_CreateQuery_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearch_ExecuteSearch_Proxy(IRTCUserSearch *This,IRTCUserSearchQuery *pQuery,IRTCProfile *pProfile,LONG_PTR lCookie); + void __RPC_STUB IRTCUserSearch_ExecuteSearch_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCUserSearchQuery_INTERFACE_DEFINED__ +#define __IRTCUserSearchQuery_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCUserSearchQuery; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCUserSearchQuery : public IUnknown { + public: + virtual HRESULT WINAPI put_SearchTerm(BSTR bstrName,BSTR bstrValue) = 0; + virtual HRESULT WINAPI get_SearchTerm(BSTR bstrName,BSTR *pbstrValue) = 0; + virtual HRESULT WINAPI get_SearchTerms(BSTR *pbstrNames) = 0; + virtual HRESULT WINAPI put_SearchPreference(RTC_USER_SEARCH_PREFERENCE enPreference,long lValue) = 0; + virtual HRESULT WINAPI get_SearchPreference(RTC_USER_SEARCH_PREFERENCE enPreference,long *plValue) = 0; + virtual HRESULT WINAPI put_SearchDomain(BSTR bstrDomain) = 0; + virtual HRESULT WINAPI get_SearchDomain(BSTR *pbstrDomain) = 0; + }; +#else + typedef struct IRTCUserSearchQueryVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCUserSearchQuery *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCUserSearchQuery *This); + ULONG (WINAPI *Release)(IRTCUserSearchQuery *This); + HRESULT (WINAPI *put_SearchTerm)(IRTCUserSearchQuery *This,BSTR bstrName,BSTR bstrValue); + HRESULT (WINAPI *get_SearchTerm)(IRTCUserSearchQuery *This,BSTR bstrName,BSTR *pbstrValue); + HRESULT (WINAPI *get_SearchTerms)(IRTCUserSearchQuery *This,BSTR *pbstrNames); + HRESULT (WINAPI *put_SearchPreference)(IRTCUserSearchQuery *This,RTC_USER_SEARCH_PREFERENCE enPreference,long lValue); + HRESULT (WINAPI *get_SearchPreference)(IRTCUserSearchQuery *This,RTC_USER_SEARCH_PREFERENCE enPreference,long *plValue); + HRESULT (WINAPI *put_SearchDomain)(IRTCUserSearchQuery *This,BSTR bstrDomain); + HRESULT (WINAPI *get_SearchDomain)(IRTCUserSearchQuery *This,BSTR *pbstrDomain); + END_INTERFACE + } IRTCUserSearchQueryVtbl; + struct IRTCUserSearchQuery { + CONST_VTBL struct IRTCUserSearchQueryVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCUserSearchQuery_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCUserSearchQuery_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCUserSearchQuery_Release(This) (This)->lpVtbl->Release(This) +#define IRTCUserSearchQuery_put_SearchTerm(This,bstrName,bstrValue) (This)->lpVtbl->put_SearchTerm(This,bstrName,bstrValue) +#define IRTCUserSearchQuery_get_SearchTerm(This,bstrName,pbstrValue) (This)->lpVtbl->get_SearchTerm(This,bstrName,pbstrValue) +#define IRTCUserSearchQuery_get_SearchTerms(This,pbstrNames) (This)->lpVtbl->get_SearchTerms(This,pbstrNames) +#define IRTCUserSearchQuery_put_SearchPreference(This,enPreference,lValue) (This)->lpVtbl->put_SearchPreference(This,enPreference,lValue) +#define IRTCUserSearchQuery_get_SearchPreference(This,enPreference,plValue) (This)->lpVtbl->get_SearchPreference(This,enPreference,plValue) +#define IRTCUserSearchQuery_put_SearchDomain(This,bstrDomain) (This)->lpVtbl->put_SearchDomain(This,bstrDomain) +#define IRTCUserSearchQuery_get_SearchDomain(This,pbstrDomain) (This)->lpVtbl->get_SearchDomain(This,pbstrDomain) +#endif +#endif + HRESULT WINAPI IRTCUserSearchQuery_put_SearchTerm_Proxy(IRTCUserSearchQuery *This,BSTR bstrName,BSTR bstrValue); + void __RPC_STUB IRTCUserSearchQuery_put_SearchTerm_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchQuery_get_SearchTerm_Proxy(IRTCUserSearchQuery *This,BSTR bstrName,BSTR *pbstrValue); + void __RPC_STUB IRTCUserSearchQuery_get_SearchTerm_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchQuery_get_SearchTerms_Proxy(IRTCUserSearchQuery *This,BSTR *pbstrNames); + void __RPC_STUB IRTCUserSearchQuery_get_SearchTerms_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchQuery_put_SearchPreference_Proxy(IRTCUserSearchQuery *This,RTC_USER_SEARCH_PREFERENCE enPreference,long lValue); + void __RPC_STUB IRTCUserSearchQuery_put_SearchPreference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchQuery_get_SearchPreference_Proxy(IRTCUserSearchQuery *This,RTC_USER_SEARCH_PREFERENCE enPreference,long *plValue); + void __RPC_STUB IRTCUserSearchQuery_get_SearchPreference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchQuery_put_SearchDomain_Proxy(IRTCUserSearchQuery *This,BSTR bstrDomain); + void __RPC_STUB IRTCUserSearchQuery_put_SearchDomain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchQuery_get_SearchDomain_Proxy(IRTCUserSearchQuery *This,BSTR *pbstrDomain); + void __RPC_STUB IRTCUserSearchQuery_get_SearchDomain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCUserSearchResult_INTERFACE_DEFINED__ +#define __IRTCUserSearchResult_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCUserSearchResult; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCUserSearchResult : public IUnknown { + public: + virtual HRESULT WINAPI get_Value(RTC_USER_SEARCH_COLUMN enColumn,BSTR *pbstrValue) = 0; + }; +#else + typedef struct IRTCUserSearchResultVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCUserSearchResult *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCUserSearchResult *This); + ULONG (WINAPI *Release)(IRTCUserSearchResult *This); + HRESULT (WINAPI *get_Value)(IRTCUserSearchResult *This,RTC_USER_SEARCH_COLUMN enColumn,BSTR *pbstrValue); + END_INTERFACE + } IRTCUserSearchResultVtbl; + struct IRTCUserSearchResult { + CONST_VTBL struct IRTCUserSearchResultVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCUserSearchResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCUserSearchResult_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCUserSearchResult_Release(This) (This)->lpVtbl->Release(This) +#define IRTCUserSearchResult_get_Value(This,enColumn,pbstrValue) (This)->lpVtbl->get_Value(This,enColumn,pbstrValue) +#endif +#endif + HRESULT WINAPI IRTCUserSearchResult_get_Value_Proxy(IRTCUserSearchResult *This,RTC_USER_SEARCH_COLUMN enColumn,BSTR *pbstrValue); + void __RPC_STUB IRTCUserSearchResult_get_Value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumUserSearchResults_INTERFACE_DEFINED__ +#define __IRTCEnumUserSearchResults_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumUserSearchResults; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumUserSearchResults : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCUserSearchResult **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumUserSearchResults **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumUserSearchResultsVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumUserSearchResults *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumUserSearchResults *This); + ULONG (WINAPI *Release)(IRTCEnumUserSearchResults *This); + HRESULT (WINAPI *Next)(IRTCEnumUserSearchResults *This,ULONG celt,IRTCUserSearchResult **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumUserSearchResults *This); + HRESULT (WINAPI *Skip)(IRTCEnumUserSearchResults *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumUserSearchResults *This,IRTCEnumUserSearchResults **ppEnum); + END_INTERFACE + } IRTCEnumUserSearchResultsVtbl; + struct IRTCEnumUserSearchResults { + CONST_VTBL struct IRTCEnumUserSearchResultsVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumUserSearchResults_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumUserSearchResults_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumUserSearchResults_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumUserSearchResults_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumUserSearchResults_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumUserSearchResults_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumUserSearchResults_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumUserSearchResults_Next_Proxy(IRTCEnumUserSearchResults *This,ULONG celt,IRTCUserSearchResult **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumUserSearchResults_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumUserSearchResults_Reset_Proxy(IRTCEnumUserSearchResults *This); + void __RPC_STUB IRTCEnumUserSearchResults_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumUserSearchResults_Skip_Proxy(IRTCEnumUserSearchResults *This,ULONG celt); + void __RPC_STUB IRTCEnumUserSearchResults_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumUserSearchResults_Clone_Proxy(IRTCEnumUserSearchResults *This,IRTCEnumUserSearchResults **ppEnum); + void __RPC_STUB IRTCEnumUserSearchResults_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCUserSearchResultsEvent_INTERFACE_DEFINED__ +#define __IRTCUserSearchResultsEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCUserSearchResultsEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCUserSearchResultsEvent : public IDispatch { + public: + virtual HRESULT WINAPI EnumerateResults(IRTCEnumUserSearchResults **ppEnum) = 0; + virtual HRESULT WINAPI get_Results(IRTCCollection **ppCollection) = 0; + virtual HRESULT WINAPI get_Profile(IRTCProfile2 **ppProfile) = 0; + virtual HRESULT WINAPI get_Query(IRTCUserSearchQuery **ppQuery) = 0; + virtual HRESULT WINAPI get_Cookie(LONG_PTR *plCookie) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_MoreAvailable(VARIANT_BOOL *pfMoreAvailable) = 0; + }; +#else + typedef struct IRTCUserSearchResultsEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCUserSearchResultsEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCUserSearchResultsEvent *This); + ULONG (WINAPI *Release)(IRTCUserSearchResultsEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCUserSearchResultsEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCUserSearchResultsEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCUserSearchResultsEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCUserSearchResultsEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *EnumerateResults)(IRTCUserSearchResultsEvent *This,IRTCEnumUserSearchResults **ppEnum); + HRESULT (WINAPI *get_Results)(IRTCUserSearchResultsEvent *This,IRTCCollection **ppCollection); + HRESULT (WINAPI *get_Profile)(IRTCUserSearchResultsEvent *This,IRTCProfile2 **ppProfile); + HRESULT (WINAPI *get_Query)(IRTCUserSearchResultsEvent *This,IRTCUserSearchQuery **ppQuery); + HRESULT (WINAPI *get_Cookie)(IRTCUserSearchResultsEvent *This,LONG_PTR *plCookie); + HRESULT (WINAPI *get_StatusCode)(IRTCUserSearchResultsEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_MoreAvailable)(IRTCUserSearchResultsEvent *This,VARIANT_BOOL *pfMoreAvailable); + END_INTERFACE + } IRTCUserSearchResultsEventVtbl; + struct IRTCUserSearchResultsEvent { + CONST_VTBL struct IRTCUserSearchResultsEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCUserSearchResultsEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCUserSearchResultsEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCUserSearchResultsEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCUserSearchResultsEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCUserSearchResultsEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCUserSearchResultsEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCUserSearchResultsEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCUserSearchResultsEvent_EnumerateResults(This,ppEnum) (This)->lpVtbl->EnumerateResults(This,ppEnum) +#define IRTCUserSearchResultsEvent_get_Results(This,ppCollection) (This)->lpVtbl->get_Results(This,ppCollection) +#define IRTCUserSearchResultsEvent_get_Profile(This,ppProfile) (This)->lpVtbl->get_Profile(This,ppProfile) +#define IRTCUserSearchResultsEvent_get_Query(This,ppQuery) (This)->lpVtbl->get_Query(This,ppQuery) +#define IRTCUserSearchResultsEvent_get_Cookie(This,plCookie) (This)->lpVtbl->get_Cookie(This,plCookie) +#define IRTCUserSearchResultsEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCUserSearchResultsEvent_get_MoreAvailable(This,pfMoreAvailable) (This)->lpVtbl->get_MoreAvailable(This,pfMoreAvailable) +#endif +#endif + HRESULT WINAPI IRTCUserSearchResultsEvent_EnumerateResults_Proxy(IRTCUserSearchResultsEvent *This,IRTCEnumUserSearchResults **ppEnum); + void __RPC_STUB IRTCUserSearchResultsEvent_EnumerateResults_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchResultsEvent_get_Results_Proxy(IRTCUserSearchResultsEvent *This,IRTCCollection **ppCollection); + void __RPC_STUB IRTCUserSearchResultsEvent_get_Results_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchResultsEvent_get_Profile_Proxy(IRTCUserSearchResultsEvent *This,IRTCProfile2 **ppProfile); + void __RPC_STUB IRTCUserSearchResultsEvent_get_Profile_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchResultsEvent_get_Query_Proxy(IRTCUserSearchResultsEvent *This,IRTCUserSearchQuery **ppQuery); + void __RPC_STUB IRTCUserSearchResultsEvent_get_Query_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchResultsEvent_get_Cookie_Proxy(IRTCUserSearchResultsEvent *This,LONG_PTR *plCookie); + void __RPC_STUB IRTCUserSearchResultsEvent_get_Cookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchResultsEvent_get_StatusCode_Proxy(IRTCUserSearchResultsEvent *This,long *plStatusCode); + void __RPC_STUB IRTCUserSearchResultsEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCUserSearchResultsEvent_get_MoreAvailable_Proxy(IRTCUserSearchResultsEvent *This,VARIANT_BOOL *pfMoreAvailable); + void __RPC_STUB IRTCUserSearchResultsEvent_get_MoreAvailable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionReferStatusEvent_INTERFACE_DEFINED__ +#define __IRTCSessionReferStatusEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionReferStatusEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionReferStatusEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession2 **ppSession) = 0; + virtual HRESULT WINAPI get_ReferStatus(RTC_SESSION_REFER_STATUS *penReferStatus) = 0; + virtual HRESULT WINAPI get_StatusCode(long *plStatusCode) = 0; + virtual HRESULT WINAPI get_StatusText(BSTR *pbstrStatusText) = 0; + }; +#else + typedef struct IRTCSessionReferStatusEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionReferStatusEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionReferStatusEvent *This); + ULONG (WINAPI *Release)(IRTCSessionReferStatusEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCSessionReferStatusEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCSessionReferStatusEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCSessionReferStatusEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCSessionReferStatusEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCSessionReferStatusEvent *This,IRTCSession2 **ppSession); + HRESULT (WINAPI *get_ReferStatus)(IRTCSessionReferStatusEvent *This,RTC_SESSION_REFER_STATUS *penReferStatus); + HRESULT (WINAPI *get_StatusCode)(IRTCSessionReferStatusEvent *This,long *plStatusCode); + HRESULT (WINAPI *get_StatusText)(IRTCSessionReferStatusEvent *This,BSTR *pbstrStatusText); + END_INTERFACE + } IRTCSessionReferStatusEventVtbl; + struct IRTCSessionReferStatusEvent { + CONST_VTBL struct IRTCSessionReferStatusEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionReferStatusEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionReferStatusEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionReferStatusEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionReferStatusEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCSessionReferStatusEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCSessionReferStatusEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCSessionReferStatusEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCSessionReferStatusEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCSessionReferStatusEvent_get_ReferStatus(This,penReferStatus) (This)->lpVtbl->get_ReferStatus(This,penReferStatus) +#define IRTCSessionReferStatusEvent_get_StatusCode(This,plStatusCode) (This)->lpVtbl->get_StatusCode(This,plStatusCode) +#define IRTCSessionReferStatusEvent_get_StatusText(This,pbstrStatusText) (This)->lpVtbl->get_StatusText(This,pbstrStatusText) +#endif +#endif + HRESULT WINAPI IRTCSessionReferStatusEvent_get_Session_Proxy(IRTCSessionReferStatusEvent *This,IRTCSession2 **ppSession); + void __RPC_STUB IRTCSessionReferStatusEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferStatusEvent_get_ReferStatus_Proxy(IRTCSessionReferStatusEvent *This,RTC_SESSION_REFER_STATUS *penReferStatus); + void __RPC_STUB IRTCSessionReferStatusEvent_get_ReferStatus_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferStatusEvent_get_StatusCode_Proxy(IRTCSessionReferStatusEvent *This,long *plStatusCode); + void __RPC_STUB IRTCSessionReferStatusEvent_get_StatusCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferStatusEvent_get_StatusText_Proxy(IRTCSessionReferStatusEvent *This,BSTR *pbstrStatusText); + void __RPC_STUB IRTCSessionReferStatusEvent_get_StatusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionReferredEvent_INTERFACE_DEFINED__ +#define __IRTCSessionReferredEvent_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionReferredEvent; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionReferredEvent : public IDispatch { + public: + virtual HRESULT WINAPI get_Session(IRTCSession2 **ppSession) = 0; + virtual HRESULT WINAPI get_ReferredByURI(BSTR *pbstrReferredByURI) = 0; + virtual HRESULT WINAPI get_ReferToURI(BSTR *pbstrReferoURI) = 0; + virtual HRESULT WINAPI get_ReferCookie(BSTR *pbstrReferCookie) = 0; + virtual HRESULT WINAPI Accept(void) = 0; + virtual HRESULT WINAPI Reject(void) = 0; + virtual HRESULT WINAPI SetReferredSessionState(RTC_SESSION_STATE enState) = 0; + }; +#else + typedef struct IRTCSessionReferredEventVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionReferredEvent *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionReferredEvent *This); + ULONG (WINAPI *Release)(IRTCSessionReferredEvent *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCSessionReferredEvent *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCSessionReferredEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCSessionReferredEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCSessionReferredEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + HRESULT (WINAPI *get_Session)(IRTCSessionReferredEvent *This,IRTCSession2 **ppSession); + HRESULT (WINAPI *get_ReferredByURI)(IRTCSessionReferredEvent *This,BSTR *pbstrReferredByURI); + HRESULT (WINAPI *get_ReferToURI)(IRTCSessionReferredEvent *This,BSTR *pbstrReferoURI); + HRESULT (WINAPI *get_ReferCookie)(IRTCSessionReferredEvent *This,BSTR *pbstrReferCookie); + HRESULT (WINAPI *Accept)(IRTCSessionReferredEvent *This); + HRESULT (WINAPI *Reject)(IRTCSessionReferredEvent *This); + HRESULT (WINAPI *SetReferredSessionState)(IRTCSessionReferredEvent *This,RTC_SESSION_STATE enState); + END_INTERFACE + } IRTCSessionReferredEventVtbl; + struct IRTCSessionReferredEvent { + CONST_VTBL struct IRTCSessionReferredEventVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionReferredEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionReferredEvent_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionReferredEvent_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionReferredEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCSessionReferredEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCSessionReferredEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCSessionReferredEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#define IRTCSessionReferredEvent_get_Session(This,ppSession) (This)->lpVtbl->get_Session(This,ppSession) +#define IRTCSessionReferredEvent_get_ReferredByURI(This,pbstrReferredByURI) (This)->lpVtbl->get_ReferredByURI(This,pbstrReferredByURI) +#define IRTCSessionReferredEvent_get_ReferToURI(This,pbstrReferoURI) (This)->lpVtbl->get_ReferToURI(This,pbstrReferoURI) +#define IRTCSessionReferredEvent_get_ReferCookie(This,pbstrReferCookie) (This)->lpVtbl->get_ReferCookie(This,pbstrReferCookie) +#define IRTCSessionReferredEvent_Accept(This) (This)->lpVtbl->Accept(This) +#define IRTCSessionReferredEvent_Reject(This) (This)->lpVtbl->Reject(This) +#define IRTCSessionReferredEvent_SetReferredSessionState(This,enState) (This)->lpVtbl->SetReferredSessionState(This,enState) +#endif +#endif + HRESULT WINAPI IRTCSessionReferredEvent_get_Session_Proxy(IRTCSessionReferredEvent *This,IRTCSession2 **ppSession); + void __RPC_STUB IRTCSessionReferredEvent_get_Session_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferredEvent_get_ReferredByURI_Proxy(IRTCSessionReferredEvent *This,BSTR *pbstrReferredByURI); + void __RPC_STUB IRTCSessionReferredEvent_get_ReferredByURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferredEvent_get_ReferToURI_Proxy(IRTCSessionReferredEvent *This,BSTR *pbstrReferoURI); + void __RPC_STUB IRTCSessionReferredEvent_get_ReferToURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferredEvent_get_ReferCookie_Proxy(IRTCSessionReferredEvent *This,BSTR *pbstrReferCookie); + void __RPC_STUB IRTCSessionReferredEvent_get_ReferCookie_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferredEvent_Accept_Proxy(IRTCSessionReferredEvent *This); + void __RPC_STUB IRTCSessionReferredEvent_Accept_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferredEvent_Reject_Proxy(IRTCSessionReferredEvent *This); + void __RPC_STUB IRTCSessionReferredEvent_Reject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCSessionReferredEvent_SetReferredSessionState_Proxy(IRTCSessionReferredEvent *This,RTC_SESSION_STATE enState); + void __RPC_STUB IRTCSessionReferredEvent_SetReferredSessionState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCSessionDescriptionManager_INTERFACE_DEFINED__ +#define __IRTCSessionDescriptionManager_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCSessionDescriptionManager; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCSessionDescriptionManager : public IUnknown { + public: + virtual HRESULT WINAPI EvaluateSessionDescription(BSTR bstrContentType,BSTR bstrSessionDescription,VARIANT_BOOL *pfApplicationSession) = 0; + }; +#else + typedef struct IRTCSessionDescriptionManagerVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCSessionDescriptionManager *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCSessionDescriptionManager *This); + ULONG (WINAPI *Release)(IRTCSessionDescriptionManager *This); + HRESULT (WINAPI *EvaluateSessionDescription)(IRTCSessionDescriptionManager *This,BSTR bstrContentType,BSTR bstrSessionDescription,VARIANT_BOOL *pfApplicationSession); + END_INTERFACE + } IRTCSessionDescriptionManagerVtbl; + struct IRTCSessionDescriptionManager { + CONST_VTBL struct IRTCSessionDescriptionManagerVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCSessionDescriptionManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCSessionDescriptionManager_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCSessionDescriptionManager_Release(This) (This)->lpVtbl->Release(This) +#define IRTCSessionDescriptionManager_EvaluateSessionDescription(This,bstrContentType,bstrSessionDescription,pfApplicationSession) (This)->lpVtbl->EvaluateSessionDescription(This,bstrContentType,bstrSessionDescription,pfApplicationSession) +#endif +#endif + HRESULT WINAPI IRTCSessionDescriptionManager_EvaluateSessionDescription_Proxy(IRTCSessionDescriptionManager *This,BSTR bstrContentType,BSTR bstrSessionDescription,VARIANT_BOOL *pfApplicationSession); + void __RPC_STUB IRTCSessionDescriptionManager_EvaluateSessionDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCEnumPresenceDevices_INTERFACE_DEFINED__ +#define __IRTCEnumPresenceDevices_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCEnumPresenceDevices; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCEnumPresenceDevices : public IUnknown { + public: + virtual HRESULT WINAPI Next(ULONG celt,IRTCPresenceDevice **ppElements,ULONG *pceltFetched) = 0; + virtual HRESULT WINAPI Reset(void) = 0; + virtual HRESULT WINAPI Skip(ULONG celt) = 0; + virtual HRESULT WINAPI Clone(IRTCEnumPresenceDevices **ppEnum) = 0; + }; +#else + typedef struct IRTCEnumPresenceDevicesVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCEnumPresenceDevices *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCEnumPresenceDevices *This); + ULONG (WINAPI *Release)(IRTCEnumPresenceDevices *This); + HRESULT (WINAPI *Next)(IRTCEnumPresenceDevices *This,ULONG celt,IRTCPresenceDevice **ppElements,ULONG *pceltFetched); + HRESULT (WINAPI *Reset)(IRTCEnumPresenceDevices *This); + HRESULT (WINAPI *Skip)(IRTCEnumPresenceDevices *This,ULONG celt); + HRESULT (WINAPI *Clone)(IRTCEnumPresenceDevices *This,IRTCEnumPresenceDevices **ppEnum); + END_INTERFACE + } IRTCEnumPresenceDevicesVtbl; + struct IRTCEnumPresenceDevices { + CONST_VTBL struct IRTCEnumPresenceDevicesVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCEnumPresenceDevices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCEnumPresenceDevices_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCEnumPresenceDevices_Release(This) (This)->lpVtbl->Release(This) +#define IRTCEnumPresenceDevices_Next(This,celt,ppElements,pceltFetched) (This)->lpVtbl->Next(This,celt,ppElements,pceltFetched) +#define IRTCEnumPresenceDevices_Reset(This) (This)->lpVtbl->Reset(This) +#define IRTCEnumPresenceDevices_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) +#define IRTCEnumPresenceDevices_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) +#endif +#endif + HRESULT WINAPI IRTCEnumPresenceDevices_Next_Proxy(IRTCEnumPresenceDevices *This,ULONG celt,IRTCPresenceDevice **ppElements,ULONG *pceltFetched); + void __RPC_STUB IRTCEnumPresenceDevices_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumPresenceDevices_Reset_Proxy(IRTCEnumPresenceDevices *This); + void __RPC_STUB IRTCEnumPresenceDevices_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumPresenceDevices_Skip_Proxy(IRTCEnumPresenceDevices *This,ULONG celt); + void __RPC_STUB IRTCEnumPresenceDevices_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCEnumPresenceDevices_Clone_Proxy(IRTCEnumPresenceDevices *This,IRTCEnumPresenceDevices **ppEnum); + void __RPC_STUB IRTCEnumPresenceDevices_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __IRTCPresenceDevice_INTERFACE_DEFINED__ +#define __IRTCPresenceDevice_INTERFACE_DEFINED__ + EXTERN_C const IID IID_IRTCPresenceDevice; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCPresenceDevice : public IUnknown { + public: + virtual HRESULT WINAPI get_Status(RTC_PRESENCE_STATUS *penStatus) = 0; + virtual HRESULT WINAPI get_Notes(BSTR *pbstrNotes) = 0; + virtual HRESULT WINAPI get_PresenceProperty(RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty) = 0; + virtual HRESULT WINAPI GetPresenceData(BSTR *pbstrNamespace,BSTR *pbstrData) = 0; + }; +#else + typedef struct IRTCPresenceDeviceVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCPresenceDevice *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCPresenceDevice *This); + ULONG (WINAPI *Release)(IRTCPresenceDevice *This); + HRESULT (WINAPI *get_Status)(IRTCPresenceDevice *This,RTC_PRESENCE_STATUS *penStatus); + HRESULT (WINAPI *get_Notes)(IRTCPresenceDevice *This,BSTR *pbstrNotes); + HRESULT (WINAPI *get_PresenceProperty)(IRTCPresenceDevice *This,RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty); + HRESULT (WINAPI *GetPresenceData)(IRTCPresenceDevice *This,BSTR *pbstrNamespace,BSTR *pbstrData); + END_INTERFACE + } IRTCPresenceDeviceVtbl; + struct IRTCPresenceDevice { + CONST_VTBL struct IRTCPresenceDeviceVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCPresenceDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCPresenceDevice_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCPresenceDevice_Release(This) (This)->lpVtbl->Release(This) +#define IRTCPresenceDevice_get_Status(This,penStatus) (This)->lpVtbl->get_Status(This,penStatus) +#define IRTCPresenceDevice_get_Notes(This,pbstrNotes) (This)->lpVtbl->get_Notes(This,pbstrNotes) +#define IRTCPresenceDevice_get_PresenceProperty(This,enProperty,pbstrProperty) (This)->lpVtbl->get_PresenceProperty(This,enProperty,pbstrProperty) +#define IRTCPresenceDevice_GetPresenceData(This,pbstrNamespace,pbstrData) (This)->lpVtbl->GetPresenceData(This,pbstrNamespace,pbstrData) +#endif +#endif + HRESULT WINAPI IRTCPresenceDevice_get_Status_Proxy(IRTCPresenceDevice *This,RTC_PRESENCE_STATUS *penStatus); + void __RPC_STUB IRTCPresenceDevice_get_Status_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceDevice_get_Notes_Proxy(IRTCPresenceDevice *This,BSTR *pbstrNotes); + void __RPC_STUB IRTCPresenceDevice_get_Notes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceDevice_get_PresenceProperty_Proxy(IRTCPresenceDevice *This,RTC_PRESENCE_PROPERTY enProperty,BSTR *pbstrProperty); + void __RPC_STUB IRTCPresenceDevice_get_PresenceProperty_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); + HRESULT WINAPI IRTCPresenceDevice_GetPresenceData_Proxy(IRTCPresenceDevice *This,BSTR *pbstrNamespace,BSTR *pbstrData); + void __RPC_STUB IRTCPresenceDevice_GetPresenceData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); +#endif + +#ifndef __RTCCORELib_LIBRARY_DEFINED__ +#define __RTCCORELib_LIBRARY_DEFINED__ + EXTERN_C const IID LIBID_RTCCORELib; +#ifndef __IRTCDispatchEventNotification_DISPINTERFACE_DEFINED__ +#define __IRTCDispatchEventNotification_DISPINTERFACE_DEFINED__ + EXTERN_C const IID DIID_IRTCDispatchEventNotification; +#if defined(__cplusplus) && !defined(CINTERFACE) + struct IRTCDispatchEventNotification : public IDispatch { + }; +#else + typedef struct IRTCDispatchEventNotificationVtbl { + BEGIN_INTERFACE + HRESULT (WINAPI *QueryInterface)(IRTCDispatchEventNotification *This,REFIID riid,void **ppvObject); + ULONG (WINAPI *AddRef)(IRTCDispatchEventNotification *This); + ULONG (WINAPI *Release)(IRTCDispatchEventNotification *This); + HRESULT (WINAPI *GetTypeInfoCount)(IRTCDispatchEventNotification *This,UINT *pctinfo); + HRESULT (WINAPI *GetTypeInfo)(IRTCDispatchEventNotification *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo); + HRESULT (WINAPI *GetIDsOfNames)(IRTCDispatchEventNotification *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId); + HRESULT (WINAPI *Invoke)(IRTCDispatchEventNotification *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr); + END_INTERFACE + } IRTCDispatchEventNotificationVtbl; + struct IRTCDispatchEventNotification { + CONST_VTBL struct IRTCDispatchEventNotificationVtbl *lpVtbl; + }; +#ifdef COBJMACROS +#define IRTCDispatchEventNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define IRTCDispatchEventNotification_AddRef(This) (This)->lpVtbl->AddRef(This) +#define IRTCDispatchEventNotification_Release(This) (This)->lpVtbl->Release(This) +#define IRTCDispatchEventNotification_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) +#define IRTCDispatchEventNotification_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) +#define IRTCDispatchEventNotification_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) +#define IRTCDispatchEventNotification_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) +#endif +#endif +#endif + + EXTERN_C const CLSID CLSID_RTCClient; +#ifdef __cplusplus + class RTCClient; +#endif +#endif + + unsigned long __RPC_API BSTR_UserSize(unsigned long *,unsigned long,BSTR *); + unsigned char *__RPC_API BSTR_UserMarshal(unsigned long *,unsigned char *,BSTR *); + unsigned char *__RPC_API BSTR_UserUnmarshal(unsigned long *,unsigned char *,BSTR *); + void __RPC_API BSTR_UserFree(unsigned long *,BSTR *); + unsigned long __RPC_API VARIANT_UserSize(unsigned long *,unsigned long,VARIANT *); + unsigned char *__RPC_API VARIANT_UserMarshal(unsigned long *,unsigned char *,VARIANT *); + unsigned char *__RPC_API VARIANT_UserUnmarshal(unsigned long *,unsigned char *,VARIANT *); + void __RPC_API VARIANT_UserFree(unsigned long *,VARIANT *); + +#ifdef __cplusplus +} +#endif +#endif
