bthapi.h
来自「三星2440原版bsp」· C头文件 代码 · 共 1,929 行 · 第 1/5 页
H
1,929 行
#pragma warning( disable: 4049 ) /* more than 64k source lines */
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 5.03.0286 */
/* at Fri Dec 09 17:23:30 2005
*/
/* Compiler settings for .\bthapi.idl:
Oicf (OptLev=i2), W1, Zp8, env=Win32 (32b run), ms_ext, c_ext
error checks: allocation ref bounds_check enum stub_data
VC __declspec() decoration level:
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING( )
/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__
#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/
#ifndef __bthapi_h__
#define __bthapi_h__
/* Forward Declarations */
#ifndef __ISdpWalk_FWD_DEFINED__
#define __ISdpWalk_FWD_DEFINED__
typedef interface ISdpWalk ISdpWalk;
#endif /* __ISdpWalk_FWD_DEFINED__ */
#ifndef __ISdpNodeContainer_FWD_DEFINED__
#define __ISdpNodeContainer_FWD_DEFINED__
typedef interface ISdpNodeContainer ISdpNodeContainer;
#endif /* __ISdpNodeContainer_FWD_DEFINED__ */
#ifndef __ISdpSearch_FWD_DEFINED__
#define __ISdpSearch_FWD_DEFINED__
typedef interface ISdpSearch ISdpSearch;
#endif /* __ISdpSearch_FWD_DEFINED__ */
#ifndef __ISdpStream_FWD_DEFINED__
#define __ISdpStream_FWD_DEFINED__
typedef interface ISdpStream ISdpStream;
#endif /* __ISdpStream_FWD_DEFINED__ */
#ifndef __ISdpRecord_FWD_DEFINED__
#define __ISdpRecord_FWD_DEFINED__
typedef interface ISdpRecord ISdpRecord;
#endif /* __ISdpRecord_FWD_DEFINED__ */
#ifndef __IBluetoothDevice_FWD_DEFINED__
#define __IBluetoothDevice_FWD_DEFINED__
typedef interface IBluetoothDevice IBluetoothDevice;
#endif /* __IBluetoothDevice_FWD_DEFINED__ */
#ifndef __IBluetoothAuthenticate_FWD_DEFINED__
#define __IBluetoothAuthenticate_FWD_DEFINED__
typedef interface IBluetoothAuthenticate IBluetoothAuthenticate;
#endif /* __IBluetoothAuthenticate_FWD_DEFINED__ */
#ifndef __SdpNodeContainer_FWD_DEFINED__
#define __SdpNodeContainer_FWD_DEFINED__
#ifdef __cplusplus
typedef class SdpNodeContainer SdpNodeContainer;
#else
typedef struct SdpNodeContainer SdpNodeContainer;
#endif /* __cplusplus */
#endif /* __SdpNodeContainer_FWD_DEFINED__ */
#ifndef __SdpSearch_FWD_DEFINED__
#define __SdpSearch_FWD_DEFINED__
#ifdef __cplusplus
typedef class SdpSearch SdpSearch;
#else
typedef struct SdpSearch SdpSearch;
#endif /* __cplusplus */
#endif /* __SdpSearch_FWD_DEFINED__ */
#ifndef __SdpWalk_FWD_DEFINED__
#define __SdpWalk_FWD_DEFINED__
#ifdef __cplusplus
typedef class SdpWalk SdpWalk;
#else
typedef struct SdpWalk SdpWalk;
#endif /* __cplusplus */
#endif /* __SdpWalk_FWD_DEFINED__ */
#ifndef __SdpStream_FWD_DEFINED__
#define __SdpStream_FWD_DEFINED__
#ifdef __cplusplus
typedef class SdpStream SdpStream;
#else
typedef struct SdpStream SdpStream;
#endif /* __cplusplus */
#endif /* __SdpStream_FWD_DEFINED__ */
#ifndef __SdpRecord_FWD_DEFINED__
#define __SdpRecord_FWD_DEFINED__
#ifdef __cplusplus
typedef class SdpRecord SdpRecord;
#else
typedef struct SdpRecord SdpRecord;
#endif /* __cplusplus */
#endif /* __SdpRecord_FWD_DEFINED__ */
/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"
#ifdef __cplusplus
extern "C"{
#endif
void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void __RPC_FAR * );
/* interface __MIDL_itf_bthapi_0000 */
/* [local] */
//
// Copyright (C) Microsoft Corporation, All rights reserved.
//
#ifndef __BTHSDPDEF_H__
struct SDP_LARGE_INTEGER_16
{
ULONGLONG LowPart;
LONGLONG HighPart;
};
struct SDP_ULARGE_INTEGER_16
{
ULONGLONG LowPart;
ULONGLONG HighPart;
};
typedef struct SDP_ULARGE_INTEGER_16 SDP_ULARGE_INTEGER_16;
typedef struct SDP_ULARGE_INTEGER_16 __RPC_FAR *PSDP_ULARGE_INTEGER_16;
typedef struct SDP_ULARGE_INTEGER_16 __RPC_FAR *LPSDP_ULARGE_INTEGER_16;
typedef struct SDP_LARGE_INTEGER_16 SDP_LARGE_INTEGER_16;
typedef struct SDP_LARGE_INTEGER_16 __RPC_FAR *PSDP_LARGE_INTEGER_16;
typedef struct SDP_LARGE_INTEGER_16 __RPC_FAR *LPSDP_LARGE_INTEGER_16;
enum NodeContainerType
{ NodeContainerTypeSequence = 0,
NodeContainerTypeAlternative = NodeContainerTypeSequence + 1
};
typedef enum NodeContainerType NodeContainerType;
typedef USHORT SDP_ERROR;
typedef USHORT __RPC_FAR *PSDP_ERROR;
enum SDP_TYPE
{ SDP_TYPE_NIL = 0,
SDP_TYPE_UINT = 0x1,
SDP_TYPE_INT = 0x2,
SDP_TYPE_UUID = 0x3,
SDP_TYPE_STRING = 0x4,
SDP_TYPE_BOOLEAN = 0x5,
SDP_TYPE_SEQUENCE = 0x6,
SDP_TYPE_ALTERNATIVE = 0x7,
SDP_TYPE_URL = 0x8,
SDP_TYPE_CONTAINER = 0x20
};
typedef enum SDP_TYPE SDP_TYPE;
enum SDP_SPECIFICTYPE
{ SDP_ST_NONE = 0,
SDP_ST_UINT8 = 0x10,
SDP_ST_UINT16 = 0x110,
SDP_ST_UINT32 = 0x210,
SDP_ST_UINT64 = 0x310,
SDP_ST_UINT128 = 0x410,
SDP_ST_INT8 = 0x20,
SDP_ST_INT16 = 0x120,
SDP_ST_INT32 = 0x220,
SDP_ST_INT64 = 0x320,
SDP_ST_INT128 = 0x420,
SDP_ST_UUID16 = 0x130,
SDP_ST_UUID32 = 0x230,
SDP_ST_UUID128 = 0x430
};
typedef enum SDP_SPECIFICTYPE SDP_SPECIFICTYPE;
typedef struct _SdpAttributeRange
{
USHORT minAttribute;
USHORT maxAttribute;
} SdpAttributeRange;
typedef /* [switch_type] */ union SdpQueryUuidUnion
{
/* [case()] */ GUID uuid128;
/* [case()] */ ULONG uuid32;
/* [case()] */ USHORT uuid16;
} SdpQueryUuidUnion;
typedef struct _SdpQueryUuid
{
/* [switch_is] */ SdpQueryUuidUnion u;
USHORT uuidType;
} SdpQueryUuid;
#define BTH_SDP_VERSION 1
typedef struct _BTHNS_SETBLOB
{
ULONG __RPC_FAR *pSdpVersion;
ULONG __RPC_FAR *pRecordHandle;
ULONG Reserved[ 4 ];
ULONG fSecurity;
ULONG fOptions;
ULONG ulRecordLength;
UCHAR pRecord[ 1 ];
} BTHNS_SETBLOB;
typedef struct _BTHNS_SETBLOB __RPC_FAR *PBTHNS_SETBLOB;
#define MAX_UUIDS_IN_QUERY 12
#define SDP_SERVICE_SEARCH_REQUEST 1
#define SDP_SERVICE_ATTRIBUTE_REQUEST 2
#define SDP_SERVICE_SEARCH_ATTRIBUTE_REQUEST 3
//
// The following may be passed as parameters to BthNsLookupServiceNext as extended
// dwFlags options for device inquiry.
//
// Causes traversal through list to be reset to first element.
#define BTHNS_LUP_RESET_ITERATOR 0x00010000
// Does not increment list, causes next query to be performed on current item as well.
#define BTHNS_LUP_NO_ADVANCE 0x00020000
// Causes LookupServiceEnd to abort current inquiry.
#define BTHNS_ABORT_CURRENT_INQUIRY 0xfffffffd
typedef struct _BTHNS_INQUIRYBLOB
{
ULONG LAP;
unsigned char length;
unsigned char num_responses;
} BTHNS_INQUIRYBLOB;
typedef struct _BTHNS_INQUIRYBLOB __RPC_FAR *PBTHNS_INQUIRYBLOB;
typedef struct _BTHNS_RESTRICTIONBLOB
{
ULONG type;
ULONG serviceHandle;
SdpQueryUuid uuids[ 12 ];
ULONG numRange;
SdpAttributeRange pRange[ 1 ];
} BTHNS_RESTRICTIONBLOB;
typedef struct _BTHNS_RESTRICTIONBLOB __RPC_FAR *PBTHNS_RESTRICTIONBLOB;
#define __BTHSDPDEF_H__
#endif
struct SdpString
{
/* [size_is] */ CHAR __RPC_FAR *val;
ULONG length;
};
typedef struct SdpString SdpString;
typedef /* [switch_type] */ union NodeDataUnion
{
/* [case()] */ SDP_LARGE_INTEGER_16 int128;
/* [case()] */ SDP_ULARGE_INTEGER_16 uint128;
/* [case()] */ GUID uuid128;
/* [case()] */ ULONG uuid32;
/* [case()] */ USHORT uuid16;
/* [case()] */ LONGLONG int64;
/* [case()] */ ULONGLONG uint64;
/* [case()] */ LONG int32;
/* [case()] */ ULONG uint32;
/* [case()] */ SHORT int16;
/* [case()] */ USHORT uint16;
/* [case()] */ CHAR int8;
/* [case()] */ UCHAR uint8;
/* [case()] */ UCHAR booleanVal;
/* [case()] */ SdpString str;
/* [case()] */ SdpString url;
/* [case()] */ ISdpNodeContainer __RPC_FAR *container;
/* [case()] */ /* Empty union arm */
} NodeDataUnion;
typedef struct NodeData
{
USHORT type;
USHORT specificType;
/* [switch_is] */ NodeDataUnion u;
} NodeData;
enum BthDeviceStringType
{ BthDeviceStringTypeFriendlyName = 0,
BthDeviceStringTypeDeviceName = BthDeviceStringTypeFriendlyName + 1,
BthDeviceStringTypeDisplay = BthDeviceStringTypeDeviceName + 1,
BthDeviceStringTypeClass = BthDeviceStringTypeDisplay + 1,
BthDeviceStringTypeAddress = BthDeviceStringTypeClass + 1
};
#ifndef __BTHDEVICEINFO_DEFINED__
#define __BTHDEVICEINFO_DEFINED__
#pragma warning(disable:4103)
#pragma pack(push)
#pragma pack(1)
typedef struct _BthDeviceInfo
{
ULONGLONG btAddress;
ULONG cod;
ULONGLONG lmpSupportedFeatures;
CHAR name[ 248 ];
} BthDeviceInfo;
#pragma warning(disable:4103)
#pragma pack(pop)
#endif // __BTHDEVICEINFO_DEFINED__
extern RPC_IF_HANDLE __MIDL_itf_bthapi_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_bthapi_0000_v0_0_s_ifspec;
#ifndef __ISdpWalk_INTERFACE_DEFINED__
#define __ISdpWalk_INTERFACE_DEFINED__
/* interface ISdpWalk */
/* [unique][helpstring][uuid][object] */
EXTERN_C const IID IID_ISdpWalk;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("57134AE6-5D3C-462D-BF2F-810361FBD7E7")
ISdpWalk : public IUnknown
{
public:
virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE WalkNode(
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?