PortAudio 2.0

shtypes.h

Go to the documentation of this file.
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 

Generated for PortAudio by  doxygen1.7.3