diff fuhtark_test/include/winapi/msdasql.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/msdasql.h	Wed Nov 26 21:36:48 2025 +0700
@@ -0,0 +1,295 @@
+/**
+ * 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 _MSDASQL_H_
+#define _MSDASQL_H_
+
+#undef MSDASQLDECLSPEC
+#define MSDASQLDECLSPEC __declspec(selectany)
+
+#ifdef DBINITCONSTANTS
+extern const MSDASQLDECLSPEC GUID IID_ISQLRequestDiagFields = { 0x228972f0,0xb5ff,0x11d0,{ 0x8a,0x80,0x0,0xc0,0x4f,0xd6,0x11,0xcd } };
+extern const MSDASQLDECLSPEC GUID IID_ISQLGetDiagField = { 0x228972f1,0xb5ff,0x11d0,{ 0x8a,0x80,0x0,0xc0,0x4f,0xd6,0x11,0xcd } };
+extern const MSDASQLDECLSPEC GUID IID_IRowsetChangeExtInfo = {0x0C733A8FL,0x2A1C,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
+extern const MSDASQLDECLSPEC GUID CLSID_MSDASQL = {0xC8B522CBL,0x5CF3,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
+extern const MSDASQLDECLSPEC GUID CLSID_MSDASQL_ENUMERATOR = {0xC8B522CDL,0x5CF3,0x11CE,{0xAD,0xE5,0x00,0xAA,0x00,0x44,0x77,0x3D}};
+#else
+extern const GUID IID_ISQLRequestDiagFields;
+extern const GUID IID_ISQLGetDiagField;
+extern const GUID IID_IRowsetChangeExtInfo;
+extern const GUID CLSID_MSDASQL;
+extern const GUID CLSID_MSDASQL_ENUMERATOR;
+#endif
+
+#ifdef DBINITCONSTANTS
+extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERDATASOURCEINFO = {0x497c60e0,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
+extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERROWSET = {0x497c60e1,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
+extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERDBINIT = {0x497c60e2,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
+extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERSTMTATTR = {0x497c60e3,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
+extern const MSDASQLDECLSPEC GUID DBPROPSET_PROVIDERCONNATTR = {0x497c60e4,0x7123,0x11cf,{0xb1,0x71,0x0,0xaa,0x0,0x57,0x59,0x9e}};
+#else
+extern const GUID DBPROPSET_PROVIDERDATASOURCEINFO;
+extern const GUID DBPROPSET_PROVIDERROWSET;
+extern const GUID DBPROPSET_PROVIDERDBINIT;
+extern const GUID DBPROPSET_PROVIDERSTMTATTR;
+extern const GUID DBPROPSET_PROVIDERCONNATTR;
+#endif
+
+#define KAGPROP_QUERYBASEDUPDATES 2
+#define KAGPROP_MARSHALLABLE 3
+#define KAGPROP_POSITIONONNEWROW 4
+#define KAGPROP_IRowsetChangeExtInfo 5
+#define KAGPROP_CURSOR 6
+#define KAGPROP_CONCURRENCY 7
+#define KAGPROP_BLOBSONFOCURSOR 8
+#define KAGPROP_INCLUDENONEXACT 9
+#define KAGPROP_FORCESSFIREHOSEMODE 10
+#define KAGPROP_FORCENOPARAMETERREBIND 11
+#define KAGPROP_FORCENOPREPARE 12
+#define KAGPROP_FORCENOREEXECUTE 13
+
+#define KAGPROP_ACCESSIBLEPROCEDURES 2
+#define KAGPROP_ACCESSIBLETABLES 3
+#define KAGPROP_ODBCSQLOPTIEF 4
+#define KAGPROP_OJCAPABILITY 5
+#define KAGPROP_PROCEDURES 6
+#define KAGPROP_DRIVERNAME 7
+#define KAGPROP_DRIVERVER 8
+#define KAGPROP_DRIVERODBCVER 9
+#define KAGPROP_LIKEESCAPECLAUSE 10
+#define KAGPROP_SPECIALCHARACTERS 11
+#define KAGPROP_MAXCOLUMNSINGROUPBY 12
+#define KAGPROP_MAXCOLUMNSININDEX 13
+#define KAGPROP_MAXCOLUMNSINORDERBY 14
+#define KAGPROP_MAXCOLUMNSINSELECT 15
+#define KAGPROP_MAXCOLUMNSINTABLE 16
+#define KAGPROP_NUMERICFUNCTIONS 17
+#define KAGPROP_ODBCSQLCONFORMANCE 18
+#define KAGPROP_OUTERJOINS 19
+#define KAGPROP_STRINGFUNCTIONS 20
+#define KAGPROP_SYSTEMFUNCTIONS 21
+#define KAGPROP_TIMEDATEFUNCTIONS 22
+#define KAGPROP_FILEUSAGE 23
+#define KAGPROP_ACTIVESTATEMENTS 24
+
+#define KAGPROP_AUTH_TRUSTEDCONNECTION 2
+#define KAGPROP_AUTH_SERVERINTEGRATED 3
+
+#define KAGPROPVAL_CONCUR_ROWVER 0x00000001
+#define KAGPROPVAL_CONCUR_VALUES 0x00000002
+#define KAGPROPVAL_CONCUR_LOCK 0x00000004
+#define KAGPROPVAL_CONCUR_READ_ONLY 0x00000008
+
+#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
+
+#ifndef COM_NO_WINDOWS_H
+#include "windows.h"
+#include "ole2.h"
+#endif
+
+#ifndef __rstcei_h__
+#define __rstcei_h__
+
+#ifndef __IRowsetChangeExtInfo_FWD_DEFINED__
+#define __IRowsetChangeExtInfo_FWD_DEFINED__
+typedef struct IRowsetChangeExtInfo IRowsetChangeExtInfo;
+#endif
+
+#include "oledb.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
+
+#ifndef __IRowsetChangeExtInfo_INTERFACE_DEFINED__
+#define __IRowsetChangeExtInfo_INTERFACE_DEFINED__
+
+  EXTERN_C const IID IID_IRowsetChangeExtInfo;
+#if defined(__cplusplus) && !defined(CINTERFACE)
+  struct IRowsetChangeExtInfo : public IUnknown {
+  public:
+    virtual HRESULT WINAPI GetOriginalRow(HCHAPTER hReserved,HROW hRow,HROW *phRowOriginal) = 0;
+    virtual HRESULT WINAPI GetPendingColumns(HCHAPTER hReserved,HROW hRow,ULONG cColumnOrdinals,const ULONG rgiOrdinals[],DBPENDINGSTATUS rgColumnStatus[]) = 0;
+  };
+#else
+  typedef struct IRowsetChangeExtInfoVtbl {
+    BEGIN_INTERFACE
+      HRESULT (WINAPI *QueryInterface)(IRowsetChangeExtInfo *This,REFIID riid,void **ppvObject);
+      ULONG (WINAPI *AddRef)(IRowsetChangeExtInfo *This);
+      ULONG (WINAPI *Release)(IRowsetChangeExtInfo *This);
+      HRESULT (WINAPI *GetOriginalRow)(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,HROW *phRowOriginal);
+      HRESULT (WINAPI *GetPendingColumns)(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,ULONG cColumnOrdinals,const ULONG rgiOrdinals[],DBPENDINGSTATUS rgColumnStatus[]);
+    END_INTERFACE
+  } IRowsetChangeExtInfoVtbl;
+  struct IRowsetChangeExtInfo {
+    CONST_VTBL struct IRowsetChangeExtInfoVtbl *lpVtbl;
+  };
+#ifdef COBJMACROS
+#define IRowsetChangeExtInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IRowsetChangeExtInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IRowsetChangeExtInfo_Release(This) (This)->lpVtbl->Release(This)
+#define IRowsetChangeExtInfo_GetOriginalRow(This,hReserved,hRow,phRowOriginal) (This)->lpVtbl->GetOriginalRow(This,hReserved,hRow,phRowOriginal)
+#define IRowsetChangeExtInfo_GetPendingColumns(This,hReserved,hRow,cColumnOrdinals,rgiOrdinals,rgColumnStatus) (This)->lpVtbl->GetPendingColumns(This,hReserved,hRow,cColumnOrdinals,rgiOrdinals,rgColumnStatus)
+#endif
+#endif
+  HRESULT WINAPI IRowsetChangeExtInfo_GetOriginalRow_Proxy(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,HROW *phRowOriginal);
+  void __RPC_STUB IRowsetChangeExtInfo_GetOriginalRow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
+  HRESULT WINAPI IRowsetChangeExtInfo_GetPendingColumns_Proxy(IRowsetChangeExtInfo *This,HCHAPTER hReserved,HROW hRow,ULONG cColumnOrdinals,const ULONG rgiOrdinals[],DBPENDINGSTATUS rgColumnStatus[]);
+  void __RPC_STUB IRowsetChangeExtInfo_GetPendingColumns_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+#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
+
+#ifndef COM_NO_WINDOWS_H
+#include "windows.h"
+#include "ole2.h"
+#endif
+
+#ifndef __kagdiag_h__
+#define __kagdiag_h__
+
+#ifndef __ISQLRequestDiagFields_FWD_DEFINED__
+#define __ISQLRequestDiagFields_FWD_DEFINED__
+typedef struct ISQLRequestDiagFields ISQLRequestDiagFields;
+#endif
+
+#ifndef __ISQLGetDiagField_FWD_DEFINED__
+#define __ISQLGetDiagField_FWD_DEFINED__
+typedef struct ISQLGetDiagField ISQLGetDiagField;
+#endif
+
+#include "unknwn.h"
+#include "oaidl.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
+
+  enum KAGREQDIAGFLAGSENUM {
+    KAGREQDIAGFLAGS_HEADER = 0x1,KAGREQDIAGFLAGS_RECORD = 0x2
+  };
+
+  typedef struct tagKAGREQDIAG {
+    ULONG ulDiagFlags;
+    VARTYPE vt;
+    SHORT sDiagField;
+  } KAGREQDIAG;
+
+  typedef struct tagKAGGETDIAG {
+    ULONG ulSize;
+    VARIANTARG vDiagInfo;
+    SHORT sDiagField;
+  } KAGGETDIAG;
+
+  extern RPC_IF_HANDLE __MIDL_itf_kagdiag_0000_v0_0_c_ifspec;
+  extern RPC_IF_HANDLE __MIDL_itf_kagdiag_0000_v0_0_s_ifspec;
+
+#ifndef __ISQLRequestDiagFields_INTERFACE_DEFINED__
+#define __ISQLRequestDiagFields_INTERFACE_DEFINED__
+  EXTERN_C const IID IID_ISQLRequestDiagFields;
+#if defined(__cplusplus) && !defined(CINTERFACE)
+  struct ISQLRequestDiagFields : public IUnknown {
+  public:
+    virtual HRESULT WINAPI RequestDiagFields(ULONG cDiagFields,KAGREQDIAG rgDiagFields[]) = 0;
+  };
+#else
+  typedef struct ISQLRequestDiagFieldsVtbl {
+    BEGIN_INTERFACE
+      HRESULT (WINAPI *QueryInterface)(ISQLRequestDiagFields *This,REFIID riid,void **ppvObject);
+      ULONG (WINAPI *AddRef)(ISQLRequestDiagFields *This);
+      ULONG (WINAPI *Release)(ISQLRequestDiagFields *This);
+      HRESULT (WINAPI *RequestDiagFields)(ISQLRequestDiagFields *This,ULONG cDiagFields,KAGREQDIAG rgDiagFields[]);
+    END_INTERFACE
+  } ISQLRequestDiagFieldsVtbl;
+  struct ISQLRequestDiagFields {
+    CONST_VTBL struct ISQLRequestDiagFieldsVtbl *lpVtbl;
+  };
+#ifdef COBJMACROS
+#define ISQLRequestDiagFields_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define ISQLRequestDiagFields_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define ISQLRequestDiagFields_Release(This) (This)->lpVtbl->Release(This)
+#define ISQLRequestDiagFields_RequestDiagFields(This,cDiagFields,rgDiagFields) (This)->lpVtbl->RequestDiagFields(This,cDiagFields,rgDiagFields)
+#endif
+#endif
+  HRESULT WINAPI ISQLRequestDiagFields_RequestDiagFields_Proxy(ISQLRequestDiagFields *This,ULONG cDiagFields,KAGREQDIAG rgDiagFields[]);
+  void __RPC_STUB ISQLRequestDiagFields_RequestDiagFields_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
+#endif
+
+#ifndef __ISQLGetDiagField_INTERFACE_DEFINED__
+#define __ISQLGetDiagField_INTERFACE_DEFINED__
+  EXTERN_C const IID IID_ISQLGetDiagField;
+#if defined(__cplusplus) && !defined(CINTERFACE)
+  struct ISQLGetDiagField : public IUnknown {
+  public:
+    virtual HRESULT WINAPI GetDiagField(KAGGETDIAG *pDiagInfo) = 0;
+  };
+#else
+  typedef struct ISQLGetDiagFieldVtbl {
+    BEGIN_INTERFACE
+      HRESULT (WINAPI *QueryInterface)(ISQLGetDiagField *This,REFIID riid,void **ppvObject);
+      ULONG (WINAPI *AddRef)(ISQLGetDiagField *This);
+      ULONG (WINAPI *Release)(ISQLGetDiagField *This);
+      HRESULT (WINAPI *GetDiagField)(ISQLGetDiagField *This,KAGGETDIAG *pDiagInfo);
+    END_INTERFACE
+  } ISQLGetDiagFieldVtbl;
+  struct ISQLGetDiagField {
+    CONST_VTBL struct ISQLGetDiagFieldVtbl *lpVtbl;
+  };
+#ifdef COBJMACROS
+#define ISQLGetDiagField_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define ISQLGetDiagField_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define ISQLGetDiagField_Release(This) (This)->lpVtbl->Release(This)
+#define ISQLGetDiagField_GetDiagField(This,pDiagInfo) (This)->lpVtbl->GetDiagField(This,pDiagInfo)
+#endif
+#endif
+  HRESULT WINAPI ISQLGetDiagField_GetDiagField_Proxy(ISQLGetDiagField *This,KAGGETDIAG *pDiagInfo);
+  void __RPC_STUB ISQLGetDiagField_GetDiagField_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
+#endif
+
+  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
+#endif