PortAudio
2.0
|
00001 00002 00003 /* this ALWAYS GENERATED file contains the definitions for the interfaces */ 00004 00005 00006 /* File created by MIDL compiler version 7.00.0499 */ 00007 /* Compiler settings for shtypes.idl: 00008 Oicf, W1, Zp8, env=Win32 (32b run) 00009 protocol : dce , ms_ext, c_ext, robust 00010 error checks: allocation ref bounds_check enum stub_data 00011 VC __declspec() decoration level: 00012 __declspec(uuid()), __declspec(selectany), __declspec(novtable) 00013 DECLSPEC_UUID(), MIDL_INTERFACE() 00014 */ 00015 //@@MIDL_FILE_HEADING( ) 00016 00017 #pragma warning( disable: 4049 ) /* more than 64k source lines */ 00018 00019 00020 /* verify that the <rpcndr.h> version is high enough to compile this file*/ 00021 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 00022 #define __REQUIRED_RPCNDR_H_VERSION__ 500 00023 #endif 00024 00025 /* verify that the <rpcsal.h> version is high enough to compile this file*/ 00026 #ifndef __REQUIRED_RPCSAL_H_VERSION__ 00027 #define __REQUIRED_RPCSAL_H_VERSION__ 100 00028 #endif 00029 00030 #include "rpc.h" 00031 #include "rpcndr.h" 00032 00033 #ifndef __RPCNDR_H_VERSION__ 00034 #error this stub requires an updated version of <rpcndr.h> 00035 #endif // __RPCNDR_H_VERSION__ 00036 00037 00038 #ifndef __shtypes_h__ 00039 #define __shtypes_h__ 00040 00041 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 00042 #pragma once 00043 #endif 00044 00045 /* Forward Declarations */ 00046 00047 /* header files for imported files */ 00048 #include "wtypes.h" 00049 00050 #ifdef __cplusplus 00051 extern "C"{ 00052 #endif 00053 00054 00055 /* interface __MIDL_itf_shtypes_0000_0000 */ 00056 /* [local] */ 00057 00058 //+------------------------------------------------------------------------- 00059 // 00060 // Microsoft Windows 00061 // Copyright (c) Microsoft Corporation. All rights reserved. 00062 // 00063 //-------------------------------------------------------------------------- 00064 //=========================================================================== 00065 // 00066 // Object identifiers in the explorer's name space (ItemID and IDList) 00067 // 00068 // All the items that the user can browse with the explorer (such as files, 00069 // directories, servers, work-groups, etc.) has an identifier which is unique 00070 // among items within the parent folder. Those identifiers are called item 00071 // IDs (SHITEMID). Since all its parent folders have their own item IDs, 00072 // any items can be uniquely identified by a list of item IDs, which is called 00073 // an ID list (ITEMIDLIST). 00074 // 00075 // ID lists are almost always allocated by the task allocator (see some 00076 // description below as well as OLE 2.0 SDK) and may be passed across 00077 // some of shell interfaces (such as IShellFolder). Each item ID in an ID list 00078 // is only meaningful to its parent folder (which has generated it), and all 00079 // the clients must treat it as an opaque binary data except the first two 00080 // bytes, which indicates the size of the item ID. 00081 // 00082 // When a shell extension -- which implements the IShellFolder interace -- 00083 // generates an item ID, it may put any information in it, not only the data 00084 // with that it needs to identifies the item, but also some additional 00085 // information, which would help implementing some other functions efficiently. 00086 // For example, the shell's IShellFolder implementation of file system items 00087 // stores the primary (long) name of a file or a directory as the item 00088 // identifier, but it also stores its alternative (short) name, size and date 00089 // etc. 00090 // 00091 // When an ID list is passed to one of shell APIs (such as SHGetPathFromIDList), 00092 // it is always an absolute path -- relative from the root of the name space, 00093 // which is the desktop folder. When an ID list is passed to one of IShellFolder 00094 // member function, it is always a relative path from the folder (unless it 00095 // is explicitly specified). 00096 // 00097 //=========================================================================== 00098 // 00099 // SHITEMID -- Item ID (mkid) 00100 // USHORT cb; // Size of the ID (including cb itself) 00101 // BYTE abID[]; // The item ID (variable length) 00102 // 00103 #include <pshpack1.h> 00104 typedef struct _SHITEMID 00105 { 00106 USHORT cb; 00107 BYTE abID[ 1 ]; 00108 } SHITEMID; 00109 00110 #include <poppack.h> 00111 #if defined(_M_IX86) 00112 #define __unaligned 00113 #endif // __unaligned 00114 typedef SHITEMID __unaligned *LPSHITEMID; 00115 00116 typedef const SHITEMID __unaligned *LPCSHITEMID; 00117 00118 // 00119 // ITEMIDLIST -- List if item IDs (combined with 0-terminator) 00120 // 00121 #include <pshpack1.h> 00122 typedef struct _ITEMIDLIST 00123 { 00124 SHITEMID mkid; 00125 } ITEMIDLIST; 00126 00127 #if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) 00128 typedef struct _ITEMIDLIST_RELATIVE : ITEMIDLIST {} ITEMIDLIST_RELATIVE; 00129 typedef struct _ITEMID_CHILD : ITEMIDLIST_RELATIVE {} ITEMID_CHILD; 00130 typedef struct _ITEMIDLIST_ABSOLUTE : ITEMIDLIST_RELATIVE {} ITEMIDLIST_ABSOLUTE; 00131 #else // !(defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus)) 00132 typedef ITEMIDLIST ITEMIDLIST_RELATIVE; 00133 00134 typedef ITEMIDLIST ITEMID_CHILD; 00135 00136 typedef ITEMIDLIST ITEMIDLIST_ABSOLUTE; 00137 00138 #endif // defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) 00139 #include <poppack.h> 00140 typedef /* [unique] */ __RPC_unique_pointer BYTE_BLOB *wirePIDL; 00141 00142 typedef /* [wire_marshal] */ ITEMIDLIST __unaligned *LPITEMIDLIST; 00143 00144 typedef /* [wire_marshal] */ const ITEMIDLIST __unaligned *LPCITEMIDLIST; 00145 00146 #if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) 00147 typedef /* [wire_marshal] */ ITEMIDLIST_ABSOLUTE *PIDLIST_ABSOLUTE; 00148 00149 typedef /* [wire_marshal] */ const ITEMIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE; 00150 00151 typedef /* [wire_marshal] */ const ITEMIDLIST_ABSOLUTE __unaligned *PCUIDLIST_ABSOLUTE; 00152 00153 typedef /* [wire_marshal] */ ITEMIDLIST_RELATIVE *PIDLIST_RELATIVE; 00154 00155 typedef /* [wire_marshal] */ const ITEMIDLIST_RELATIVE *PCIDLIST_RELATIVE; 00156 00157 typedef /* [wire_marshal] */ ITEMIDLIST_RELATIVE __unaligned *PUIDLIST_RELATIVE; 00158 00159 typedef /* [wire_marshal] */ const ITEMIDLIST_RELATIVE __unaligned *PCUIDLIST_RELATIVE; 00160 00161 typedef /* [wire_marshal] */ ITEMID_CHILD *PITEMID_CHILD; 00162 00163 typedef /* [wire_marshal] */ const ITEMID_CHILD *PCITEMID_CHILD; 00164 00165 typedef /* [wire_marshal] */ ITEMID_CHILD __unaligned *PUITEMID_CHILD; 00166 00167 typedef /* [wire_marshal] */ const ITEMID_CHILD __unaligned *PCUITEMID_CHILD; 00168 00169 typedef const PCUITEMID_CHILD *PCUITEMID_CHILD_ARRAY; 00170 00171 typedef const PCUIDLIST_RELATIVE *PCUIDLIST_RELATIVE_ARRAY; 00172 00173 typedef const PCIDLIST_ABSOLUTE *PCIDLIST_ABSOLUTE_ARRAY; 00174 00175 typedef const PCUIDLIST_ABSOLUTE *PCUIDLIST_ABSOLUTE_ARRAY; 00176 00177 #else // !(defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus)) 00178 #define PIDLIST_ABSOLUTE LPITEMIDLIST 00179 #define PCIDLIST_ABSOLUTE LPCITEMIDLIST 00180 #define PCUIDLIST_ABSOLUTE LPCITEMIDLIST 00181 #define PIDLIST_RELATIVE LPITEMIDLIST 00182 #define PCIDLIST_RELATIVE LPCITEMIDLIST 00183 #define PUIDLIST_RELATIVE LPITEMIDLIST 00184 #define PCUIDLIST_RELATIVE LPCITEMIDLIST 00185 #define PITEMID_CHILD LPITEMIDLIST 00186 #define PCITEMID_CHILD LPCITEMIDLIST 00187 #define PUITEMID_CHILD LPITEMIDLIST 00188 #define PCUITEMID_CHILD LPCITEMIDLIST 00189 #define PCUITEMID_CHILD_ARRAY LPCITEMIDLIST * 00190 #define PCUIDLIST_RELATIVE_ARRAY LPCITEMIDLIST * 00191 #define PCIDLIST_ABSOLUTE_ARRAY LPCITEMIDLIST * 00192 #define PCUIDLIST_ABSOLUTE_ARRAY LPCITEMIDLIST * 00193 #endif // defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) 00194 #ifdef MIDL_PASS 00195 typedef struct _WIN32_FIND_DATAA 00196 { 00197 DWORD dwFileAttributes; 00198 FILETIME ftCreationTime; 00199 FILETIME ftLastAccessTime; 00200 FILETIME ftLastWriteTime; 00201 DWORD nFileSizeHigh; 00202 DWORD nFileSizeLow; 00203 DWORD dwReserved0; 00204 DWORD dwReserved1; 00205 CHAR cFileName[ 260 ]; 00206 CHAR cAlternateFileName[ 14 ]; 00207 } WIN32_FIND_DATAA; 00208 00209 typedef struct _WIN32_FIND_DATAA *PWIN32_FIND_DATAA; 00210 00211 typedef struct _WIN32_FIND_DATAA *LPWIN32_FIND_DATAA; 00212 00213 typedef struct _WIN32_FIND_DATAW 00214 { 00215 DWORD dwFileAttributes; 00216 FILETIME ftCreationTime; 00217 FILETIME ftLastAccessTime; 00218 FILETIME ftLastWriteTime; 00219 DWORD nFileSizeHigh; 00220 DWORD nFileSizeLow; 00221 DWORD dwReserved0; 00222 DWORD dwReserved1; 00223 WCHAR cFileName[ 260 ]; 00224 WCHAR cAlternateFileName[ 14 ]; 00225 } WIN32_FIND_DATAW; 00226 00227 typedef struct _WIN32_FIND_DATAW *PWIN32_FIND_DATAW; 00228 00229 typedef struct _WIN32_FIND_DATAW *LPWIN32_FIND_DATAW; 00230 00231 #endif // MIDL_PASS 00232 //------------------------------------------------------------------------- 00233 // 00234 // struct STRRET 00235 // 00236 // structure for returning strings from IShellFolder member functions 00237 // 00238 //------------------------------------------------------------------------- 00239 // 00240 // uType indicate which union member to use 00241 // STRRET_WSTR Use STRRET.pOleStr must be freed by caller of GetDisplayNameOf 00242 // STRRET_OFFSET Use STRRET.uOffset Offset into SHITEMID for ANSI string 00243 // STRRET_CSTR Use STRRET.cStr ANSI Buffer 00244 // 00245 typedef /* [v1_enum] */ 00246 enum tagSTRRET_TYPE 00247 { STRRET_WSTR = 0, 00248 STRRET_OFFSET = 0x1, 00249 STRRET_CSTR = 0x2 00250 } STRRET_TYPE; 00251 00252 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 00253 #pragma warning(push) 00254 #pragma warning(disable:4201) /* nonstandard extension used : nameless struct/union */ 00255 #pragma once 00256 #endif 00257 #include <pshpack8.h> 00258 typedef struct _STRRET 00259 { 00260 UINT uType; 00261 union 00262 { 00263 LPWSTR pOleStr; 00264 UINT uOffset; 00265 char cStr[ 260 ]; 00266 } DUMMYUNIONNAME; 00267 } STRRET; 00268 00269 #include <poppack.h> 00270 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 00271 #pragma warning(pop) 00272 #endif 00273 typedef STRRET *LPSTRRET; 00274 00275 //------------------------------------------------------------------------- 00276 // 00277 // struct SHELLDETAILS 00278 // 00279 // structure for returning strings from IShellDetails 00280 // 00281 //------------------------------------------------------------------------- 00282 // 00283 // fmt; // LVCFMT_* value (header only) 00284 // cxChar; // Number of 'average' characters (header only) 00285 // str; // String information 00286 // 00287 #include <pshpack1.h> 00288 typedef struct _SHELLDETAILS 00289 { 00290 int fmt; 00291 int cxChar; 00292 STRRET str; 00293 } SHELLDETAILS; 00294 00295 typedef struct _SHELLDETAILS *LPSHELLDETAILS; 00296 00297 #include <poppack.h> 00298 00299 #if (_WIN32_IE >= _WIN32_IE_IE60SP2) 00300 typedef /* [v1_enum] */ 00301 enum tagPERCEIVED 00302 { PERCEIVED_TYPE_FIRST = -3, 00303 PERCEIVED_TYPE_CUSTOM = -3, 00304 PERCEIVED_TYPE_UNSPECIFIED = -2, 00305 PERCEIVED_TYPE_FOLDER = -1, 00306 PERCEIVED_TYPE_UNKNOWN = 0, 00307 PERCEIVED_TYPE_TEXT = 1, 00308 PERCEIVED_TYPE_IMAGE = 2, 00309 PERCEIVED_TYPE_AUDIO = 3, 00310 PERCEIVED_TYPE_VIDEO = 4, 00311 PERCEIVED_TYPE_COMPRESSED = 5, 00312 PERCEIVED_TYPE_DOCUMENT = 6, 00313 PERCEIVED_TYPE_SYSTEM = 7, 00314 PERCEIVED_TYPE_APPLICATION = 8, 00315 PERCEIVED_TYPE_GAMEMEDIA = 9, 00316 PERCEIVED_TYPE_CONTACTS = 10, 00317 PERCEIVED_TYPE_LAST = 10 00318 } PERCEIVED; 00319 00320 #define PERCEIVEDFLAG_UNDEFINED 0x0000 00321 #define PERCEIVEDFLAG_SOFTCODED 0x0001 00322 #define PERCEIVEDFLAG_HARDCODED 0x0002 00323 #define PERCEIVEDFLAG_NATIVESUPPORT 0x0004 00324 #define PERCEIVEDFLAG_GDIPLUS 0x0010 00325 #define PERCEIVEDFLAG_WMSDK 0x0020 00326 #define PERCEIVEDFLAG_ZIPFOLDER 0x0040 00327 typedef DWORD PERCEIVEDFLAG; 00328 00329 #endif // _WIN32_IE_IE60SP2 00330 00331 #if (NTDDI_VERSION >= NTDDI_LONGHORN) 00332 typedef struct _COMDLG_FILTERSPEC 00333 { 00334 LPCWSTR pszName; 00335 LPCWSTR pszSpec; 00336 } COMDLG_FILTERSPEC; 00337 00338 typedef struct tagMACHINE_ID 00339 { 00340 char szName[ 16 ]; 00341 } MACHINE_ID; 00342 00343 typedef struct tagDOMAIN_RELATIVE_OBJECTID 00344 { 00345 GUID guidVolume; 00346 GUID guidObject; 00347 } DOMAIN_RELATIVE_OBJECTID; 00348 00349 typedef GUID KNOWNFOLDERID; 00350 00351 #if 0 00352 typedef KNOWNFOLDERID *REFKNOWNFOLDERID; 00353 00354 #endif // 0 00355 #ifdef __cplusplus 00356 #define REFKNOWNFOLDERID const KNOWNFOLDERID & 00357 #else // !__cplusplus 00358 #define REFKNOWNFOLDERID const KNOWNFOLDERID * __MIDL_CONST 00359 #endif // __cplusplus 00360 #endif // NTDDI_LONGHORN 00361 typedef GUID FOLDERTYPEID; 00362 00363 #if 0 00364 typedef FOLDERTYPEID *REFFOLDERTYPEID; 00365 00366 #endif // 0 00367 #ifdef __cplusplus 00368 #define REFFOLDERTYPEID const FOLDERTYPEID & 00369 #else // !__cplusplus 00370 #define REFFOLDERTYPEID const FOLDERTYPEID * __MIDL_CONST 00371 #endif // __cplusplus 00372 typedef GUID TASKOWNERID; 00373 00374 #if 0 00375 typedef TASKOWNERID *REFTASKOWNERID; 00376 00377 #endif // 0 00378 #ifdef __cplusplus 00379 #define REFTASKOWNERID const TASKOWNERID & 00380 #else // !__cplusplus 00381 #define REFTASKOWNERID const TASKOWNERID * __MIDL_CONST 00382 #endif // __cplusplus 00383 #ifndef LF_FACESIZE 00384 typedef struct tagLOGFONTA 00385 { 00386 LONG lfHeight; 00387 LONG lfWidth; 00388 LONG lfEscapement; 00389 LONG lfOrientation; 00390 LONG lfWeight; 00391 BYTE lfItalic; 00392 BYTE lfUnderline; 00393 BYTE lfStrikeOut; 00394 BYTE lfCharSet; 00395 BYTE lfOutPrecision; 00396 BYTE lfClipPrecision; 00397 BYTE lfQuality; 00398 BYTE lfPitchAndFamily; 00399 CHAR lfFaceName[ 32 ]; 00400 } LOGFONTA; 00401 00402 typedef struct tagLOGFONTW 00403 { 00404 LONG lfHeight; 00405 LONG lfWidth; 00406 LONG lfEscapement; 00407 LONG lfOrientation; 00408 LONG lfWeight; 00409 BYTE lfItalic; 00410 BYTE lfUnderline; 00411 BYTE lfStrikeOut; 00412 BYTE lfCharSet; 00413 BYTE lfOutPrecision; 00414 BYTE lfClipPrecision; 00415 BYTE lfQuality; 00416 BYTE lfPitchAndFamily; 00417 WCHAR lfFaceName[ 32 ]; 00418 } LOGFONTW; 00419 00420 typedef LOGFONTA LOGFONT; 00421 00422 #endif // LF_FACESIZE 00423 typedef /* [v1_enum] */ 00424 enum tagSHCOLSTATE 00425 { SHCOLSTATE_TYPE_STR = 0x1, 00426 SHCOLSTATE_TYPE_INT = 0x2, 00427 SHCOLSTATE_TYPE_DATE = 0x3, 00428 SHCOLSTATE_TYPEMASK = 0xf, 00429 SHCOLSTATE_ONBYDEFAULT = 0x10, 00430 SHCOLSTATE_SLOW = 0x20, 00431 SHCOLSTATE_EXTENDED = 0x40, 00432 SHCOLSTATE_SECONDARYUI = 0x80, 00433 SHCOLSTATE_HIDDEN = 0x100, 00434 SHCOLSTATE_PREFER_VARCMP = 0x200, 00435 SHCOLSTATE_PREFER_FMTCMP = 0x400, 00436 SHCOLSTATE_NOSORTBYFOLDERNESS = 0x800, 00437 SHCOLSTATE_VIEWONLY = 0x10000, 00438 SHCOLSTATE_BATCHREAD = 0x20000, 00439 SHCOLSTATE_NO_GROUPBY = 0x40000, 00440 SHCOLSTATE_FIXED_WIDTH = 0x1000, 00441 SHCOLSTATE_NODPISCALE = 0x2000, 00442 SHCOLSTATE_FIXED_RATIO = 0x4000, 00443 SHCOLSTATE_DISPLAYMASK = 0xf000 00444 } SHCOLSTATE; 00445 00446 typedef DWORD SHCOLSTATEF; 00447 00448 typedef PROPERTYKEY SHCOLUMNID; 00449 00450 typedef const SHCOLUMNID *LPCSHCOLUMNID; 00451 00452 00453 00454 extern RPC_IF_HANDLE __MIDL_itf_shtypes_0000_0000_v0_0_c_ifspec; 00455 extern RPC_IF_HANDLE __MIDL_itf_shtypes_0000_0000_v0_0_s_ifspec; 00456 00457 /* Additional Prototypes for ALL interfaces */ 00458 00459 /* end of Additional Prototypes */ 00460 00461 #ifdef __cplusplus 00462 } 00463 #endif 00464 00465 #endif 00466 00467 00468