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

261 lines
8.8 KiB

//*****************************************************************************
//
// Microsoft Windows Media
// Copyright (C) Microsoft Corporation. All rights reserved.
//
// FileName: wmscontext.idl
//
// Abstract:
//
//*****************************************************************************
cpp_quote("//*****************************************************************************")
cpp_quote("//")
cpp_quote("// Microsoft Windows Media")
cpp_quote("// Copyright (C) Microsoft Corporation. All rights reserved.")
cpp_quote("//")
cpp_quote("// Automatically generated by Midl from wmscontext.idl" )
cpp_quote("//")
cpp_quote("// DO NOT EDIT THIS FILE.")
cpp_quote("//")
cpp_quote("//*****************************************************************************")
import "oaidl.idl";
cpp_quote("#ifndef _WMSContext")
cpp_quote("#define _WMSContext")
typedef unsigned __int64 QWORD;
cpp_quote( "EXTERN_GUID( IID_IWMSContext, 0x4f1a1421, 0x5cd5, 0x11d2, 0x9f, 0x5, 0x0, 0x60, 0x97, 0xd2, 0xd7, 0xcf );" )
cpp_quote( "EXTERN_GUID( IID_IWMSCommandContext, 0x75554931, 0x5f0e, 0x11d2, 0x9f, 0xe, 0x0, 0x60, 0x97, 0xd2, 0xd7, 0xcf );" )
// These are the defined options in the Set and Get methods in IWMSContext.
typedef [public] enum WMS_CONTEXT_OPTIONS
{
WMS_CONTEXT_SET_PROPERTY_NAME_BY_VALUE = 0x0001,
WMS_CONTEXT_SET_PROPERTY_STRING_BY_REFERENCE = 0x0002,
WMS_CONTEXT_GET_PROPERTY_STRING_BY_REFERENCE = 0x0004,
} WMS_CONTEXT_OPTIONS;
typedef [public] enum WMS_CONTEXT_HINT_CONSTANTS
{
WMS_CONTEXT_NO_NAME_HINT = 0xFFFFFFFF
} WMS_CONTEXT_HINT_CONSTANTS;
/////////////////////////////////////////////////////////////////////////////
interface IWMSContext;
interface IWMSCommandContext;
/////////////////////////////////////////////////////////////////////////////
[
object,
uuid(4F1A1421-5CD5-11d2-9F05-006097D2D7CF),
pointer_default(unique),
helpstring("Provides methods for managing a collection of properties for a particular context.")
]
interface IWMSContext : IUnknown
{
typedef [public] enum WMS_CONTEXT_TYPE
{
WMS_UNKNOWN_CONTEXT_TYPE,
WMS_SERVER_CONTEXT_TYPE,
WMS_USER_CONTEXT_TYPE,
WMS_PRESENTATION_CONTEXT_TYPE,
WMS_CONTENT_DESCRIPTION_CONTEXT_TYPE,
WMS_COMMAND_REQUEST_CONTEXT_TYPE,
WMS_COMMAND_RESPONSE_CONTEXT_TYPE,
WMS_TRANSPORT_SPEC_CONTEXT_TYPE,
WMS_PACKETIZER_CONTEXT_TYPE,
WMS_CACHE_CONTENT_INFORMATION_CONTEXT_TYPE,
WMS_ARCHIVE_CONTEXT_TYPE,
[hidden] WMS_NUM_CONTEXT_TYPE
} WMS_CONTEXT_TYPE;
[helpstring("Sets the value for or adds a new long value property.")] HRESULT
SetLongValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] long lValue,
[in] long lOptions
);
[helpstring("Sets the value for or adds a new string value property.")] HRESULT
SetStringValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] LPCWSTR pstrValue,
[in] long lOptions
);
[helpstring("Sets the value for or adds a new IUnknown value property.")] HRESULT
SetIUnknownValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] IUnknown *pValue,
[in] long lOptions
);
[helpstring("Sets the value for or adds a new QWORD value property.")] HRESULT
SetQwordValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] CURRENCY qwValue,
[in] long lOptions
);
[helpstring("Sets the value for or adds a new DATE value property.")] HRESULT
SetDateValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] DATE dateValue,
[in] long lOptions
);
[helpstring("Sets the value for or adds a new SAFEARRAY value property.")] HRESULT
SetArrayValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] SAFEARRAY(BSTR) psaValue,
[in] long lOptions
);
[helpstring("Retrieves the value for a long value property.")] HRESULT
GetLongValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] long *plValue,
[in] long lOptions
);
[helpstring("Retrieves the value for a string value property.")] HRESULT
GetStringValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] LPWSTR *pstrValue,
[in] long lOptions
);
[helpstring("Retrieves the value for an IUnknown value property.")] HRESULT
GetIUnknownValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] IUnknown **pValue,
[in] long lOptions
);
[helpstring("Retrieves the value for a QWORD value property.")] HRESULT
GetQwordValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] CURRENCY *pqwValue,
[in] long lOptions
);
[helpstring("Retrieves the value for a DATE value property.")] HRESULT
GetDateValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] DATE *pdateValue,
[in] long lOptions
);
[helpstring("Retrieves the value for a SAFEARRAY value property.")] HRESULT
GetArrayValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] SAFEARRAY(BSTR) *ppsaValue,
[in] long lOptions
);
[helpstring("Sets the value for or adds a new property.")] HRESULT
SetValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] VARIANT Value,
[in] long lOptions
);
[helpstring("Retrieves the value for a property.")] HRESULT
GetValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[out] VARIANT *pValue,
[in] long lOptions
);
[helpstring("Retrieves the number of properties in the context.")] HRESULT
GetValueCount(
[out] long *pCount
);
[helpstring("Retrieves the name, value and hint for a specific property by index.")] HRESULT
GetIndexedValue(
[in] long lIndex,
[out] LPWSTR *pstrName,
[out] long *plNameHint,
[out] VARIANT *pValue,
[out] long *pdwResultOptions,
[in] long lOptions
);
[helpstring("Removes a specific property from the context.")] HRESULT
RemoveValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] long lOptions
);
[helpstring("Removes all properties from the context.")] HRESULT
RemoveAllValues();
[helpstring("Retrieves an enumeration value that indicates the context type.")] HRESULT
GetContextType( [out] WMS_CONTEXT_TYPE *pType );
[helpstring("Retrieves the value for an IUnknown value property and calls QueryInterface to retrieve a pointer to the specified interface.")] HRESULT
GetAndQueryIUnknownValue(
[in] LPCWSTR pstrName,
[in] long lNameHint,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown **pResult,
[in] long lOptions
);
[helpstring("Copies the specified properties to another context.")] HRESULT
CopyValues(
[in] IWMSContext * pDest,
[in] LPCWSTR * pstrName,
[in] long * lNameHint,
[in] long lNames
);
}
/////////////////////////////////////////////////////////////////////////////
// IWMSCommandContext
[
object,
uuid(75554931-5F0E-11d2-9F0E-006097D2D7CF),
version(9.0),
pointer_default(unique),
helpstring("Provides methods for accessing and manipulating command request and command response contexts.")
]
interface IWMSCommandContext : IUnknown
{
[helpstring("Retrieves a command request context.")] HRESULT
GetCommandRequest( [out] IWMSContext **ppProps);
[helpstring("Retrieves a command response context.")] HRESULT
GetCommandResponse( [out] IWMSContext **ppProps);
[helpstring("Removes all properties in the command request context.")] HRESULT
EraseCommandRequest();
[helpstring("Removes all properties in the command response context.")] HRESULT
EraseCommandResponse();
[helpstring("Specifies the identification number for a playlist entry.")] HRESULT
SetPlaylistGenerationId( [in] DWORD dwId );
[helpstring("Retrieves the identification number for a playlist entry.")] HRESULT
GetPlaylistGenerationId( [out] DWORD *pdwId );
};
cpp_quote("#endif")