ship with mingw-w64 v6.0.0

See #514
master
Andrew Kelley 2019-07-09 23:34:16 -04:00
parent ae2345b742
commit 1c7f21852f
No known key found for this signature in database
GPG Key ID: 7C5F548F728501A9
1518 changed files with 1399540 additions and 39 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,272 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __GLAUX_H__
#define __GLAUX_H__
#include <windows.h>
#include <GL/gl.h>
#include <GL/glu.h>
#ifdef __cplusplus
extern "C" {
#endif
#define AUX_RGB 0
#define AUX_RGBA AUX_RGB
#define AUX_INDEX 1
#define AUX_SINGLE 0
#define AUX_DOUBLE 2
#define AUX_DIRECT 0
#define AUX_INDIRECT 4
#define AUX_ACCUM 8
#define AUX_ALPHA 16
#define AUX_DEPTH24 32
#define AUX_STENCIL 64
#define AUX_AUX 128
#define AUX_DEPTH16 256
#define AUX_FIXED_332_PAL 512
#define AUX_DEPTH AUX_DEPTH16
#define AUX_WIND_IS_RGB(x) (((x) & AUX_INDEX)==0)
#define AUX_WIND_IS_INDEX(x) (((x) & AUX_INDEX)!=0)
#define AUX_WIND_IS_SINGLE(x) (((x) & AUX_DOUBLE)==0)
#define AUX_WIND_IS_DOUBLE(x) (((x) & AUX_DOUBLE)!=0)
#define AUX_WIND_IS_INDIRECT(x) (((x) & AUX_INDIRECT)!=0)
#define AUX_WIND_IS_DIRECT(x) (((x) & AUX_INDIRECT)==0)
#define AUX_WIND_HAS_ACCUM(x) (((x) & AUX_ACCUM)!=0)
#define AUX_WIND_HAS_ALPHA(x) (((x) & AUX_ALPHA)!=0)
#define AUX_WIND_HAS_DEPTH(x) (((x) & (AUX_DEPTH24 | AUX_DEPTH16))!=0)
#define AUX_WIND_HAS_STENCIL(x) (((x) & AUX_STENCIL)!=0)
#define AUX_WIND_USES_FIXED_332_PAL(x) (((x) & AUX_FIXED_332_PAL)!=0)
typedef struct _AUX_EVENTREC {
GLint event;
GLint data[4];
} AUX_EVENTREC;
#define AUX_EXPOSE 1
#define AUX_CONFIG 2
#define AUX_DRAW 4
#define AUX_KEYEVENT 8
#define AUX_MOUSEDOWN 16
#define AUX_MOUSEUP 32
#define AUX_MOUSELOC 64
#define AUX_WINDOWX 0
#define AUX_WINDOWY 1
#define AUX_MOUSEX 0
#define AUX_MOUSEY 1
#define AUX_MOUSESTATUS 3
#define AUX_KEY 0
#define AUX_KEYSTATUS 1
#define AUX_LEFTBUTTON 1
#define AUX_RIGHTBUTTON 2
#define AUX_MIDDLEBUTTON 4
#define AUX_SHIFT 1
#define AUX_CONTROL 2
#define AUX_RETURN 0x0D
#define AUX_ESCAPE 0x1B
#define AUX_SPACE 0x20
#define AUX_LEFT 0x25
#define AUX_UP 0x26
#define AUX_RIGHT 0x27
#define AUX_DOWN 0x28
#define AUX_A 'A'
#define AUX_B 'B'
#define AUX_C 'C'
#define AUX_D 'D'
#define AUX_E 'E'
#define AUX_F 'F'
#define AUX_G 'G'
#define AUX_H 'H'
#define AUX_I 'I'
#define AUX_J 'J'
#define AUX_K 'K'
#define AUX_L 'L'
#define AUX_M 'M'
#define AUX_N 'N'
#define AUX_O 'O'
#define AUX_P 'P'
#define AUX_Q 'Q'
#define AUX_R 'R'
#define AUX_S 'S'
#define AUX_T 'T'
#define AUX_U 'U'
#define AUX_V 'V'
#define AUX_W 'W'
#define AUX_X 'X'
#define AUX_Y 'Y'
#define AUX_Z 'Z'
#define AUX_a 'a'
#define AUX_b 'b'
#define AUX_c 'c'
#define AUX_d 'd'
#define AUX_e 'e'
#define AUX_f 'f'
#define AUX_g 'g'
#define AUX_h 'h'
#define AUX_i 'i'
#define AUX_j 'j'
#define AUX_k 'k'
#define AUX_l 'l'
#define AUX_m 'm'
#define AUX_n 'n'
#define AUX_o 'o'
#define AUX_p 'p'
#define AUX_q 'q'
#define AUX_r 'r'
#define AUX_s 's'
#define AUX_t 't'
#define AUX_u 'u'
#define AUX_v 'v'
#define AUX_w 'w'
#define AUX_x 'x'
#define AUX_y 'y'
#define AUX_z 'z'
#define AUX_0 '0'
#define AUX_1 '1'
#define AUX_2 '2'
#define AUX_3 '3'
#define AUX_4 '4'
#define AUX_5 '5'
#define AUX_6 '6'
#define AUX_7 '7'
#define AUX_8 '8'
#define AUX_9 '9'
#define AUX_FD 1
#define AUX_COLORMAP 3
#define AUX_GREYSCALEMAP 4
#define AUX_FOGMAP 5
#define AUX_ONECOLOR 6
#define AUX_BLACK 0
#define AUX_RED 13
#define AUX_GREEN 14
#define AUX_YELLOW 15
#define AUX_BLUE 16
#define AUX_MAGENTA 17
#define AUX_CYAN 18
#define AUX_WHITE 19
extern float auxRGBMap[20][3];
#define AUX_SETCOLOR(x,y) (AUX_WIND_IS_RGB((x)) ? glColor3fv(auxRGBMap[(y)]) : glIndexf((y)))
typedef struct _AUX_RGBImageRec {
GLint sizeX,sizeY;
unsigned char *data;
} AUX_RGBImageRec;
void APIENTRY auxInitDisplayMode(GLenum);
void APIENTRY auxInitPosition(int,int,int,int);
#ifdef UNICODE
#define auxInitWindow auxInitWindowW
#else
#define auxInitWindow auxInitWindowA
#endif
GLenum APIENTRY auxInitWindowA(LPCSTR);
GLenum APIENTRY auxInitWindowW(LPCWSTR);
void APIENTRY auxCloseWindow(void);
void APIENTRY auxQuit(void);
void APIENTRY auxSwapBuffers(void);
typedef void (CALLBACK *AUXMAINPROC)(void);
void APIENTRY auxMainLoop(AUXMAINPROC);
typedef void (CALLBACK *AUXEXPOSEPROC)(int,int);
void APIENTRY auxExposeFunc(AUXEXPOSEPROC);
typedef void (CALLBACK *AUXRESHAPEPROC)(GLsizei,GLsizei);
void APIENTRY auxReshapeFunc(AUXRESHAPEPROC);
typedef void (CALLBACK *AUXIDLEPROC)(void);
void APIENTRY auxIdleFunc(AUXIDLEPROC);
typedef void (CALLBACK *AUXKEYPROC)(void);
void APIENTRY auxKeyFunc(int,AUXKEYPROC);
typedef void (CALLBACK *AUXMOUSEPROC)(AUX_EVENTREC *);
void APIENTRY auxMouseFunc(int,int,AUXMOUSEPROC);
int APIENTRY auxGetColorMapSize(void);
void APIENTRY auxGetMouseLoc(int *,int *);
void APIENTRY auxSetOneColor(int,float,float,float);
void APIENTRY auxSetFogRamp(int,int);
void APIENTRY auxSetGreyRamp(void);
void APIENTRY auxSetRGBMap(int,float *);
#ifdef UNICODE
#define auxRGBImageLoad auxRGBImageLoadW
#else
#define auxRGBImageLoad auxRGBImageLoadA
#endif
AUX_RGBImageRec *APIENTRY auxRGBImageLoadA(LPCSTR);
AUX_RGBImageRec *APIENTRY auxRGBImageLoadW(LPCWSTR);
#ifdef UNICODE
#define auxDIBImageLoad auxDIBImageLoadW
#else
#define auxDIBImageLoad auxDIBImageLoadA
#endif
AUX_RGBImageRec *APIENTRY auxDIBImageLoadA(LPCSTR);
AUX_RGBImageRec *APIENTRY auxDIBImageLoadW(LPCWSTR);
void APIENTRY auxCreateFont(void);
#ifdef UNICODE
#define auxDrawStr auxDrawStrW
#else
#define auxDrawStr auxDrawStrA
#endif
void APIENTRY auxDrawStrA(LPCSTR);
void APIENTRY auxDrawStrW(LPCWSTR);
void APIENTRY auxWireSphere(GLdouble);
void APIENTRY auxSolidSphere(GLdouble);
void APIENTRY auxWireCube(GLdouble);
void APIENTRY auxSolidCube(GLdouble);
void APIENTRY auxWireBox(GLdouble,GLdouble,GLdouble);
void APIENTRY auxSolidBox(GLdouble,GLdouble,GLdouble);
void APIENTRY auxWireTorus(GLdouble,GLdouble);
void APIENTRY auxSolidTorus(GLdouble,GLdouble);
void APIENTRY auxWireCylinder(GLdouble,GLdouble);
void APIENTRY auxSolidCylinder(GLdouble,GLdouble);
void APIENTRY auxWireIcosahedron(GLdouble);
void APIENTRY auxSolidIcosahedron(GLdouble);
void APIENTRY auxWireOctahedron(GLdouble);
void APIENTRY auxSolidOctahedron(GLdouble);
void APIENTRY auxWireTetrahedron(GLdouble);
void APIENTRY auxSolidTetrahedron(GLdouble);
void APIENTRY auxWireDodecahedron(GLdouble);
void APIENTRY auxSolidDodecahedron(GLdouble);
void APIENTRY auxWireCone(GLdouble,GLdouble);
void APIENTRY auxSolidCone(GLdouble,GLdouble);
void APIENTRY auxWireTeapot(GLdouble);
void APIENTRY auxSolidTeapot(GLdouble);
HWND APIENTRY auxGetHWND(void);
HDC APIENTRY auxGetHDC(void);
HGLRC APIENTRY auxGetHGLRC(void);
enum {
AUX_USE_ID = 1,AUX_EXACT_MATCH,AUX_MINIMUM_CRITERIA
};
void APIENTRY auxInitDisplayModePolicy(GLenum);
GLenum APIENTRY auxInitDisplayModeID(GLint);
GLenum APIENTRY auxGetDisplayModePolicy(void);
GLint APIENTRY auxGetDisplayModeID(void);
GLenum APIENTRY auxGetDisplayMode(void);
#ifdef __cplusplus
}
#endif
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,255 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __glu_h__
#ifndef __GLU_H__
#define __glu_h__
#define __GLU_H__
#include <GL/gl.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef UNICODE
#define gluErrorStringWIN(errCode) ((LPCSTR) gluErrorUnicodeStringEXT(errCode))
#else
#define gluErrorStringWIN(errCode) ((LPCWSTR) gluErrorString(errCode))
#endif
const GLubyte *APIENTRY gluErrorString(GLenum errCode);
const wchar_t *APIENTRY gluErrorUnicodeStringEXT(GLenum errCode);
const GLubyte *APIENTRY gluGetString(GLenum name);
void APIENTRY gluOrtho2D(GLdouble left,GLdouble right,GLdouble bottom,GLdouble top);
void APIENTRY gluPerspective(GLdouble fovy,GLdouble aspect,GLdouble zNear,GLdouble zFar);
void APIENTRY gluPickMatrix(GLdouble x,GLdouble y,GLdouble width,GLdouble height,GLint viewport[4]);
void APIENTRY gluLookAt(GLdouble eyex,GLdouble eyey,GLdouble eyez,GLdouble centerx,GLdouble centery,GLdouble centerz,GLdouble upx,GLdouble upy,GLdouble upz);
int APIENTRY gluProject(GLdouble objx,GLdouble objy,GLdouble objz,const GLdouble modelMatrix[16],const GLdouble projMatrix[16],const GLint viewport[4],GLdouble *winx,GLdouble *winy,GLdouble *winz);
int APIENTRY gluUnProject(GLdouble winx,GLdouble winy,GLdouble winz,const GLdouble modelMatrix[16],const GLdouble projMatrix[16],const GLint viewport[4],GLdouble *objx,GLdouble *objy,GLdouble *objz);
int APIENTRY gluScaleImage(GLenum format,GLint widthin,GLint heightin,GLenum typein,const void *datain,GLint widthout,GLint heightout,GLenum typeout,void *dataout);
int APIENTRY gluBuild1DMipmaps(GLenum target,GLint components,GLint width,GLenum format,GLenum type,const void *data);
int APIENTRY gluBuild2DMipmaps(GLenum target,GLint components,GLint width,GLint height,GLenum format,GLenum type,const void *data);
#ifdef __cplusplus
class GLUnurbs;
class GLUquadric;
class GLUtesselator;
typedef class GLUnurbs GLUnurbsObj;
typedef class GLUquadric GLUquadricObj;
typedef class GLUtesselator GLUtesselatorObj;
typedef class GLUtesselator GLUtriangulatorObj;
#else
typedef struct GLUnurbs GLUnurbs;
typedef struct GLUquadric GLUquadric;
typedef struct GLUtesselator GLUtesselator;
typedef struct GLUnurbs GLUnurbsObj;
typedef struct GLUquadric GLUquadricObj;
typedef struct GLUtesselator GLUtesselatorObj;
typedef struct GLUtesselator GLUtriangulatorObj;
#endif
GLUquadric *APIENTRY gluNewQuadric(void);
void APIENTRY gluDeleteQuadric(GLUquadric *state);
void APIENTRY gluQuadricNormals(GLUquadric *quadObject,GLenum normals);
void APIENTRY gluQuadricTexture(GLUquadric *quadObject,GLboolean textureCoords);
void APIENTRY gluQuadricOrientation(GLUquadric *quadObject,GLenum orientation);
void APIENTRY gluQuadricDrawStyle(GLUquadric *quadObject,GLenum drawStyle);
void APIENTRY gluCylinder(GLUquadric *qobj,GLdouble baseRadius,GLdouble topRadius,GLdouble height,GLint slices,GLint stacks);
void APIENTRY gluDisk(GLUquadric *qobj,GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint loops);
void APIENTRY gluPartialDisk(GLUquadric *qobj,GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint loops,GLdouble startAngle,GLdouble sweepAngle);
void APIENTRY gluSphere(GLUquadric *qobj,GLdouble radius,GLint slices,GLint stacks);
void APIENTRY gluQuadricCallback(GLUquadric *qobj,GLenum which,void (CALLBACK *fn)());
GLUtesselator *APIENTRY gluNewTess(void);
void APIENTRY gluDeleteTess(GLUtesselator *tess);
void APIENTRY gluTessBeginPolygon(GLUtesselator *tess,void *polygon_data);
void APIENTRY gluTessBeginContour(GLUtesselator *tess);
void APIENTRY gluTessVertex(GLUtesselator *tess,GLdouble coords[3],void *data);
void APIENTRY gluTessEndContour(GLUtesselator *tess);
void APIENTRY gluTessEndPolygon(GLUtesselator *tess);
void APIENTRY gluTessProperty(GLUtesselator *tess,GLenum which,GLdouble value);
void APIENTRY gluTessNormal(GLUtesselator *tess,GLdouble x,GLdouble y,GLdouble z);
void APIENTRY gluTessCallback(GLUtesselator *tess,GLenum which,void (CALLBACK *fn)());
void APIENTRY gluGetTessProperty(GLUtesselator *tess,GLenum which,GLdouble *value);
GLUnurbs *APIENTRY gluNewNurbsRenderer(void);
void APIENTRY gluDeleteNurbsRenderer(GLUnurbs *nobj);
void APIENTRY gluBeginSurface(GLUnurbs *nobj);
void APIENTRY gluBeginCurve(GLUnurbs *nobj);
void APIENTRY gluEndCurve(GLUnurbs *nobj);
void APIENTRY gluEndSurface(GLUnurbs *nobj);
void APIENTRY gluBeginTrim(GLUnurbs *nobj);
void APIENTRY gluEndTrim(GLUnurbs *nobj);
void APIENTRY gluPwlCurve(GLUnurbs *nobj,GLint count,GLfloat *array,GLint stride,GLenum type);
void APIENTRY gluNurbsCurve(GLUnurbs *nobj,GLint nknots,GLfloat *knot,GLint stride,GLfloat *ctlarray,GLint order,GLenum type);
void APIENTRY gluNurbsSurface(GLUnurbs *nobj,GLint sknot_count,float *sknot,GLint tknot_count,GLfloat *tknot,GLint s_stride,GLint t_stride,GLfloat *ctlarray,GLint sorder,GLint torder,GLenum type);
void APIENTRY gluLoadSamplingMatrices(GLUnurbs *nobj,const GLfloat modelMatrix[16],const GLfloat projMatrix[16],const GLint viewport[4]);
void APIENTRY gluNurbsProperty(GLUnurbs *nobj,GLenum property,GLfloat value);
void APIENTRY gluGetNurbsProperty(GLUnurbs *nobj,GLenum property,GLfloat *value);
void APIENTRY gluNurbsCallback(GLUnurbs *nobj,GLenum which,void (CALLBACK *fn)());
typedef void (CALLBACK *GLUquadricErrorProc)(GLenum);
typedef void (CALLBACK *GLUtessBeginProc)(GLenum);
typedef void (CALLBACK *GLUtessEdgeFlagProc) (GLboolean);
typedef void (CALLBACK *GLUtessVertexProc)(void *);
typedef void (CALLBACK *GLUtessEndProc)(void);
typedef void (CALLBACK *GLUtessErrorProc)(GLenum);
typedef void (CALLBACK *GLUtessCombineProc)(GLdouble[3],void*[4],GLfloat[4],void**);
typedef void (CALLBACK *GLUtessBeginDataProc)(GLenum,void *);
typedef void (CALLBACK *GLUtessEdgeFlagDataProc) (GLboolean,void *);
typedef void (CALLBACK *GLUtessVertexDataProc)(void *,void *);
typedef void (CALLBACK *GLUtessEndDataProc)(void *);
typedef void (CALLBACK *GLUtessErrorDataProc)(GLenum,void *);
typedef void (CALLBACK *GLUtessCombineDataProc)(GLdouble[3],void*[4],GLfloat[4],void**,void*);
typedef void (CALLBACK *GLUnurbsErrorProc)(GLenum);
#define GLU_VERSION_1_1 1
#define GLU_VERSION_1_2 1
#define GLU_INVALID_ENUM 100900
#define GLU_INVALID_VALUE 100901
#define GLU_OUT_OF_MEMORY 100902
#define GLU_INCOMPATIBLE_GL_VERSION 100903
#define GLU_VERSION 100800
#define GLU_EXTENSIONS 100801
#define GLU_TRUE GL_TRUE
#define GLU_FALSE GL_FALSE
#define GLU_SMOOTH 100000
#define GLU_FLAT 100001
#define GLU_NONE 100002
#define GLU_POINT 100010
#define GLU_LINE 100011
#define GLU_FILL 100012
#define GLU_SILHOUETTE 100013
#define GLU_OUTSIDE 100020
#define GLU_INSIDE 100021
#define GLU_TESS_MAX_COORD 1.0e150
#define GLU_TESS_WINDING_RULE 100140
#define GLU_TESS_BOUNDARY_ONLY 100141
#define GLU_TESS_TOLERANCE 100142
#define GLU_TESS_WINDING_ODD 100130
#define GLU_TESS_WINDING_NONZERO 100131
#define GLU_TESS_WINDING_POSITIVE 100132
#define GLU_TESS_WINDING_NEGATIVE 100133
#define GLU_TESS_WINDING_ABS_GEQ_TWO 100134
#define GLU_TESS_BEGIN 100100
#define GLU_TESS_VERTEX 100101
#define GLU_TESS_END 100102
#define GLU_TESS_ERROR 100103
#define GLU_TESS_EDGE_FLAG 100104
#define GLU_TESS_COMBINE 100105
#define GLU_TESS_BEGIN_DATA 100106
#define GLU_TESS_VERTEX_DATA 100107
#define GLU_TESS_END_DATA 100108
#define GLU_TESS_ERROR_DATA 100109
#define GLU_TESS_EDGE_FLAG_DATA 100110
#define GLU_TESS_COMBINE_DATA 100111
#define GLU_TESS_ERROR1 100151
#define GLU_TESS_ERROR2 100152
#define GLU_TESS_ERROR3 100153
#define GLU_TESS_ERROR4 100154
#define GLU_TESS_ERROR5 100155
#define GLU_TESS_ERROR6 100156
#define GLU_TESS_ERROR7 100157
#define GLU_TESS_ERROR8 100158
#define GLU_TESS_MISSING_BEGIN_POLYGON GLU_TESS_ERROR1
#define GLU_TESS_MISSING_BEGIN_CONTOUR GLU_TESS_ERROR2
#define GLU_TESS_MISSING_END_POLYGON GLU_TESS_ERROR3
#define GLU_TESS_MISSING_END_CONTOUR GLU_TESS_ERROR4
#define GLU_TESS_COORD_TOO_LARGE GLU_TESS_ERROR5
#define GLU_TESS_NEED_COMBINE_CALLBACK GLU_TESS_ERROR6
#define GLU_AUTO_LOAD_MATRIX 100200
#define GLU_CULLING 100201
#define GLU_SAMPLING_TOLERANCE 100203
#define GLU_DISPLAY_MODE 100204
#define GLU_PARAMETRIC_TOLERANCE 100202
#define GLU_SAMPLING_METHOD 100205
#define GLU_U_STEP 100206
#define GLU_V_STEP 100207
#define GLU_PATH_LENGTH 100215
#define GLU_PARAMETRIC_ERROR 100216
#define GLU_DOMAIN_DISTANCE 100217
#define GLU_MAP1_TRIM_2 100210
#define GLU_MAP1_TRIM_3 100211
#define GLU_OUTLINE_POLYGON 100240
#define GLU_OUTLINE_PATCH 100241
#define GLU_NURBS_ERROR1 100251
#define GLU_NURBS_ERROR2 100252
#define GLU_NURBS_ERROR3 100253
#define GLU_NURBS_ERROR4 100254
#define GLU_NURBS_ERROR5 100255
#define GLU_NURBS_ERROR6 100256
#define GLU_NURBS_ERROR7 100257
#define GLU_NURBS_ERROR8 100258
#define GLU_NURBS_ERROR9 100259
#define GLU_NURBS_ERROR10 100260
#define GLU_NURBS_ERROR11 100261
#define GLU_NURBS_ERROR12 100262
#define GLU_NURBS_ERROR13 100263
#define GLU_NURBS_ERROR14 100264
#define GLU_NURBS_ERROR15 100265
#define GLU_NURBS_ERROR16 100266
#define GLU_NURBS_ERROR17 100267
#define GLU_NURBS_ERROR18 100268
#define GLU_NURBS_ERROR19 100269
#define GLU_NURBS_ERROR20 100270
#define GLU_NURBS_ERROR21 100271
#define GLU_NURBS_ERROR22 100272
#define GLU_NURBS_ERROR23 100273
#define GLU_NURBS_ERROR24 100274
#define GLU_NURBS_ERROR25 100275
#define GLU_NURBS_ERROR26 100276
#define GLU_NURBS_ERROR27 100277
#define GLU_NURBS_ERROR28 100278
#define GLU_NURBS_ERROR29 100279
#define GLU_NURBS_ERROR30 100280
#define GLU_NURBS_ERROR31 100281
#define GLU_NURBS_ERROR32 100282
#define GLU_NURBS_ERROR33 100283
#define GLU_NURBS_ERROR34 100284
#define GLU_NURBS_ERROR35 100285
#define GLU_NURBS_ERROR36 100286
#define GLU_NURBS_ERROR37 100287
void APIENTRY gluBeginPolygon(GLUtesselator *tess);
void APIENTRY gluNextContour(GLUtesselator *tess,GLenum type);
void APIENTRY gluEndPolygon(GLUtesselator *tess);
#define GLU_CW 100120
#define GLU_CCW 100121
#define GLU_INTERIOR 100122
#define GLU_EXTERIOR 100123
#define GLU_UNKNOWN 100124
#define GLU_BEGIN GLU_TESS_BEGIN
#define GLU_VERTEX GLU_TESS_VERTEX
#define GLU_END GLU_TESS_END
#define GLU_ERROR GLU_TESS_ERROR
#define GLU_EDGE_FLAG GLU_TESS_EDGE_FLAG
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,926 @@
#ifndef __glxext_h_
#define __glxext_h_ 1
#ifdef __cplusplus
extern "C" {
#endif
/*
** Copyright (c) 2013-2014 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/*
** This header is generated from the Khronos OpenGL / OpenGL ES XML
** API Registry. The current version of the Registry, generator scripts
** used to make the header, and the header can be found at
** http://www.opengl.org/registry/
**
** Khronos $Revision: 28198 $ on $Date: 2014-09-18 14:42:14 +0000 (Thu, 18 Sep 2014) $
*/
#define GLX_GLXEXT_VERSION 20140918
/* Generated C header for:
* API: glx
* Versions considered: .*
* Versions emitted: 1\.[3-9]
* Default extensions included: glx
* Additional extensions included: _nomatch_^
* Extensions removed: _nomatch_^
*/
#ifndef GLX_VERSION_1_3
#define GLX_VERSION_1_3 1
typedef XID GLXContextID;
typedef struct __GLXFBConfigRec *GLXFBConfig;
typedef XID GLXWindow;
typedef XID GLXPbuffer;
#define GLX_WINDOW_BIT 0x00000001
#define GLX_PIXMAP_BIT 0x00000002
#define GLX_PBUFFER_BIT 0x00000004
#define GLX_RGBA_BIT 0x00000001
#define GLX_COLOR_INDEX_BIT 0x00000002
#define GLX_PBUFFER_CLOBBER_MASK 0x08000000
#define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001
#define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002
#define GLX_BACK_LEFT_BUFFER_BIT 0x00000004
#define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008
#define GLX_AUX_BUFFERS_BIT 0x00000010
#define GLX_DEPTH_BUFFER_BIT 0x00000020
#define GLX_STENCIL_BUFFER_BIT 0x00000040
#define GLX_ACCUM_BUFFER_BIT 0x00000080
#define GLX_CONFIG_CAVEAT 0x20
#define GLX_X_VISUAL_TYPE 0x22
#define GLX_TRANSPARENT_TYPE 0x23
#define GLX_TRANSPARENT_INDEX_VALUE 0x24
#define GLX_TRANSPARENT_RED_VALUE 0x25
#define GLX_TRANSPARENT_GREEN_VALUE 0x26
#define GLX_TRANSPARENT_BLUE_VALUE 0x27
#define GLX_TRANSPARENT_ALPHA_VALUE 0x28
#define GLX_DONT_CARE 0xFFFFFFFF
#define GLX_NONE 0x8000
#define GLX_SLOW_CONFIG 0x8001
#define GLX_TRUE_COLOR 0x8002
#define GLX_DIRECT_COLOR 0x8003
#define GLX_PSEUDO_COLOR 0x8004
#define GLX_STATIC_COLOR 0x8005
#define GLX_GRAY_SCALE 0x8006
#define GLX_STATIC_GRAY 0x8007
#define GLX_TRANSPARENT_RGB 0x8008
#define GLX_TRANSPARENT_INDEX 0x8009
#define GLX_VISUAL_ID 0x800B
#define GLX_SCREEN 0x800C
#define GLX_NON_CONFORMANT_CONFIG 0x800D
#define GLX_DRAWABLE_TYPE 0x8010
#define GLX_RENDER_TYPE 0x8011
#define GLX_X_RENDERABLE 0x8012
#define GLX_FBCONFIG_ID 0x8013
#define GLX_RGBA_TYPE 0x8014
#define GLX_COLOR_INDEX_TYPE 0x8015
#define GLX_MAX_PBUFFER_WIDTH 0x8016
#define GLX_MAX_PBUFFER_HEIGHT 0x8017
#define GLX_MAX_PBUFFER_PIXELS 0x8018
#define GLX_PRESERVED_CONTENTS 0x801B
#define GLX_LARGEST_PBUFFER 0x801C
#define GLX_WIDTH 0x801D
#define GLX_HEIGHT 0x801E
#define GLX_EVENT_MASK 0x801F
#define GLX_DAMAGED 0x8020
#define GLX_SAVED 0x8021
#define GLX_WINDOW 0x8022
#define GLX_PBUFFER 0x8023
#define GLX_PBUFFER_HEIGHT 0x8040
#define GLX_PBUFFER_WIDTH 0x8041
typedef GLXFBConfig *( *PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);
typedef GLXFBConfig *( *PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);
typedef int ( *PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);
typedef XVisualInfo *( *PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);
typedef GLXWindow ( *PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
typedef void ( *PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);
typedef GLXPixmap ( *PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
typedef void ( *PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);
typedef GLXPbuffer ( *PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);
typedef void ( *PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);
typedef void ( *PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
typedef GLXContext ( *PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
typedef Bool ( *PFNGLXMAKECONTEXTCURRENTPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
typedef GLXDrawable ( *PFNGLXGETCURRENTREADDRAWABLEPROC) (void);
typedef int ( *PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);
typedef void ( *PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);
typedef void ( *PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
#ifdef GLX_GLXEXT_PROTOTYPES
GLXFBConfig *glXGetFBConfigs (Display *dpy, int screen, int *nelements);
GLXFBConfig *glXChooseFBConfig (Display *dpy, int screen, const int *attrib_list, int *nelements);
int glXGetFBConfigAttrib (Display *dpy, GLXFBConfig config, int attribute, int *value);
XVisualInfo *glXGetVisualFromFBConfig (Display *dpy, GLXFBConfig config);
GLXWindow glXCreateWindow (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);
void glXDestroyWindow (Display *dpy, GLXWindow win);
GLXPixmap glXCreatePixmap (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);
void glXDestroyPixmap (Display *dpy, GLXPixmap pixmap);
GLXPbuffer glXCreatePbuffer (Display *dpy, GLXFBConfig config, const int *attrib_list);
void glXDestroyPbuffer (Display *dpy, GLXPbuffer pbuf);
void glXQueryDrawable (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);
GLXContext glXCreateNewContext (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);
Bool glXMakeContextCurrent (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
GLXDrawable glXGetCurrentReadDrawable (void);
int glXQueryContext (Display *dpy, GLXContext ctx, int attribute, int *value);
void glXSelectEvent (Display *dpy, GLXDrawable draw, unsigned long event_mask);
void glXGetSelectedEvent (Display *dpy, GLXDrawable draw, unsigned long *event_mask);
#endif
#endif /* GLX_VERSION_1_3 */
#ifndef GLX_VERSION_1_4
#define GLX_VERSION_1_4 1
typedef void ( *__GLXextFuncPtr)(void);
#define GLX_SAMPLE_BUFFERS 100000
#define GLX_SAMPLES 100001
typedef __GLXextFuncPtr ( *PFNGLXGETPROCADDRESSPROC) (const GLubyte *procName);
#ifdef GLX_GLXEXT_PROTOTYPES
__GLXextFuncPtr glXGetProcAddress (const GLubyte *procName);
#endif
#endif /* GLX_VERSION_1_4 */
#ifndef GLX_ARB_context_flush_control
#define GLX_ARB_context_flush_control 1
#define GLX_CONTEXT_RELEASE_BEHAVIOR_ARB 0x2097
#define GLX_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB 0
#define GLX_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB 0x2098
#endif /* GLX_ARB_context_flush_control */
#ifndef GLX_ARB_create_context
#define GLX_ARB_create_context 1
#define GLX_CONTEXT_DEBUG_BIT_ARB 0x00000001
#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091
#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092
#define GLX_CONTEXT_FLAGS_ARB 0x2094
typedef GLXContext ( *PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
#ifdef GLX_GLXEXT_PROTOTYPES
GLXContext glXCreateContextAttribsARB (Display *dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);
#endif
#endif /* GLX_ARB_create_context */
#ifndef GLX_ARB_create_context_profile
#define GLX_ARB_create_context_profile 1
#define GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
#define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
#define GLX_CONTEXT_PROFILE_MASK_ARB 0x9126
#endif /* GLX_ARB_create_context_profile */
#ifndef GLX_ARB_create_context_robustness
#define GLX_ARB_create_context_robustness 1
#define GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
#define GLX_LOSE_CONTEXT_ON_RESET_ARB 0x8252
#define GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
#define GLX_NO_RESET_NOTIFICATION_ARB 0x8261
#endif /* GLX_ARB_create_context_robustness */
#ifndef GLX_ARB_fbconfig_float
#define GLX_ARB_fbconfig_float 1
#define GLX_RGBA_FLOAT_TYPE_ARB 0x20B9
#define GLX_RGBA_FLOAT_BIT_ARB 0x00000004
#endif /* GLX_ARB_fbconfig_float */
#ifndef GLX_ARB_framebuffer_sRGB
#define GLX_ARB_framebuffer_sRGB 1
#define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2
#endif /* GLX_ARB_framebuffer_sRGB */
#ifndef GLX_ARB_get_proc_address
#define GLX_ARB_get_proc_address 1
typedef __GLXextFuncPtr ( *PFNGLXGETPROCADDRESSARBPROC) (const GLubyte *procName);
#ifdef GLX_GLXEXT_PROTOTYPES
__GLXextFuncPtr glXGetProcAddressARB (const GLubyte *procName);
#endif
#endif /* GLX_ARB_get_proc_address */
#ifndef GLX_ARB_multisample
#define GLX_ARB_multisample 1
#define GLX_SAMPLE_BUFFERS_ARB 100000
#define GLX_SAMPLES_ARB 100001
#endif /* GLX_ARB_multisample */
#ifndef GLX_ARB_robustness_application_isolation
#define GLX_ARB_robustness_application_isolation 1
#define GLX_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
#endif /* GLX_ARB_robustness_application_isolation */
#ifndef GLX_ARB_robustness_share_group_isolation
#define GLX_ARB_robustness_share_group_isolation 1
#endif /* GLX_ARB_robustness_share_group_isolation */
#ifndef GLX_ARB_vertex_buffer_object
#define GLX_ARB_vertex_buffer_object 1
#define GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095
#endif /* GLX_ARB_vertex_buffer_object */
#ifndef GLX_3DFX_multisample
#define GLX_3DFX_multisample 1
#define GLX_SAMPLE_BUFFERS_3DFX 0x8050
#define GLX_SAMPLES_3DFX 0x8051
#endif /* GLX_3DFX_multisample */
#ifndef GLX_AMD_gpu_association
#define GLX_AMD_gpu_association 1
#define GLX_GPU_VENDOR_AMD 0x1F00
#define GLX_GPU_RENDERER_STRING_AMD 0x1F01
#define GLX_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
#define GLX_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
#define GLX_GPU_RAM_AMD 0x21A3
#define GLX_GPU_CLOCK_AMD 0x21A4
#define GLX_GPU_NUM_PIPES_AMD 0x21A5
#define GLX_GPU_NUM_SIMD_AMD 0x21A6
#define GLX_GPU_NUM_RB_AMD 0x21A7
#define GLX_GPU_NUM_SPI_AMD 0x21A8
typedef unsigned int ( *PFNGLXGETGPUIDSAMDPROC) (unsigned int maxCount, unsigned int *ids);
typedef int ( *PFNGLXGETGPUINFOAMDPROC) (unsigned int id, int property, GLenum dataType, unsigned int size, void *data);
typedef unsigned int ( *PFNGLXGETCONTEXTGPUIDAMDPROC) (GLXContext ctx);
typedef GLXContext ( *PFNGLXCREATEASSOCIATEDCONTEXTAMDPROC) (unsigned int id, GLXContext share_list);
typedef GLXContext ( *PFNGLXCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (unsigned int id, GLXContext share_context, const int *attribList);
typedef Bool ( *PFNGLXDELETEASSOCIATEDCONTEXTAMDPROC) (GLXContext ctx);
typedef Bool ( *PFNGLXMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (GLXContext ctx);
typedef GLXContext ( *PFNGLXGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
typedef void ( *PFNGLXBLITCONTEXTFRAMEBUFFERAMDPROC) (GLXContext dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
#ifdef GLX_GLXEXT_PROTOTYPES
unsigned int glXGetGPUIDsAMD (unsigned int maxCount, unsigned int *ids);
int glXGetGPUInfoAMD (unsigned int id, int property, GLenum dataType, unsigned int size, void *data);
unsigned int glXGetContextGPUIDAMD (GLXContext ctx);
GLXContext glXCreateAssociatedContextAMD (unsigned int id, GLXContext share_list);
GLXContext glXCreateAssociatedContextAttribsAMD (unsigned int id, GLXContext share_context, const int *attribList);
Bool glXDeleteAssociatedContextAMD (GLXContext ctx);
Bool glXMakeAssociatedContextCurrentAMD (GLXContext ctx);
GLXContext glXGetCurrentAssociatedContextAMD (void);
void glXBlitContextFramebufferAMD (GLXContext dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
#endif
#endif /* GLX_AMD_gpu_association */
#ifndef GLX_EXT_buffer_age
#define GLX_EXT_buffer_age 1
#define GLX_BACK_BUFFER_AGE_EXT 0x20F4
#endif /* GLX_EXT_buffer_age */
#ifndef GLX_EXT_create_context_es2_profile
#define GLX_EXT_create_context_es2_profile 1
#define GLX_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
#endif /* GLX_EXT_create_context_es2_profile */
#ifndef GLX_EXT_create_context_es_profile
#define GLX_EXT_create_context_es_profile 1
#define GLX_CONTEXT_ES_PROFILE_BIT_EXT 0x00000004
#endif /* GLX_EXT_create_context_es_profile */
#ifndef GLX_EXT_fbconfig_packed_float
#define GLX_EXT_fbconfig_packed_float 1
#define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1
#define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008
#endif /* GLX_EXT_fbconfig_packed_float */
#ifndef GLX_EXT_framebuffer_sRGB
#define GLX_EXT_framebuffer_sRGB 1
#define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2
#endif /* GLX_EXT_framebuffer_sRGB */
#ifndef GLX_EXT_import_context
#define GLX_EXT_import_context 1
#define GLX_SHARE_CONTEXT_EXT 0x800A
#define GLX_VISUAL_ID_EXT 0x800B
#define GLX_SCREEN_EXT 0x800C
typedef Display *( *PFNGLXGETCURRENTDISPLAYEXTPROC) (void);
typedef int ( *PFNGLXQUERYCONTEXTINFOEXTPROC) (Display *dpy, GLXContext context, int attribute, int *value);
typedef GLXContextID ( *PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);
typedef GLXContext ( *PFNGLXIMPORTCONTEXTEXTPROC) (Display *dpy, GLXContextID contextID);
typedef void ( *PFNGLXFREECONTEXTEXTPROC) (Display *dpy, GLXContext context);
#ifdef GLX_GLXEXT_PROTOTYPES
Display *glXGetCurrentDisplayEXT (void);
int glXQueryContextInfoEXT (Display *dpy, GLXContext context, int attribute, int *value);
GLXContextID glXGetContextIDEXT (const GLXContext context);
GLXContext glXImportContextEXT (Display *dpy, GLXContextID contextID);
void glXFreeContextEXT (Display *dpy, GLXContext context);
#endif
#endif /* GLX_EXT_import_context */
#ifndef GLX_EXT_stereo_tree
#define GLX_EXT_stereo_tree 1
typedef struct {
int type;
unsigned long serial;
Bool send_event;
Display *display;
int extension;
int evtype;
GLXDrawable window;
Bool stereo_tree;
} GLXStereoNotifyEventEXT;
#define GLX_STEREO_TREE_EXT 0x20F5
#define GLX_STEREO_NOTIFY_MASK_EXT 0x00000001
#define GLX_STEREO_NOTIFY_EXT 0x00000000
#endif /* GLX_EXT_stereo_tree */
#ifndef GLX_EXT_swap_control
#define GLX_EXT_swap_control 1
#define GLX_SWAP_INTERVAL_EXT 0x20F1
#define GLX_MAX_SWAP_INTERVAL_EXT 0x20F2
typedef void ( *PFNGLXSWAPINTERVALEXTPROC) (Display *dpy, GLXDrawable drawable, int interval);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXSwapIntervalEXT (Display *dpy, GLXDrawable drawable, int interval);
#endif
#endif /* GLX_EXT_swap_control */
#ifndef GLX_EXT_swap_control_tear
#define GLX_EXT_swap_control_tear 1
#define GLX_LATE_SWAPS_TEAR_EXT 0x20F3
#endif /* GLX_EXT_swap_control_tear */
#ifndef GLX_EXT_texture_from_pixmap
#define GLX_EXT_texture_from_pixmap 1
#define GLX_TEXTURE_1D_BIT_EXT 0x00000001
#define GLX_TEXTURE_2D_BIT_EXT 0x00000002
#define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004
#define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0
#define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1
#define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2
#define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3
#define GLX_Y_INVERTED_EXT 0x20D4
#define GLX_TEXTURE_FORMAT_EXT 0x20D5
#define GLX_TEXTURE_TARGET_EXT 0x20D6
#define GLX_MIPMAP_TEXTURE_EXT 0x20D7
#define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8
#define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9
#define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA
#define GLX_TEXTURE_1D_EXT 0x20DB
#define GLX_TEXTURE_2D_EXT 0x20DC
#define GLX_TEXTURE_RECTANGLE_EXT 0x20DD
#define GLX_FRONT_LEFT_EXT 0x20DE
#define GLX_FRONT_RIGHT_EXT 0x20DF
#define GLX_BACK_LEFT_EXT 0x20E0
#define GLX_BACK_RIGHT_EXT 0x20E1
#define GLX_FRONT_EXT 0x20DE
#define GLX_BACK_EXT 0x20E0
#define GLX_AUX0_EXT 0x20E2
#define GLX_AUX1_EXT 0x20E3
#define GLX_AUX2_EXT 0x20E4
#define GLX_AUX3_EXT 0x20E5
#define GLX_AUX4_EXT 0x20E6
#define GLX_AUX5_EXT 0x20E7
#define GLX_AUX6_EXT 0x20E8
#define GLX_AUX7_EXT 0x20E9
#define GLX_AUX8_EXT 0x20EA
#define GLX_AUX9_EXT 0x20EB
typedef void ( *PFNGLXBINDTEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
typedef void ( *PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawable, int buffer);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXBindTexImageEXT (Display *dpy, GLXDrawable drawable, int buffer, const int *attrib_list);
void glXReleaseTexImageEXT (Display *dpy, GLXDrawable drawable, int buffer);
#endif
#endif /* GLX_EXT_texture_from_pixmap */
#ifndef GLX_EXT_visual_info
#define GLX_EXT_visual_info 1
#define GLX_X_VISUAL_TYPE_EXT 0x22
#define GLX_TRANSPARENT_TYPE_EXT 0x23
#define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24
#define GLX_TRANSPARENT_RED_VALUE_EXT 0x25
#define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26
#define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27
#define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28
#define GLX_NONE_EXT 0x8000
#define GLX_TRUE_COLOR_EXT 0x8002
#define GLX_DIRECT_COLOR_EXT 0x8003
#define GLX_PSEUDO_COLOR_EXT 0x8004
#define GLX_STATIC_COLOR_EXT 0x8005
#define GLX_GRAY_SCALE_EXT 0x8006
#define GLX_STATIC_GRAY_EXT 0x8007
#define GLX_TRANSPARENT_RGB_EXT 0x8008
#define GLX_TRANSPARENT_INDEX_EXT 0x8009
#endif /* GLX_EXT_visual_info */
#ifndef GLX_EXT_visual_rating
#define GLX_EXT_visual_rating 1
#define GLX_VISUAL_CAVEAT_EXT 0x20
#define GLX_SLOW_VISUAL_EXT 0x8001
#define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D
#endif /* GLX_EXT_visual_rating */
#ifndef GLX_INTEL_swap_event
#define GLX_INTEL_swap_event 1
#define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000
#define GLX_EXCHANGE_COMPLETE_INTEL 0x8180
#define GLX_COPY_COMPLETE_INTEL 0x8181
#define GLX_FLIP_COMPLETE_INTEL 0x8182
#endif /* GLX_INTEL_swap_event */
#ifndef GLX_MESA_agp_offset
#define GLX_MESA_agp_offset 1
typedef unsigned int ( *PFNGLXGETAGPOFFSETMESAPROC) (const void *pointer);
#ifdef GLX_GLXEXT_PROTOTYPES
unsigned int glXGetAGPOffsetMESA (const void *pointer);
#endif
#endif /* GLX_MESA_agp_offset */
#ifndef GLX_MESA_copy_sub_buffer
#define GLX_MESA_copy_sub_buffer 1
typedef void ( *PFNGLXCOPYSUBBUFFERMESAPROC) (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXCopySubBufferMESA (Display *dpy, GLXDrawable drawable, int x, int y, int width, int height);
#endif
#endif /* GLX_MESA_copy_sub_buffer */
#ifndef GLX_MESA_pixmap_colormap
#define GLX_MESA_pixmap_colormap 1
typedef GLXPixmap ( *PFNGLXCREATEGLXPIXMAPMESAPROC) (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
#ifdef GLX_GLXEXT_PROTOTYPES
GLXPixmap glXCreateGLXPixmapMESA (Display *dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);
#endif
#endif /* GLX_MESA_pixmap_colormap */
#ifndef GLX_MESA_query_renderer
#define GLX_MESA_query_renderer 1
#define GLX_RENDERER_VENDOR_ID_MESA 0x8183
#define GLX_RENDERER_DEVICE_ID_MESA 0x8184
#define GLX_RENDERER_VERSION_MESA 0x8185
#define GLX_RENDERER_ACCELERATED_MESA 0x8186
#define GLX_RENDERER_VIDEO_MEMORY_MESA 0x8187
#define GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA 0x8188
#define GLX_RENDERER_PREFERRED_PROFILE_MESA 0x8189
#define GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA 0x818A
#define GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA 0x818B
#define GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA 0x818C
#define GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA 0x818D
#define GLX_RENDERER_ID_MESA 0x818E
typedef Bool ( *PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC) (int attribute, unsigned int *value);
typedef const char *( *PFNGLXQUERYCURRENTRENDERERSTRINGMESAPROC) (int attribute);
typedef Bool ( *PFNGLXQUERYRENDERERINTEGERMESAPROC) (Display *dpy, int screen, int renderer, int attribute, unsigned int *value);
typedef const char *( *PFNGLXQUERYRENDERERSTRINGMESAPROC) (Display *dpy, int screen, int renderer, int attribute);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXQueryCurrentRendererIntegerMESA (int attribute, unsigned int *value);
const char *glXQueryCurrentRendererStringMESA (int attribute);
Bool glXQueryRendererIntegerMESA (Display *dpy, int screen, int renderer, int attribute, unsigned int *value);
const char *glXQueryRendererStringMESA (Display *dpy, int screen, int renderer, int attribute);
#endif
#endif /* GLX_MESA_query_renderer */
#ifndef GLX_MESA_release_buffers
#define GLX_MESA_release_buffers 1
typedef Bool ( *PFNGLXRELEASEBUFFERSMESAPROC) (Display *dpy, GLXDrawable drawable);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXReleaseBuffersMESA (Display *dpy, GLXDrawable drawable);
#endif
#endif /* GLX_MESA_release_buffers */
#ifndef GLX_MESA_set_3dfx_mode
#define GLX_MESA_set_3dfx_mode 1
#define GLX_3DFX_WINDOW_MODE_MESA 0x1
#define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2
typedef Bool ( *PFNGLXSET3DFXMODEMESAPROC) (int mode);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXSet3DfxModeMESA (int mode);
#endif
#endif /* GLX_MESA_set_3dfx_mode */
#ifndef GLX_NV_copy_buffer
#define GLX_NV_copy_buffer 1
typedef void ( *PFNGLXCOPYBUFFERSUBDATANVPROC) (Display *dpy, GLXContext readCtx, GLXContext writeCtx, GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
typedef void ( *PFNGLXNAMEDCOPYBUFFERSUBDATANVPROC) (Display *dpy, GLXContext readCtx, GLXContext writeCtx, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXCopyBufferSubDataNV (Display *dpy, GLXContext readCtx, GLXContext writeCtx, GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
void glXNamedCopyBufferSubDataNV (Display *dpy, GLXContext readCtx, GLXContext writeCtx, GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
#endif
#endif /* GLX_NV_copy_buffer */
#ifndef GLX_NV_copy_image
#define GLX_NV_copy_image 1
typedef void ( *PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXCopyImageSubDataNV (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
#endif
#endif /* GLX_NV_copy_image */
#ifndef GLX_NV_delay_before_swap
#define GLX_NV_delay_before_swap 1
typedef Bool ( *PFNGLXDELAYBEFORESWAPNVPROC) (Display *dpy, GLXDrawable drawable, GLfloat seconds);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXDelayBeforeSwapNV (Display *dpy, GLXDrawable drawable, GLfloat seconds);
#endif
#endif /* GLX_NV_delay_before_swap */
#ifndef GLX_NV_float_buffer
#define GLX_NV_float_buffer 1
#define GLX_FLOAT_COMPONENTS_NV 0x20B0
#endif /* GLX_NV_float_buffer */
#ifndef GLX_NV_multisample_coverage
#define GLX_NV_multisample_coverage 1
#define GLX_COVERAGE_SAMPLES_NV 100001
#define GLX_COLOR_SAMPLES_NV 0x20B3
#endif /* GLX_NV_multisample_coverage */
#ifndef GLX_NV_present_video
#define GLX_NV_present_video 1
#define GLX_NUM_VIDEO_SLOTS_NV 0x20F0
typedef unsigned int *( *PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
typedef int ( *PFNGLXBINDVIDEODEVICENVPROC) (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
#ifdef GLX_GLXEXT_PROTOTYPES
unsigned int *glXEnumerateVideoDevicesNV (Display *dpy, int screen, int *nelements);
int glXBindVideoDeviceNV (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
#endif
#endif /* GLX_NV_present_video */
#ifndef GLX_NV_swap_group
#define GLX_NV_swap_group 1
typedef Bool ( *PFNGLXJOINSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint group);
typedef Bool ( *PFNGLXBINDSWAPBARRIERNVPROC) (Display *dpy, GLuint group, GLuint barrier);
typedef Bool ( *PFNGLXQUERYSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
typedef Bool ( *PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
typedef Bool ( *PFNGLXQUERYFRAMECOUNTNVPROC) (Display *dpy, int screen, GLuint *count);
typedef Bool ( *PFNGLXRESETFRAMECOUNTNVPROC) (Display *dpy, int screen);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXJoinSwapGroupNV (Display *dpy, GLXDrawable drawable, GLuint group);
Bool glXBindSwapBarrierNV (Display *dpy, GLuint group, GLuint barrier);
Bool glXQuerySwapGroupNV (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
Bool glXQueryMaxSwapGroupsNV (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
Bool glXQueryFrameCountNV (Display *dpy, int screen, GLuint *count);
Bool glXResetFrameCountNV (Display *dpy, int screen);
#endif
#endif /* GLX_NV_swap_group */
#ifndef GLX_NV_video_capture
#define GLX_NV_video_capture 1
typedef XID GLXVideoCaptureDeviceNV;
#define GLX_DEVICE_ID_NV 0x20CD
#define GLX_UNIQUE_ID_NV 0x20CE
#define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
typedef int ( *PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
typedef GLXVideoCaptureDeviceNV *( *PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display *dpy, int screen, int *nelements);
typedef void ( *PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
typedef int ( *PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
typedef void ( *PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
#ifdef GLX_GLXEXT_PROTOTYPES
int glXBindVideoCaptureDeviceNV (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
GLXVideoCaptureDeviceNV *glXEnumerateVideoCaptureDevicesNV (Display *dpy, int screen, int *nelements);
void glXLockVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device);
int glXQueryVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
void glXReleaseVideoCaptureDeviceNV (Display *dpy, GLXVideoCaptureDeviceNV device);
#endif
#endif /* GLX_NV_video_capture */
#ifndef GLX_NV_video_out
#define GLX_NV_video_out 1
typedef unsigned int GLXVideoDeviceNV;
#define GLX_VIDEO_OUT_COLOR_NV 0x20C3
#define GLX_VIDEO_OUT_ALPHA_NV 0x20C4
#define GLX_VIDEO_OUT_DEPTH_NV 0x20C5
#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
#define GLX_VIDEO_OUT_FRAME_NV 0x20C8
#define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9
#define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA
#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB
#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC
typedef int ( *PFNGLXGETVIDEODEVICENVPROC) (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
typedef int ( *PFNGLXRELEASEVIDEODEVICENVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
typedef int ( *PFNGLXBINDVIDEOIMAGENVPROC) (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
typedef int ( *PFNGLXRELEASEVIDEOIMAGENVPROC) (Display *dpy, GLXPbuffer pbuf);
typedef int ( *PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
typedef int ( *PFNGLXGETVIDEOINFONVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
#ifdef GLX_GLXEXT_PROTOTYPES
int glXGetVideoDeviceNV (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
int glXReleaseVideoDeviceNV (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
int glXBindVideoImageNV (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
int glXReleaseVideoImageNV (Display *dpy, GLXPbuffer pbuf);
int glXSendPbufferToVideoNV (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
int glXGetVideoInfoNV (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
#endif
#endif /* GLX_NV_video_out */
#ifndef GLX_OML_swap_method
#define GLX_OML_swap_method 1
#define GLX_SWAP_METHOD_OML 0x8060
#define GLX_SWAP_EXCHANGE_OML 0x8061
#define GLX_SWAP_COPY_OML 0x8062
#define GLX_SWAP_UNDEFINED_OML 0x8063
#endif /* GLX_OML_swap_method */
#ifndef GLX_OML_sync_control
#define GLX_OML_sync_control 1
#ifndef GLEXT_64_TYPES_DEFINED
/* This code block is duplicated in glext.h, so must be protected */
#define GLEXT_64_TYPES_DEFINED
/* Define int32_t, int64_t, and uint64_t types for UST/MSC */
/* (as used in the GLX_OML_sync_control extension). */
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
#include <inttypes.h>
#elif defined(__sun__) || defined(__digital__)
#include <inttypes.h>
#if defined(__STDC__)
#if defined(__arch64__) || defined(_LP64)
typedef long int int64_t;
typedef unsigned long int uint64_t;
#else
typedef long long int int64_t;
typedef unsigned long long int uint64_t;
#endif /* __arch64__ */
#endif /* __STDC__ */
#elif defined( __VMS ) || defined(__sgi)
#include <inttypes.h>
#elif defined(__SCO__) || defined(__USLC__)
#include <stdint.h>
#elif defined(__UNIXOS2__) || defined(__SOL64__)
typedef long int int32_t;
typedef long long int int64_t;
typedef unsigned long long int uint64_t;
#elif defined(_WIN32) && defined(__GNUC__)
#include <stdint.h>
#elif defined(_WIN32)
typedef __int32 int32_t;
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#else
/* Fallback if nothing above works */
#include <inttypes.h>
#endif
#endif
typedef Bool ( *PFNGLXGETSYNCVALUESOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc);
typedef Bool ( *PFNGLXGETMSCRATEOMLPROC) (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);
typedef int64_t ( *PFNGLXSWAPBUFFERSMSCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
typedef Bool ( *PFNGLXWAITFORMSCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t *ust, int64_t *msc, int64_t *sbc);
typedef Bool ( *PFNGLXWAITFORSBCOMLPROC) (Display *dpy, GLXDrawable drawable, int64_t target_sbc, int64_t *ust, int64_t *msc, int64_t *sbc);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXGetSyncValuesOML (Display *dpy, GLXDrawable drawable, int64_t *ust, int64_t *msc, int64_t *sbc);
Bool glXGetMscRateOML (Display *dpy, GLXDrawable drawable, int32_t *numerator, int32_t *denominator);
int64_t glXSwapBuffersMscOML (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);
Bool glXWaitForMscOML (Display *dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t *ust, int64_t *msc, int64_t *sbc);
Bool glXWaitForSbcOML (Display *dpy, GLXDrawable drawable, int64_t target_sbc, int64_t *ust, int64_t *msc, int64_t *sbc);
#endif
#endif /* GLX_OML_sync_control */
#ifndef GLX_SGIS_blended_overlay
#define GLX_SGIS_blended_overlay 1
#define GLX_BLENDED_RGBA_SGIS 0x8025
#endif /* GLX_SGIS_blended_overlay */
#ifndef GLX_SGIS_multisample
#define GLX_SGIS_multisample 1
#define GLX_SAMPLE_BUFFERS_SGIS 100000
#define GLX_SAMPLES_SGIS 100001
#endif /* GLX_SGIS_multisample */
#ifndef GLX_SGIS_shared_multisample
#define GLX_SGIS_shared_multisample 1
#define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026
#define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027
#endif /* GLX_SGIS_shared_multisample */
#ifndef GLX_SGIX_dmbuffer
#define GLX_SGIX_dmbuffer 1
typedef XID GLXPbufferSGIX;
#ifdef _DM_BUFFER_H_
#define GLX_DIGITAL_MEDIA_PBUFFER_SGIX 0x8024
typedef Bool ( *PFNGLXASSOCIATEDMPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXAssociateDMPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuffer, DMparams *params, DMbuffer dmbuffer);
#endif
#endif /* _DM_BUFFER_H_ */
#endif /* GLX_SGIX_dmbuffer */
#ifndef GLX_SGIX_fbconfig
#define GLX_SGIX_fbconfig 1
typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;
#define GLX_WINDOW_BIT_SGIX 0x00000001
#define GLX_PIXMAP_BIT_SGIX 0x00000002
#define GLX_RGBA_BIT_SGIX 0x00000001
#define GLX_COLOR_INDEX_BIT_SGIX 0x00000002
#define GLX_DRAWABLE_TYPE_SGIX 0x8010
#define GLX_RENDER_TYPE_SGIX 0x8011
#define GLX_X_RENDERABLE_SGIX 0x8012
#define GLX_FBCONFIG_ID_SGIX 0x8013
#define GLX_RGBA_TYPE_SGIX 0x8014
#define GLX_COLOR_INDEX_TYPE_SGIX 0x8015
typedef int ( *PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
typedef GLXFBConfigSGIX *( *PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, int *attrib_list, int *nelements);
typedef GLXPixmap ( *PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap);
typedef GLXContext ( *PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct);
typedef XVisualInfo *( *PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfigSGIX config);
typedef GLXFBConfigSGIX ( *PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display *dpy, XVisualInfo *vis);
#ifdef GLX_GLXEXT_PROTOTYPES
int glXGetFBConfigAttribSGIX (Display *dpy, GLXFBConfigSGIX config, int attribute, int *value);
GLXFBConfigSGIX *glXChooseFBConfigSGIX (Display *dpy, int screen, int *attrib_list, int *nelements);
GLXPixmap glXCreateGLXPixmapWithConfigSGIX (Display *dpy, GLXFBConfigSGIX config, Pixmap pixmap);
GLXContext glXCreateContextWithConfigSGIX (Display *dpy, GLXFBConfigSGIX config, int render_type, GLXContext share_list, Bool direct);
XVisualInfo *glXGetVisualFromFBConfigSGIX (Display *dpy, GLXFBConfigSGIX config);
GLXFBConfigSGIX glXGetFBConfigFromVisualSGIX (Display *dpy, XVisualInfo *vis);
#endif
#endif /* GLX_SGIX_fbconfig */
#ifndef GLX_SGIX_hyperpipe
#define GLX_SGIX_hyperpipe 1
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int networkId;
} GLXHyperpipeNetworkSGIX;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int channel;
unsigned int participationType;
int timeSlice;
} GLXHyperpipeConfigSGIX;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int srcXOrigin, srcYOrigin, srcWidth, srcHeight;
int destXOrigin, destYOrigin, destWidth, destHeight;
} GLXPipeRect;
typedef struct {
char pipeName[80]; /* Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] */
int XOrigin, YOrigin, maxHeight, maxWidth;
} GLXPipeRectLimits;
#define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80
#define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91
#define GLX_BAD_HYPERPIPE_SGIX 92
#define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001
#define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002
#define GLX_PIPE_RECT_SGIX 0x00000001
#define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002
#define GLX_HYPERPIPE_STEREO_SGIX 0x00000003
#define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004
#define GLX_HYPERPIPE_ID_SGIX 0x8030
typedef GLXHyperpipeNetworkSGIX *( *PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);
typedef int ( *PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
typedef GLXHyperpipeConfigSGIX *( *PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);
typedef int ( *PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);
typedef int ( *PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);
typedef int ( *PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
typedef int ( *PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
typedef int ( *PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
#ifdef GLX_GLXEXT_PROTOTYPES
GLXHyperpipeNetworkSGIX *glXQueryHyperpipeNetworkSGIX (Display *dpy, int *npipes);
int glXHyperpipeConfigSGIX (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);
GLXHyperpipeConfigSGIX *glXQueryHyperpipeConfigSGIX (Display *dpy, int hpId, int *npipes);
int glXDestroyHyperpipeConfigSGIX (Display *dpy, int hpId);
int glXBindHyperpipeSGIX (Display *dpy, int hpId);
int glXQueryHyperpipeBestAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);
int glXHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *attribList);
int glXQueryHyperpipeAttribSGIX (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);
#endif
#endif /* GLX_SGIX_hyperpipe */
#ifndef GLX_SGIX_pbuffer
#define GLX_SGIX_pbuffer 1
#define GLX_PBUFFER_BIT_SGIX 0x00000004
#define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000
#define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001
#define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002
#define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004
#define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008
#define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010
#define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020
#define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040
#define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080
#define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100
#define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016
#define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017
#define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018
#define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019
#define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A
#define GLX_PRESERVED_CONTENTS_SGIX 0x801B
#define GLX_LARGEST_PBUFFER_SGIX 0x801C
#define GLX_WIDTH_SGIX 0x801D
#define GLX_HEIGHT_SGIX 0x801E
#define GLX_EVENT_MASK_SGIX 0x801F
#define GLX_DAMAGED_SGIX 0x8020
#define GLX_SAVED_SGIX 0x8021
#define GLX_WINDOW_SGIX 0x8022
#define GLX_PBUFFER_SGIX 0x8023
typedef GLXPbufferSGIX ( *PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);
typedef void ( *PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf);
typedef int ( *PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value);
typedef void ( *PFNGLXSELECTEVENTSGIXPROC) (Display *dpy, GLXDrawable drawable, unsigned long mask);
typedef void ( *PFNGLXGETSELECTEDEVENTSGIXPROC) (Display *dpy, GLXDrawable drawable, unsigned long *mask);
#ifdef GLX_GLXEXT_PROTOTYPES
GLXPbufferSGIX glXCreateGLXPbufferSGIX (Display *dpy, GLXFBConfigSGIX config, unsigned int width, unsigned int height, int *attrib_list);
void glXDestroyGLXPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuf);
int glXQueryGLXPbufferSGIX (Display *dpy, GLXPbufferSGIX pbuf, int attribute, unsigned int *value);
void glXSelectEventSGIX (Display *dpy, GLXDrawable drawable, unsigned long mask);
void glXGetSelectedEventSGIX (Display *dpy, GLXDrawable drawable, unsigned long *mask);
#endif
#endif /* GLX_SGIX_pbuffer */
#ifndef GLX_SGIX_swap_barrier
#define GLX_SGIX_swap_barrier 1
typedef void ( *PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);
typedef Bool ( *PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXBindSwapBarrierSGIX (Display *dpy, GLXDrawable drawable, int barrier);
Bool glXQueryMaxSwapBarriersSGIX (Display *dpy, int screen, int *max);
#endif
#endif /* GLX_SGIX_swap_barrier */
#ifndef GLX_SGIX_swap_group
#define GLX_SGIX_swap_group 1
typedef void ( *PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXJoinSwapGroupSGIX (Display *dpy, GLXDrawable drawable, GLXDrawable member);
#endif
#endif /* GLX_SGIX_swap_group */
#ifndef GLX_SGIX_video_resize
#define GLX_SGIX_video_resize 1
#define GLX_SYNC_FRAME_SGIX 0x00000000
#define GLX_SYNC_SWAP_SGIX 0x00000001
typedef int ( *PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display *display, int screen, int channel, Window window);
typedef int ( *PFNGLXCHANNELRECTSGIXPROC) (Display *display, int screen, int channel, int x, int y, int w, int h);
typedef int ( *PFNGLXQUERYCHANNELRECTSGIXPROC) (Display *display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
typedef int ( *PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display *display, int screen, int channel, int *x, int *y, int *w, int *h);
typedef int ( *PFNGLXCHANNELRECTSYNCSGIXPROC) (Display *display, int screen, int channel, GLenum synctype);
#ifdef GLX_GLXEXT_PROTOTYPES
int glXBindChannelToWindowSGIX (Display *display, int screen, int channel, Window window);
int glXChannelRectSGIX (Display *display, int screen, int channel, int x, int y, int w, int h);
int glXQueryChannelRectSGIX (Display *display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);
int glXQueryChannelDeltasSGIX (Display *display, int screen, int channel, int *x, int *y, int *w, int *h);
int glXChannelRectSyncSGIX (Display *display, int screen, int channel, GLenum synctype);
#endif
#endif /* GLX_SGIX_video_resize */
#ifndef GLX_SGIX_video_source
#define GLX_SGIX_video_source 1
typedef XID GLXVideoSourceSGIX;
#ifdef _VL_H
typedef GLXVideoSourceSGIX ( *PFNGLXCREATEGLXVIDEOSOURCESGIXPROC) (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
typedef void ( *PFNGLXDESTROYGLXVIDEOSOURCESGIXPROC) (Display *dpy, GLXVideoSourceSGIX glxvideosource);
#ifdef GLX_GLXEXT_PROTOTYPES
GLXVideoSourceSGIX glXCreateGLXVideoSourceSGIX (Display *display, int screen, VLServer server, VLPath path, int nodeClass, VLNode drainNode);
void glXDestroyGLXVideoSourceSGIX (Display *dpy, GLXVideoSourceSGIX glxvideosource);
#endif
#endif /* _VL_H */
#endif /* GLX_SGIX_video_source */
#ifndef GLX_SGIX_visual_select_group
#define GLX_SGIX_visual_select_group 1
#define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028
#endif /* GLX_SGIX_visual_select_group */
#ifndef GLX_SGI_cushion
#define GLX_SGI_cushion 1
typedef void ( *PFNGLXCUSHIONSGIPROC) (Display *dpy, Window window, float cushion);
#ifdef GLX_GLXEXT_PROTOTYPES
void glXCushionSGI (Display *dpy, Window window, float cushion);
#endif
#endif /* GLX_SGI_cushion */
#ifndef GLX_SGI_make_current_read
#define GLX_SGI_make_current_read 1
typedef Bool ( *PFNGLXMAKECURRENTREADSGIPROC) (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
typedef GLXDrawable ( *PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);
#ifdef GLX_GLXEXT_PROTOTYPES
Bool glXMakeCurrentReadSGI (Display *dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);
GLXDrawable glXGetCurrentReadDrawableSGI (void);
#endif
#endif /* GLX_SGI_make_current_read */
#ifndef GLX_SGI_swap_control
#define GLX_SGI_swap_control 1
typedef int ( *PFNGLXSWAPINTERVALSGIPROC) (int interval);
#ifdef GLX_GLXEXT_PROTOTYPES
int glXSwapIntervalSGI (int interval);
#endif
#endif /* GLX_SGI_swap_control */
#ifndef GLX_SGI_video_sync
#define GLX_SGI_video_sync 1
typedef int ( *PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int *count);
typedef int ( *PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int *count);
#ifdef GLX_GLXEXT_PROTOTYPES
int glXGetVideoSyncSGI (unsigned int *count);
int glXWaitVideoSyncSGI (int divisor, int remainder, unsigned int *count);
#endif
#endif /* GLX_SGI_video_sync */
#ifndef GLX_SUN_get_transparent_index
#define GLX_SUN_get_transparent_index 1
typedef Status ( *PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
#ifdef GLX_GLXEXT_PROTOTYPES
Status glXGetTransparentIndexSUN (Display *dpy, Window overlay, Window underlay, long *pTransparentIndex);
#endif
#endif /* GLX_SUN_get_transparent_index */
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,840 @@
#ifndef __wglext_h_
#define __wglext_h_ 1
#ifdef __cplusplus
extern "C" {
#endif
/*
** Copyright (c) 2013-2014 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a
** copy of this software and/or associated documentation files (the
** "Materials"), to deal in the Materials without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Materials, and to
** permit persons to whom the Materials are furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Materials.
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
*/
/*
** This header is generated from the Khronos OpenGL / OpenGL ES XML
** API Registry. The current version of the Registry, generator scripts
** used to make the header, and the header can be found at
** http://www.opengl.org/registry/
**
** Khronos $Revision: 27684 $ on $Date: 2014-08-11 08:21:35 +0000 (Mon, 11 Aug 2014) $
*/
#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
#define WIN32_LEAN_AND_MEAN 1
#include <windows.h>
#endif
#define WGL_WGLEXT_VERSION 20140810
/* Generated C header for:
* API: wgl
* Versions considered: .*
* Versions emitted: _nomatch_^
* Default extensions included: wgl
* Additional extensions included: _nomatch_^
* Extensions removed: _nomatch_^
*/
#ifndef WGL_ARB_buffer_region
#define WGL_ARB_buffer_region 1
#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
#define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002
#define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004
#define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008
typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);
typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);
typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);
typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
#ifdef WGL_WGLEXT_PROTOTYPES
HANDLE WINAPI wglCreateBufferRegionARB (HDC hDC, int iLayerPlane, UINT uType);
VOID WINAPI wglDeleteBufferRegionARB (HANDLE hRegion);
BOOL WINAPI wglSaveBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height);
BOOL WINAPI wglRestoreBufferRegionARB (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);
#endif
#endif /* WGL_ARB_buffer_region */
#ifndef WGL_ARB_context_flush_control
#define WGL_ARB_context_flush_control 1
#define WGL_CONTEXT_RELEASE_BEHAVIOR_ARB 0x2097
#define WGL_CONTEXT_RELEASE_BEHAVIOR_NONE_ARB 0
#define WGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_ARB 0x2098
#endif /* WGL_ARB_context_flush_control */
#ifndef WGL_ARB_create_context
#define WGL_ARB_create_context 1
#define WGL_CONTEXT_DEBUG_BIT_ARB 0x00000001
#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
#define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
#define WGL_CONTEXT_FLAGS_ARB 0x2094
#define ERROR_INVALID_VERSION_ARB 0x2095
typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int *attribList);
#ifdef WGL_WGLEXT_PROTOTYPES
HGLRC WINAPI wglCreateContextAttribsARB (HDC hDC, HGLRC hShareContext, const int *attribList);
#endif
#endif /* WGL_ARB_create_context */
#ifndef WGL_ARB_create_context_profile
#define WGL_ARB_create_context_profile 1
#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
#define ERROR_INVALID_PROFILE_ARB 0x2096
#endif /* WGL_ARB_create_context_profile */
#ifndef WGL_ARB_create_context_robustness
#define WGL_ARB_create_context_robustness 1
#define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004
#define WGL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
#define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
#define WGL_NO_RESET_NOTIFICATION_ARB 0x8261
#endif /* WGL_ARB_create_context_robustness */
#ifndef WGL_ARB_extensions_string
#define WGL_ARB_extensions_string 1
typedef const char *(WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);
#ifdef WGL_WGLEXT_PROTOTYPES
const char *WINAPI wglGetExtensionsStringARB (HDC hdc);
#endif
#endif /* WGL_ARB_extensions_string */
#ifndef WGL_ARB_framebuffer_sRGB
#define WGL_ARB_framebuffer_sRGB 1
#define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9
#endif /* WGL_ARB_framebuffer_sRGB */
#ifndef WGL_ARB_make_current_read
#define WGL_ARB_make_current_read 1
#define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043
#define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054
typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (void);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglMakeContextCurrentARB (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
HDC WINAPI wglGetCurrentReadDCARB (void);
#endif
#endif /* WGL_ARB_make_current_read */
#ifndef WGL_ARB_multisample
#define WGL_ARB_multisample 1
#define WGL_SAMPLE_BUFFERS_ARB 0x2041
#define WGL_SAMPLES_ARB 0x2042
#endif /* WGL_ARB_multisample */
#ifndef WGL_ARB_pbuffer
#define WGL_ARB_pbuffer 1
DECLARE_HANDLE(HPBUFFERARB);
#define WGL_DRAW_TO_PBUFFER_ARB 0x202D
#define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E
#define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F
#define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030
#define WGL_PBUFFER_LARGEST_ARB 0x2033
#define WGL_PBUFFER_WIDTH_ARB 0x2034
#define WGL_PBUFFER_HEIGHT_ARB 0x2035
#define WGL_PBUFFER_LOST_ARB 0x2036
typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);
typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);
typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);
typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
#ifdef WGL_WGLEXT_PROTOTYPES
HPBUFFERARB WINAPI wglCreatePbufferARB (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
HDC WINAPI wglGetPbufferDCARB (HPBUFFERARB hPbuffer);
int WINAPI wglReleasePbufferDCARB (HPBUFFERARB hPbuffer, HDC hDC);
BOOL WINAPI wglDestroyPbufferARB (HPBUFFERARB hPbuffer);
BOOL WINAPI wglQueryPbufferARB (HPBUFFERARB hPbuffer, int iAttribute, int *piValue);
#endif
#endif /* WGL_ARB_pbuffer */
#ifndef WGL_ARB_pixel_format
#define WGL_ARB_pixel_format 1
#define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000
#define WGL_DRAW_TO_WINDOW_ARB 0x2001
#define WGL_DRAW_TO_BITMAP_ARB 0x2002
#define WGL_ACCELERATION_ARB 0x2003
#define WGL_NEED_PALETTE_ARB 0x2004
#define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005
#define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006
#define WGL_SWAP_METHOD_ARB 0x2007
#define WGL_NUMBER_OVERLAYS_ARB 0x2008
#define WGL_NUMBER_UNDERLAYS_ARB 0x2009
#define WGL_TRANSPARENT_ARB 0x200A
#define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037
#define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038
#define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039
#define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A
#define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B
#define WGL_SHARE_DEPTH_ARB 0x200C
#define WGL_SHARE_STENCIL_ARB 0x200D
#define WGL_SHARE_ACCUM_ARB 0x200E
#define WGL_SUPPORT_GDI_ARB 0x200F
#define WGL_SUPPORT_OPENGL_ARB 0x2010
#define WGL_DOUBLE_BUFFER_ARB 0x2011
#define WGL_STEREO_ARB 0x2012
#define WGL_PIXEL_TYPE_ARB 0x2013
#define WGL_COLOR_BITS_ARB 0x2014
#define WGL_RED_BITS_ARB 0x2015
#define WGL_RED_SHIFT_ARB 0x2016
#define WGL_GREEN_BITS_ARB 0x2017
#define WGL_GREEN_SHIFT_ARB 0x2018
#define WGL_BLUE_BITS_ARB 0x2019
#define WGL_BLUE_SHIFT_ARB 0x201A
#define WGL_ALPHA_BITS_ARB 0x201B
#define WGL_ALPHA_SHIFT_ARB 0x201C
#define WGL_ACCUM_BITS_ARB 0x201D
#define WGL_ACCUM_RED_BITS_ARB 0x201E
#define WGL_ACCUM_GREEN_BITS_ARB 0x201F
#define WGL_ACCUM_BLUE_BITS_ARB 0x2020
#define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
#define WGL_DEPTH_BITS_ARB 0x2022
#define WGL_STENCIL_BITS_ARB 0x2023
#define WGL_AUX_BUFFERS_ARB 0x2024
#define WGL_NO_ACCELERATION_ARB 0x2025
#define WGL_GENERIC_ACCELERATION_ARB 0x2026
#define WGL_FULL_ACCELERATION_ARB 0x2027
#define WGL_SWAP_EXCHANGE_ARB 0x2028
#define WGL_SWAP_COPY_ARB 0x2029
#define WGL_SWAP_UNDEFINED_ARB 0x202A
#define WGL_TYPE_RGBA_ARB 0x202B
#define WGL_TYPE_COLORINDEX_ARB 0x202C
typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetPixelFormatAttribivARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
BOOL WINAPI wglGetPixelFormatAttribfvARB (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
BOOL WINAPI wglChoosePixelFormatARB (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
#endif
#endif /* WGL_ARB_pixel_format */
#ifndef WGL_ARB_pixel_format_float
#define WGL_ARB_pixel_format_float 1
#define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0
#endif /* WGL_ARB_pixel_format_float */
#ifndef WGL_ARB_render_texture
#define WGL_ARB_render_texture 1
#define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070
#define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071
#define WGL_TEXTURE_FORMAT_ARB 0x2072
#define WGL_TEXTURE_TARGET_ARB 0x2073
#define WGL_MIPMAP_TEXTURE_ARB 0x2074
#define WGL_TEXTURE_RGB_ARB 0x2075
#define WGL_TEXTURE_RGBA_ARB 0x2076
#define WGL_NO_TEXTURE_ARB 0x2077
#define WGL_TEXTURE_CUBE_MAP_ARB 0x2078
#define WGL_TEXTURE_1D_ARB 0x2079
#define WGL_TEXTURE_2D_ARB 0x207A
#define WGL_MIPMAP_LEVEL_ARB 0x207B
#define WGL_CUBE_MAP_FACE_ARB 0x207C
#define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D
#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E
#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F
#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080
#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081
#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082
#define WGL_FRONT_LEFT_ARB 0x2083
#define WGL_FRONT_RIGHT_ARB 0x2084
#define WGL_BACK_LEFT_ARB 0x2085
#define WGL_BACK_RIGHT_ARB 0x2086
#define WGL_AUX0_ARB 0x2087
#define WGL_AUX1_ARB 0x2088
#define WGL_AUX2_ARB 0x2089
#define WGL_AUX3_ARB 0x208A
#define WGL_AUX4_ARB 0x208B
#define WGL_AUX5_ARB 0x208C
#define WGL_AUX6_ARB 0x208D
#define WGL_AUX7_ARB 0x208E
#define WGL_AUX8_ARB 0x208F
#define WGL_AUX9_ARB 0x2090
typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);
typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int *piAttribList);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglBindTexImageARB (HPBUFFERARB hPbuffer, int iBuffer);
BOOL WINAPI wglReleaseTexImageARB (HPBUFFERARB hPbuffer, int iBuffer);
BOOL WINAPI wglSetPbufferAttribARB (HPBUFFERARB hPbuffer, const int *piAttribList);
#endif
#endif /* WGL_ARB_render_texture */
#ifndef WGL_ARB_robustness_application_isolation
#define WGL_ARB_robustness_application_isolation 1
#define WGL_CONTEXT_RESET_ISOLATION_BIT_ARB 0x00000008
#endif /* WGL_ARB_robustness_application_isolation */
#ifndef WGL_ARB_robustness_share_group_isolation
#define WGL_ARB_robustness_share_group_isolation 1
#endif /* WGL_ARB_robustness_share_group_isolation */
#ifndef WGL_3DFX_multisample
#define WGL_3DFX_multisample 1
#define WGL_SAMPLE_BUFFERS_3DFX 0x2060
#define WGL_SAMPLES_3DFX 0x2061
#endif /* WGL_3DFX_multisample */
#ifndef WGL_3DL_stereo_control
#define WGL_3DL_stereo_control 1
#define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055
#define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056
#define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057
#define WGL_STEREO_POLARITY_INVERT_3DL 0x2058
typedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglSetStereoEmitterState3DL (HDC hDC, UINT uState);
#endif
#endif /* WGL_3DL_stereo_control */
#ifndef WGL_AMD_gpu_association
#define WGL_AMD_gpu_association 1
#define WGL_GPU_VENDOR_AMD 0x1F00
#define WGL_GPU_RENDERER_STRING_AMD 0x1F01
#define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02
#define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2
#define WGL_GPU_RAM_AMD 0x21A3
#define WGL_GPU_CLOCK_AMD 0x21A4
#define WGL_GPU_NUM_PIPES_AMD 0x21A5
#define WGL_GPU_NUM_SIMD_AMD 0x21A6
#define WGL_GPU_NUM_RB_AMD 0x21A7
#define WGL_GPU_NUM_SPI_AMD 0x21A8
typedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT *ids);
typedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, int property, GLenum dataType, UINT size, void *data);
typedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);
typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);
typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int *attribList);
typedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);
typedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);
typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
typedef VOID (WINAPI * PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC) (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
#ifdef WGL_WGLEXT_PROTOTYPES
UINT WINAPI wglGetGPUIDsAMD (UINT maxCount, UINT *ids);
INT WINAPI wglGetGPUInfoAMD (UINT id, int property, GLenum dataType, UINT size, void *data);
UINT WINAPI wglGetContextGPUIDAMD (HGLRC hglrc);
HGLRC WINAPI wglCreateAssociatedContextAMD (UINT id);
HGLRC WINAPI wglCreateAssociatedContextAttribsAMD (UINT id, HGLRC hShareContext, const int *attribList);
BOOL WINAPI wglDeleteAssociatedContextAMD (HGLRC hglrc);
BOOL WINAPI wglMakeAssociatedContextCurrentAMD (HGLRC hglrc);
HGLRC WINAPI wglGetCurrentAssociatedContextAMD (void);
VOID WINAPI wglBlitContextFramebufferAMD (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
#endif
#endif /* WGL_AMD_gpu_association */
#ifndef WGL_ATI_pixel_format_float
#define WGL_ATI_pixel_format_float 1
#define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0
#endif /* WGL_ATI_pixel_format_float */
#ifndef WGL_EXT_create_context_es2_profile
#define WGL_EXT_create_context_es2_profile 1
#define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004
#endif /* WGL_EXT_create_context_es2_profile */
#ifndef WGL_EXT_create_context_es_profile
#define WGL_EXT_create_context_es_profile 1
#define WGL_CONTEXT_ES_PROFILE_BIT_EXT 0x00000004
#endif /* WGL_EXT_create_context_es_profile */
#ifndef WGL_EXT_depth_float
#define WGL_EXT_depth_float 1
#define WGL_DEPTH_FLOAT_EXT 0x2040
#endif /* WGL_EXT_depth_float */
#ifndef WGL_EXT_display_color_table
#define WGL_EXT_display_color_table 1
typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);
typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (const GLushort *table, GLuint length);
typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);
typedef VOID (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);
#ifdef WGL_WGLEXT_PROTOTYPES
GLboolean WINAPI wglCreateDisplayColorTableEXT (GLushort id);
GLboolean WINAPI wglLoadDisplayColorTableEXT (const GLushort *table, GLuint length);
GLboolean WINAPI wglBindDisplayColorTableEXT (GLushort id);
VOID WINAPI wglDestroyDisplayColorTableEXT (GLushort id);
#endif
#endif /* WGL_EXT_display_color_table */
#ifndef WGL_EXT_extensions_string
#define WGL_EXT_extensions_string 1
typedef const char *(WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);
#ifdef WGL_WGLEXT_PROTOTYPES
const char *WINAPI wglGetExtensionsStringEXT (void);
#endif
#endif /* WGL_EXT_extensions_string */
#ifndef WGL_EXT_framebuffer_sRGB
#define WGL_EXT_framebuffer_sRGB 1
#define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9
#endif /* WGL_EXT_framebuffer_sRGB */
#ifndef WGL_EXT_make_current_read
#define WGL_EXT_make_current_read 1
#define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043
typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (void);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglMakeContextCurrentEXT (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);
HDC WINAPI wglGetCurrentReadDCEXT (void);
#endif
#endif /* WGL_EXT_make_current_read */
#ifndef WGL_EXT_multisample
#define WGL_EXT_multisample 1
#define WGL_SAMPLE_BUFFERS_EXT 0x2041
#define WGL_SAMPLES_EXT 0x2042
#endif /* WGL_EXT_multisample */
#ifndef WGL_EXT_pbuffer
#define WGL_EXT_pbuffer 1
DECLARE_HANDLE(HPBUFFEREXT);
#define WGL_DRAW_TO_PBUFFER_EXT 0x202D
#define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E
#define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F
#define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030
#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031
#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032
#define WGL_PBUFFER_LARGEST_EXT 0x2033
#define WGL_PBUFFER_WIDTH_EXT 0x2034
#define WGL_PBUFFER_HEIGHT_EXT 0x2035
typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);
typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);
typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);
typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
#ifdef WGL_WGLEXT_PROTOTYPES
HPBUFFEREXT WINAPI wglCreatePbufferEXT (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList);
HDC WINAPI wglGetPbufferDCEXT (HPBUFFEREXT hPbuffer);
int WINAPI wglReleasePbufferDCEXT (HPBUFFEREXT hPbuffer, HDC hDC);
BOOL WINAPI wglDestroyPbufferEXT (HPBUFFEREXT hPbuffer);
BOOL WINAPI wglQueryPbufferEXT (HPBUFFEREXT hPbuffer, int iAttribute, int *piValue);
#endif
#endif /* WGL_EXT_pbuffer */
#ifndef WGL_EXT_pixel_format
#define WGL_EXT_pixel_format 1
#define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000
#define WGL_DRAW_TO_WINDOW_EXT 0x2001
#define WGL_DRAW_TO_BITMAP_EXT 0x2002
#define WGL_ACCELERATION_EXT 0x2003
#define WGL_NEED_PALETTE_EXT 0x2004
#define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005
#define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006
#define WGL_SWAP_METHOD_EXT 0x2007
#define WGL_NUMBER_OVERLAYS_EXT 0x2008
#define WGL_NUMBER_UNDERLAYS_EXT 0x2009
#define WGL_TRANSPARENT_EXT 0x200A
#define WGL_TRANSPARENT_VALUE_EXT 0x200B
#define WGL_SHARE_DEPTH_EXT 0x200C
#define WGL_SHARE_STENCIL_EXT 0x200D
#define WGL_SHARE_ACCUM_EXT 0x200E
#define WGL_SUPPORT_GDI_EXT 0x200F
#define WGL_SUPPORT_OPENGL_EXT 0x2010
#define WGL_DOUBLE_BUFFER_EXT 0x2011
#define WGL_STEREO_EXT 0x2012
#define WGL_PIXEL_TYPE_EXT 0x2013
#define WGL_COLOR_BITS_EXT 0x2014
#define WGL_RED_BITS_EXT 0x2015
#define WGL_RED_SHIFT_EXT 0x2016
#define WGL_GREEN_BITS_EXT 0x2017
#define WGL_GREEN_SHIFT_EXT 0x2018
#define WGL_BLUE_BITS_EXT 0x2019
#define WGL_BLUE_SHIFT_EXT 0x201A
#define WGL_ALPHA_BITS_EXT 0x201B
#define WGL_ALPHA_SHIFT_EXT 0x201C
#define WGL_ACCUM_BITS_EXT 0x201D
#define WGL_ACCUM_RED_BITS_EXT 0x201E
#define WGL_ACCUM_GREEN_BITS_EXT 0x201F
#define WGL_ACCUM_BLUE_BITS_EXT 0x2020
#define WGL_ACCUM_ALPHA_BITS_EXT 0x2021
#define WGL_DEPTH_BITS_EXT 0x2022
#define WGL_STENCIL_BITS_EXT 0x2023
#define WGL_AUX_BUFFERS_EXT 0x2024
#define WGL_NO_ACCELERATION_EXT 0x2025
#define WGL_GENERIC_ACCELERATION_EXT 0x2026
#define WGL_FULL_ACCELERATION_EXT 0x2027
#define WGL_SWAP_EXCHANGE_EXT 0x2028
#define WGL_SWAP_COPY_EXT 0x2029
#define WGL_SWAP_UNDEFINED_EXT 0x202A
#define WGL_TYPE_RGBA_EXT 0x202B
#define WGL_TYPE_COLORINDEX_EXT 0x202C
typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetPixelFormatAttribivEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, int *piValues);
BOOL WINAPI wglGetPixelFormatAttribfvEXT (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int *piAttributes, FLOAT *pfValues);
BOOL WINAPI wglChoosePixelFormatEXT (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
#endif
#endif /* WGL_EXT_pixel_format */
#ifndef WGL_EXT_pixel_format_packed_float
#define WGL_EXT_pixel_format_packed_float 1
#define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8
#endif /* WGL_EXT_pixel_format_packed_float */
#ifndef WGL_EXT_swap_control
#define WGL_EXT_swap_control 1
typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);
typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglSwapIntervalEXT (int interval);
int WINAPI wglGetSwapIntervalEXT (void);
#endif
#endif /* WGL_EXT_swap_control */
#ifndef WGL_EXT_swap_control_tear
#define WGL_EXT_swap_control_tear 1
#endif /* WGL_EXT_swap_control_tear */
#ifndef WGL_I3D_digital_video_control
#define WGL_I3D_digital_video_control 1
#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050
#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051
#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052
#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053
typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetDigitalVideoParametersI3D (HDC hDC, int iAttribute, int *piValue);
BOOL WINAPI wglSetDigitalVideoParametersI3D (HDC hDC, int iAttribute, const int *piValue);
#endif
#endif /* WGL_I3D_digital_video_control */
#ifndef WGL_I3D_gamma
#define WGL_I3D_gamma 1
#define WGL_GAMMA_TABLE_SIZE_I3D 0x204E
#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F
typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int *piValue);
typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int *piValue);
typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetGammaTableParametersI3D (HDC hDC, int iAttribute, int *piValue);
BOOL WINAPI wglSetGammaTableParametersI3D (HDC hDC, int iAttribute, const int *piValue);
BOOL WINAPI wglGetGammaTableI3D (HDC hDC, int iEntries, USHORT *puRed, USHORT *puGreen, USHORT *puBlue);
BOOL WINAPI wglSetGammaTableI3D (HDC hDC, int iEntries, const USHORT *puRed, const USHORT *puGreen, const USHORT *puBlue);
#endif
#endif /* WGL_I3D_gamma */
#ifndef WGL_I3D_genlock
#define WGL_I3D_genlock 1
#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044
#define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045
#define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046
#define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047
#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048
#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049
#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A
#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B
#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C
typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);
typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);
typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL *pFlag);
typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);
typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT *uSource);
typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);
typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT *uEdge);
typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);
typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT *uRate);
typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);
typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT *uDelay);
typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglEnableGenlockI3D (HDC hDC);
BOOL WINAPI wglDisableGenlockI3D (HDC hDC);
BOOL WINAPI wglIsEnabledGenlockI3D (HDC hDC, BOOL *pFlag);
BOOL WINAPI wglGenlockSourceI3D (HDC hDC, UINT uSource);
BOOL WINAPI wglGetGenlockSourceI3D (HDC hDC, UINT *uSource);
BOOL WINAPI wglGenlockSourceEdgeI3D (HDC hDC, UINT uEdge);
BOOL WINAPI wglGetGenlockSourceEdgeI3D (HDC hDC, UINT *uEdge);
BOOL WINAPI wglGenlockSampleRateI3D (HDC hDC, UINT uRate);
BOOL WINAPI wglGetGenlockSampleRateI3D (HDC hDC, UINT *uRate);
BOOL WINAPI wglGenlockSourceDelayI3D (HDC hDC, UINT uDelay);
BOOL WINAPI wglGetGenlockSourceDelayI3D (HDC hDC, UINT *uDelay);
BOOL WINAPI wglQueryGenlockMaxSourceDelayI3D (HDC hDC, UINT *uMaxLineDelay, UINT *uMaxPixelDelay);
#endif
#endif /* WGL_I3D_genlock */
#ifndef WGL_I3D_image_buffer
#define WGL_I3D_image_buffer 1
#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001
#define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002
typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);
typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);
typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hDC, const LPVOID *pAddress, UINT count);
#ifdef WGL_WGLEXT_PROTOTYPES
LPVOID WINAPI wglCreateImageBufferI3D (HDC hDC, DWORD dwSize, UINT uFlags);
BOOL WINAPI wglDestroyImageBufferI3D (HDC hDC, LPVOID pAddress);
BOOL WINAPI wglAssociateImageBufferEventsI3D (HDC hDC, const HANDLE *pEvent, const LPVOID *pAddress, const DWORD *pSize, UINT count);
BOOL WINAPI wglReleaseImageBufferEventsI3D (HDC hDC, const LPVOID *pAddress, UINT count);
#endif
#endif /* WGL_I3D_image_buffer */
#ifndef WGL_I3D_swap_frame_lock
#define WGL_I3D_swap_frame_lock 1
typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (void);
typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (void);
typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL *pFlag);
typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL *pFlag);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglEnableFrameLockI3D (void);
BOOL WINAPI wglDisableFrameLockI3D (void);
BOOL WINAPI wglIsEnabledFrameLockI3D (BOOL *pFlag);
BOOL WINAPI wglQueryFrameLockMasterI3D (BOOL *pFlag);
#endif
#endif /* WGL_I3D_swap_frame_lock */
#ifndef WGL_I3D_swap_frame_usage
#define WGL_I3D_swap_frame_usage 1
typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float *pUsage);
typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);
typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);
typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetFrameUsageI3D (float *pUsage);
BOOL WINAPI wglBeginFrameTrackingI3D (void);
BOOL WINAPI wglEndFrameTrackingI3D (void);
BOOL WINAPI wglQueryFrameTrackingI3D (DWORD *pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);
#endif
#endif /* WGL_I3D_swap_frame_usage */
#ifndef WGL_NV_DX_interop
#define WGL_NV_DX_interop 1
#define WGL_ACCESS_READ_ONLY_NV 0x00000000
#define WGL_ACCESS_READ_WRITE_NV 0x00000001
#define WGL_ACCESS_WRITE_DISCARD_NV 0x00000002
typedef BOOL (WINAPI * PFNWGLDXSETRESOURCESHAREHANDLENVPROC) (void *dxObject, HANDLE shareHandle);
typedef HANDLE (WINAPI * PFNWGLDXOPENDEVICENVPROC) (void *dxDevice);
typedef BOOL (WINAPI * PFNWGLDXCLOSEDEVICENVPROC) (HANDLE hDevice);
typedef HANDLE (WINAPI * PFNWGLDXREGISTEROBJECTNVPROC) (HANDLE hDevice, void *dxObject, GLuint name, GLenum type, GLenum access);
typedef BOOL (WINAPI * PFNWGLDXUNREGISTEROBJECTNVPROC) (HANDLE hDevice, HANDLE hObject);
typedef BOOL (WINAPI * PFNWGLDXOBJECTACCESSNVPROC) (HANDLE hObject, GLenum access);
typedef BOOL (WINAPI * PFNWGLDXLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE *hObjects);
typedef BOOL (WINAPI * PFNWGLDXUNLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE *hObjects);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglDXSetResourceShareHandleNV (void *dxObject, HANDLE shareHandle);
HANDLE WINAPI wglDXOpenDeviceNV (void *dxDevice);
BOOL WINAPI wglDXCloseDeviceNV (HANDLE hDevice);
HANDLE WINAPI wglDXRegisterObjectNV (HANDLE hDevice, void *dxObject, GLuint name, GLenum type, GLenum access);
BOOL WINAPI wglDXUnregisterObjectNV (HANDLE hDevice, HANDLE hObject);
BOOL WINAPI wglDXObjectAccessNV (HANDLE hObject, GLenum access);
BOOL WINAPI wglDXLockObjectsNV (HANDLE hDevice, GLint count, HANDLE *hObjects);
BOOL WINAPI wglDXUnlockObjectsNV (HANDLE hDevice, GLint count, HANDLE *hObjects);
#endif
#endif /* WGL_NV_DX_interop */
#ifndef WGL_NV_DX_interop2
#define WGL_NV_DX_interop2 1
#endif /* WGL_NV_DX_interop2 */
#ifndef WGL_NV_copy_image
#define WGL_NV_copy_image 1
typedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglCopyImageSubDataNV (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
#endif
#endif /* WGL_NV_copy_image */
#ifndef WGL_NV_delay_before_swap
#define WGL_NV_delay_before_swap 1
typedef BOOL (WINAPI * PFNWGLDELAYBEFORESWAPNVPROC) (HDC hDC, GLfloat seconds);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglDelayBeforeSwapNV (HDC hDC, GLfloat seconds);
#endif
#endif /* WGL_NV_delay_before_swap */
#ifndef WGL_NV_float_buffer
#define WGL_NV_float_buffer 1
#define WGL_FLOAT_COMPONENTS_NV 0x20B0
#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1
#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2
#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3
#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4
#define WGL_TEXTURE_FLOAT_R_NV 0x20B5
#define WGL_TEXTURE_FLOAT_RG_NV 0x20B6
#define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7
#define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8
#endif /* WGL_NV_float_buffer */
#ifndef WGL_NV_gpu_affinity
#define WGL_NV_gpu_affinity 1
DECLARE_HANDLE(HGPUNV);
struct _GPU_DEVICE {
DWORD cb;
CHAR DeviceName[32];
CHAR DeviceString[128];
DWORD Flags;
RECT rcVirtualScreen;
};
typedef struct _GPU_DEVICE *PGPU_DEVICE;
#define ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0
#define ERROR_MISSING_AFFINITY_MASK_NV 0x20D1
typedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);
typedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);
typedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglEnumGpusNV (UINT iGpuIndex, HGPUNV *phGpu);
BOOL WINAPI wglEnumGpuDevicesNV (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);
HDC WINAPI wglCreateAffinityDCNV (const HGPUNV *phGpuList);
BOOL WINAPI wglEnumGpusFromAffinityDCNV (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);
BOOL WINAPI wglDeleteDCNV (HDC hdc);
#endif
#endif /* WGL_NV_gpu_affinity */
#ifndef WGL_NV_multisample_coverage
#define WGL_NV_multisample_coverage 1
#define WGL_COVERAGE_SAMPLES_NV 0x2042
#define WGL_COLOR_SAMPLES_NV 0x20B9
#endif /* WGL_NV_multisample_coverage */
#ifndef WGL_NV_present_video
#define WGL_NV_present_video 1
DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
#define WGL_NUM_VIDEO_SLOTS_NV 0x20F0
typedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
typedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
typedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int *piValue);
#ifdef WGL_WGLEXT_PROTOTYPES
int WINAPI wglEnumerateVideoDevicesNV (HDC hDC, HVIDEOOUTPUTDEVICENV *phDeviceList);
BOOL WINAPI wglBindVideoDeviceNV (HDC hDC, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int *piAttribList);
BOOL WINAPI wglQueryCurrentContextNV (int iAttribute, int *piValue);
#endif
#endif /* WGL_NV_present_video */
#ifndef WGL_NV_render_depth_texture
#define WGL_NV_render_depth_texture 1
#define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3
#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4
#define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5
#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6
#define WGL_DEPTH_COMPONENT_NV 0x20A7
#endif /* WGL_NV_render_depth_texture */
#ifndef WGL_NV_render_texture_rectangle
#define WGL_NV_render_texture_rectangle 1
#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0
#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1
#define WGL_TEXTURE_RECTANGLE_NV 0x20A2
#endif /* WGL_NV_render_texture_rectangle */
#ifndef WGL_NV_swap_group
#define WGL_NV_swap_group 1
typedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);
typedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);
typedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint *group, GLuint *barrier);
typedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
typedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint *count);
typedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglJoinSwapGroupNV (HDC hDC, GLuint group);
BOOL WINAPI wglBindSwapBarrierNV (GLuint group, GLuint barrier);
BOOL WINAPI wglQuerySwapGroupNV (HDC hDC, GLuint *group, GLuint *barrier);
BOOL WINAPI wglQueryMaxSwapGroupsNV (HDC hDC, GLuint *maxGroups, GLuint *maxBarriers);
BOOL WINAPI wglQueryFrameCountNV (HDC hDC, GLuint *count);
BOOL WINAPI wglResetFrameCountNV (HDC hDC);
#endif
#endif /* WGL_NV_swap_group */
#ifndef WGL_NV_vertex_array_range
#define WGL_NV_vertex_array_range 1
typedef void *(WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);
#ifdef WGL_WGLEXT_PROTOTYPES
void *WINAPI wglAllocateMemoryNV (GLsizei size, GLfloat readfreq, GLfloat writefreq, GLfloat priority);
void WINAPI wglFreeMemoryNV (void *pointer);
#endif
#endif /* WGL_NV_vertex_array_range */
#ifndef WGL_NV_video_capture
#define WGL_NV_video_capture 1
DECLARE_HANDLE(HVIDEOINPUTDEVICENV);
#define WGL_UNIQUE_ID_NV 0x20CE
#define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
typedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
typedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
typedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
typedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglBindVideoCaptureDeviceNV (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
UINT WINAPI wglEnumerateVideoCaptureDevicesNV (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
BOOL WINAPI wglLockVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
BOOL WINAPI wglQueryVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
BOOL WINAPI wglReleaseVideoCaptureDeviceNV (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
#endif
#endif /* WGL_NV_video_capture */
#ifndef WGL_NV_video_output
#define WGL_NV_video_output 1
DECLARE_HANDLE(HPVIDEODEV);
#define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0
#define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1
#define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2
#define WGL_VIDEO_OUT_COLOR_NV 0x20C3
#define WGL_VIDEO_OUT_ALPHA_NV 0x20C4
#define WGL_VIDEO_OUT_DEPTH_NV 0x20C5
#define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6
#define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7
#define WGL_VIDEO_OUT_FRAME 0x20C8
#define WGL_VIDEO_OUT_FIELD_1 0x20C9
#define WGL_VIDEO_OUT_FIELD_2 0x20CA
#define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB
#define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC
typedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
typedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);
typedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);
typedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
typedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetVideoDeviceNV (HDC hDC, int numDevices, HPVIDEODEV *hVideoDevice);
BOOL WINAPI wglReleaseVideoDeviceNV (HPVIDEODEV hVideoDevice);
BOOL WINAPI wglBindVideoImageNV (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);
BOOL WINAPI wglReleaseVideoImageNV (HPBUFFERARB hPbuffer, int iVideoBuffer);
BOOL WINAPI wglSendPbufferToVideoNV (HPBUFFERARB hPbuffer, int iBufferType, unsigned long *pulCounterPbuffer, BOOL bBlock);
BOOL WINAPI wglGetVideoInfoNV (HPVIDEODEV hpVideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
#endif
#endif /* WGL_NV_video_output */
#ifndef WGL_OML_sync_control
#define WGL_OML_sync_control 1
typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32 *numerator, INT32 *denominator);
typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
#ifdef WGL_WGLEXT_PROTOTYPES
BOOL WINAPI wglGetSyncValuesOML (HDC hdc, INT64 *ust, INT64 *msc, INT64 *sbc);
BOOL WINAPI wglGetMscRateOML (HDC hdc, INT32 *numerator, INT32 *denominator);
INT64 WINAPI wglSwapBuffersMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);
INT64 WINAPI wglSwapLayerBuffersMscOML (HDC hdc, int fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);
BOOL WINAPI wglWaitForMscOML (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64 *ust, INT64 *msc, INT64 *sbc);
BOOL WINAPI wglWaitForSbcOML (HDC hdc, INT64 target_sbc, INT64 *ust, INT64 *msc, INT64 *sbc);
#endif
#endif /* WGL_OML_sync_control */
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,32 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _BSDTYPES_DEFINED
#define _BSDTYPES_DEFINED
/* Make sure __LONG32 is defined. */
#include <_mingw.h>
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
#pragma push_macro("u_long")
#undef u_long
typedef unsigned long u_long;
#pragma pop_macro("u_long")
#if defined(__GNUC__) || \
defined(__GNUG__)
__extension__
#endif /* gcc / g++ */
typedef unsigned long long u_int64;
#endif /* _BSDTYPES_DEFINED */
#if defined (__LP64__) && defined (u_long)
typedef unsigned __LONG32 u_long;
#endif

View File

@ -0,0 +1,36 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC_CYGWIN
#define _INC_CYGWIN
#ifndef __CYGWIN__
#error Only Cygwin target is supported!
#endif
/* This includes the Cygwin gcc definitions for types like wchar_t or size_t. */
#include <stddef.h>
/* Make sure that POSIX types are not defined by _mingw.h if we're building
for a Cygwin target. In this case we have to make sure to use the types
defined by the Cygwin/newlib headers. */
#define _SIZE_T_DEFINED
#define _SSIZE_T_DEFINED
#define _INTPTR_T_DEFINED
#define _UINTPTR_T_DEFINED
#define _PTRDIFF_T_DEFINED
#define _WCHAR_T_DEFINED
#define _WCTYPE_T_DEFINED
#define _TIME_T_DEFINED
/* _WIN64 is defined by the compiler specs when targeting Windows.
The Cygwin-targeting gcc does not define it by default, same as
with _WIN32. Therefore we set it here. The result is that _WIN64
is only defined if Windows headers are included. */
#ifdef __x86_64__
#define _WIN64
#endif
#endif /* _INC_CYGWIN */

View File

@ -0,0 +1,396 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __DBDAO_H_
#define __DBDAO_H_
#ifndef __cplusplus
#error This file can be used only in C++
#else
class COleVariant;
class CdbBookmark;
class CdbException;
class CdbOleObject;
class CdbObject;
class CdbError;
class CdbProperty;
class CdbDBEngine;
class CdbWorkspace;
class CdbDatabase;
class CdbConnection;
class CdbRecordset;
class CdbGetRowsEx;
class CdbQueryDef;
class CdbTableDef;
class CdbField;
class CdbRelation;
class CdbIndex;
class CdbUser;
class CdbGroup;
class CdbDocument;
class CdbContainer;
class CdbParameter;
class CdbCollection;
class CdbErrors;
class CdbProperties;
class CdbWorkspaces;
class CdbDatabases;
class CdbConnections;
class CdbRecordsets;
class CdbQueryDefs;
class CdbTableDefs;
class CdbFields;
class CdbRelations;
class CdbIndexes;
class CdbUsers;
class CdbGroups;
class CdbDocuments;
class CdbContainers;
class CdbParameters;
class CdbBStr;
const char szKEY[] = "mbmabptebkjcdlgtjmskjwtsdhjbmkmwtrak";
#define DAO_MAXSEEKFIELDS 13
class DLLEXPORT CdbBSTR {
public:
CONSTRUCTOR CdbBSTR(BSTR=NULL);
DESTRUCTOR ~CdbBSTR(VOID);
operator BSTR *(VOID);
operator LPCTSTR(VOID);
private:
BSTR m_bstr;
};
class CdbVariant : public COleVariant {
public:
CONSTRUCTOR CdbVariant(LONG l);
CONSTRUCTOR CdbVariant(VOID);
CONSTRUCTOR CdbVariant(LPCTSTR pstr);
CONSTRUCTOR CdbVariant(SHORT s,WINBOOL bIsBool = FALSE);
CONSTRUCTOR CdbVariant(LPVARIANT pv);
CONSTRUCTOR CdbVariant(LPSAFEARRAY psa);
VOID operator =(LPVARIANT pv);
VOID operator =(LPCTSTR pstr);
VOID operator =(SHORT s);
VOID operator =(const int i);
VOID operator =(LONG l);
};
inline CONSTRUCTOR CdbVariant::CdbVariant(VOID) : COleVariant() {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
}
inline CdbVariant::CdbVariant(LONG l) {
if(l==-1) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else {
vt = VT_I4;
lVal = l;
}
}
inline CONSTRUCTOR CdbVariant::CdbVariant(LPCTSTR pstr): COleVariant(pstr,VT_BSTRT) {
if(!pstr) {
VariantClear(this);
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
}
}
inline CONSTRUCTOR CdbVariant::CdbVariant(SHORT s,WINBOOL bIsBool) : COleVariant(s) {
if(bIsBool) {
vt = VT_BOOL;
boolVal = s;
} else if(s==-1) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
}
}
inline CONSTRUCTOR CdbVariant::CdbVariant(LPVARIANT pv) {
if(!pv) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else
VariantCopy(this,pv);
}
inline CONSTRUCTOR CdbVariant::CdbVariant(LPSAFEARRAY psa) {
if(!psa) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else {
vt = VT_ARRAY|VT_UI1;
parray = psa;
}
}
inline VOID CdbVariant::operator =(LPVARIANT pv) {
if(!pv) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else
VariantCopy(this,pv);
}
inline VOID CdbVariant::operator =(LPCTSTR pstr) {
if(!pstr) {
VariantClear(this);
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else {
#if defined(UNICODE)
bstrVal = SysAllocString(pstr);
#else
bstrVal = SysAllocStringByteLen(pstr,strlen(pstr));
#endif
vt = VT_BSTR;
}
}
inline VOID CdbVariant::operator =(SHORT s) {
if(s==-1) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else {
vt = VT_I2;
iVal = s;
}
}
inline VOID CdbVariant::operator =(const int i) {
if(i==-1) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else {
vt = VT_I2;
iVal =(SHORT)i;
}
}
inline VOID CdbVariant::operator =(LONG l) {
if(l==-1) {
vt = VT_ERROR;
scode = DISP_E_PARAMNOTFOUND;
} else {
vt = VT_I4;
lVal = l;
}
}
HRESULT CdbWideFromAnsi(LPSTR,unsigned int,BSTR *);
class CdbWide {
public:
CONSTRUCTOR CdbWide(LPSTR pstr,unsigned int cb=0) {
CdbWideFromAnsi(pstr,(pstr ? (cb==0 ? strlen(pstr) : cb) : 0),&m_bstr);
}
DESTRUCTOR ~CdbWide() {
SysFreeString(m_bstr);
}
operator LPWSTR() { return (LPWSTR)m_bstr; }
operator LPSTR() { return (LPSTR)m_bstr; }
ULONG cBytes() { return SysStringByteLen(m_bstr); }
private:
BSTR m_bstr;
};
class DLLEXPORT CdbOleObject : public CObject {
public:
CONSTRUCTOR CdbOleObject(VOID);
virtual DESTRUCTOR ~CdbOleObject(VOID);
WINBOOL Exists(VOID);
CdbOleObject &operator = (CdbOleObject &o);
operator LPUNKNOWN(){ return GetInterface();}
VOID SetInterface(LPUNKNOWN punk,WINBOOL bAddRef=FALSE);
VOID SetInterface(REFIID riidClass,REFIID riidInterface);
VOID SetInterfaceLic(REFIID riidClass,REFIID riidInterface);
LPUNKNOWN GetInterface(WINBOOL bAddRef=FALSE,WINBOOL bThrowException=TRUE) const;
virtual VOID OnInterfaceChange(VOID);
VOID SetRichErrorInfo(LPOLESTR pstrSource,LPOLESTR pstrDescription,LPOLESTR pstrHelpFile,ULONG ulHelpID) const;
protected:
WINBOOL StartOLE(VOID);
LPUNKNOWN m_punkInterface;
};
class DLLEXPORT CdbCollection : public CdbOleObject {
public:
virtual CdbObject ObItem(LONG i) = 0;
virtual CdbObject ObItem(LPCTSTR pstr) = 0;
virtual LONG GetCount(VOID) = 0;
virtual VOID ObAppend(CdbObject &obj) = 0;
virtual VOID Delete(LPCTSTR pstr) = 0;
virtual VOID Refresh(VOID) = 0;
};
class DLLEXPORT CdbStaticCollection : public CdbCollection {
public:
CdbObject ObItem(LONG i);
CdbObject ObItem(LPCTSTR pstr);
LONG GetCount(VOID);
VOID ObAppend(CdbObject &obj);
VOID Delete(LPCTSTR pstr);
VOID Refresh(VOID);
};
class DLLEXPORT CdbDynamicCollection : public CdbCollection {
public:
CdbObject ObItem(LONG i);
CdbObject ObItem(LPCTSTR pstr);
LONG GetCount(VOID);
VOID ObAppend(CdbObject &obj);
VOID Delete(LPCTSTR pstr);
VOID Refresh(VOID);
};
#define DAOMFC_STATIC_COLLECTION_DECL(objColl,objSingle,intSingle) class DLLEXPORT objColl : public CdbStaticCollection { public: objSingle Item(LONG i); objSingle Item(LPCTSTR pstr); objSingle operator[](LONG i); objSingle operator[](LPCTSTR pstr); }
#define DAOMFC_DYNAMIC_COLLECTION_DECL(objColl,objSingle,intSingle) class DLLEXPORT objColl : public CdbDynamicCollection { public: objSingle Item(LONG i); objSingle Item(LPCTSTR pstr); VOID Append(objSingle &o); objSingle operator[](LONG i); objSingle operator[](LPCTSTR pstr); }
DAOMFC_STATIC_COLLECTION_DECL(CdbErrors,CdbError,DAOError);
DAOMFC_STATIC_COLLECTION_DECL(CdbDatabases,CdbDatabase,DAODatabase);
DAOMFC_STATIC_COLLECTION_DECL(CdbRecordsets,CdbRecordset,DAORecordset);
DAOMFC_STATIC_COLLECTION_DECL(CdbParameters,CdbParameter,DAOParameter);
DAOMFC_STATIC_COLLECTION_DECL(CdbDocuments,CdbDocument,DAODocument);
DAOMFC_STATIC_COLLECTION_DECL(CdbContainers,CdbContainer,DAOContainer);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbProperties,CdbProperty,DAOProperty);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbFields,CdbField,DAOField);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbQueryDefs,CdbQueryDef,DAOQueryDef);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbTableDefs,CdbTableDef,DAOTableDef);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbIndexes,CdbIndex,DAOIndex);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbRelations,CdbRelation,DAORelation);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbUsers,CdbUser,DAOUser);
DAOMFC_DYNAMIC_COLLECTION_DECL(CdbGroups,CdbGroup,DAOGroup);
class DLLEXPORT CdbWorkspaces : public CdbDynamicCollection {
friend CdbDBEngine;
private:
DAODBEngine *pDBEng;
WINBOOL m_bDontStart;
public:
CONSTRUCTOR CdbWorkspaces(VOID){pDBEng = NULL;}
CdbWorkspace Item(LONG i);
CdbWorkspace Item(LPCTSTR pstr);
VOID Append(CdbWorkspace &o);
CdbWorkspace operator[](LONG i);
CdbWorkspace operator[](LPCTSTR pstr);
VOID SetDBEngine(DAODBEngine *peng){pDBEng = peng;}
VOID GetDelayedInterface();
};
class DLLEXPORT CdbConnections : public CdbStaticCollection {
public:
CONSTRUCTOR CdbConnections(CdbConnections &Connections);
CONSTRUCTOR CdbConnections() { pwrk = NULL; }
CdbConnection Item(LONG i);
CdbConnection Item(LPCTSTR pstr);
CdbConnection operator[](LONG i);
CdbConnection operator[](LPCTSTR pstr);
CdbConnections &operator = (CdbConnections &o);
LONG GetCount(VOID);
VOID Refresh(VOID);
VOID SetWorkspace(DAOWorkspace *pParent) { pwrk = pParent; }
private:
VOID CheckInterface();
DAOWorkspace *pwrk;
};
class DLLEXPORT CdbObject : public CdbOleObject {
public:
CONSTRUCTOR CdbObject(VOID);
CONSTRUCTOR CdbObject(LPUNKNOWN punk,WINBOOL bAddRef=FALSE);
virtual CString GetName(VOID);
virtual VOID SetName(LPCTSTR pstr);
CdbProperties Properties;
};
class DLLEXPORT CdbGetRowsEx : public CdbObject {
public:
CONSTRUCTOR CdbGetRowsEx(VOID);
CONSTRUCTOR CdbGetRowsEx(ICDAORecordset *pGetRows,WINBOOL bAddRef=FALSE);
CONSTRUCTOR CdbGetRowsEx(const CdbGetRowsEx &);
CdbGetRowsEx &operator =(const CdbGetRowsEx &);
VOID OnInterfaceChange(VOID);
};
#define DAOVINIT(var) do { (var).vt = VT_ERROR; (var).scode = DISP_E_PARAMNOTFOUND; } while (0)
#define STV(pstr) CdbVariant(pstr)
#define STB(pstr) V_BSTR(((LPVARIANT)STV(pstr)))
#define LTV(l) CdbVariant(l)
#define OLTV(l) CdbVariant((l))
#define BTB(b) ((VARIANT_BOOL)(b?-1:0))
#define BTV(b) CdbVariant(BTB(b),TRUE)
#define SHTV(s) CdbVariant((SHORT)s)
#define VTV(pv) CdbVariant(pv)
#define ATV(psa,var) do { if(!psa) { var.vt = VT_ERROR; var.scode = DISP_E_PARAMNOTFOUND; } else { var.vt = VT_ARRAY|VT_UI1; SafeArrayCopy(psa,&var.parray); } } while (0)
#define DAOMFC_CALL(hr) do { HRESULT hresult = (hr); if(FAILED(hresult)) { TRACE0("\nDBDAO Call Failed.\n\t"); TRACE2("\nIn file %s on line %d\n",_T("DBDAO.CPP"),__LINE__); TRACE1("hResult = %X\n",hresult); if(GetScode(hresult)==E_OUTOFMEMORY) AfxThrowMemoryException(); else throw CdbException(hresult); } } while (0)
#define LPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); LONG l = 0; DAOMFC_CALL(p->meth(&l)); return l; } while (0)
#define LPROPSET(intDAO,meth,l) do { intDAO *p = (intDAO *)GetInterface(); DAOMFC_CALL(p->meth(l)); } while(0)
#define WPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); SHORT s = 0; DAOMFC_CALL(p->meth(&s)); return s; } while (0)
#define WPROPSET(intDAO,meth,s) do { intDAO *p = (intDAO *)GetInterface(); DAOMFC_CALL(p->meth(s)); } while(0)
#define SPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); CdbBSTR bstr; DAOMFC_CALL(p->meth(bstr)); return bstr; } while (0)
#define SPROPSET(intDAO,meth,s) do { intDAO *p = (intDAO *)GetInterface(); DAOMFC_CALL(p->meth(STB(s))); } while(0)
#define DPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); VARIANT Var; VariantInit(&Var); DAOMFC_CALL(p->meth(&Var)); return Var; } while (0)
#define DPROPSET(intDAO,meth,pv) do { intDAO *p = (intDAO *)GetInterface(); DAOMFC_CALL(p->meth(*pv)); } while(0)
#define BPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); VARIANT_BOOL vb = 0; DAOMFC_CALL(p->meth(&vb)); return(WINBOOL)vb; } while (0)
#define BPROPSET(intDAO,meth,b) do { intDAO *p = (intDAO *)GetInterface(); DAOMFC_CALL(p->meth(BTB(b))); } while(0)
#define VPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); COleVariant v; VariantInit(&v); DAOMFC_CALL(p->meth(&v)); return &v; } while (0)
#define VPROPSET(intDAO,meth,pv) do { intDAO *p = (intDAO *)GetInterface(); DAOMFC_CALL(p->meth(*pv)); } while(0)
#define DWPROPGET(intDAO,meth) do { intDAO *p = (intDAO *)GetInterface(); DWORD dw = 0; DAOMFC_CALL(p->meth(&dw)); return dw; } while (0)
#define DAOMFC_STATIC_COLLECTION_IMPL(objColl,objSingle,intColl,intSingle) objSingle objColl::Item(LONG i) { return (intSingle *)(ObItem(i).GetInterface(TRUE)); } objSingle objColl::Item(LPCTSTR pstr) { return (intSingle *)(ObItem(pstr).GetInterface(TRUE)); } objSingle objColl::operator[](LONG i) { return (intSingle *)(Item(i).GetInterface(TRUE)); } objSingle objColl::operator[](LPCTSTR pstr) { return (intSingle *)(Item(pstr).GetInterface(TRUE)); }
#define DAOMFC_DYNAMIC_COLLECTION_IMPL(objColl,objSingle,intColl,intSingle) objSingle objColl::Item(LONG i) { return (intSingle *)(ObItem(i).GetInterface(TRUE)); } objSingle objColl::Item(LPCTSTR pstr) { return (intSingle *)(ObItem(pstr).GetInterface(TRUE)); } VOID objColl::Append(objSingle &o) { ObAppend(o); } objSingle objColl::operator[](LONG i) { return (intSingle *)(Item(i).GetInterface(TRUE)); } objSingle objColl::operator[](LPCTSTR pstr) { return (intSingle *)(Item(pstr).GetInterface(TRUE)); }
#undef INTERFACE
#define INTERFACE DAOMFCSCollection
DECLARE_INTERFACE_(DAOMFCSCollection,_DAOCollection) {
#ifndef __cplusplus
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/*** IDispatch methods ***/
STDMETHOD(GetTypeInfoCount)(THIS_ UINT *pctinfo);
STDMETHOD(GetTypeInfo)(THIS_ UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
STDMETHOD(GetIDsOfNames)(THIS_ REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
STDMETHOD(Invoke)(THIS_ DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
/*** _DAOCollection ***/
STDMETHOD(get_Count) (THIS_ short *c) PURE;
STDMETHOD(_NewEnum) (THIS_ IUnknown **ppunk) PURE;
STDMETHOD(Refresh) (THIS) PURE;
#endif
STDMETHOD(get_Item) (THIS_ VARIANT index,LPUNKNOWN *ppunk);
};
#undef INTERFACE
#define INTERFACE DAOMFCDCollection
DECLARE_INTERFACE_(DAOMFCDCollection,_DAODynaCollection) {
#ifndef __cplusplus
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/*** IDispatch methods ***/
STDMETHOD(GetTypeInfoCount)(THIS_ UINT *pctinfo);
STDMETHOD(GetTypeInfo)(THIS_ UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
STDMETHOD(GetIDsOfNames)(THIS_ REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
STDMETHOD(Invoke)(THIS_ DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
/*** _DAOCollection ***/
STDMETHOD(get_Count) (THIS_ short *c) PURE;
STDMETHOD(_NewEnum) (THIS_ IUnknown **ppunk) PURE;
STDMETHOD(Refresh) (THIS) PURE;
/*** _DAODynaCollection ***/
STDMETHOD(Append) (THIS_ IDispatch *Object) PURE;
STDMETHOD(Delete) (THIS_ BSTR Name) PURE;
#endif
STDMETHOD(get_Item) (THIS_ VARIANT index,LPUNKNOWN *ppunk);
};
#endif /* __cplusplus */
#endif

View File

@ -0,0 +1,599 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC__MINGW_H
#define _INC__MINGW_H
#include "_mingw_mac.h"
#include "_mingw_secapi.h"
/* Include _cygwin.h if we're building a Cygwin application. */
#ifdef __CYGWIN__
#include "_cygwin.h"
#endif
/* Target specific macro replacement for type "long". In the Windows API,
the type long is always 32 bit, even if the target is 64 bit (LLP64).
On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
sized definitions and declarations, all usage of type long in the Windows
headers have to be replaced by the below defined macro __LONG32. */
#ifndef __LP64__ /* 32 bit target, 64 bit Mingw target */
#define __LONG32 long
#else /* 64 bit Cygwin target */
#define __LONG32 int
#endif
/* C/C++ specific language defines. */
#ifdef _WIN64
#ifdef __stdcall
#undef __stdcall
#endif
#define __stdcall
#endif
#ifndef __GNUC__
# ifndef __MINGW_IMPORT
# define __MINGW_IMPORT __declspec(dllimport)
# endif
# ifndef _CRTIMP
# define _CRTIMP __declspec(dllimport)
# endif
# define __DECLSPEC_SUPPORTED
# define __attribute__(x) /* nothing */
#else /* __GNUC__ */
# ifdef __declspec
# ifndef __MINGW_IMPORT
/* Note the extern. This is needed to work around GCC's
limitations in handling dllimport attribute. */
# define __MINGW_IMPORT extern __attribute__ ((__dllimport__))
# endif
# ifndef _CRTIMP
# undef __USE_CRTIMP
# if !defined (_CRTBLD) && !defined (_SYSCRT)
# define __USE_CRTIMP 1
# endif
# ifdef __USE_CRTIMP
# define _CRTIMP __attribute__ ((__dllimport__))
# else
# define _CRTIMP
# endif
# endif
# define __DECLSPEC_SUPPORTED
# else /* __declspec */
# undef __DECLSPEC_SUPPORTED
# undef __MINGW_IMPORT
# ifndef _CRTIMP
# define _CRTIMP
# endif
# endif /* __declspec */
#endif /* __GNUC__ */
#ifdef _MSC_VER
#define USE___UUIDOF 1
#else
#define USE___UUIDOF 0
#endif
#if !defined(_MSC_VER) && !defined(_inline)
#define _inline __inline
#endif
#ifdef __cplusplus
# define __CRT_INLINE inline
#elif defined(_MSC_VER)
# define __CRT_INLINE __inline
#else
# if ( __MINGW_GNUC_PREREQ(4, 3) && __STDC_VERSION__ >= 199901L) \
|| (defined (__clang__))
# define __CRT_INLINE extern inline __attribute__((__gnu_inline__))
# else
# define __CRT_INLINE extern __inline__
# endif
#endif
#if !defined(__MINGW_INTRIN_INLINE) && defined(__GNUC__)
#define __MINGW_INTRIN_INLINE extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
#endif
#ifndef __CYGWIN__
#ifdef __NO_INLINE__
#undef __CRT__NO_INLINE
#define __CRT__NO_INLINE 1
#endif
#endif
#ifdef __cplusplus
# define __UNUSED_PARAM(x)
#else
# ifdef __GNUC__
# define __UNUSED_PARAM(x) x __attribute__ ((__unused__))
# else
# define __UNUSED_PARAM(x) x
# endif
#endif
#ifndef __GNUC__
# ifdef _MSC_VER
# define __restrict__ __restrict
# else
# define __restrict__ /* nothing */
# endif
#endif /* !__GNUC__ */
#if __MINGW_GNUC_PREREQ (3,1) && !defined __GNUG__
# define __restrict_arr __restrict
#elif defined(_MSC_VER)
# define __restrict_arr __restrict
#else
# ifdef __GNUC__
# define __restrict_arr /* Not supported in old GCC. */
# else
# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
# define __restrict_arr restrict
# else
# define __restrict_arr /* Not supported. */
# endif
# endif
#endif
#ifdef __GNUC__
#define __MINGW_ATTRIB_NORETURN __attribute__ ((__noreturn__))
#define __MINGW_ATTRIB_CONST __attribute__ ((__const__))
#elif __MINGW_MSC_PREREQ(12, 0)
#define __MINGW_ATTRIB_NORETURN __declspec(noreturn)
#define __MINGW_ATTRIB_CONST
#else
#define __MINGW_ATTRIB_NORETURN
#define __MINGW_ATTRIB_CONST
#endif
#if __MINGW_GNUC_PREREQ (3, 0)
#define __MINGW_ATTRIB_MALLOC __attribute__ ((__malloc__))
#define __MINGW_ATTRIB_PURE __attribute__ ((__pure__))
#elif __MINGW_MSC_PREREQ(14, 0)
#define __MINGW_ATTRIB_MALLOC __declspec(noalias) __declspec(restrict)
#define __MINGW_ATTRIB_PURE
#else
#define __MINGW_ATTRIB_MALLOC
#define __MINGW_ATTRIB_PURE
#endif
/* Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
variadiac macro facility, because variadic macros cause syntax
errors with --traditional-cpp. */
#if __MINGW_GNUC_PREREQ (3, 3)
#define __MINGW_ATTRIB_NONNULL(arg) __attribute__ ((__nonnull__ (arg)))
#else
#define __MINGW_ATTRIB_NONNULL(arg)
#endif /* GNUC >= 3.3 */
#ifdef __GNUC__
#define __MINGW_ATTRIB_UNUSED __attribute__ ((__unused__))
#else
#define __MINGW_ATTRIB_UNUSED
#endif /* ATTRIBUTE_UNUSED */
#if __MINGW_GNUC_PREREQ (3, 1)
#define __MINGW_ATTRIB_USED __attribute__ ((__used__))
#define __MINGW_ATTRIB_DEPRECATED __attribute__ ((__deprecated__))
#if __MINGW_GNUC_PREREQ (4, 5) || defined (__clang__)
#define __MINGW_ATTRIB_DEPRECATED_MSG(x) __attribute__ ((__deprecated__(x)))
#endif
#elif __MINGW_MSC_PREREQ(12, 0)
#define __MINGW_ATTRIB_USED
#define __MINGW_ATTRIB_DEPRECATED __declspec(deprecated)
#else
#define __MINGW_ATTRIB_USED __MINGW_ATTRIB_UNUSED
#define __MINGW_ATTRIB_DEPRECATED
#endif /* GNUC >= 3.1 */
#ifndef __MINGW_ATTRIB_DEPRECATED_MSG
#define __MINGW_ATTRIB_DEPRECATED_MSG(x) __MINGW_ATTRIB_DEPRECATED
#endif
#if __MINGW_GNUC_PREREQ (3, 3)
#define __MINGW_NOTHROW __attribute__ ((__nothrow__))
#elif __MINGW_MSC_PREREQ(12, 0) && defined (__cplusplus)
#define __MINGW_NOTHROW __declspec(nothrow)
#else
#define __MINGW_NOTHROW
#endif
#if __MINGW_GNUC_PREREQ (4, 4)
#define __MINGW_ATTRIB_NO_OPTIMIZE __attribute__((__optimize__ ("0")))
#else
#define __MINGW_ATTRIB_NO_OPTIMIZE
#endif
#if __MINGW_GNUC_PREREQ (4, 4)
#define __MINGW_PRAGMA_PARAM(x) _Pragma (#x)
#elif __MINGW_MSC_PREREQ (13, 1)
#define __MINGW_PRAGMA_PARAM(x) __pragma (x)
#else
#define __MINGW_PRAGMA_PARAM(x)
#endif
#define __MINGW_BROKEN_INTERFACE(x) \
__MINGW_PRAGMA_PARAM(message ("Interface " _CRT_STRINGIZE(x) \
" has unverified layout."))
#ifndef __MSVCRT_VERSION__
/* High byte is the major version, low byte is the minor. */
# define __MSVCRT_VERSION__ 0x1400
#endif
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0601
#endif
#ifndef _INT128_DEFINED
#define _INT128_DEFINED
#ifdef __GNUC__
#define __int8 char
#define __int16 short
#define __int32 int
#define __int64 long long
#ifdef _WIN64
#if (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 1)) && \
!defined(__SIZEOF_INT128__) /* clang >= 3.1 has __int128 but no size macro */
#define __SIZEOF_INT128__ 16
#endif
#ifndef __SIZEOF_INT128__
typedef int __int128 __attribute__ ((__mode__ (TI)));
#endif
#endif
#endif /* __GNUC__ */
#endif /* _INT128_DEFINED */
#ifdef __GNUC__
#define __ptr32
#define __ptr64
#ifndef __unaligned
#define __unaligned
#endif
#ifndef __w64
#define __w64
#endif
#ifdef __cplusplus
#define __forceinline inline __attribute__((__always_inline__))
#else
#define __forceinline extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
#endif /* __cplusplus */
#endif /* __GNUC__ */
#if !defined(_WIN32) && !defined(__CYGWIN__)
#error Only Win32 target is supported!
#endif
#ifndef __nothrow
#ifdef __cplusplus
#define __nothrow __MINGW_NOTHROW
#else
#define __nothrow
#endif
#endif /* __nothrow */
#include <vadefs.h> /* other headers depend on this include */
#ifndef _CRT_STRINGIZE
#define __CRT_STRINGIZE(_Value) #_Value
#define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value)
#endif /* _CRT_STRINGIZE */
#ifndef _CRT_WIDE
#define __CRT_WIDE(_String) L ## _String
#define _CRT_WIDE(_String) __CRT_WIDE(_String)
#endif /* _CRT_WIDE */
#ifndef _W64
#define _W64
#endif
#ifndef _CRTIMP_NOIA64
#ifdef __ia64__
#define _CRTIMP_NOIA64
#else
#define _CRTIMP_NOIA64 _CRTIMP
#endif
#endif /* _CRTIMP_NOIA64 */
#ifndef _CRTIMP2
#define _CRTIMP2 _CRTIMP
#endif
#ifndef _CRTIMP_ALTERNATIVE
#define _CRTIMP_ALTERNATIVE _CRTIMP
#define _CRT_ALTERNATIVE_IMPORTED
#endif /* _CRTIMP_ALTERNATIVE */
#ifndef _MRTIMP2
#define _MRTIMP2 _CRTIMP
#endif
/* We have to define _DLL for gcc based mingw version. This define is set
by VC, when DLL-based runtime is used. So, gcc based runtime just have
DLL-base runtime, therefore this define has to be set.
As our headers are possibly used by windows compiler having a static
C-runtime, we make this definition gnu compiler specific here. */
#if !defined (_DLL) && defined (__GNUC__)
#define _DLL
#endif
#ifndef _MT
#define _MT
#endif
#ifndef _MCRTIMP
#define _MCRTIMP _CRTIMP
#endif
#ifndef _CRTIMP_PURE
#define _CRTIMP_PURE _CRTIMP
#endif
#ifndef _PGLOBAL
#define _PGLOBAL
#endif
#ifndef _AGLOBAL
#define _AGLOBAL
#endif
#define _SECURECRT_FILL_BUFFER_PATTERN 0xFD
#define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated)
#ifndef _CRT_INSECURE_DEPRECATE_MEMORY
#define _CRT_INSECURE_DEPRECATE_MEMORY(_Replacement)
#endif
#ifndef _CRT_INSECURE_DEPRECATE_GLOBALS
#define _CRT_INSECURE_DEPRECATE_GLOBALS(_Replacement)
#endif
#ifndef _CRT_MANAGED_HEAP_DEPRECATE
#define _CRT_MANAGED_HEAP_DEPRECATE
#endif
#ifndef _CRT_OBSOLETE
#define _CRT_OBSOLETE(_NewItem)
#endif
#ifndef __WIDL__
#if defined (_WIN32) && !defined (_WIN64) && !defined (__MINGW_USE_VC2005_COMPAT)
#ifndef _USE_32BIT_TIME_T
#define _USE_32BIT_TIME_T
#endif
#endif
#ifndef _CONST_RETURN
#define _CONST_RETURN
#endif
#ifndef UNALIGNED
#if defined(_M_IA64) || defined(_M_AMD64)
#define UNALIGNED __unaligned
#else
#define UNALIGNED
#endif
#endif /* UNALIGNED */
#ifndef _CRT_ALIGN
#ifdef _MSC_VER
#define _CRT_ALIGN(x) __declspec(align(x))
#else /* __GNUC__ */
#define _CRT_ALIGN(x) __attribute__ ((__aligned__ (x)))
#endif
#endif /* _CRT_ALIGN */
#endif /* __WIDL__ */
#ifndef __CRTDECL
#define __CRTDECL __cdecl
#endif
#define _ARGMAX 100
#ifndef _TRUNCATE
#define _TRUNCATE ((size_t)-1)
#endif
#ifndef _CRT_UNUSED
#define _CRT_UNUSED(x) (void)x
#endif
/* MSVC defines _NATIVE_NULLPTR_SUPPORTED when nullptr is supported. We emulate it here for GCC. */
#if __MINGW_GNUC_PREREQ(4, 6)
#if defined(__GNUC__) && (defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L)
#define _NATIVE_NULLPTR_SUPPORTED
#endif
#endif
/* We are activating __USE_MINGW_ANSI_STDIO for various define indicators.
Note that we enable it also for _GNU_SOURCE in C++, but not for C case. */
#if (defined (_POSIX) || defined (_POSIX_SOURCE) || defined (_POSIX_C_SOURCE) \
|| defined (_ISOC99_SOURCE) \
|| defined (_XOPEN_SOURCE) || defined (_XOPEN_SOURCE_EXTENDED) \
|| (defined (_GNU_SOURCE) && defined (__cplusplus)) \
|| defined (_SVID_SOURCE)) \
&& !defined(__USE_MINGW_ANSI_STDIO)
/* Enable __USE_MINGW_ANSI_STDIO if _POSIX defined
* and If user did _not_ specify it explicitly... */
# define __USE_MINGW_ANSI_STDIO 1
#endif
/* _dowildcard is an int that controls the globbing of the command line.
* The MinGW32 (mingw.org) runtime calls it _CRT_glob, so we are adding
* a compatibility definition here: you can use either of _CRT_glob or
* _dowildcard .
* If _dowildcard is non-zero, the command line will be globbed: *.*
* will be expanded to be all files in the startup directory.
* In the mingw-w64 library a _dowildcard variable is defined as being
* 0, therefore command line globbing is DISABLED by default. To turn it
* on and to leave wildcard command line processing MS's globbing code,
* include a line in one of your source modules defining _dowildcard and
* setting it to -1, like so:
* int _dowildcard = -1;
*/
#undef _CRT_glob
#define _CRT_glob _dowildcard
#if defined(_MSC_VER) && !defined(_MSC_EXTENSIONS)
#define NONAMELESSUNION 1
#endif
#if defined(NONAMELESSSTRUCT) && \
!defined(NONAMELESSUNION)
#define NONAMELESSUNION 1
#endif
#if defined(NONAMELESSUNION) && \
!defined(NONAMELESSSTRUCT)
#define NONAMELESSSTRUCT 1
#endif
#ifndef __ANONYMOUS_DEFINED
#define __ANONYMOUS_DEFINED
#define _ANONYMOUS_UNION __MINGW_EXTENSION
#define _ANONYMOUS_STRUCT __MINGW_EXTENSION
#ifndef NONAMELESSUNION
#define _UNION_NAME(x)
#define _STRUCT_NAME(x)
#else /* NONAMELESSUNION */
#define _UNION_NAME(x) x
#define _STRUCT_NAME(x) x
#endif
#endif /* __ANONYMOUS_DEFINED */
#ifndef DUMMYUNIONNAME
# ifdef NONAMELESSUNION
# define DUMMYUNIONNAME u
# define DUMMYUNIONNAME1 u1 /* Wine uses this variant */
# define DUMMYUNIONNAME2 u2
# define DUMMYUNIONNAME3 u3
# define DUMMYUNIONNAME4 u4
# define DUMMYUNIONNAME5 u5
# define DUMMYUNIONNAME6 u6
# define DUMMYUNIONNAME7 u7
# define DUMMYUNIONNAME8 u8
# define DUMMYUNIONNAME9 u9
# else /* NONAMELESSUNION */
# define DUMMYUNIONNAME
# define DUMMYUNIONNAME1 /* Wine uses this variant */
# define DUMMYUNIONNAME2
# define DUMMYUNIONNAME3
# define DUMMYUNIONNAME4
# define DUMMYUNIONNAME5
# define DUMMYUNIONNAME6
# define DUMMYUNIONNAME7
# define DUMMYUNIONNAME8
# define DUMMYUNIONNAME9
# endif
#endif /* DUMMYUNIONNAME */
#ifndef DUMMYSTRUCTNAME
# ifdef NONAMELESSUNION
# define DUMMYSTRUCTNAME s
# define DUMMYSTRUCTNAME1 s1 /* Wine uses this variant */
# define DUMMYSTRUCTNAME2 s2
# define DUMMYSTRUCTNAME3 s3
# define DUMMYSTRUCTNAME4 s4
# define DUMMYSTRUCTNAME5 s5
# else
# define DUMMYSTRUCTNAME
# define DUMMYSTRUCTNAME1 /* Wine uses this variant */
# define DUMMYSTRUCTNAME2
# define DUMMYSTRUCTNAME3
# define DUMMYSTRUCTNAME4
# define DUMMYSTRUCTNAME5
# endif
#endif /* DUMMYSTRUCTNAME */
/* Macros for __uuidof template-based emulation */
#if defined(__cplusplus) && (USE___UUIDOF == 0)
#if __cpp_constexpr >= 200704l && __cpp_inline_variables >= 201606L
#define __CRT_UUID_DECL(type,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
extern "C++" { \
template<> struct __mingw_uuidof_s<type> { \
static constexpr IID __uuid_inst = { \
l,w1,w2, {b1,b2,b3,b4,b5,b6,b7,b8} \
}; \
}; \
template<> constexpr const GUID &__mingw_uuidof<type>() { \
return __mingw_uuidof_s<type>::__uuid_inst; \
} \
template<> constexpr const GUID &__mingw_uuidof<type*>() { \
return __mingw_uuidof_s<type>::__uuid_inst; \
} \
}
#else
#define __CRT_UUID_DECL(type,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
extern "C++" { \
template<> inline const GUID &__mingw_uuidof<type>() { \
static const IID __uuid_inst = {l,w1,w2, {b1,b2,b3,b4,b5,b6,b7,b8}}; \
return __uuid_inst; \
} \
template<> inline const GUID &__mingw_uuidof<type*>() { \
return __mingw_uuidof<type>(); \
} \
}
#endif
#define __uuidof(type) __mingw_uuidof<__typeof(type)>()
#else
#define __CRT_UUID_DECL(type,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __MINGW_INTRIN_INLINE
#ifdef __has_builtin
#define __MINGW_DEBUGBREAK_IMPL !__has_builtin(__debugbreak)
#else
#define __MINGW_DEBUGBREAK_IMPL 1
#endif
#if __MINGW_DEBUGBREAK_IMPL == 1
void __cdecl __debugbreak(void);
__MINGW_INTRIN_INLINE void __cdecl __debugbreak(void)
{
__asm__ __volatile__("int {$}3":);
}
#endif
#endif
/* mingw-w64 specific functions: */
const char *__mingw_get_crt_info (void);
#ifdef __cplusplus
}
#endif
#endif /* _INC__MINGW_H */
#ifndef MINGW_SDK_INIT
#define MINGW_SDK_INIT
#ifdef MINGW_HAS_SECURE_API
#define __STDC_SECURE_LIB__ 200411L
#define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__
#endif
#ifndef __WIDL__
#include "sdks/_mingw_directx.h"
#include "sdks/_mingw_ddk.h"
#endif
#endif /* MINGW_SDK_INIT */

View File

@ -0,0 +1,117 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#if defined(_MSC_VER) && !defined(_MSC_EXTENSIONS)
#define NONAMELESSUNION 1
#endif
#if defined(NONAMELESSSTRUCT) && \
!defined(NONAMELESSUNION)
#define NONAMELESSUNION 1
#endif
#if defined(NONAMELESSUNION) && \
!defined(NONAMELESSSTRUCT)
#define NONAMELESSSTRUCT 1
#endif
#if !defined(__GNU_EXTENSION)
#if defined(__GNUC__) || defined(__GNUG__)
#define __GNU_EXTENSION __extension__
#else
#define __GNU_EXTENSION
#endif
#endif /* __extension__ */
#ifndef __ANONYMOUS_DEFINED
#define __ANONYMOUS_DEFINED
#if defined(__GNUC__) || defined(__GNUG__)
#define _ANONYMOUS_UNION __extension__
#define _ANONYMOUS_STRUCT __extension__
#else
#define _ANONYMOUS_UNION
#define _ANONYMOUS_STRUCT
#endif
#ifndef NONAMELESSUNION
#define _UNION_NAME(x)
#define _STRUCT_NAME(x)
#else /* NONAMELESSUNION */
#define _UNION_NAME(x) x
#define _STRUCT_NAME(x) x
#endif
#endif /* __ANONYMOUS_DEFINED */
#ifndef DUMMYUNIONNAME
# ifdef NONAMELESSUNION
# define DUMMYUNIONNAME u
# define DUMMYUNIONNAME1 u1 /* Wine uses this variant */
# define DUMMYUNIONNAME2 u2
# define DUMMYUNIONNAME3 u3
# define DUMMYUNIONNAME4 u4
# define DUMMYUNIONNAME5 u5
# define DUMMYUNIONNAME6 u6
# define DUMMYUNIONNAME7 u7
# define DUMMYUNIONNAME8 u8
# define DUMMYUNIONNAME9 u9
# else /* NONAMELESSUNION */
# define DUMMYUNIONNAME
# define DUMMYUNIONNAME1 /* Wine uses this variant */
# define DUMMYUNIONNAME2
# define DUMMYUNIONNAME3
# define DUMMYUNIONNAME4
# define DUMMYUNIONNAME5
# define DUMMYUNIONNAME6
# define DUMMYUNIONNAME7
# define DUMMYUNIONNAME8
# define DUMMYUNIONNAME9
# endif
#endif /* DUMMYUNIONNAME */
#if !defined(DUMMYUNIONNAME1) /* MinGW does not define this one */
# ifdef NONAMELESSUNION
# define DUMMYUNIONNAME1 u1 /* Wine uses this variant */
# else
# define DUMMYUNIONNAME1 /* Wine uses this variant */
# endif
#endif /* DUMMYUNIONNAME1 */
#ifndef DUMMYSTRUCTNAME
# ifdef NONAMELESSUNION
# define DUMMYSTRUCTNAME s
# define DUMMYSTRUCTNAME1 s1 /* Wine uses this variant */
# define DUMMYSTRUCTNAME2 s2
# define DUMMYSTRUCTNAME3 s3
# define DUMMYSTRUCTNAME4 s4
# define DUMMYSTRUCTNAME5 s5
# else
# define DUMMYSTRUCTNAME
# define DUMMYSTRUCTNAME1 /* Wine uses this variant */
# define DUMMYSTRUCTNAME2
# define DUMMYSTRUCTNAME3
# define DUMMYSTRUCTNAME4
# define DUMMYSTRUCTNAME5
# endif
#endif /* DUMMYSTRUCTNAME */
/* These are for compatibility with the Wine source tree */
#ifndef WINELIB_NAME_AW
# ifdef __MINGW_NAME_AW
# define WINELIB_NAME_AW __MINGW_NAME_AW
# else
# ifdef UNICODE
# define WINELIB_NAME_AW(func) func##W
# else
# define WINELIB_NAME_AW(func) func##A
# endif
# endif
#endif /* WINELIB_NAME_AW */
#ifndef DECL_WINELIB_TYPE_AW
# ifdef __MINGW_TYPEDEF_AW
# define DECL_WINELIB_TYPE_AW __MINGW_TYPEDEF_AW
# else
# define DECL_WINELIB_TYPE_AW(type) typedef WINELIB_NAME_AW(type) type;
# endif
#endif /* DECL_WINELIB_TYPE_AW */

View File

@ -0,0 +1,294 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC_CRTDEFS_MACRO
#define _INC_CRTDEFS_MACRO
#define __STRINGIFY(x) #x
#define __MINGW64_STRINGIFY(x) \
__STRINGIFY(x)
#define __MINGW64_VERSION_MAJOR 6
#define __MINGW64_VERSION_MINOR 0
#define __MINGW64_VERSION_BUGFIX 0
/* This macro holds an monotonic increasing value, which indicates
a specific fix/patch is present on trunk. This value isn't related to
minor/major version-macros. It is increased on demand, if a big
fix was applied to trunk. This macro gets just increased on trunk. For
other branches its value won't be modified. */
#define __MINGW64_VERSION_RC 0
#define __MINGW64_VERSION_STR \
__MINGW64_STRINGIFY(__MINGW64_VERSION_MAJOR) \
"." \
__MINGW64_STRINGIFY(__MINGW64_VERSION_MINOR) \
"." \
__MINGW64_STRINGIFY(__MINGW64_VERSION_BUGFIX)
#define __MINGW64_VERSION_STATE "alpha"
/* mingw.org's version macros: these make gcc to define
MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
and the __mingwthr_key_dtor() function from the MinGW
CRT in its private gthr-win32.h header. */
#define __MINGW32_MAJOR_VERSION 3
#define __MINGW32_MINOR_VERSION 11
/* Set VC specific compiler target macros. */
#if defined(__x86_64) && defined(_X86_)
# undef _X86_ /* _X86_ is not for __x86_64 */
#endif
#if defined(_X86_) && !defined(_M_IX86) && !defined(_M_IA64) \
&& !defined(_M_AMD64) && !defined(__x86_64)
# if defined(__i486__)
# define _M_IX86 400
# elif defined(__i586__)
# define _M_IX86 500
# elif defined(__i686__)
# define _M_IX86 600
# else
# define _M_IX86 300
# endif
#endif /* if defined(_X86_) && !defined(_M_IX86) && !defined(_M_IA64) ... */
#if defined(__x86_64) && !defined(_M_IX86) && !defined(_M_IA64) \
&& !defined(_M_AMD64)
# define _M_AMD64 100
# define _M_X64 100
#endif
#if defined(__ia64__) && !defined(_M_IX86) && !defined(_M_IA64) \
&& !defined(_M_AMD64) && !defined(_X86_) && !defined(__x86_64)
# define _M_IA64 100
#endif
#if defined(__arm__) && !defined(_M_ARM) && !defined(_M_ARMT) \
&& !defined(_M_THUMB)
# define _M_ARM 100
# define _M_ARMT 100
# define _M_THUMB 100
# ifndef _ARM_
# define _ARM_ 1
# endif
# ifndef _M_ARM_NT
# define _M_ARM_NT 1
# endif
#endif
#if defined(__aarch64__) && !defined(_M_ARM64)
# define _M_ARM64 1
# ifndef _ARM64_
# define _ARM64_ 1
# endif
#endif
#ifndef _X86_
/* MS does not prefix symbols by underscores for 64-bit. */
# ifndef __MINGW_USE_UNDERSCORE_PREFIX
/* As we have to support older gcc version, which are using underscores
as symbol prefix for x64, we have to check here for the user label
prefix defined by gcc. */
# ifdef __USER_LABEL_PREFIX__
# pragma push_macro ("_")
# undef _
# define _ 1
# if (__USER_LABEL_PREFIX__ + 0) != 0
# define __MINGW_USE_UNDERSCORE_PREFIX 1
# else
# define __MINGW_USE_UNDERSCORE_PREFIX 0
# endif
# undef _
# pragma pop_macro ("_")
# else /* ! __USER_LABEL_PREFIX__ */
# define __MINGW_USE_UNDERSCORE_PREFIX 0
# endif /* __USER_LABEL_PREFIX__ */
# endif
#else /* ! ifndef _X86_ */
/* For x86 we have always to prefix by underscore. */
# undef __MINGW_USE_UNDERSCORE_PREFIX
# define __MINGW_USE_UNDERSCORE_PREFIX 1
#endif /* ifndef _X86_ */
#if __MINGW_USE_UNDERSCORE_PREFIX == 0
# define __MINGW_IMP_SYMBOL(sym) __imp_##sym
# define __MINGW_IMP_LSYMBOL(sym) __imp_##sym
# define __MINGW_USYMBOL(sym) sym
# define __MINGW_LSYMBOL(sym) _##sym
#else /* ! if __MINGW_USE_UNDERSCORE_PREFIX == 0 */
# define __MINGW_IMP_SYMBOL(sym) _imp__##sym
# define __MINGW_IMP_LSYMBOL(sym) __imp__##sym
# define __MINGW_USYMBOL(sym) _##sym
# define __MINGW_LSYMBOL(sym) sym
#endif /* if __MINGW_USE_UNDERSCORE_PREFIX == 0 */
#ifndef __PTRDIFF_TYPE__
# ifdef _WIN64
# define __PTRDIFF_TYPE__ long long int
# else
# define __PTRDIFF_TYPE__ long int
# endif
#endif
#ifndef __SIZE_TYPE__
# ifdef _WIN64
# define __SIZE_TYPE__ long long unsigned int
# else
# define __SIZE_TYPE__ long unsigned int
# endif
#endif
#ifndef __WCHAR_TYPE__
# define __WCHAR_TYPE__ unsigned short
#endif
#ifndef __WINT_TYPE__
# define __WINT_TYPE__ unsigned short
#endif
#undef __MINGW_EXTENSION
#ifdef __WIDL__
# define __MINGW_EXTENSION
#else
# if defined(__GNUC__) || defined(__GNUG__)
# define __MINGW_EXTENSION __extension__
# else
# define __MINGW_EXTENSION
# endif
#endif /* __WIDL__ */
/* Special case nameless struct/union. */
#ifndef __C89_NAMELESS
# define __C89_NAMELESS __MINGW_EXTENSION
# define __C89_NAMELESSSTRUCTNAME
# define __C89_NAMELESSSTRUCTNAME1
# define __C89_NAMELESSSTRUCTNAME2
# define __C89_NAMELESSSTRUCTNAME3
# define __C89_NAMELESSSTRUCTNAME4
# define __C89_NAMELESSSTRUCTNAME5
# define __C89_NAMELESSUNIONNAME
# define __C89_NAMELESSUNIONNAME1
# define __C89_NAMELESSUNIONNAME2
# define __C89_NAMELESSUNIONNAME3
# define __C89_NAMELESSUNIONNAME4
# define __C89_NAMELESSUNIONNAME5
# define __C89_NAMELESSUNIONNAME6
# define __C89_NAMELESSUNIONNAME7
# define __C89_NAMELESSUNIONNAME8
#endif
#ifndef __GNU_EXTENSION
# define __GNU_EXTENSION __MINGW_EXTENSION
#endif
/* MinGW-w64 has some additional C99 printf/scanf feature support.
So we add some helper macros to ease recognition of them. */
#define __MINGW_HAVE_ANSI_C99_PRINTF 1
#define __MINGW_HAVE_WIDE_C99_PRINTF 1
#define __MINGW_HAVE_ANSI_C99_SCANF 1
#define __MINGW_HAVE_WIDE_C99_SCANF 1
#ifdef __MINGW_USE_BROKEN_INTERFACE
# define __MINGW_POISON_NAME(__IFACE) __IFACE
#else
# define __MINGW_POISON_NAME(__IFACE) \
__IFACE##_layout_has_not_been_verified_and_its_declaration_is_most_likely_incorrect
#endif
#ifndef __MSABI_LONG
# ifndef __LP64__
# define __MSABI_LONG(x) x ## l
# else
# define __MSABI_LONG(x) x
# endif
#endif
#if __GNUC__
# define __MINGW_GCC_VERSION (__GNUC__ * 10000 + \
__GNUC_MINOR__ * 100 + \
__GNUC_PATCHLEVEL__)
#else
# define __MINGW_GCC_VERSION 0
#endif
#if defined (__GNUC__) && defined (__GNUC_MINOR__)
# define __MINGW_GNUC_PREREQ(major, minor) \
(__GNUC__ > (major) \
|| (__GNUC__ == (major) && __GNUC_MINOR__ >= (minor)))
#else
# define __MINGW_GNUC_PREREQ(major, minor) 0
#endif
#if defined (_MSC_VER)
# define __MINGW_MSC_PREREQ(major, minor) \
(_MSC_VER >= (major * 100 + minor * 10))
#else
# define __MINGW_MSC_PREREQ(major, minor) 0
#endif
#ifdef __MINGW_MSVC_COMPAT_WARNINGS
# if __MINGW_GNUC_PREREQ (4, 5)
# define __MINGW_ATTRIB_DEPRECATED_STR(X) \
__attribute__ ((__deprecated__ (X)))
# else
# define __MINGW_ATTRIB_DEPRECATED_STR(X) \
__MINGW_ATTRIB_DEPRECATED
# endif
#else
# define __MINGW_ATTRIB_DEPRECATED_STR(X)
#endif /* ifdef __MINGW_MSVC_COMPAT_WARNINGS */
#define __MINGW_SEC_WARN_STR \
"This function or variable may be unsafe, use _CRT_SECURE_NO_WARNINGS to disable deprecation"
#define __MINGW_MSVC2005_DEPREC_STR \
"This POSIX function is deprecated beginning in Visual C++ 2005, use _CRT_NONSTDC_NO_DEPRECATE to disable deprecation"
#if !defined (_CRT_NONSTDC_NO_DEPRECATE)
# define __MINGW_ATTRIB_DEPRECATED_MSVC2005 \
__MINGW_ATTRIB_DEPRECATED_STR(__MINGW_MSVC2005_DEPREC_STR)
#else
# define __MINGW_ATTRIB_DEPRECATED_MSVC2005
#endif
#if !defined (_CRT_SECURE_NO_WARNINGS) || (_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES == 0)
# define __MINGW_ATTRIB_DEPRECATED_SEC_WARN \
__MINGW_ATTRIB_DEPRECATED_STR(__MINGW_SEC_WARN_STR)
#else
# define __MINGW_ATTRIB_DEPRECATED_SEC_WARN
#endif
#define __MINGW_MS_PRINTF(__format,__args) \
__attribute__((__format__(ms_printf, __format,__args)))
#define __MINGW_MS_SCANF(__format,__args) \
__attribute__((__format__(ms_scanf, __format,__args)))
#define __MINGW_GNU_PRINTF(__format,__args) \
__attribute__((__format__(gnu_printf,__format,__args)))
#define __MINGW_GNU_SCANF(__format,__args) \
__attribute__((__format__(gnu_scanf, __format,__args)))
#undef __mingw_ovr
#undef __mingw_static_ovr
#ifdef __cplusplus
# define __mingw_ovr inline __cdecl
# define __mingw_static_ovr static __mingw_ovr
#elif defined (__GNUC__)
# define __mingw_ovr static \
__attribute__ ((__unused__)) __inline__ __cdecl
# define __mingw_static_ovr __mingw_ovr
#else
# define __mingw_ovr static __cdecl
# define __mingw_static_ovr __mingw_ovr
#endif /* __cplusplus */
#endif /* _INC_CRTDEFS_MACRO */

View File

@ -0,0 +1,32 @@
#ifndef _OFF_T_DEFINED
#define _OFF_T_DEFINED
#ifndef _OFF_T_
#define _OFF_T_
typedef long _off_t;
#if !defined(NO_OLDNAMES) || defined(_POSIX)
typedef long off32_t;
#endif
#endif
#ifndef _OFF64_T_DEFINED
#define _OFF64_T_DEFINED
__MINGW_EXTENSION typedef long long _off64_t;
#if !defined(NO_OLDNAMES) || defined(_POSIX)
__MINGW_EXTENSION typedef long long off64_t;
#endif
#endif /*_OFF64_T_DEFINED */
#ifndef _FILE_OFFSET_BITS_SET_OFFT
#define _FILE_OFFSET_BITS_SET_OFFT
#if !defined(NO_OLDNAMES) || defined(_POSIX)
#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
typedef off64_t off_t;
#else
typedef off32_t off_t;
#endif /* #if !defined(NO_OLDNAMES) || defined(_POSIX) */
#endif /* (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)) */
#endif /* _FILE_OFFSET_BITS_SET_OFFT */
#endif /* _OFF_T_DEFINED */

View File

@ -0,0 +1,136 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
/* Define __mingw_<printf> macros. */
#if defined(__USE_MINGW_ANSI_STDIO) && (defined(_INC_STDIO) || defined(_WSTDIO_DEFINED)) && ((__USE_MINGW_ANSI_STDIO + 0) != 0)
/* Redefine to GNU specific PRI... and SCN... macros. */
#if defined(_INTTYPES_H_) && defined(PRId64)
#undef PRId64
#undef PRIdLEAST64
#undef PRIdFAST64
#undef PRIdMAX
#undef PRIi64
#undef PRIiLEAST64
#undef PRIiFAST64
#undef PRIiMAX
#undef PRIo64
#undef PRIoLEAST64
#undef PRIoFAST64
#undef PRIoMAX
#undef PRIu64
#undef PRIuLEAST64
#undef PRIuFAST64
#undef PRIuMAX
#undef PRIx64
#undef PRIxLEAST64
#undef PRIxFAST64
#undef PRIxMAX
#undef PRIX64
#undef PRIXLEAST64
#undef PRIXFAST64
#undef PRIXMAX
#undef SCNd64
#undef SCNdLEAST64
#undef SCNdFAST64
#undef SCNdMAX
#undef SCNi64
#undef SCNiLEAST64
#undef SCNiFAST64
#undef SCNiMAX
#undef SCNo64
#undef SCNoLEAST64
#undef SCNoFAST64
#undef SCNoMAX
#undef SCNx64
#undef SCNxLEAST64
#undef SCNxFAST64
#undef SCNxMAX
#undef SCNu64
#undef SCNuLEAST64
#undef SCNuFAST64
#undef SCNuMAX
#ifdef _WIN64
#undef PRIdPTR
#undef PRIiPTR
#undef PRIoPTR
#undef PRIuPTR
#undef PRIxPTR
#undef PRIXPTR
#undef SCNdPTR
#undef SCNiPTR
#undef SCNoPTR
#undef SCNxPTR
#undef SCNuPTR
#endif /* _WIN64 */
#define PRId64 "lld"
#define PRIdLEAST64 "lld"
#define PRIdFAST64 "lld"
#define PRIdMAX "lld"
#define PRIi64 "lli"
#define PRIiLEAST64 "lli"
#define PRIiFAST64 "lli"
#define PRIiMAX "lli"
#define PRIo64 "llo"
#define PRIoLEAST64 "llo"
#define PRIoFAST64 "llo"
#define PRIoMAX "llo"
#define PRIu64 "llu"
#define PRIuLEAST64 "llu"
#define PRIuFAST64 "llu"
#define PRIuMAX "llu"
#define PRIx64 "llx"
#define PRIxLEAST64 "llx"
#define PRIxFAST64 "llx"
#define PRIxMAX "llx"
#define PRIX64 "llX"
#define PRIXLEAST64 "llX"
#define PRIXFAST64 "llX"
#define PRIXMAX "llX"
#define SCNd64 "lld"
#define SCNdLEAST64 "lld"
#define SCNdFAST64 "lld"
#define SCNdMAX "lld"
#define SCNi64 "lli"
#define SCNiLEAST64 "lli"
#define SCNiFAST64 "lli"
#define SCNiMAX "lli"
#define SCNo64 "llo"
#define SCNoLEAST64 "llo"
#define SCNoFAST64 "llo"
#define SCNoMAX "llo"
#define SCNx64 "llx"
#define SCNxLEAST64 "llx"
#define SCNxFAST64 "llx"
#define SCNxMAX "llx"
#define SCNu64 "llu"
#define SCNuLEAST64 "llu"
#define SCNuFAST64 "llu"
#define SCNuMAX "llu"
#ifdef _WIN64
#define PRIdPTR "lld"
#define PRIiPTR "lli"
#define PRIoPTR "llo"
#define PRIuPTR "llu"
#define PRIxPTR "llx"
#define PRIXPTR "llX"
#define SCNdPTR "lld"
#define SCNiPTR "lli"
#define SCNoPTR "llo"
#define SCNxPTR "llx"
#define SCNuPTR "llu"
#endif /* _WIN64 */
#endif /* defined(_INTTYPES_H_) && defined(PRId64) */
#endif /* defined(__USE_MINGW_ANSI_STDIO) && defined(_INC_STDIO) && __USE_MINGW_ANSI_STDIO != 0 */

View File

@ -0,0 +1,136 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
/* Undefine __mingw_<printf> macros. */
#if defined(__USE_MINGW_ANSI_STDIO) && ((__USE_MINGW_ANSI_STDIO + 0) != 0)
/* Redefine to MS specific PRI... and SCN... macros. */
#if defined(_INTTYPES_H_) && defined(PRId64)
#undef PRId64
#undef PRIdLEAST64
#undef PRIdFAST64
#undef PRIdMAX
#undef PRIi64
#undef PRIiLEAST64
#undef PRIiFAST64
#undef PRIiMAX
#undef PRIo64
#undef PRIoLEAST64
#undef PRIoFAST64
#undef PRIoMAX
#undef PRIu64
#undef PRIuLEAST64
#undef PRIuFAST64
#undef PRIuMAX
#undef PRIx64
#undef PRIxLEAST64
#undef PRIxFAST64
#undef PRIxMAX
#undef PRIX64
#undef PRIXLEAST64
#undef PRIXFAST64
#undef PRIXMAX
#undef SCNd64
#undef SCNdLEAST64
#undef SCNdFAST64
#undef SCNdMAX
#undef SCNi64
#undef SCNiLEAST64
#undef SCNiFAST64
#undef SCNiMAX
#undef SCNo64
#undef SCNoLEAST64
#undef SCNoFAST64
#undef SCNoMAX
#undef SCNx64
#undef SCNxLEAST64
#undef SCNxFAST64
#undef SCNxMAX
#undef SCNu64
#undef SCNuLEAST64
#undef SCNuFAST64
#undef SCNuMAX
#ifdef _WIN64
#undef PRIdPTR
#undef PRIiPTR
#undef PRIoPTR
#undef PRIuPTR
#undef PRIxPTR
#undef PRIXPTR
#undef SCNdPTR
#undef SCNiPTR
#undef SCNoPTR
#undef SCNxPTR
#undef SCNuPTR
#endif /* _WIN64 */
#define PRId64 "lld"
#define PRIdLEAST64 "lld"
#define PRIdFAST64 "lld"
#define PRIdMAX "lld"
#define PRIi64 "lli"
#define PRIiLEAST64 "lli"
#define PRIiFAST64 "lli"
#define PRIiMAX "lli"
#define PRIo64 "llo"
#define PRIoLEAST64 "llo"
#define PRIoFAST64 "llo"
#define PRIoMAX "llo"
#define PRIu64 "llu"
#define PRIuLEAST64 "llu"
#define PRIuFAST64 "llu"
#define PRIuMAX "llu"
#define PRIx64 "llx"
#define PRIxLEAST64 "llx"
#define PRIxFAST64 "llx"
#define PRIxMAX "llx"
#define PRIX64 "llX"
#define PRIXLEAST64 "llX"
#define PRIXFAST64 "llX"
#define PRIXMAX "llX"
#define SCNd64 "lld"
#define SCNdLEAST64 "lld"
#define SCNdFAST64 "lld"
#define SCNdMAX "lld"
#define SCNi64 "lli"
#define SCNiLEAST64 "lli"
#define SCNiFAST64 "lli"
#define SCNiMAX "lli"
#define SCNo64 "llo"
#define SCNoLEAST64 "llo"
#define SCNoFAST64 "llo"
#define SCNoMAX "llo"
#define SCNx64 "llx"
#define SCNxLEAST64 "llx"
#define SCNxFAST64 "llx"
#define SCNxMAX "llx"
#define SCNu64 "llu"
#define SCNuLEAST64 "llu"
#define SCNuFAST64 "llu"
#define SCNuMAX "llu"
#ifdef _WIN64
#define PRIdPTR "lld"
#define PRIiPTR "lli"
#define PRIoPTR "llo"
#define PRIuPTR "llu"
#define PRIxPTR "llx"
#define PRIXPTR "llX"
#define SCNdPTR "lld"
#define SCNiPTR "lli"
#define SCNoPTR "llo"
#define SCNxPTR "llx"
#define SCNuPTR "llu"
#endif /* _WIN64 */
#endif /* defined(_INTTYPES_H_) && defined(PRId64) */
#endif /* defined(__USE_MINGW_ANSI_STDIO) && __USE_MINGW_ANSI_STDIO != 0 */

View File

@ -0,0 +1,73 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC_MINGW_SECAPI
#define _INC_MINGW_SECAPI
/* http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx */
#if defined(__cplusplus) && (MINGW_HAS_SECURE_API == 1)
#ifndef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
#define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 1 /* default to 1 */
#endif /*_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES*/
#ifndef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY
#define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY 0 /* default to 0 */
#endif /*_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY*/
#ifndef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
#define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 0 /* default to 0 */
#endif /* _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES */
#ifndef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
#define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT 0 /* default to 0 */
#endif /* _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT */
#ifndef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY
#define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY 0 /* default to 0 */
#endif /* _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY */
#else
/* Templates won't work in C, will break if secure API is not enabled, disabled */
#undef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
#undef _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY
#undef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES
#undef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT
#undef _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY
#define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES 0
#define _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY 0
#define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES 0
#define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT 0
#define _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY 0
#endif /*defined(__cplusplus) && (MINGW_HAS_SECURE_API == 1)*/
#define __MINGW_CRT_NAME_CONCAT2(sym) ::sym##_s
#ifdef __cplusplus
extern "C++" {
template <bool __test, typename __dsttype>
struct __if_array;
template <typename __dsttype>
struct __if_array <true, __dsttype> {
typedef __dsttype __type;
};
}
#endif /*__cplusplus*/
/* https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true */
/* fallback on default implementation if we can't know the size of the destination */
#if (_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY == 1)
#define __CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY_0_3_(__ret,__func,__type1,__attrib1,__arg1,__type2,__attrib2,__arg2,__type3,__attrib3,__arg3)\
extern "C" {_CRTIMP __ret __cdecl __func(__type1 * __attrib1 __arg1, __type2 __attrib2 __arg2, __type3 __attrib3 __arg3) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;}\
extern "C++" {\
template <size_t __size, typename __dsttype> inline\
typename __if_array < (__size > 1), void * >::__type __cdecl __func(\
__dsttype (&__arg1)[__size],\
__type2 __attrib2 (__arg2),\
__type3 __attrib3 (__arg3)) {\
return __MINGW_CRT_NAME_CONCAT2(__func) (__arg1,__size * sizeof(__dsttype),__arg2,__arg3) == 0 ? __arg1 : NULL;\
}\
}
#else
#define __CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY_0_3_(__ret,__func,__type1,__attrib1,__arg1,__type2,__attrib2,__arg2,__type3,__attrib3,__arg3)\
_CRTIMP __ret __cdecl __func(__type1 * __attrib1 __arg1, __type2 __attrib2 __arg2, __type3 __attrib3 __arg3) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
#endif
#endif /*_INC_MINGW_SECAPI*/

View File

@ -0,0 +1,102 @@
#ifndef _STAT_DEFINED
#ifdef _USE_32BIT_TIME_T
#define _fstat _fstat32
#define _stat _stat32
#define _wstat _wstat32
#if __MSVCRT_VERSION__ >= 0x1400
#define _fstati64 _fstat32i64
#define _stati64 _stat32i64
#define _wstati64 _wstat32i64
#else
#define _fstat32i64 _fstati64
#define _stat32i64 _stati64
#define _wstat32i64 _wstati64
#endif
#else
#define _fstat _fstat64i32
#define _fstati64 _fstat64
#define _stat _stat64i32
#define _stati64 _stat64
#define _wstat _wstat64i32
#define _wstati64 _wstat64
#endif /* _USE_32BIT_TIME_T */
struct _stat32 {
_dev_t st_dev;
_ino_t st_ino;
unsigned short st_mode;
short st_nlink;
short st_uid;
short st_gid;
_dev_t st_rdev;
_off_t st_size;
__time32_t st_atime;
__time32_t st_mtime;
__time32_t st_ctime;
};
#ifndef NO_OLDNAMES
struct stat {
_dev_t st_dev;
_ino_t st_ino;
unsigned short st_mode;
short st_nlink;
short st_uid;
short st_gid;
_dev_t st_rdev;
_off_t st_size;
time_t st_atime;
time_t st_mtime;
time_t st_ctime;
};
#endif /* NO_OLDNAMES */
struct _stat32i64 {
_dev_t st_dev;
_ino_t st_ino;
unsigned short st_mode;
short st_nlink;
short st_uid;
short st_gid;
_dev_t st_rdev;
__MINGW_EXTENSION __int64 st_size;
__time32_t st_atime;
__time32_t st_mtime;
__time32_t st_ctime;
};
struct _stat64i32 {
_dev_t st_dev;
_ino_t st_ino;
unsigned short st_mode;
short st_nlink;
short st_uid;
short st_gid;
_dev_t st_rdev;
_off_t st_size;
__time64_t st_atime;
__time64_t st_mtime;
__time64_t st_ctime;
};
struct _stat64 {
_dev_t st_dev;
_ino_t st_ino;
unsigned short st_mode;
short st_nlink;
short st_uid;
short st_gid;
_dev_t st_rdev;
__MINGW_EXTENSION __int64 st_size;
__time64_t st_atime;
__time64_t st_mtime;
__time64_t st_ctime;
};
#define __stat64 _stat64
#define stat64 _stat64 /* for POSIX */
#define fstat64 _fstat64 /* for POSIX */
#define _STAT_DEFINED
#endif /* _STAT_DEFINED */

View File

@ -0,0 +1,38 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC_STDARG
#define _INC_STDARG
#ifndef _WIN32
#error Only Win32 target is supported!
#endif
#include <vadefs.h>
#ifndef va_start
#define va_start _crt_va_start
#endif
#ifndef va_arg
#define va_arg _crt_va_arg
#endif
#ifndef va_end
#define va_end _crt_va_end
#endif
#ifndef __va_copy
#define __va_copy _crt_va_copy
#endif
#if !defined(va_copy) && \
(!defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L || defined(__GXX_EXPERIMENTAL_CXX0X__))
#define va_copy _crt_va_copy
#endif
#endif /* not _INC_STDARG */

View File

@ -0,0 +1,33 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#if !defined(_INC_CRT_UNICODE_MACROS)
/* _INC_CRT_UNICODE_MACROS defined based on UNICODE flag */
#if defined(UNICODE)
# define _INC_CRT_UNICODE_MACROS 1
# define __MINGW_NAME_AW(func) func##W
# define __MINGW_NAME_AW_EXT(func,ext) func##W##ext
# define __MINGW_NAME_UAW(func) func##_W
# define __MINGW_NAME_UAW_EXT(func,ext) func##_W_##ext
# define __MINGW_STRING_AW(str) L##str /* same as TEXT() from winnt.h */
# define __MINGW_PROCNAMEEXT_AW "W"
#else
# define _INC_CRT_UNICODE_MACROS 2
# define __MINGW_NAME_AW(func) func##A
# define __MINGW_NAME_AW_EXT(func,ext) func##A##ext
# define __MINGW_NAME_UAW(func) func##_A
# define __MINGW_NAME_UAW_EXT(func,ext) func##_A_##ext
# define __MINGW_STRING_AW(str) str /* same as TEXT() from winnt.h */
# define __MINGW_PROCNAMEEXT_AW "A"
#endif
#define __MINGW_TYPEDEF_AW(type) \
typedef __MINGW_NAME_AW(type) type;
#define __MINGW_TYPEDEF_UAW(type) \
typedef __MINGW_NAME_UAW(type) type;
#endif /* !defined(_INC_CRT_UNICODE_MACROS) */

View File

@ -0,0 +1,23 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _TIMEVAL_DEFINED
#define _TIMEVAL_DEFINED
struct timeval
{
long tv_sec;
long tv_usec;
};
#define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec)
#define timercmp(tvp,uvp,cmp) \
((tvp)->tv_sec cmp (uvp)->tv_sec || \
((tvp)->tv_sec == (uvp)->tv_sec && (tvp)->tv_usec cmp (uvp)->tv_usec))
#define timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0
#endif /* _TIMEVAL_DEFINED */

View File

@ -0,0 +1,461 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef __ACCESS_CONTROL__
#define __ACCESS_CONTROL__
#ifndef __WIDL__
#include <_mingw_unicode.h>
#include <wtypes.h>
#endif
#include <winapifamily.h>
#ifdef __cplusplus
extern "C" {
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#define AccFree LocalFree
typedef enum _SE_OBJECT_TYPE {
SE_UNKNOWN_OBJECT_TYPE = 0,
SE_FILE_OBJECT,
SE_SERVICE,
SE_PRINTER,
SE_REGISTRY_KEY,
SE_LMSHARE,
SE_KERNEL_OBJECT,
SE_WINDOW_OBJECT,
SE_DS_OBJECT,
SE_DS_OBJECT_ALL,
SE_PROVIDER_DEFINED_OBJECT,
SE_WMIGUID_OBJECT,
SE_REGISTRY_WOW64_32KEY,
} SE_OBJECT_TYPE;
typedef enum _TRUSTEE_TYPE {
TRUSTEE_IS_UNKNOWN,
TRUSTEE_IS_USER,
TRUSTEE_IS_GROUP,
TRUSTEE_IS_DOMAIN,
TRUSTEE_IS_ALIAS,
TRUSTEE_IS_WELL_KNOWN_GROUP,
TRUSTEE_IS_DELETED,
TRUSTEE_IS_INVALID,
TRUSTEE_IS_COMPUTER
} TRUSTEE_TYPE;
typedef enum _TRUSTEE_FORM {
TRUSTEE_IS_SID,
TRUSTEE_IS_NAME,
TRUSTEE_BAD_FORM,
TRUSTEE_IS_OBJECTS_AND_SID,
TRUSTEE_IS_OBJECTS_AND_NAME
} TRUSTEE_FORM;
typedef enum _MULTIPLE_TRUSTEE_OPERATION {
NO_MULTIPLE_TRUSTEE,
TRUSTEE_IS_IMPERSONATE,
} MULTIPLE_TRUSTEE_OPERATION;
typedef struct _OBJECTS_AND_SID {
DWORD ObjectsPresent;
GUID ObjectTypeGuid;
GUID InheritedObjectTypeGuid;
SID *pSid;
} OBJECTS_AND_SID, *POBJECTS_AND_SID;
typedef struct _OBJECTS_AND_NAME_A {
DWORD ObjectsPresent;
SE_OBJECT_TYPE ObjectType;
LPSTR ObjectTypeName;
LPSTR InheritedObjectTypeName;
LPSTR ptstrName;
} OBJECTS_AND_NAME_A, *POBJECTS_AND_NAME_A;
typedef struct _OBJECTS_AND_NAME_W {
DWORD ObjectsPresent;
SE_OBJECT_TYPE ObjectType;
LPWSTR ObjectTypeName;
LPWSTR InheritedObjectTypeName;
LPWSTR ptstrName;
} OBJECTS_AND_NAME_W, *POBJECTS_AND_NAME_W;
__MINGW_TYPEDEF_AW(OBJECTS_AND_NAME_)
__MINGW_TYPEDEF_AW(POBJECTS_AND_NAME_)
typedef struct _TRUSTEE_A {
struct _TRUSTEE_A *pMultipleTrustee;
MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
TRUSTEE_FORM TrusteeForm;
TRUSTEE_TYPE TrusteeType;
#ifdef __WIDL__
[switch_is (TrusteeForm)] union {
[case (TRUSTEE_IS_NAME)] LPSTR ptstrName;
[case (TRUSTEE_IS_SID)] SID *pSid;
[case (TRUSTEE_IS_OBJECTS_AND_SID)] OBJECTS_AND_SID *pObjectsAndSid;
[case (TRUSTEE_IS_OBJECTS_AND_NAME)] OBJECTS_AND_NAME_A *pObjectsAndName;
};
#else
LPSTR ptstrName;
#endif
} TRUSTEE_A, *PTRUSTEE_A, TRUSTEEA, *PTRUSTEEA;
typedef struct _TRUSTEE_W {
struct _TRUSTEE_W *pMultipleTrustee;
MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
TRUSTEE_FORM TrusteeForm;
TRUSTEE_TYPE TrusteeType;
#ifdef __WIDL__
[switch_is (TrusteeForm)] union {
[case (TRUSTEE_IS_NAME)] LPWSTR ptstrName;
[case (TRUSTEE_IS_SID)] SID *pSid;
[case (TRUSTEE_IS_OBJECTS_AND_SID)] OBJECTS_AND_SID *pObjectsAndSid;
[case (TRUSTEE_IS_OBJECTS_AND_NAME)] OBJECTS_AND_NAME_W *pObjectsAndName;
};
#else
LPWSTR ptstrName;
#endif
} TRUSTEE_W, *PTRUSTEE_W, TRUSTEEW, *PTRUSTEEW;
__MINGW_TYPEDEF_AW(TRUSTEE_)
__MINGW_TYPEDEF_AW(PTRUSTEE_)
__MINGW_TYPEDEF_AW(TRUSTEE)
__MINGW_TYPEDEF_AW(PTRUSTEE)
typedef enum _ACCESS_MODE {
NOT_USED_ACCESS = 0,
GRANT_ACCESS,
SET_ACCESS,
DENY_ACCESS,
REVOKE_ACCESS,
SET_AUDIT_SUCCESS,
SET_AUDIT_FAILURE
} ACCESS_MODE;
#define NO_INHERITANCE 0x0
#define SUB_OBJECTS_ONLY_INHERIT 0x1
#define SUB_CONTAINERS_ONLY_INHERIT 0x2
#define SUB_CONTAINERS_AND_OBJECTS_INHERIT 0x3
#define INHERIT_NO_PROPAGATE 0x4
#define INHERIT_ONLY 0x8
#define INHERITED_ACCESS_ENTRY 0x10
#define INHERITED_PARENT 0x10000000
#define INHERITED_GRANDPARENT 0x20000000
typedef struct _EXPLICIT_ACCESS_A {
DWORD grfAccessPermissions;
ACCESS_MODE grfAccessMode;
DWORD grfInheritance;
TRUSTEE_A Trustee;
} EXPLICIT_ACCESS_A, *PEXPLICIT_ACCESS_A, EXPLICIT_ACCESSA, *PEXPLICIT_ACCESSA;
typedef struct _EXPLICIT_ACCESS_W {
DWORD grfAccessPermissions;
ACCESS_MODE grfAccessMode;
DWORD grfInheritance;
TRUSTEE_W Trustee;
} EXPLICIT_ACCESS_W, *PEXPLICIT_ACCESS_W, EXPLICIT_ACCESSW, *PEXPLICIT_ACCESSW;
__MINGW_TYPEDEF_AW(EXPLICIT_ACCESS_)
__MINGW_TYPEDEF_AW(PEXPLICIT_ACCESS_)
__MINGW_TYPEDEF_AW(EXPLICIT_ACCESS)
__MINGW_TYPEDEF_AW(PEXPLICIT_ACCESS)
#define ACCCTRL_DEFAULT_PROVIDERA "Windows NT Access Provider"
#define ACCCTRL_DEFAULT_PROVIDERW L"Windows NT Access Provider"
#define ACCCTRL_DEFAULT_PROVIDER __MINGW_NAME_AW(ACCCTRL_DEFAULT_PROVIDER)
typedef ULONG ACCESS_RIGHTS, *PACCESS_RIGHTS;
typedef ULONG INHERIT_FLAGS, *PINHERIT_FLAGS;
typedef struct _ACTRL_ACCESS_ENTRYA {
TRUSTEE_A Trustee;
ULONG fAccessFlags;
ACCESS_RIGHTS Access;
ACCESS_RIGHTS ProvSpecificAccess;
INHERIT_FLAGS Inheritance;
LPSTR lpInheritProperty;
} ACTRL_ACCESS_ENTRYA, *PACTRL_ACCESS_ENTRYA;
typedef struct _ACTRL_ACCESS_ENTRYW {
TRUSTEE_W Trustee;
ULONG fAccessFlags;
ACCESS_RIGHTS Access;
ACCESS_RIGHTS ProvSpecificAccess;
INHERIT_FLAGS Inheritance;
LPWSTR lpInheritProperty;
} ACTRL_ACCESS_ENTRYW, *PACTRL_ACCESS_ENTRYW;
__MINGW_TYPEDEF_AW(ACTRL_ACCESS_ENTRY)
__MINGW_TYPEDEF_AW(PACTRL_ACCESS_ENTRY)
typedef struct _ACTRL_ACCESS_ENTRY_LISTA {
ULONG cEntries;
#ifdef __WIDL__
[size_is (cEntries)]
#endif
ACTRL_ACCESS_ENTRYA *pAccessList;
} ACTRL_ACCESS_ENTRY_LISTA, *PACTRL_ACCESS_ENTRY_LISTA;
typedef struct _ACTRL_ACCESS_ENTRY_LISTW {
ULONG cEntries;
#ifdef __WIDL__
[size_is (cEntries)]
#endif
ACTRL_ACCESS_ENTRYW *pAccessList;
} ACTRL_ACCESS_ENTRY_LISTW, *PACTRL_ACCESS_ENTRY_LISTW;
__MINGW_TYPEDEF_AW(ACTRL_ACCESS_ENTRY_LIST)
__MINGW_TYPEDEF_AW(PACTRL_ACCESS_ENTRY_LIST)
typedef struct _ACTRL_PROPERTY_ENTRYA {
LPSTR lpProperty;
PACTRL_ACCESS_ENTRY_LISTA pAccessEntryList;
ULONG fListFlags;
} ACTRL_PROPERTY_ENTRYA, *PACTRL_PROPERTY_ENTRYA;
typedef struct _ACTRL_PROPERTY_ENTRYW {
LPWSTR lpProperty;
PACTRL_ACCESS_ENTRY_LISTW pAccessEntryList;
ULONG fListFlags;
} ACTRL_PROPERTY_ENTRYW, *PACTRL_PROPERTY_ENTRYW;
__MINGW_TYPEDEF_AW(ACTRL_PROPERTY_ENTRY)
__MINGW_TYPEDEF_AW(PACTRL_PROPERTY_ENTRY)
typedef struct _ACTRL_ALISTA {
ULONG cEntries;
#ifdef __WIDL__
[size_is (cEntries)]
#endif
PACTRL_PROPERTY_ENTRYA pPropertyAccessList;
} ACTRL_ACCESSA, *PACTRL_ACCESSA, ACTRL_AUDITA, *PACTRL_AUDITA;
typedef struct _ACTRL_ALISTW {
ULONG cEntries;
#ifdef __WIDL__
[size_is (cEntries)]
#endif
PACTRL_PROPERTY_ENTRYW pPropertyAccessList;
} ACTRL_ACCESSW, *PACTRL_ACCESSW, ACTRL_AUDITW, *PACTRL_AUDITW;
__MINGW_TYPEDEF_AW(ACTRL_ACCESS)
__MINGW_TYPEDEF_AW(PACTRL_ACCESS)
__MINGW_TYPEDEF_AW(ACTRL_AUDIT)
__MINGW_TYPEDEF_AW(PACTRL_AUDIT)
#define TRUSTEE_ACCESS_ALLOWED __MSABI_LONG(0x1)
#define TRUSTEE_ACCESS_READ __MSABI_LONG(0x2)
#define TRUSTEE_ACCESS_WRITE __MSABI_LONG(0x4)
#define TRUSTEE_ACCESS_EXPLICIT __MSABI_LONG(0x1)
#define TRUSTEE_ACCESS_READ_WRITE (TRUSTEE_ACCESS_READ | TRUSTEE_ACCESS_WRITE)
#define TRUSTEE_ACCESS_ALL __MSABI_LONG(0xffffffff)
typedef struct _TRUSTEE_ACCESSA {
LPSTR lpProperty;
ACCESS_RIGHTS Access;
ULONG fAccessFlags;
ULONG fReturnedAccess;
} TRUSTEE_ACCESSA, *PTRUSTEE_ACCESSA;
typedef struct _TRUSTEE_ACCESSW {
LPWSTR lpProperty;
ACCESS_RIGHTS Access;
ULONG fAccessFlags;
ULONG fReturnedAccess;
} TRUSTEE_ACCESSW, *PTRUSTEE_ACCESSW;
__MINGW_TYPEDEF_AW(TRUSTEE_ACCESS)
__MINGW_TYPEDEF_AW(PTRUSTEE_ACCESS)
#define ACTRL_RESERVED 0x00000000
#define ACTRL_PERM_1 0x00000001
#define ACTRL_PERM_2 0x00000002
#define ACTRL_PERM_3 0x00000004
#define ACTRL_PERM_4 0x00000008
#define ACTRL_PERM_5 0x00000010
#define ACTRL_PERM_6 0x00000020
#define ACTRL_PERM_7 0x00000040
#define ACTRL_PERM_8 0x00000080
#define ACTRL_PERM_9 0x00000100
#define ACTRL_PERM_10 0x00000200
#define ACTRL_PERM_11 0x00000400
#define ACTRL_PERM_12 0x00000800
#define ACTRL_PERM_13 0x00001000
#define ACTRL_PERM_14 0x00002000
#define ACTRL_PERM_15 0x00004000
#define ACTRL_PERM_16 0x00008000
#define ACTRL_PERM_17 0x00010000
#define ACTRL_PERM_18 0x00020000
#define ACTRL_PERM_19 0x00040000
#define ACTRL_PERM_20 0x00080000
#define ACTRL_ACCESS_ALLOWED 0x00000001
#define ACTRL_ACCESS_DENIED 0x00000002
#define ACTRL_AUDIT_SUCCESS 0x00000004
#define ACTRL_AUDIT_FAILURE 0x00000008
#define ACTRL_ACCESS_PROTECTED 0x00000001
#define ACTRL_SYSTEM_ACCESS 0x04000000
#define ACTRL_DELETE 0x08000000
#define ACTRL_READ_CONTROL 0x10000000
#define ACTRL_CHANGE_ACCESS 0x20000000
#define ACTRL_CHANGE_OWNER 0x40000000
#define ACTRL_SYNCHRONIZE 0x80000000
#define ACTRL_STD_RIGHTS_ALL 0xf8000000
#define ACTRL_STD_RIGHT_REQUIRED (ACTRL_STD_RIGHTS_ALL & ~ACTRL_SYNCHRONIZE)
#ifndef _DS_CONTROL_BITS_DEFINED_
#define _DS_CONTROL_BITS_DEFINED_
#define ACTRL_DS_OPEN ACTRL_RESERVED
#define ACTRL_DS_CREATE_CHILD ACTRL_PERM_1
#define ACTRL_DS_DELETE_CHILD ACTRL_PERM_2
#define ACTRL_DS_LIST ACTRL_PERM_3
#define ACTRL_DS_SELF ACTRL_PERM_4
#define ACTRL_DS_READ_PROP ACTRL_PERM_5
#define ACTRL_DS_WRITE_PROP ACTRL_PERM_6
#define ACTRL_DS_DELETE_TREE ACTRL_PERM_7
#define ACTRL_DS_LIST_OBJECT ACTRL_PERM_8
#define ACTRL_DS_CONTROL_ACCESS ACTRL_PERM_9
#endif
#define ACTRL_FILE_READ ACTRL_PERM_1
#define ACTRL_FILE_WRITE ACTRL_PERM_2
#define ACTRL_FILE_APPEND ACTRL_PERM_3
#define ACTRL_FILE_READ_PROP ACTRL_PERM_4
#define ACTRL_FILE_WRITE_PROP ACTRL_PERM_5
#define ACTRL_FILE_EXECUTE ACTRL_PERM_6
#define ACTRL_FILE_READ_ATTRIB ACTRL_PERM_8
#define ACTRL_FILE_WRITE_ATTRIB ACTRL_PERM_9
#define ACTRL_FILE_CREATE_PIPE ACTRL_PERM_10
#define ACTRL_DIR_LIST ACTRL_PERM_1
#define ACTRL_DIR_CREATE_OBJECT ACTRL_PERM_2
#define ACTRL_DIR_CREATE_CHILD ACTRL_PERM_3
#define ACTRL_DIR_DELETE_CHILD ACTRL_PERM_7
#define ACTRL_DIR_TRAVERSE ACTRL_PERM_6
#define ACTRL_KERNEL_TERMINATE ACTRL_PERM_1
#define ACTRL_KERNEL_THREAD ACTRL_PERM_2
#define ACTRL_KERNEL_VM ACTRL_PERM_3
#define ACTRL_KERNEL_VM_READ ACTRL_PERM_4
#define ACTRL_KERNEL_VM_WRITE ACTRL_PERM_5
#define ACTRL_KERNEL_DUP_HANDLE ACTRL_PERM_6
#define ACTRL_KERNEL_PROCESS ACTRL_PERM_7
#define ACTRL_KERNEL_SET_INFO ACTRL_PERM_8
#define ACTRL_KERNEL_GET_INFO ACTRL_PERM_9
#define ACTRL_KERNEL_CONTROL ACTRL_PERM_10
#define ACTRL_KERNEL_ALERT ACTRL_PERM_11
#define ACTRL_KERNEL_GET_CONTEXT ACTRL_PERM_12
#define ACTRL_KERNEL_SET_CONTEXT ACTRL_PERM_13
#define ACTRL_KERNEL_TOKEN ACTRL_PERM_14
#define ACTRL_KERNEL_IMPERSONATE ACTRL_PERM_15
#define ACTRL_KERNEL_DIMPERSONATE ACTRL_PERM_16
#define ACTRL_PRINT_SADMIN ACTRL_PERM_1
#define ACTRL_PRINT_SLIST ACTRL_PERM_2
#define ACTRL_PRINT_PADMIN ACTRL_PERM_3
#define ACTRL_PRINT_PUSE ACTRL_PERM_4
#define ACTRL_PRINT_JADMIN ACTRL_PERM_5
#define ACTRL_SVC_GET_INFO ACTRL_PERM_1
#define ACTRL_SVC_SET_INFO ACTRL_PERM_2
#define ACTRL_SVC_STATUS ACTRL_PERM_3
#define ACTRL_SVC_LIST ACTRL_PERM_4
#define ACTRL_SVC_START ACTRL_PERM_5
#define ACTRL_SVC_STOP ACTRL_PERM_6
#define ACTRL_SVC_PAUSE ACTRL_PERM_7
#define ACTRL_SVC_INTERROGATE ACTRL_PERM_8
#define ACTRL_SVC_UCONTROL ACTRL_PERM_9
#define ACTRL_REG_QUERY ACTRL_PERM_1
#define ACTRL_REG_SET ACTRL_PERM_2
#define ACTRL_REG_CREATE_CHILD ACTRL_PERM_3
#define ACTRL_REG_LIST ACTRL_PERM_4
#define ACTRL_REG_NOTIFY ACTRL_PERM_5
#define ACTRL_REG_LINK ACTRL_PERM_6
#define ACTRL_WIN_CLIPBRD ACTRL_PERM_1
#define ACTRL_WIN_GLOBAL_ATOMS ACTRL_PERM_2
#define ACTRL_WIN_CREATE ACTRL_PERM_3
#define ACTRL_WIN_LIST_DESK ACTRL_PERM_4
#define ACTRL_WIN_LIST ACTRL_PERM_5
#define ACTRL_WIN_READ_ATTRIBS ACTRL_PERM_6
#define ACTRL_WIN_WRITE_ATTRIBS ACTRL_PERM_7
#define ACTRL_WIN_SCREEN ACTRL_PERM_8
#define ACTRL_WIN_EXIT ACTRL_PERM_9
typedef struct _ACTRL_OVERLAPPED {
__C89_NAMELESS union {
PVOID Provider;
ULONG Reserved1;
} DUMMYUNIONNAME;
ULONG Reserved2;
HANDLE hEvent;
} ACTRL_OVERLAPPED, *PACTRL_OVERLAPPED;
typedef struct _ACTRL_ACCESS_INFOA {
ULONG fAccessPermission;
LPSTR lpAccessPermissionName;
} ACTRL_ACCESS_INFOA, *PACTRL_ACCESS_INFOA;
typedef struct _ACTRL_ACCESS_INFOW {
ULONG fAccessPermission;
LPWSTR lpAccessPermissionName;
} ACTRL_ACCESS_INFOW, *PACTRL_ACCESS_INFOW;
__MINGW_TYPEDEF_AW(ACTRL_ACCESS_INFO)
__MINGW_TYPEDEF_AW(PACTRL_ACCESS_INFO)
typedef struct _ACTRL_CONTROL_INFOA {
LPSTR lpControlId;
LPSTR lpControlName;
} ACTRL_CONTROL_INFOA, *PACTRL_CONTROL_INFOA;
typedef struct _ACTRL_CONTROL_INFOW {
LPWSTR lpControlId;
LPWSTR lpControlName;
} ACTRL_CONTROL_INFOW, *PACTRL_CONTROL_INFOW;
__MINGW_TYPEDEF_AW(ACTRL_CONTROL_INFO)
__MINGW_TYPEDEF_AW(PACTRL_CONTROL_INFO)
#define ACTRL_ACCESS_NO_OPTIONS 0x0
#define ACTRL_ACCESS_SUPPORTS_OBJECT_ENTRIES 0x1
#if NTDDI_VERSION >= 0x06000000
#define TREE_SEC_INFO_SET 0x00000001
#define TREE_SEC_INFO_RESET 0x00000002
#define TREE_SEC_INFO_RESET_KEEP_EXPLICIT 0x00000003
#endif
typedef enum _PROGRESS_INVOKE_SETTING {
ProgressInvokeNever = 1, ProgressInvokeEveryObject, ProgressInvokeOnError, ProgressCancelOperation, ProgressRetryOperation
#if NTDDI_VERSION >= 0x06000000
, ProgressInvokePrePostError
#endif
} PROG_INVOKE_SETTING, *PPROG_INVOKE_SETTING;
typedef struct _FN_OBJECT_MGR_FUNCTIONS {
ULONG Placeholder;
} FN_OBJECT_MGR_FUNCTS, *PFN_OBJECT_MGR_FUNCTS;
typedef struct _INHERITED_FROMA {
LONG GenerationGap;
LPSTR AncestorName;
} INHERITED_FROMA, *PINHERITED_FROMA;
typedef struct _INHERITED_FROMW {
LONG GenerationGap;
LPWSTR AncestorName;
} INHERITED_FROMW, *PINHERITED_FROMW;
__MINGW_TYPEDEF_AW(INHERITED_FROM)
__MINGW_TYPEDEF_AW(PINHERITED_FROM)
#endif
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,107 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef __ACCESS_CONTROL_API__
#define __ACCESS_CONTROL_API__
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#include <_mingw_unicode.h>
#include <windows.h>
#include <accctrl.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef VOID (*FN_PROGRESS) (LPWSTR pObjectName, DWORD Status, PPROG_INVOKE_SETTING pInvokeSetting, PVOID Args, WINBOOL SecuritySet);
#define SetEntriesInAcl __MINGW_NAME_AW(SetEntriesInAcl)
#define GetExplicitEntriesFromAcl __MINGW_NAME_AW(GetExplicitEntriesFromAcl)
#define GetEffectiveRightsFromAcl __MINGW_NAME_AW(GetEffectiveRightsFromAcl)
#define GetAuditedPermissionsFromAcl __MINGW_NAME_AW(GetAuditedPermissionsFromAcl)
#define GetNamedSecurityInfo __MINGW_NAME_AW(GetNamedSecurityInfo)
#define SetNamedSecurityInfo __MINGW_NAME_AW(SetNamedSecurityInfo)
#define GetInheritanceSource __MINGW_NAME_AW(GetInheritanceSource)
#define TreeResetNamedSecurityInfo __MINGW_NAME_AW(TreeResetNamedSecurityInfo)
#define BuildSecurityDescriptor __MINGW_NAME_AW(BuildSecurityDescriptor)
#define LookupSecurityDescriptorParts __MINGW_NAME_AW(LookupSecurityDescriptorParts)
#define BuildExplicitAccessWithName __MINGW_NAME_AW(BuildExplicitAccessWithName)
#define BuildImpersonateExplicitAccessWithName __MINGW_NAME_AW(BuildImpersonateExplicitAccessWithName)
#define BuildTrusteeWithName __MINGW_NAME_AW(BuildTrusteeWithName)
#define BuildImpersonateTrustee __MINGW_NAME_AW(BuildImpersonateTrustee)
#define BuildTrusteeWithSid __MINGW_NAME_AW(BuildTrusteeWithSid)
#define BuildTrusteeWithObjectsAndSid __MINGW_NAME_AW(BuildTrusteeWithObjectsAndSid)
#define BuildTrusteeWithObjectsAndName __MINGW_NAME_AW(BuildTrusteeWithObjectsAndName)
#define GetTrusteeName __MINGW_NAME_AW(GetTrusteeName)
#define GetTrusteeType __MINGW_NAME_AW(GetTrusteeType)
#define GetTrusteeForm __MINGW_NAME_AW(GetTrusteeForm)
#define GetMultipleTrusteeOperation __MINGW_NAME_AW(GetMultipleTrusteeOperation)
#define GetMultipleTrustee __MINGW_NAME_AW(GetMultipleTrustee)
#if NTDDI_VERSION >= 0x06000000
#define TreeSetNamedSecurityInfo __MINGW_NAME_AW(TreeSetNamedSecurityInfo)
#endif
#define AccProvInit(err)
WINADVAPI DWORD WINAPI SetEntriesInAclA (ULONG cCountOfExplicitEntries, PEXPLICIT_ACCESS_A pListOfExplicitEntries, PACL OldAcl, PACL *NewAcl);
WINADVAPI DWORD WINAPI SetEntriesInAclW (ULONG cCountOfExplicitEntries, PEXPLICIT_ACCESS_W pListOfExplicitEntries, PACL OldAcl, PACL *NewAcl);
WINADVAPI DWORD WINAPI GetExplicitEntriesFromAclA (PACL pacl, PULONG pcCountOfExplicitEntries, PEXPLICIT_ACCESS_A *pListOfExplicitEntries);
WINADVAPI DWORD WINAPI GetExplicitEntriesFromAclW (PACL pacl, PULONG pcCountOfExplicitEntries, PEXPLICIT_ACCESS_W *pListOfExplicitEntries);
WINADVAPI DWORD WINAPI GetEffectiveRightsFromAclA (PACL pacl, PTRUSTEE_A pTrustee, PACCESS_MASK pAccessRights);
WINADVAPI DWORD WINAPI GetEffectiveRightsFromAclW (PACL pacl, PTRUSTEE_W pTrustee, PACCESS_MASK pAccessRights);
WINADVAPI DWORD WINAPI GetAuditedPermissionsFromAclA (PACL pacl, PTRUSTEE_A pTrustee, PACCESS_MASK pSuccessfulAuditedRights, PACCESS_MASK pFailedAuditRights);
WINADVAPI DWORD WINAPI GetAuditedPermissionsFromAclW (PACL pacl, PTRUSTEE_W pTrustee, PACCESS_MASK pSuccessfulAuditedRights, PACCESS_MASK pFailedAuditRights);
WINADVAPI DWORD WINAPI GetNamedSecurityInfoA (LPCSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID *ppsidOwner, PSID *ppsidGroup, PACL *ppDacl, PACL *ppSacl, PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
WINADVAPI DWORD WINAPI GetNamedSecurityInfoW (LPCWSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID *ppsidOwner, PSID *ppsidGroup, PACL *ppDacl, PACL *ppSacl, PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
WINADVAPI DWORD WINAPI GetSecurityInfo (HANDLE handle, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID *ppsidOwner, PSID *ppsidGroup, PACL *ppDacl, PACL *ppSacl, PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
WINADVAPI DWORD WINAPI SetNamedSecurityInfoA (LPSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID psidOwner, PSID psidGroup, PACL pDacl, PACL pSacl);
WINADVAPI DWORD WINAPI SetNamedSecurityInfoW (LPWSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID psidOwner, PSID psidGroup, PACL pDacl, PACL pSacl);
WINADVAPI DWORD WINAPI SetSecurityInfo (HANDLE handle, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID psidOwner, PSID psidGroup, PACL pDacl, PACL pSacl);
WINADVAPI DWORD WINAPI GetInheritanceSourceA (LPSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, WINBOOL Container, GUID **pObjectClassGuids, DWORD GuidCount, PACL pAcl, PFN_OBJECT_MGR_FUNCTS pfnArray, PGENERIC_MAPPING pGenericMapping, PINHERITED_FROMA pInheritArray);
WINADVAPI DWORD WINAPI GetInheritanceSourceW (LPWSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, WINBOOL Container, GUID **pObjectClassGuids, DWORD GuidCount, PACL pAcl, PFN_OBJECT_MGR_FUNCTS pfnArray, PGENERIC_MAPPING pGenericMapping, PINHERITED_FROMW pInheritArray);
WINADVAPI DWORD WINAPI FreeInheritedFromArray (PINHERITED_FROMW pInheritArray, USHORT AceCnt, PFN_OBJECT_MGR_FUNCTS pfnArray);
WINADVAPI DWORD WINAPI TreeResetNamedSecurityInfoA (LPSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID pOwner, PSID pGroup, PACL pDacl, PACL pSacl, WINBOOL KeepExplicit, FN_PROGRESS fnProgress, PROG_INVOKE_SETTING ProgressInvokeSetting, PVOID Args);
WINADVAPI DWORD WINAPI TreeResetNamedSecurityInfoW (LPWSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID pOwner, PSID pGroup, PACL pDacl, PACL pSacl, WINBOOL KeepExplicit, FN_PROGRESS fnProgress, PROG_INVOKE_SETTING ProgressInvokeSetting, PVOID Args);
WINADVAPI DWORD WINAPI BuildSecurityDescriptorA (PTRUSTEE_A pOwner, PTRUSTEE_A pGroup, ULONG cCountOfAccessEntries, PEXPLICIT_ACCESS_A pListOfAccessEntries, ULONG cCountOfAuditEntries, PEXPLICIT_ACCESS_A pListOfAuditEntries, PSECURITY_DESCRIPTOR pOldSD, PULONG pSizeNewSD, PSECURITY_DESCRIPTOR *pNewSD);
WINADVAPI DWORD WINAPI BuildSecurityDescriptorW (PTRUSTEE_W pOwner, PTRUSTEE_W pGroup, ULONG cCountOfAccessEntries, PEXPLICIT_ACCESS_W pListOfAccessEntries, ULONG cCountOfAuditEntries, PEXPLICIT_ACCESS_W pListOfAuditEntries, PSECURITY_DESCRIPTOR pOldSD, PULONG pSizeNewSD, PSECURITY_DESCRIPTOR *pNewSD);
WINADVAPI DWORD WINAPI LookupSecurityDescriptorPartsA (PTRUSTEE_A *ppOwner, PTRUSTEE_A *ppGroup, PULONG pcCountOfAccessEntries, PEXPLICIT_ACCESS_A *ppListOfAccessEntries, PULONG pcCountOfAuditEntries, PEXPLICIT_ACCESS_A *ppListOfAuditEntries, PSECURITY_DESCRIPTOR pSD);
WINADVAPI DWORD WINAPI LookupSecurityDescriptorPartsW (PTRUSTEE_W *ppOwner, PTRUSTEE_W *ppGroup, PULONG pcCountOfAccessEntries, PEXPLICIT_ACCESS_W *ppListOfAccessEntries, PULONG pcCountOfAuditEntries, PEXPLICIT_ACCESS_W *ppListOfAuditEntries, PSECURITY_DESCRIPTOR pSD);
WINADVAPI VOID WINAPI BuildExplicitAccessWithNameA (PEXPLICIT_ACCESS_A pExplicitAccess, LPSTR pTrusteeName, DWORD AccessPermissions, ACCESS_MODE AccessMode, DWORD Inheritance);
WINADVAPI VOID WINAPI BuildExplicitAccessWithNameW (PEXPLICIT_ACCESS_W pExplicitAccess, LPWSTR pTrusteeName, DWORD AccessPermissions, ACCESS_MODE AccessMode, DWORD Inheritance);
WINADVAPI VOID WINAPI BuildImpersonateExplicitAccessWithNameA (PEXPLICIT_ACCESS_A pExplicitAccess, LPSTR pTrusteeName, PTRUSTEE_A pTrustee, DWORD AccessPermissions, ACCESS_MODE AccessMode, DWORD Inheritance);
WINADVAPI VOID WINAPI BuildImpersonateExplicitAccessWithNameW (PEXPLICIT_ACCESS_W pExplicitAccess, LPWSTR pTrusteeName, PTRUSTEE_W pTrustee, DWORD AccessPermissions, ACCESS_MODE AccessMode, DWORD Inheritance);
WINADVAPI VOID WINAPI BuildTrusteeWithNameA (PTRUSTEE_A pTrustee, LPSTR pName);
WINADVAPI VOID WINAPI BuildTrusteeWithNameW (PTRUSTEE_W pTrustee, LPWSTR pName);
WINADVAPI VOID WINAPI BuildImpersonateTrusteeA (PTRUSTEE_A pTrustee, PTRUSTEE_A pImpersonateTrustee);
WINADVAPI VOID WINAPI BuildImpersonateTrusteeW (PTRUSTEE_W pTrustee, PTRUSTEE_W pImpersonateTrustee);
WINADVAPI VOID WINAPI BuildTrusteeWithSidA (PTRUSTEE_A pTrustee, PSID pSid);
WINADVAPI VOID WINAPI BuildTrusteeWithSidW (PTRUSTEE_W pTrustee, PSID pSid);
WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndSidA (PTRUSTEE_A pTrustee, POBJECTS_AND_SID pObjSid, GUID *pObjectGuid, GUID *pInheritedObjectGuid, PSID pSid);
WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndSidW (PTRUSTEE_W pTrustee, POBJECTS_AND_SID pObjSid, GUID *pObjectGuid, GUID *pInheritedObjectGuid, PSID pSid);
WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndNameA (PTRUSTEE_A pTrustee, POBJECTS_AND_NAME_A pObjName, SE_OBJECT_TYPE ObjectType, LPSTR ObjectTypeName, LPSTR InheritedObjectTypeName, LPSTR Name);
WINADVAPI VOID WINAPI BuildTrusteeWithObjectsAndNameW (PTRUSTEE_W pTrustee, POBJECTS_AND_NAME_W pObjName, SE_OBJECT_TYPE ObjectType, LPWSTR ObjectTypeName, LPWSTR InheritedObjectTypeName, LPWSTR Name);
WINADVAPI LPSTR WINAPI GetTrusteeNameA (PTRUSTEE_A pTrustee);
WINADVAPI LPWSTR WINAPI GetTrusteeNameW (PTRUSTEE_W pTrustee);
WINADVAPI TRUSTEE_TYPE WINAPI GetTrusteeTypeA (PTRUSTEE_A pTrustee);
WINADVAPI TRUSTEE_TYPE WINAPI GetTrusteeTypeW (PTRUSTEE_W pTrustee);
WINADVAPI TRUSTEE_FORM WINAPI GetTrusteeFormA (PTRUSTEE_A pTrustee);
WINADVAPI TRUSTEE_FORM WINAPI GetTrusteeFormW (PTRUSTEE_W pTrustee);
WINADVAPI MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationA (PTRUSTEE_A pTrustee);
WINADVAPI MULTIPLE_TRUSTEE_OPERATION WINAPI GetMultipleTrusteeOperationW (PTRUSTEE_W pTrustee);
WINADVAPI PTRUSTEE_A WINAPI GetMultipleTrusteeA (PTRUSTEE_A pTrustee);
WINADVAPI PTRUSTEE_W WINAPI GetMultipleTrusteeW (PTRUSTEE_W pTrustee);
#if NTDDI_VERSION >= 0x06000000
WINADVAPI DWORD WINAPI TreeSetNamedSecurityInfoA (LPSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID pOwner, PSID pGroup, PACL pDacl, PACL pSacl, DWORD dwAction, FN_PROGRESS fnProgress, PROG_INVOKE_SETTING ProgressInvokeSetting, PVOID Args);
WINADVAPI DWORD WINAPI TreeSetNamedSecurityInfoW (LPWSTR pObjectName, SE_OBJECT_TYPE ObjectType, SECURITY_INFORMATION SecurityInfo, PSID pOwner, PSID pGroup, PACL pDacl, PACL pSacl, DWORD dwAction, FN_PROGRESS fnProgress, PROG_INVOKE_SETTING ProgressInvokeSetting, PVOID Args);
#endif
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,282 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _ACLUI_H_
#define _ACLUI_H_
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#include <objbase.h>
#include <commctrl.h>
#include <accctrl.h>
#include <authz.h>
#ifndef _ACLUI_
#define ACLUIAPI DECLSPEC_IMPORT WINAPI
#else
#define ACLUIAPI WINAPI
#endif
#ifdef __cplusplus
extern "C" {
#endif
typedef struct _SI_OBJECT_INFO {
DWORD dwFlags;
HINSTANCE hInstance;
LPWSTR pszServerName;
LPWSTR pszObjectName;
LPWSTR pszPageTitle;
GUID guidObjectType;
} SI_OBJECT_INFO,*PSI_OBJECT_INFO;
#define SI_EDIT_PERMS __MSABI_LONG(0x00000000)
#define SI_EDIT_OWNER __MSABI_LONG(0x00000001)
#define SI_EDIT_AUDITS __MSABI_LONG(0x00000002)
#define SI_CONTAINER __MSABI_LONG(0x00000004)
#define SI_READONLY __MSABI_LONG(0x00000008)
#define SI_ADVANCED __MSABI_LONG(0x00000010)
#define SI_RESET __MSABI_LONG(0x00000020)
#define SI_OWNER_READONLY __MSABI_LONG(0x00000040)
#define SI_EDIT_PROPERTIES __MSABI_LONG(0x00000080)
#define SI_OWNER_RECURSE __MSABI_LONG(0x00000100)
#define SI_NO_ACL_PROTECT __MSABI_LONG(0x00000200)
#define SI_NO_TREE_APPLY __MSABI_LONG(0x00000400)
#define SI_PAGE_TITLE __MSABI_LONG(0x00000800)
#define SI_SERVER_IS_DC __MSABI_LONG(0x00001000)
#define SI_RESET_DACL_TREE __MSABI_LONG(0x00004000)
#define SI_RESET_SACL_TREE __MSABI_LONG(0x00008000)
#define SI_OBJECT_GUID __MSABI_LONG(0x00010000)
#define SI_EDIT_EFFECTIVE __MSABI_LONG(0x00020000)
#define SI_RESET_DACL __MSABI_LONG(0x00040000)
#define SI_RESET_SACL __MSABI_LONG(0x00080000)
#define SI_RESET_OWNER __MSABI_LONG(0x00100000)
#define SI_NO_ADDITIONAL_PERMISSION __MSABI_LONG(0x00200000)
#if NTDDI_VERSION >= 0x06000000
#define SI_VIEW_ONLY __MSABI_LONG(0x00400000)
#define SI_PERMS_ELEVATION_REQUIRED __MSABI_LONG(0x01000000)
#define SI_AUDITS_ELEVATION_REQUIRED __MSABI_LONG(0x02000000)
#define SI_OWNER_ELEVATION_REQUIRED __MSABI_LONG(0x04000000)
#endif
#if NTDDI_VERSION >= 0x06020000
#define SI_SCOPE_ELEVATION_REQUIRED __MSABI_LONG(0x08000000)
#endif
#define SI_MAY_WRITE __MSABI_LONG(0x10000000)
#if NTDDI_VERSION >= 0x06020000
#define SI_ENABLE_EDIT_ATTRIBUTE_CONDITION __MSABI_LONG(0x20000000)
#define SI_ENABLE_CENTRAL_POLICY __MSABI_LONG(0x40000000)
#define SI_DISABLE_DENY_ACE __MSABI_LONG(0x80000000)
#endif
#define SI_EDIT_ALL (SI_EDIT_PERMS | SI_EDIT_OWNER | SI_EDIT_AUDITS)
typedef struct _SI_ACCESS {
const GUID *pguid;
ACCESS_MASK mask;
LPCWSTR pszName;
DWORD dwFlags;
} SI_ACCESS, *PSI_ACCESS;
#define SI_ACCESS_SPECIFIC __MSABI_LONG(0x00010000)
#define SI_ACCESS_GENERAL __MSABI_LONG(0x00020000)
#define SI_ACCESS_CONTAINER __MSABI_LONG(0x00040000)
#define SI_ACCESS_PROPERTY __MSABI_LONG(0x00080000)
typedef struct _SI_INHERIT_TYPE {
const GUID *pguid;
ULONG dwFlags;
LPCWSTR pszName;
} SI_INHERIT_TYPE, *PSI_INHERIT_TYPE;
typedef enum _SI_PAGE_TYPE {
SI_PAGE_PERM=0,
SI_PAGE_ADVPERM,
SI_PAGE_AUDIT,
SI_PAGE_OWNER,
SI_PAGE_EFFECTIVE
#if NTDDI_VERSION >= 0x06000000
, SI_PAGE_TAKEOWNERSHIP
#endif
#if NTDDI_VERSION >= 0x06020000
, SI_PAGE_SHARE
#endif
} SI_PAGE_TYPE;
typedef enum _SI_PAGE_ACTIVATED {
SI_SHOW_DEFAULT=0,
SI_SHOW_PERM_ACTIVATED,
SI_SHOW_AUDIT_ACTIVATED,
SI_SHOW_OWNER_ACTIVATED,
SI_SHOW_EFFECTIVE_ACTIVATED,
SI_SHOW_SHARE_ACTIVATED,
SI_SHOW_CENTRAL_POLICY_ACTIVATED,
} SI_PAGE_ACTIVATED;
#define GET_PAGE_TYPE(X) (UINT) ((X) &0x0000ffff)
#define GET_ACTIVATION_TYPE(Y) (UINT) (((Y) >> 16) &0x0000ffff)
#define COMBINE_PAGE_ACTIVATION(X, Y) (UINT) (((Y) << 16) | X)
#define DOBJ_RES_CONT __MSABI_LONG(0x00000001)
#define DOBJ_RES_ROOT __MSABI_LONG(0x00000002)
#define DOBJ_VOL_NTACLS __MSABI_LONG(0x00000004)
#define DOBJ_COND_NTACLS __MSABI_LONG(0x00000008)
#define DOBJ_RIBBON_LAUNCH __MSABI_LONG(0x00000010)
#define PSPCB_SI_INITDIALOG (WM_USER + 1)
#undef INTERFACE
#define INTERFACE ISecurityInformation
DECLARE_INTERFACE_IID_ (ISecurityInformation, IUnknown, "965FC360-16FF-11d0-91CB-00AA00BBB723") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD (GetObjectInformation) (THIS_ PSI_OBJECT_INFO pObjectInfo) PURE;
STDMETHOD (GetSecurity) (THIS_ SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR *ppSecurityDescriptor, WINBOOL fDefault) PURE;
STDMETHOD (SetSecurity) (THIS_ SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor) PURE;
STDMETHOD (GetAccessRights) (THIS_ const GUID *pguidObjectType, DWORD dwFlags, PSI_ACCESS *ppAccess, ULONG *pcAccesses, ULONG *piDefaultAccess) PURE;
STDMETHOD (MapGeneric) (THIS_ const GUID *pguidObjectType, UCHAR *pAceFlags, ACCESS_MASK *pMask) PURE;
STDMETHOD (GetInheritTypes) (THIS_ PSI_INHERIT_TYPE *ppInheritTypes, ULONG *pcInheritTypes) PURE;
STDMETHOD (PropertySheetPageCallback) (THIS_ HWND hwnd, UINT uMsg, SI_PAGE_TYPE uPage) PURE;
};
typedef ISecurityInformation *LPSECURITYINFO;
#undef INTERFACE
#define INTERFACE ISecurityInformation2
DECLARE_INTERFACE_IID_ (ISecurityInformation2, IUnknown, "c3ccfdb4-6f88-11d2-a3ce-00c04fb1782a") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD_ (WINBOOL, IsDaclCanonical) (THIS_ PACL pDacl) PURE;
STDMETHOD (LookupSids) (THIS_ ULONG cSids, PSID *rgpSids, LPDATAOBJECT *ppdo) PURE;
};
typedef ISecurityInformation2 *LPSECURITYINFO2;
#define CFSTR_ACLUI_SID_INFO_LIST TEXT ("CFSTR_ACLUI_SID_INFO_LIST")
typedef struct _SID_INFO {
PSID pSid;
PWSTR pwzCommonName;
PWSTR pwzClass;
PWSTR pwzUPN;
} SID_INFO, *PSID_INFO;
typedef struct _SID_INFO_LIST {
ULONG cItems;
SID_INFO aSidInfo[ANYSIZE_ARRAY];
} SID_INFO_LIST, *PSID_INFO_LIST;
#undef INTERFACE
#define INTERFACE IEffectivePermission
DECLARE_INTERFACE_IID_ (IEffectivePermission, IUnknown, "3853DC76-9F35-407c-88A1-D19344365FBC") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD (GetEffectivePermission) (THIS_ const GUID *pguidObjectType, PSID pUserSid, LPCWSTR pszServerName, PSECURITY_DESCRIPTOR pSD, POBJECT_TYPE_LIST *ppObjectTypeList, ULONG *pcObjectTypeListLength, PACCESS_MASK *ppGrantedAccessList, ULONG *pcGrantedAccessListLength) PURE;
};
typedef IEffectivePermission *LPEFFECTIVEPERMISSION;
#undef INTERFACE
#define INTERFACE ISecurityObjectTypeInfo
DECLARE_INTERFACE_IID_ (ISecurityObjectTypeInfo, IUnknown, "FC3066EB-79EF-444b-9111-D18A75EBF2FA") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD (GetInheritSource) (SECURITY_INFORMATION si, PACL pACL, PINHERITED_FROM *ppInheritArray) PURE;
};
typedef ISecurityObjectTypeInfo *LPSecurityObjectTypeInfo;
#if NTDDI_VERSION >= 0x06000000
#undef INTERFACE
#define INTERFACE ISecurityInformation3
DECLARE_INTERFACE_IID_ (ISecurityInformation3, IUnknown, "E2CDC9CC-31BD-4f8f-8C8B-B641AF516A1A") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD (GetFullResourceName) (THIS_ LPWSTR *ppszResourceName) PURE;
STDMETHOD (OpenElevatedEditor) (THIS_ HWND hWnd, SI_PAGE_TYPE uPage) PURE;
};
typedef ISecurityInformation3 *LPSECURITYINFO3;
#endif
#if NTDDI_VERSION >= 0x06020000
typedef struct _SECURITY_OBJECT {
PWSTR pwszName;
PVOID pData;
DWORD cbData;
PVOID pData2;
DWORD cbData2;
DWORD Id;
BOOLEAN fWellKnown;
} SECURITY_OBJECT, *PSECURITY_OBJECT;
#define SECURITY_OBJECT_ID_OBJECT_SD 1
#define SECURITY_OBJECT_ID_SHARE 2
#define SECURITY_OBJECT_ID_CENTRAL_POLICY 3
#define SECURITY_OBJECT_ID_CENTRAL_ACCESS_RULE 4
typedef struct _EFFPERM_RESULT_LIST {
BOOLEAN fEvaluated;
ULONG cObjectTypeListLength;
OBJECT_TYPE_LIST *pObjectTypeList;
ACCESS_MASK *pGrantedAccessList;
} EFFPERM_RESULT_LIST, *PEFFPERM_RESULT_LIST;
#undef INTERFACE
#define INTERFACE ISecurityInformation4
DECLARE_INTERFACE_IID_ (ISecurityInformation4, IUnknown, "EA961070-CD14-4621-ACE4-F63C03E583E4") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD (GetSecondarySecurity) (THIS_ PSECURITY_OBJECT *pSecurityObjects, PULONG pSecurityObjectCount) PURE;
};
typedef ISecurityInformation4 *LPSECURITYINFO4;
#undef INTERFACE
#define INTERFACE IEffectivePermission
DECLARE_INTERFACE_IID_ (IEffectivePermission2, IUnknown, "941FABCA-DD47-4FCA-90BB-B0E10255F20D") {
STDMETHOD (QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
STDMETHOD_ (ULONG, Release) (THIS) PURE;
STDMETHOD (ComputeEffectivePermissionWithSecondarySecurity) (THIS_ PSID pSid, PSID pDeviceSid, PCWSTR pszServerName, PSECURITY_OBJECT pSecurityObjects, DWORD dwSecurityObjectCount, PTOKEN_GROUPS pUserGroups, PAUTHZ_SID_OPERATION pAuthzUserGroupsOperations, PTOKEN_GROUPS pDeviceGroups, PAUTHZ_SID_OPERATION pAuthzDeviceGroupsOperations, PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION pAuthzUserClaims, PAUTHZ_SECURITY_ATTRIBUTE_OPERATION pAuthzUserClaimsOperations, PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION pAuthzDeviceClaims, PAUTHZ_SECURITY_ATTRIBUTE_OPERATION pAuthzDeviceClaimsOperations, PEFFPERM_RESULT_LIST pEffpermResultLists);
};
typedef IEffectivePermission2 *LPEFFECTIVEPERMISSION2;
#endif
EXTERN_GUID (IID_ISecurityInformation, 0x965fc360, 0x16ff, 0x11d0, 0x91, 0xcb, 0x0, 0xaa, 0x0, 0xbb, 0xb7, 0x23);
EXTERN_GUID (IID_ISecurityInformation2, 0xc3ccfdb4, 0x6f88, 0x11d2, 0xa3, 0xce, 0x0, 0xc0, 0x4f, 0xb1, 0x78, 0x2a);
EXTERN_GUID (IID_IEffectivePermission, 0x3853dc76, 0x9f35, 0x407c, 0x88, 0xa1, 0xd1, 0x93, 0x44, 0x36, 0x5f, 0xbc);
EXTERN_GUID (IID_ISecurityObjectTypeInfo, 0xfc3066eb, 0x79ef, 0x444b, 0x91, 0x11, 0xd1, 0x8a, 0x75, 0xeb, 0xf2, 0xfa);
#if NTDDI_VERSION >= 0x06000000
EXTERN_GUID (IID_ISecurityInformation3, 0xe2cdc9cc, 0x31bd, 0x4f8f, 0x8c, 0x8b, 0xb6, 0x41, 0xaf, 0x51, 0x6a, 0x1a);
#endif
#if NTDDI_VERSION >= 0x06020000
EXTERN_GUID (IID_ISecurityInformation4, 0xea961070, 0xcd14, 0x4621, 0xac, 0xe4, 0xf6, 0x3c, 0x3, 0xe5, 0x83, 0xe4);
EXTERN_GUID (IID_IEffectivePermission2, 0x941fabca, 0xdd47, 0x4fca, 0x90, 0xbb, 0xb0, 0xe1, 0x2, 0x55, 0xf2, 0xd);
#endif
HPROPSHEETPAGE ACLUIAPI CreateSecurityPage (LPSECURITYINFO psi);
WINBOOL ACLUIAPI EditSecurity (HWND hwndOwner, LPSECURITYINFO psi);
#if NTDDI_VERSION >= 0x06000000
HRESULT ACLUIAPI EditSecurityAdvanced (HWND hwndOwner, LPSECURITYINFO psi, SI_PAGE_TYPE uSIPage);
#endif
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,154 @@
/*** Autogenerated by WIDL 1.6 from include/activation.idl - Do not edit ***/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif
#ifndef __activation_h__
#define __activation_h__
/* Forward declarations */
#ifndef __IActivationFactory_FWD_DEFINED__
#define __IActivationFactory_FWD_DEFINED__
typedef interface IActivationFactory IActivationFactory;
#endif
/* Headers for imported files */
#include <inspectable.h>
#ifdef __cplusplus
extern "C" {
#endif
/*****************************************************************************
* IActivationFactory interface
*/
#ifndef __IActivationFactory_INTERFACE_DEFINED__
#define __IActivationFactory_INTERFACE_DEFINED__
DEFINE_GUID(IID_IActivationFactory, 0x00000035, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("00000035-0000-0000-c000-000000000046")
IActivationFactory : public IInspectable
{
virtual HRESULT STDMETHODCALLTYPE ActivateInstance(
IInspectable **instance) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IActivationFactory, 0x00000035, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46)
#endif
#else
typedef struct IActivationFactoryVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IActivationFactory* This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IActivationFactory* This);
ULONG (STDMETHODCALLTYPE *Release)(
IActivationFactory* This);
/*** IInspectable methods ***/
HRESULT (STDMETHODCALLTYPE *GetIids)(
IActivationFactory* This,
ULONG *iidCount,
IID **iids);
HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
IActivationFactory* This,
HSTRING *className);
HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
IActivationFactory* This,
TrustLevel *trustLevel);
/*** IActivationFactory methods ***/
HRESULT (STDMETHODCALLTYPE *ActivateInstance)(
IActivationFactory* This,
IInspectable **instance);
END_INTERFACE
} IActivationFactoryVtbl;
interface IActivationFactory {
CONST_VTBL IActivationFactoryVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IActivationFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IActivationFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IActivationFactory_Release(This) (This)->lpVtbl->Release(This)
/*** IInspectable methods ***/
#define IActivationFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
#define IActivationFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
#define IActivationFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
/*** IActivationFactory methods ***/
#define IActivationFactory_ActivateInstance(This,instance) (This)->lpVtbl->ActivateInstance(This,instance)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IActivationFactory_QueryInterface(IActivationFactory* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IActivationFactory_AddRef(IActivationFactory* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IActivationFactory_Release(IActivationFactory* This) {
return This->lpVtbl->Release(This);
}
/*** IInspectable methods ***/
static FORCEINLINE HRESULT IActivationFactory_GetIids(IActivationFactory* This,ULONG *iidCount,IID **iids) {
return This->lpVtbl->GetIids(This,iidCount,iids);
}
static FORCEINLINE HRESULT IActivationFactory_GetRuntimeClassName(IActivationFactory* This,HSTRING *className) {
return This->lpVtbl->GetRuntimeClassName(This,className);
}
static FORCEINLINE HRESULT IActivationFactory_GetTrustLevel(IActivationFactory* This,TrustLevel *trustLevel) {
return This->lpVtbl->GetTrustLevel(This,trustLevel);
}
/*** IActivationFactory methods ***/
static FORCEINLINE HRESULT IActivationFactory_ActivateInstance(IActivationFactory* This,IInspectable **instance) {
return This->lpVtbl->ActivateInstance(This,instance);
}
#endif
#endif
#endif
HRESULT STDMETHODCALLTYPE IActivationFactory_ActivateInstance_Proxy(
IActivationFactory* This,
IInspectable **instance);
void __RPC_STUB IActivationFactory_ActivateInstance_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IActivationFactory_INTERFACE_DEFINED__ */
/* Begin additional prototypes for all interfaces */
/* End additional prototypes */
#ifdef __cplusplus
}
#endif
#endif /* __activation_h__ */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,16 @@
/**"
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#define CFSTR_VFW_FILTERLIST "Video for Windows 4 Filters"
typedef struct tagVFW_FILTERLIST {
UINT cFilters;
CLSID aClsId[1];
} VFW_FILTERLIST;
#endif

View File

@ -0,0 +1,17 @@
/**"
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#include "iads.h"
#include "adshlp.h"
#include "adserr.h"
#include "adsiid.h"
#include "adssts.h"
#include "adsnms.h"
#include "adsdb.h"
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,82 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef ADC_INCLUDED
#define ADC_INCLUDED
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#undef ADCDECLSPEC
#define ADCDECLSPEC __declspec (selectany)
extern const ADCDECLSPEC CLSID CLSID_FoxRowset = { 0x3ff292b6, 0xb204, 0x11cf,{ 0x8d, 0x23, 0, 0xaa, 0, 0x5f, 0xfe, 0x58 } };
extern const ADCDECLSPEC GUID DBPROPSET_ADC = { 0xb68e3cc1, 0x6deb, 0x11d0,{ 0x8d, 0xf6, 0x00, 0xaa, 0x00, 0x5f, 0xfe, 0x58 } };
extern const ADCDECLSPEC GUID IID_IAsyncAllowed = { 0xf5f2893a, 0xba9e, 0x11d0,{ 0xab, 0xb9, 0x0, 0xc0, 0x4f, 0xc2, 0x9f, 0x8f } };
extern const ADCDECLSPEC IID IID_IRowsetADCExtensions = { 0xf17324c4, 0x68e0, 0x11d0,{ 0xad, 0x45, 0x00, 0xc0, 0x4f, 0xc2, 0x98, 0x63 } };
extern const ADCDECLSPEC IID IID_IUpdateInfo = { 0xa0385420, 0x62b8, 0x11d1,{ 0x9a, 0x6, 0x0, 0xa0, 0xc9, 0x3, 0xaa, 0x45 } };
extern const ADCDECLSPEC IID IID_IRowsetSynchronize = { 0x1be41e60, 0x807a, 0x11d1,{ 0x9a, 0x14, 0x0, 0xa0, 0xc9, 0x3, 0xaa, 0x45 } };
extern const ADCDECLSPEC IID IID_IRowsetProperties = { 0x1e837070, 0xbcfc, 0x11d1,{ 0x9a, 0x2c, 0x0, 0xa0, 0xc9, 0x3, 0xaa, 0x45 } };
enum ADCPROPENUM {
DBPROP_ADC_ASYNCHFETCHSIZE = 3,
DBPROP_ADC_BATCHSIZE = 4,
DBPROP_ADC_UPDATECRITERIA = 5,
DBPROP_ADC_ASYNCHPREFETCHSIZE = 7,
DBPROP_ADC_ASYNCHTHREADPRIORITY = 8,
DBPROP_ADC_CACHECHILDROWS = 9,
DBPROP_ADC_MAINTAINCHANGESTATUS = 10,
DBPROP_ADC_AUTORECALC = 11,
DBPROP_ADC_UNIQUETABLE = 13,
DBPROP_ADC_UNIQUESCHEMA = 14,
DBPROP_ADC_UNIQUECATALOG = 15,
DBPROP_ADC_CUSTOMRESYNCH = 16,
DBPROP_ADC_CEVER = 17,
DBPROP_ADC_RESHAPENAME = 18,
DBPROP_ADC_UPDATERESYNC = 19,
DBPROP_ADC_BACKINGSTORE = 21,
DBPROP_ADC_RELEASESHAPEONDISCONNECT = 22
};
#ifndef _COMMON_ADC_AND_ADO_PROPS_
#define _COMMON_ADC_AND_ADO_PROPS_
enum ADCPROP_UPDATECRITERIA_ENUM {
adCriteriaKey = 0,
adCriteriaAllCols = 1,
adCriteriaUpdCols = 2,
adCriteriaTimeStamp = 3
};
enum ADCPROP_ASYNCTHREADPRIORITY_ENUM {
adPriorityLowest = 1,
adPriorityBelowNormal = 2,
adPriorityNormal = 3,
adPriorityAboveNormal = 4,
adPriorityHighest = 5
};
enum ADCPROP_UPDATERESYNC_ENUM {
adResyncNone = 0,
adResyncAutoIncrement = 0x1,
adResyncConflicts = 0x2,
adResyncUpdates = 0x4,
adResyncInserts = 0x8,
adResyncAll = 0x0f
};
enum ADCPROP_AUTORECALC_ENUM {
adRecalcUpFront = 0,
adRecalcAlways = 1
};
#endif
enum FOXROWSETPROPENUM {
DBPROP_FOXTABLENAME = 0xeeff
};
#endif
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,172 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#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 __admex_h__
#define __admex_h__
#ifndef __IMSAdminReplication_FWD_DEFINED__
#define __IMSAdminReplication_FWD_DEFINED__
typedef struct IMSAdminReplication IMSAdminReplication;
#endif
#ifndef __IMSAdminCryptoCapabilities_FWD_DEFINED__
#define __IMSAdminCryptoCapabilities_FWD_DEFINED__
typedef struct IMSAdminCryptoCapabilities IMSAdminCryptoCapabilities;
#endif
#include "unknwn.h"
#include "objidl.h"
#include "ocidl.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 _ADMEX_IADM_
#define _ADMEX_IADM_
DEFINE_GUID(IID_IMSAdminReplication,0xc804d980,0xebec,0x11d0,0xa6,0xa0,0x0,0xa0,0xc9,0x22,0xe7,0x52);
DEFINE_GUID(IID_IMSAdminCryptoCapabilities,0x78b64540,0xf26d,0x11d0,0xa6,0xa3,0x0,0xa0,0xc9,0x22,0xe7,0x52);
DEFINE_GUID(CLSID_MSCryptoAdmEx,0x9f0bd3a0,0xec01,0x11d0,0xa6,0xa0,0x0,0xa0,0xc9,0x22,0xe7,0x52);
extern RPC_IF_HANDLE __MIDL_itf_admex_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_admex_0000_v0_0_s_ifspec;
#ifndef __IMSAdminReplication_INTERFACE_DEFINED__
#define __IMSAdminReplication_INTERFACE_DEFINED__
EXTERN_C const IID IID_IMSAdminReplication;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IMSAdminReplication : public IUnknown {
public:
virtual HRESULT WINAPI GetSignature(DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize) = 0;
virtual HRESULT WINAPI Propagate(DWORD dwBufferSize,unsigned char *pszBuffer) = 0;
virtual HRESULT WINAPI Propagate2(DWORD dwBufferSize,unsigned char *pszBuffer,DWORD dwSignatureMismatch) = 0;
virtual HRESULT WINAPI Serialize(DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize) = 0;
virtual HRESULT WINAPI DeSerialize(DWORD dwBufferSize,unsigned char *pbBuffer) = 0;
};
#else
typedef struct IMSAdminReplicationVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IMSAdminReplication *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IMSAdminReplication *This);
ULONG (WINAPI *Release)(IMSAdminReplication *This);
HRESULT (WINAPI *GetSignature)(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
HRESULT (WINAPI *Propagate)(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pszBuffer);
HRESULT (WINAPI *Propagate2)(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pszBuffer,DWORD dwSignatureMismatch);
HRESULT (WINAPI *Serialize)(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
HRESULT (WINAPI *DeSerialize)(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pbBuffer);
END_INTERFACE
} IMSAdminReplicationVtbl;
struct IMSAdminReplication {
CONST_VTBL struct IMSAdminReplicationVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMSAdminReplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IMSAdminReplication_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IMSAdminReplication_Release(This) (This)->lpVtbl->Release(This)
#define IMSAdminReplication_GetSignature(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize) (This)->lpVtbl->GetSignature(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize)
#define IMSAdminReplication_Propagate(This,dwBufferSize,pszBuffer) (This)->lpVtbl->Propagate(This,dwBufferSize,pszBuffer)
#define IMSAdminReplication_Propagate2(This,dwBufferSize,pszBuffer,dwSignatureMismatch) (This)->lpVtbl->Propagate2(This,dwBufferSize,pszBuffer,dwSignatureMismatch)
#define IMSAdminReplication_Serialize(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize) (This)->lpVtbl->Serialize(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize)
#define IMSAdminReplication_DeSerialize(This,dwBufferSize,pbBuffer) (This)->lpVtbl->DeSerialize(This,dwBufferSize,pbBuffer)
#endif
#endif
HRESULT WINAPI IMSAdminReplication_GetSignature_Proxy(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
void __RPC_STUB IMSAdminReplication_GetSignature_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminReplication_Propagate_Proxy(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pszBuffer);
void __RPC_STUB IMSAdminReplication_Propagate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminReplication_Propagate2_Proxy(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pszBuffer,DWORD dwSignatureMismatch);
void __RPC_STUB IMSAdminReplication_Propagate2_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminReplication_Serialize_Proxy(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
void __RPC_STUB IMSAdminReplication_Serialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminReplication_DeSerialize_Proxy(IMSAdminReplication *This,DWORD dwBufferSize,unsigned char *pbBuffer);
void __RPC_STUB IMSAdminReplication_DeSerialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
extern RPC_IF_HANDLE __MIDL_itf_admex_0255_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_admex_0255_v0_0_s_ifspec;
#ifndef __IMSAdminCryptoCapabilities_INTERFACE_DEFINED__
#define __IMSAdminCryptoCapabilities_INTERFACE_DEFINED__
EXTERN_C const IID IID_IMSAdminCryptoCapabilities;
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IMSAdminCryptoCapabilities : public IUnknown {
public:
virtual HRESULT WINAPI GetProtocols(DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize) = 0;
virtual HRESULT WINAPI GetMaximumCipherStrength(LPDWORD pdwMaximumCipherStrength) = 0;
virtual HRESULT WINAPI GetRootCertificates(DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize) = 0;
virtual HRESULT WINAPI GetSupportedAlgs(DWORD dwBufferSize,DWORD *pbBuffer,DWORD *pdwMDRequiredBufferSize) = 0;
virtual HRESULT WINAPI SetCAList(DWORD dwBufferSize,unsigned char *pbBuffer) = 0;
};
#else
typedef struct IMSAdminCryptoCapabilitiesVtbl {
BEGIN_INTERFACE
HRESULT (WINAPI *QueryInterface)(IMSAdminCryptoCapabilities *This,REFIID riid,void **ppvObject);
ULONG (WINAPI *AddRef)(IMSAdminCryptoCapabilities *This);
ULONG (WINAPI *Release)(IMSAdminCryptoCapabilities *This);
HRESULT (WINAPI *GetProtocols)(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
HRESULT (WINAPI *GetMaximumCipherStrength)(IMSAdminCryptoCapabilities *This,LPDWORD pdwMaximumCipherStrength);
HRESULT (WINAPI *GetRootCertificates)(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
HRESULT (WINAPI *GetSupportedAlgs)(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,DWORD *pbBuffer,DWORD *pdwMDRequiredBufferSize);
HRESULT (WINAPI *SetCAList)(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,unsigned char *pbBuffer);
END_INTERFACE
} IMSAdminCryptoCapabilitiesVtbl;
struct IMSAdminCryptoCapabilities {
CONST_VTBL struct IMSAdminCryptoCapabilitiesVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMSAdminCryptoCapabilities_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IMSAdminCryptoCapabilities_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IMSAdminCryptoCapabilities_Release(This) (This)->lpVtbl->Release(This)
#define IMSAdminCryptoCapabilities_GetProtocols(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize) (This)->lpVtbl->GetProtocols(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize)
#define IMSAdminCryptoCapabilities_GetMaximumCipherStrength(This,pdwMaximumCipherStrength) (This)->lpVtbl->GetMaximumCipherStrength(This,pdwMaximumCipherStrength)
#define IMSAdminCryptoCapabilities_GetRootCertificates(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize) (This)->lpVtbl->GetRootCertificates(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize)
#define IMSAdminCryptoCapabilities_GetSupportedAlgs(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize) (This)->lpVtbl->GetSupportedAlgs(This,dwBufferSize,pbBuffer,pdwMDRequiredBufferSize)
#define IMSAdminCryptoCapabilities_SetCAList(This,dwBufferSize,pbBuffer) (This)->lpVtbl->SetCAList(This,dwBufferSize,pbBuffer)
#endif
#endif
HRESULT WINAPI IMSAdminCryptoCapabilities_GetProtocols_Proxy(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
void __RPC_STUB IMSAdminCryptoCapabilities_GetProtocols_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminCryptoCapabilities_GetMaximumCipherStrength_Proxy(IMSAdminCryptoCapabilities *This,LPDWORD pdwMaximumCipherStrength);
void __RPC_STUB IMSAdminCryptoCapabilities_GetMaximumCipherStrength_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminCryptoCapabilities_GetRootCertificates_Proxy(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,unsigned char *pbBuffer,DWORD *pdwMDRequiredBufferSize);
void __RPC_STUB IMSAdminCryptoCapabilities_GetRootCertificates_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminCryptoCapabilities_GetSupportedAlgs_Proxy(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,DWORD *pbBuffer,DWORD *pdwMDRequiredBufferSize);
void __RPC_STUB IMSAdminCryptoCapabilities_GetSupportedAlgs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
HRESULT WINAPI IMSAdminCryptoCapabilities_SetCAList_Proxy(IMSAdminCryptoCapabilities *This,DWORD dwBufferSize,unsigned char *pbBuffer);
void __RPC_STUB IMSAdminCryptoCapabilities_SetCAList_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
#endif
#endif
extern RPC_IF_HANDLE __MIDL_itf_admex_0256_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_admex_0256_v0_0_s_ifspec;
#ifdef __cplusplus
}
#endif
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,36 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _ADODEF_H_
#define _ADODEF_H_
#define ADO_MAJOR 6
#define ADOR_MAJOR 6
#define ADOX_MAJOR 6
#define ADOMD_MAJOR 6
#define JRO_MAJOR 2
#define ADO_MINOR 1
#define ADOR_MINOR 0
#define ADOX_MINOR 0
#define ADOMD_MINOR 0
#define JRO_MINOR 6
#define ADO_VERSION ADO_MAJOR##.##ADO_MINOR
#define ADOR_VERSION ADOR_MAJOR##.##ADOR_MINOR
#define ADOX_VERSION ADOX_MAJOR##.##ADOX_MINOR
#define ADOMD_VERSION ADOMD_MAJOR##.##ADOMD_MINOR
#define JRO_VERSION JRO_MAJOR##.##JRO_MINOR
#define ADO_LIBRARYNAME "Microsoft ActiveX Data Objects 6.1 Library"
#define ADOR_LIBRARYNAME "Microsoft ActiveX Data Objects Recordset 6.0 Library"
#define ADOX_LIBRARYNAME "Microsoft ADO Ext. 6.0 for DDL and Security"
#define ADOMD_LIBRARYNAME "Microsoft ActiveX Data Objects (Multi-dimensional) 6.0 Library"
#define JRO_LIBRARYNAME "Microsoft Jet and Replication Objects 2.6 Library"
#define ADOMD_TYPELIB_UUID uuid(22813728-8bd3-11d0-B4EF-00a0c9138ca4)
#define JRO_TYPELIB_UUID uuid(AC3B8B4C-B6CA-11d1-9f31-00c04fc29d52)
#endif

View File

@ -0,0 +1,951 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef INCLUDING_ADOGUIDS
#error Include via adoguids.h header only
#endif
#if !defined (NTDDI_VERSION) || (NTDDI_VERSION < 0x06020000)
#include "adogpool_backcompat.h"
#else
#define MAXAVAILABLEGUID 0x570
#define MAXAVAILABLEGUIDALL 0x57f
#define LIBID_ADO LIBID_ADO60
#define LIBID_ADOR LIBID_ADOR20
#define LIBID_CADO10 LIBID_ADO20
#define LIBID_CADOR10 LIBID_ADOR20
#define CLSID_ADO GUID_BUILDER (CLSID_ADO, 0000051a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOCommand GUID_BUILDER (CLSID_CADOCommand, 00000507, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOConnection GUID_BUILDER (CLSID_CADOConnection, 00000514, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOError GUID_BUILDER (CLSID_CADOError, 00000541, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOErrorLookup GUID_BUILDER (CLSID_CADOErrorLookup, 00000542, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOField GUID_BUILDER (CLSID_CADOField, 0000053a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOParameter GUID_BUILDER (CLSID_CADOParameter, 0000050b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADORecField GUID_BUILDER (CLSID_CADORecField, 00000561, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADORecord GUID_BUILDER (CLSID_CADORecord, 00000560, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADORecordset GUID_BUILDER (CLSID_CADORecordset, 00000535, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOStream GUID_BUILDER (CLSID_CADOStream, 00000566, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID__ADO GUID_BUILDER (IID__ADO, 00000534, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_ConnectionEvents GUID_BUILDER (IID_ConnectionEvents, 00001400, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_ConnectionEventsVt GUID_BUILDER (IID_ConnectionEventsVt, 00001402, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumAffect GUID_BUILDER (IID_EnumAffect, 00000543, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCEResync GUID_BUILDER (IID_EnumCEResync, 00000553, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCommandType GUID_BUILDER (IID_EnumCommandType, 0000052e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCompare GUID_BUILDER (IID_EnumCompare, 00000545, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumConnectMode GUID_BUILDER (IID_EnumConnectMode, 00000521, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumConnectOption GUID_BUILDER (IID_EnumConnectOption, 00000541, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumConnectPrompt GUID_BUILDER (IID_EnumConnectPrompt, 00000520, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCopyRecordOptions GUID_BUILDER (IID_EnumCopyRecordOptions, 00000574, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCursorLocation GUID_BUILDER (IID_EnumCursorLocation, 0000052f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCursorOption GUID_BUILDER (IID_EnumCursorOption, 0000051c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCursorType GUID_BUILDER (IID_EnumCursorType, 0000051b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumDataType GUID_BUILDER (IID_EnumDataType, 0000051f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumEditMode GUID_BUILDER (IID_EnumEditMode, 00000526, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumErrorValue GUID_BUILDER (IID_EnumErrorValue, 0000052a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumEventReason GUID_BUILDER (IID_EnumEventReason, 00000531, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumEventStatus GUID_BUILDER (IID_EnumEventStatus, 00000530, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumExecuteOption GUID_BUILDER (IID_EnumExecuteOption, 0000051e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFieldAttribute GUID_BUILDER (IID_EnumFieldAttribute, 00000525, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFieldStatus GUID_BUILDER (IID_EnumFieldStatus, 0000057e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFilterCriteria GUID_BUILDER (IID_EnumFilterCriteria, 0000052d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFilterGroup GUID_BUILDER (IID_EnumFilterGroup, 00000546, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumGetRowsOption GUID_BUILDER (IID_EnumGetRowsOption, 00000542, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumIsolationLevel GUID_BUILDER (IID_EnumIsolationLevel, 00000523, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumLineSeparator GUID_BUILDER (IID_EnumLineSeparator, 00000577, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumLockType GUID_BUILDER (IID_EnumLockType, 0000051d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumMarshalOptions GUID_BUILDER (IID_EnumMarshalOptions, 00000540, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumMode GUID_BUILDER (IID_EnumMode, 00000575, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumMoveRecordOptions GUID_BUILDER (IID_EnumMoveRecordOptions, 00000573, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumObjectState GUID_BUILDER (IID_EnumObjectState, 00000532, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumParameterAttributes GUID_BUILDER (IID_EnumParameterAttributes, 0000052b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumParameterDirection GUID_BUILDER (IID_EnumParameterDirection, 0000052c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPersistFormat GUID_BUILDER (IID_EnumPersistFormat, 00000548, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPosition GUID_BUILDER (IID_EnumPosition, 00000528, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPrepareOption GUID_BUILDER (IID_EnumPrepareOption, 00000522, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPropertyAttributes GUID_BUILDER (IID_EnumPropertyAttributes, 00000529, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRDSAsyncThreadPriority GUID_BUILDER (IID_EnumRDSAsyncThreadPriority, 0000054b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRDSAutoRecalc GUID_BUILDER (IID_EnumRDSAutoRecalc, 00000554, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRDSUpdateCriteria GUID_BUILDER (IID_EnumRDSUpdateCriteria, 0000054a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordCreateOptions GUID_BUILDER (IID_EnumRecordCreateOptions, 00000570, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordOpenOptions GUID_BUILDER (IID_EnumRecordOpenOptions, 00000571, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordStatus GUID_BUILDER (IID_EnumRecordStatus, 00000527, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordType GUID_BUILDER (IID_EnumRecordType, 0000057d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumResync GUID_BUILDER (IID_EnumResync, 00000544, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSaveOptions GUID_BUILDER (IID_EnumSaveOptions, 0000057c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSchema GUID_BUILDER (IID_EnumSchema, 00000533, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSearchDirection GUID_BUILDER (IID_EnumSearchDirection, 00000547, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSeek GUID_BUILDER (IID_EnumSeek, 00000552, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStreamOpenOptions GUID_BUILDER (IID_EnumStreamOpenOptions, 0000057a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStreamType GUID_BUILDER (IID_EnumStreamType, 00000576, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStreamWrite GUID_BUILDER (IID_EnumStreamWrite, 0000057b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStringFormat GUID_BUILDER (IID_EnumStringFormat, 00000549, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumXactAttribute GUID_BUILDER (IID_EnumXactAttribute, 00000524, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADO10StdObject GUID_BUILDER (IID_IADO10StdObject, 00000534, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOClass GUID_BUILDER (IID_IADOClass, 00000560, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCollection GUID_BUILDER (IID_IADOCollection, 00000512, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommand GUID_BUILDER (IID_IADOCommand, 986761e8, 7269, 4890, AA, 65, AD, 7c, 03, 69, 7a, 6d)
#define IID_IADOCommand15 GUID_BUILDER (IID_IADOCommand15, 00001508, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommand25 GUID_BUILDER (IID_IADOCommand25, 0000154e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommandConstruction GUID_BUILDER (IID_IADOCommandConstruction, 00000517, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommands GUID_BUILDER (IID_IADOCommands, 00000509, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnection GUID_BUILDER (IID_IADOConnection, 00001550, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnection15 GUID_BUILDER (IID_IADOConnection15, 00001515, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionConstruction GUID_BUILDER (IID_IADOConnectionConstruction, 00000551, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionConstruction15 GUID_BUILDER (IID_IADOConnectionConstruction15, 00000516, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionEvents GUID_BUILDER (IID_IADOConnectionEvents, 00001400, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionEventsVt GUID_BUILDER (IID_IADOConnectionEventsVt, 00001402, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnections GUID_BUILDER (IID_IADOConnections, 00000518, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCustomError GUID_BUILDER (IID_IADOCustomError, 00000519, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADODynaCollection GUID_BUILDER (IID_IADODynaCollection, 00000513, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOError GUID_BUILDER (IID_IADOError, 00000500, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOErrors GUID_BUILDER (IID_IADOErrors, 00000501, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField GUID_BUILDER (IID_IADOField, 00001569, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField15 GUID_BUILDER (IID_IADOField15, 00001505, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField20 GUID_BUILDER (IID_IADOField20, 0000154c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField25 GUID_BUILDER (IID_IADOField25, 00001569, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOFields GUID_BUILDER (IID_IADOFields, 00001564, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOFields15 GUID_BUILDER (IID_IADOFields15, 00001506, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOFields20 GUID_BUILDER (IID_IADOFields20, 0000154d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOParameter GUID_BUILDER (IID_IADOParameter, 0000150c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOParameters GUID_BUILDER (IID_IADOParameters, 0000150d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOProperties GUID_BUILDER (IID_IADOProperties, 00000504, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOProperty GUID_BUILDER (IID_IADOProperty, 00000503, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecord GUID_BUILDER (IID_IADORecord, 00001562, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecord25 GUID_BUILDER (IID_IADORecord25, 00001562, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordConstruction GUID_BUILDER (IID_IADORecordConstruction, 00000567, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordGroup GUID_BUILDER (IID_IADORecordGroup, 00000511, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset GUID_BUILDER (IID_IADORecordset, 00001556, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset15 GUID_BUILDER (IID_IADORecordset15, 0000150e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset20 GUID_BUILDER (IID_IADORecordset20, 0000154f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset21 GUID_BUILDER (IID_IADORecordset21, 00001555, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset25 GUID_BUILDER (IID_IADORecordset25, 00001556, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsetConstruction GUID_BUILDER (IID_IADORecordsetConstruction, 00001283, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsetEvents GUID_BUILDER (IID_IADORecordsetEvents, 00001266, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsetEventsVt GUID_BUILDER (IID_IADORecordsetEventsVt, 00001403, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsets GUID_BUILDER (IID_IADORecordsets, 0000050f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOStream GUID_BUILDER (IID_IADOStream, 00001565, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOStreamConstruction GUID_BUILDER (IID_IADOStreamConstruction, 00000568, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_ICMemStreamProperties GUID_BUILDER (IID_ICMemStreamProperties, FF184014, B5D3, 4310, AB, F0, 9b, 70, 45, A2, CF, 17)
#define IID_IPrivErrors GUID_BUILDER (IID_IPrivErrors, 00000502, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO20 GUID_BUILDER (LIBID_ADO20, 00000200, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO21 GUID_BUILDER (LIBID_ADO21, 00000201, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO25 GUID_BUILDER (LIBID_ADO25, 00000205, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO26 GUID_BUILDER (LIBID_ADO26, 00000206, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO27 GUID_BUILDER (LIBID_ADO27, EF53050B, 882e, 4776, B6, 43, ED, A4, 72, E8, E3, F2)
#define LIBID_ADO28 GUID_BUILDER (LIBID_ADO28, 2a75196c, D9EB, 4129, B8, 03, 93, 13, 27, F7, 2d, 5c)
#define LIBID_ADO60 GUID_BUILDER (LIBID_ADO60, B691E011, 1797, 432e, 90, 7a, 4d, 8c, 69, 33, 91, 29)
#define LIBID_ADOR20 GUID_BUILDER (LIBID_ADOR20, 00000300, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADOR25 GUID_BUILDER (LIBID_ADOR25, 00000305, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#ifdef IMMEDIATE_GUID_USE
CLSID_ADO;
CLSID_CADOCommand;
CLSID_CADOConnection;
CLSID_CADOError;
CLSID_CADOErrorLookup;
CLSID_CADOField;
CLSID_CADOParameter;
CLSID_CADORecField;
CLSID_CADORecord;
CLSID_CADORecordset;
CLSID_CADOStream;
IID__ADO;
IID_ConnectionEvents;
IID_ConnectionEventsVt;
IID_EnumAffect;
IID_EnumCEResync;
IID_EnumCommandType;
IID_EnumCompare;
IID_EnumConnectMode;
IID_EnumConnectOption;
IID_EnumConnectPrompt;
IID_EnumCopyRecordOptions;
IID_EnumCursorLocation;
IID_EnumCursorOption;
IID_EnumCursorType;
IID_EnumDataType;
IID_EnumEditMode;
IID_EnumErrorValue;
IID_EnumEventReason;
IID_EnumEventStatus;
IID_EnumExecuteOption;
IID_EnumFieldAttribute;
IID_EnumFieldStatus;
IID_EnumFilterCriteria;
IID_EnumFilterGroup;
IID_EnumGetRowsOption;
IID_EnumIsolationLevel;
IID_EnumLineSeparator;
IID_EnumLockType;
IID_EnumMarshalOptions;
IID_EnumMode;
IID_EnumMoveRecordOptions;
IID_EnumObjectState;
IID_EnumParameterAttributes;
IID_EnumParameterDirection;
IID_EnumPersistFormat;
IID_EnumPosition;
IID_EnumPrepareOption;
IID_EnumPropertyAttributes;
IID_EnumRDSAsyncThreadPriority;
IID_EnumRDSAutoRecalc;
IID_EnumRDSUpdateCriteria;
IID_EnumRecordCreateOptions;
IID_EnumRecordOpenOptions;
IID_EnumRecordStatus;
IID_EnumRecordType;
IID_EnumResync;
IID_EnumSaveOptions;
IID_EnumSchema;
IID_EnumSearchDirection;
IID_EnumSeek;
IID_EnumStreamOpenOptions;
IID_EnumStreamType;
IID_EnumStreamWrite;
IID_EnumStringFormat;
IID_EnumXactAttribute;
IID_IADO10StdObject;
IID_IADOClass;
IID_IADOCollection;
IID_IADOCommand;
IID_IADOCommand15;
IID_IADOCommand25;
IID_IADOCommandConstruction;
IID_IADOCommands;
IID_IADOConnection;
IID_IADOConnection15;
IID_IADOConnectionConstruction;
IID_IADOConnectionConstruction15;
IID_IADOConnectionEvents;
IID_IADOConnectionEventsVt;
IID_IADOConnections;
IID_IADOCustomError;
IID_IADODynaCollection;
IID_IADOError;
IID_IADOErrors;
IID_IADOField;
IID_IADOField15;
IID_IADOField20;
IID_IADOField25;
IID_IADOFields;
IID_IADOFields15;
IID_IADOFields20;
IID_IADOParameter;
IID_IADOParameters;
IID_IADOProperties;
IID_IADOProperty;
IID_IADORecord;
IID_IADORecord25;
IID_IADORecordConstruction;
IID_IADORecordGroup;
IID_IADORecordset;
IID_IADORecordset15;
IID_IADORecordset20;
IID_IADORecordset21;
IID_IADORecordset25;
IID_IADORecordsetConstruction;
IID_IADORecordsetEvents;
IID_IADORecordsetEventsVt;
IID_IADORecordsets;
IID_IADOStream;
IID_IADOStreamConstruction;
IID_ICMemStreamProperties;
IID_IPrivErrors;
LIBID_ADO20;
LIBID_ADO21;
LIBID_ADO25;
LIBID_ADO26;
LIBID_ADO27;
LIBID_ADO28;
LIBID_ADO60;
LIBID_ADOR20;
LIBID_ADOR25;
#undef CLSID_ADO
#undef CLSID_CADOCommand
#undef CLSID_CADOConnection
#undef CLSID_CADOError
#undef CLSID_CADOErrorLookup
#undef CLSID_CADOField
#undef CLSID_CADOParameter
#undef CLSID_CADORecField
#undef CLSID_CADORecord
#undef CLSID_CADORecordset
#undef CLSID_CADOStream
#undef IID__ADO
#undef IID_ConnectionEvents
#undef IID_ConnectionEventsVt
#undef IID_EnumAffect
#undef IID_EnumCEResync
#undef IID_EnumCommandType
#undef IID_EnumCompare
#undef IID_EnumConnectMode
#undef IID_EnumConnectOption
#undef IID_EnumConnectPrompt
#undef IID_EnumCopyRecordOptions
#undef IID_EnumCursorLocation
#undef IID_EnumCursorOption
#undef IID_EnumCursorType
#undef IID_EnumDataType
#undef IID_EnumEditMode
#undef IID_EnumErrorValue
#undef IID_EnumEventReason
#undef IID_EnumEventStatus
#undef IID_EnumExecuteOption
#undef IID_EnumFieldAttribute
#undef IID_EnumFieldStatus
#undef IID_EnumFilterCriteria
#undef IID_EnumFilterGroup
#undef IID_EnumGetRowsOption
#undef IID_EnumIsolationLevel
#undef IID_EnumLineSeparator
#undef IID_EnumLockType
#undef IID_EnumMarshalOptions
#undef IID_EnumMode
#undef IID_EnumMoveRecordOptions
#undef IID_EnumObjectState
#undef IID_EnumParameterAttributes
#undef IID_EnumParameterDirection
#undef IID_EnumPersistFormat
#undef IID_EnumPosition
#undef IID_EnumPrepareOption
#undef IID_EnumPropertyAttributes
#undef IID_EnumRDSAsyncThreadPriority
#undef IID_EnumRDSAutoRecalc
#undef IID_EnumRDSUpdateCriteria
#undef IID_EnumRecordCreateOptions
#undef IID_EnumRecordOpenOptions
#undef IID_EnumRecordStatus
#undef IID_EnumRecordType
#undef IID_EnumResync
#undef IID_EnumSaveOptions
#undef IID_EnumSchema
#undef IID_EnumSearchDirection
#undef IID_EnumSeek
#undef IID_EnumStreamOpenOptions
#undef IID_EnumStreamType
#undef IID_EnumStreamWrite
#undef IID_EnumStringFormat
#undef IID_EnumXactAttribute
#undef IID_IADO10StdObject
#undef IID_IADOClass
#undef IID_IADOCollection
#undef IID_IADOCommand
#undef IID_IADOCommand15
#undef IID_IADOCommand25
#undef IID_IADOCommandConstruction
#undef IID_IADOCommands
#undef IID_IADOConnection
#undef IID_IADOConnection15
#undef IID_IADOConnectionConstruction
#undef IID_IADOConnectionConstruction15
#undef IID_IADOConnectionEvents
#undef IID_IADOConnectionEventsVt
#undef IID_IADOConnections
#undef IID_IADOCustomError
#undef IID_IADODynaCollection
#undef IID_IADOError
#undef IID_IADOErrors
#undef IID_IADOField
#undef IID_IADOField15
#undef IID_IADOField20
#undef IID_IADOField25
#undef IID_IADOFields
#undef IID_IADOFields15
#undef IID_IADOFields20
#undef IID_IADOParameter
#undef IID_IADOParameters
#undef IID_IADOProperties
#undef IID_IADOProperty
#undef IID_IADORecord
#undef IID_IADORecord25
#undef IID_IADORecordConstruction
#undef IID_IADORecordGroup
#undef IID_IADORecordset
#undef IID_IADORecordset15
#undef IID_IADORecordset20
#undef IID_IADORecordset21
#undef IID_IADORecordset25
#undef IID_IADORecordsetConstruction
#undef IID_IADORecordsetEvents
#undef IID_IADORecordsetEventsVt
#undef IID_IADORecordsets
#undef IID_IADOStream
#undef IID_IADOStreamConstruction
#undef IID_ICMemStreamProperties
#undef IID_IPrivErrors
#undef LIBID_ADO20
#undef LIBID_ADO21
#undef LIBID_ADO25
#undef LIBID_ADO26
#undef LIBID_ADO27
#undef LIBID_ADO28
#undef LIBID_ADO60
#undef LIBID_ADOR20
#undef LIBID_ADOR25
#endif
#ifdef _LOCKBYTESUPPORT_
#define IID_IADOField26 GUID_BUILDER (IID_IADOField26, 00001557, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#ifdef IMMEDIATE_GUID_USE
IID_IADOField26;
#undef IID_IADOField26
#endif
#endif
#ifdef RESERVED_GUIDS_BEYOND_THIS_POINT
#define ADO_Reserved_4 GUID_BUILDER (ADO_Reserved_4, 567747f1, 658b, 4906, 82, C4, E9, CD, A1, 46, 26, 15)
#define ADO_Reserved_6 GUID_BUILDER (ADO_Reserved_6, ED5A4589, 7a9d, 41df, 89, 86, CC, A9, 25, 01, A5, DA)
#define ADO_Reserved_7 GUID_BUILDER (ADO_Reserved_7, C029178A, F16B, 4a06, 82, 93, A8, 08, B7, F8, 78, 92)
#define ADO_Reserved_8 GUID_BUILDER (ADO_Reserved_8, FD6974FD, 21fb, 409c, 96, 56, A5, 68, FE, C0, AC, 01)
#define ADO_Reserved_9 GUID_BUILDER (ADO_Reserved_9, F23FCB5E, 7159, 4cba, A3, 41, 0e, 7a, A5, 15, 18, 70)
#define ADO_Reserved_10 GUID_BUILDER (ADO_Reserved_10, E724D5C9, 327c, 43f7, 86, 4c, 68, 2f, FF, 5c, 99, 93)
#define ADO_Reserved_12 GUID_BUILDER (ADO_Reserved_12, 8831ebb5, 2c09, 4ddd, 9a, 7a, AC, 13, 6d, 58, D7, 21)
#define ADO_Reserved_13 GUID_BUILDER (ADO_Reserved_13, 447b1221, 64fa, 44e9, B1, 46, B1, 1f, 16, E3, 14, B2)
#define ADO_Reserved_14 GUID_BUILDER (ADO_Reserved_14, FC528DC2, A992, 44d3, 97, 9f, 07, F7, F4, 45, 5f, 23)
#define ADO_Reserved_15 GUID_BUILDER (ADO_Reserved_15, C2CC7BC0, 9f8b, 46c8, 83, 6b, BC, 46, 70, 28, F4, 54)
#define ADO_Reserved_16 GUID_BUILDER (ADO_Reserved_16, 4687ee6c, 12ce, 4a31, 97, E9, E6, 49, 6d, E7, 2c, 71)
#define ADO_Reserved_17 GUID_BUILDER (ADO_Reserved_17, 4b56fc5d, 992f, 4339, 95, 81, C5, 40, 7a, B2, BF, FD)
#define ADO_Reserved_18 GUID_BUILDER (ADO_Reserved_18, 1f13bfb3, 8ba8, 46ca, 91, 78, 74, 28, EF, 9a, 85, C0)
#define ADO_Reserved_19 GUID_BUILDER (ADO_Reserved_19, 0b410060, 4d75, 4f77, 96, A1, 68, 4c, 38, 15, E1, B1)
#define ADO_Reserved_20 GUID_BUILDER (ADO_Reserved_20, 5593f2e0, 436b, 40b8, 81, A8, 1b, 7e, F4, E6, 25, 2c)
#define ADO_Reserved_21 GUID_BUILDER (ADO_Reserved_21, 88447b2f, E1C9, 413e, BE, E7, A7, D2, B9, 0e, D1, 96)
#define ADO_Reserved_22 GUID_BUILDER (ADO_Reserved_22, 89bfee1b, 8cb5, 4a90, 89, AF, E8, 29, 93, 4e, 6c, 48)
#define ADO_Reserved_23 GUID_BUILDER (ADO_Reserved_23, 28d7f9fc, F485, 4bdb, 9c, C4, 6f, AE, 44, F9, 9f, D9)
#define ADO_Reserved_24 GUID_BUILDER (ADO_Reserved_24, 1bb4223f, B0E8, 4540, 96, FD, B8, FE, D9, A7, C0, 8b)
#define ADO_Reserved_25 GUID_BUILDER (ADO_Reserved_25, AD1A1568, 8b4a, 403f, 84, 76, D8, F6, 33, 4d, BD, 9f)
#define ADO_Reserved_26 GUID_BUILDER (ADO_Reserved_26, 1326b4d8, EE0B, 4054, 8f, 4c, 86, 35, 9f, 00, 24, AD)
#define ADO_Reserved_27 GUID_BUILDER (ADO_Reserved_27, 98b7eb70, 7aed, 401a, AF, 6d, A6, B8, DB, A0, AF, A6)
#define ADO_Reserved_28 GUID_BUILDER (ADO_Reserved_28, FD46F2C2, 7fda, 4dc9, A2, DB, D9, BE, 4f, 59, 98, C2)
#define ADO_Reserved_29 GUID_BUILDER (ADO_Reserved_29, FAA37542, B471, 4183, A6, 56, 99, C8, FD, 80, FF, 73)
#define ADO_Reserved_30 GUID_BUILDER (ADO_Reserved_30, 56ce86f1, 3116, 4104, A5, 28, 17, D1, 1e, DC, 68, 2a)
#define ADO_Reserved_31 GUID_BUILDER (ADO_Reserved_31, 83e8cf0e, 176f, 4908, 86, 3a, 2a, 77, 4d, 76, 9b, EF)
#define ADO_Reserved_32 GUID_BUILDER (ADO_Reserved_32, 0494d18d, 98f7, 4a38, 80, DF, 35, F8, 80, 98, BD, DF)
#define ADO_Reserved_33 GUID_BUILDER (ADO_Reserved_33, 00c61f59, 4e7f, 4093, BF, FD, 03, 53, B4, 5d, E5, 8b)
#define ADO_Reserved_34 GUID_BUILDER (ADO_Reserved_34, 732a172f, 384d, 4c4a, A6, AF, D2, 28, 20, D3, 34, 26)
#define ADO_Reserved_35 GUID_BUILDER (ADO_Reserved_35, 104e1f7e, 8993, 455c, B7, D8, 58, CD, 88, 74, 80, 75)
#define ADO_Reserved_36 GUID_BUILDER (ADO_Reserved_36, C12B8DFD, 42f7, 408e, AE, FB, A7, C2, FB, 43, 49, A7)
#define ADO_Reserved_37 GUID_BUILDER (ADO_Reserved_37, EE881FC9, 6c2f, 45a2, BA, 17, 24, 95, BC, 72, 4e, 55)
#define ADO_Reserved_38 GUID_BUILDER (ADO_Reserved_38, 7381c764, 646b, 4f11, A6, 73, 13, 50, 98, 9d, 62, 3a)
#define ADO_Reserved_39 GUID_BUILDER (ADO_Reserved_39, D8E4965C, F571, 4771, 8a, 74, 63, 95, 05, 16, B0, 88)
#define ADO_Reserved_40 GUID_BUILDER (ADO_Reserved_40, 2be262e5, 3a8c, 4b07, A3, C3, 3b, B7, 40, EF, 40, 95)
#define ADO_Reserved_41 GUID_BUILDER (ADO_Reserved_41, 3e90a199, 4f86, 445c, 84, 8e, A6, 17, 86, B9, 67, D1)
#define ADO_Reserved_42 GUID_BUILDER (ADO_Reserved_42, DCD025E0, DA44, 47e4, 82, 65, E4, A7, 6b, 85, 29, 0c)
#define ADO_Reserved_43 GUID_BUILDER (ADO_Reserved_43, 31eff562, FB6B, 41d6, 81, AD, 30, 1b, B0, 53, 9c, 61)
#define ADO_Reserved_44 GUID_BUILDER (ADO_Reserved_44, BD3ECD6B, F4A7, 42fc, 90, F1, 75, D5, 37, 2a, F2, 8f)
#define ADO_Reserved_45 GUID_BUILDER (ADO_Reserved_45, 6efbc56f, 67e4, 4f7d, BE, 59, C5, D6, FA, 21, B7, 77)
#define ADO_Reserved_46 GUID_BUILDER (ADO_Reserved_46, 3bf5e1fc, B960, 4564, 86, 54, 07, B0, 7a, AF, 6e, 4f)
#define ADO_Reserved_47 GUID_BUILDER (ADO_Reserved_47, 2430f883, 1462, 4899, 9a, DE, F7, 24, 27, FD, 5e, E4)
#define ADO_Reserved_48 GUID_BUILDER (ADO_Reserved_48, AB663F07, BA4D, 42cc, 93, C6, F2, EA, 9f, C8, BA, 74)
#define ADO_Reserved_49 GUID_BUILDER (ADO_Reserved_49, D808C6F7, 36c0, 4302, 80, EE, C4, B7, 00, F8, D2, 38)
#define ADO_Reserved_50 GUID_BUILDER (ADO_Reserved_50, AB146E06, E493, 4df0, A1, CD, 07, D4, B0, 74, 46, C3)
#define ADO_Reserved_51 GUID_BUILDER (ADO_Reserved_51, 74f1fd51, 9cb8, 4186, 8c, 3d, DD, F3, 55, 2a, 99, 9b)
#define ADO_Reserved_52 GUID_BUILDER (ADO_Reserved_52, 71701a97, 5386, 43b0, 95, 8d, 3c, EE, 40, 57, B1, 99)
#define ADO_Reserved_53 GUID_BUILDER (ADO_Reserved_53, 63cc6087, A6C6, 4ccf, 8e, D4, 17, 5b, 91, A6, 32, C5)
#define ADO_Reserved_54 GUID_BUILDER (ADO_Reserved_54, 7323fd37, B7D8, 4f8a, 80, F4, E8, 3d, 0b, 2a, 73, B5)
#define ADO_Reserved_55 GUID_BUILDER (ADO_Reserved_55, 5c666403, 2a0a, 4b12, 8e, 1d, 41, 19, 88, DD, E0, 0a)
#define ADO_Reserved_56 GUID_BUILDER (ADO_Reserved_56, ECA4C14C, 5529, 49df, B1, 3c, 17, F0, 22, DB, 1b, A6)
#define ADO_Reserved_57 GUID_BUILDER (ADO_Reserved_57, 304ade1d, 4458, 4a6a, 93, 48, 1f, 7c, 2e, 64, D6, FA)
#define ADO_Reserved_58 GUID_BUILDER (ADO_Reserved_58, D87A7AF2, FB3C, 49bc, B2, 69, F3, 57, 36, E7, 23, 2e)
#define ADO_Reserved_59 GUID_BUILDER (ADO_Reserved_59, 542d6d77, AECB, 4aff, B1, C6, 54, EF, 79, 8f, 61, ED)
#define ADO_Reserved_60 GUID_BUILDER (ADO_Reserved_60, 46359618, 34ae, 410e, AE, 20, F3, D4, E1, BD, A6, BE)
#define ADO_Reserved_61 GUID_BUILDER (ADO_Reserved_61, F98DF79B, 2935, 464b, AA, 08, CC, EF, F1, 5f, 71, 32)
#define ADO_Reserved_62 GUID_BUILDER (ADO_Reserved_62, 214887fb, 4867, 4dd8, 83, 9d, 4c, F0, BB, 83, E1, 95)
#define ADO_Reserved_63 GUID_BUILDER (ADO_Reserved_63, C9B68C08, F663, 4386, 8f, 5b, FA, BA, E0, 27, 43, 6d)
#define ADO_Reserved_64 GUID_BUILDER (ADO_Reserved_64, F46511DD, 10b6, 49cf, AA, 75, 5e, E2, 7c, FD, 9e, A4)
#define ADO_Reserved_65 GUID_BUILDER (ADO_Reserved_65, C057EF87, F3A8, 4890, A9, 56, 57, 8c, 07, CD, 2e, F8)
#define ADO_Reserved_66 GUID_BUILDER (ADO_Reserved_66, 1c9e0666, 1405, 4dc5, BD, A7, 65, F4, B4, 16, 1d, 7b)
#define ADO_Reserved_67 GUID_BUILDER (ADO_Reserved_67, B91484C2, 5e48, 438c, 91, CD, B9, D6, 99, 32, 30, E4)
#define ADO_Reserved_68 GUID_BUILDER (ADO_Reserved_68, 17d12bfe, 6c9f, 4229, 87, 95, 60, 20, 6f, D1, 45, 35)
#define ADO_Reserved_69 GUID_BUILDER (ADO_Reserved_69, 5a816ea3, EE82, 4f65, BC, 76, 74, 07, E9, E5, 43, 58)
#define ADO_Reserved_70 GUID_BUILDER (ADO_Reserved_70, 3ad0de2b, AA3E, 4508, BE, 9e, 1e, AA, DF, 1c, 4d, 8b)
#define ADO_Reserved_71 GUID_BUILDER (ADO_Reserved_71, 54dc8b80, 7869, 4d90, AB, 5c, 8c, 54, 1a, 74, EE, F8)
#define ADO_Reserved_72 GUID_BUILDER (ADO_Reserved_72, 80a200b0, 5783, 48e7, 81, 25, B9, E4, BF, 59, F7, 22)
#define ADO_Reserved_73 GUID_BUILDER (ADO_Reserved_73, 1502cb61, 8c42, 4c4b, B9, 0c, 3a, 9e, 4e, 46, D1, BE)
#define ADO_Reserved_74 GUID_BUILDER (ADO_Reserved_74, 70eb3f53, 91a0, 42f5, BE, 50, F1, 02, DE, C8, 92, 27)
#define ADO_Reserved_75 GUID_BUILDER (ADO_Reserved_75, 4680aa81, B27C, 4a8f, 83, F9, 6f, B7, E1, 8e, D2, 3c)
#define ADO_Reserved_76 GUID_BUILDER (ADO_Reserved_76, EF31F9EB, 4541, 4fcb, 8d, 67, 59, 2c, 85, 50, 93, 05)
#define ADO_Reserved_77 GUID_BUILDER (ADO_Reserved_77, 88b77d15, 997e, 4e3a, 83, 20, 3b, 37, 83, 52, 86, D5)
#define ADO_Reserved_78 GUID_BUILDER (ADO_Reserved_78, D03A3AA8, 1aac, 4867, 93, C9, 5f, 51, D8, 7d, 6a, 74)
#define ADO_Reserved_79 GUID_BUILDER (ADO_Reserved_79, 47022458, 17e7, 4bd7, 90, 81, 85, B4, 0b, 03, 6d, 5b)
#define ADO_Reserved_80 GUID_BUILDER (ADO_Reserved_80, 9e5bee82, F410, 44c7, 9d, 6d, 3f, 7d, D2, 8b, A7, CC)
#define ADO_Reserved_81 GUID_BUILDER (ADO_Reserved_81, 278a1c47, 3c39, 41c7, A3, FB, 7c, 2e, 62, 0b, E4, 44)
#define ADO_Reserved_82 GUID_BUILDER (ADO_Reserved_82, 964cbf05, 8084, 4c15, 9c, F5, 8c, 4b, 81, 41, B4, AE)
#define ADO_Reserved_83 GUID_BUILDER (ADO_Reserved_83, A86296A0, F272, 4acd, 83, 06, FF, CA, FF, 89, 14, A9)
#define ADO_Reserved_84 GUID_BUILDER (ADO_Reserved_84, F805FC7C, 7c4a, 43a1, B0, 14, 71, EA, 0e, EB, EA, 5f)
#define ADO_Reserved_85 GUID_BUILDER (ADO_Reserved_85, 33e6e9b6, 0bea, 4549, 90, CB, 3b, 64, 12, DB, 8c, F5)
#define ADO_Reserved_86 GUID_BUILDER (ADO_Reserved_86, 7337e3dc, 219f, 4d9e, 82, 5b, 0a, 2c, 18, 4e, C0, DE)
#define ADO_Reserved_87 GUID_BUILDER (ADO_Reserved_87, 7397bafc, 354e, 4f18, 9f, 76, C3, 3a, 4e, EF, 6d, 20)
#define ADO_Reserved_88 GUID_BUILDER (ADO_Reserved_88, 5ec2d163, E671, 4186, BE, 72, BF, FF, 72, D5, 7a, 5c)
#define ADO_Reserved_89 GUID_BUILDER (ADO_Reserved_89, 8b37b801, 0a35, 4f97, A3, 43, 82, 57, B3, E7, 6c, 79)
#define ADO_Reserved_90 GUID_BUILDER (ADO_Reserved_90, FAD396B6, EE4E, 4f70, 85, 54, E8, 23, 9e, 47, 05, 29)
#define ADO_Reserved_91 GUID_BUILDER (ADO_Reserved_91, 6063972c, 395b, 4fef, A0, 04, ED, 95, E7, D8, 72, 0d)
#define ADO_Reserved_92 GUID_BUILDER (ADO_Reserved_92, 85aeed72, A1F8, 4597, 82, 32, F8, 40, EF, C9, 21, 09)
#define ADO_Reserved_93 GUID_BUILDER (ADO_Reserved_93, CE4FD8FF, 553a, 4424, B1, EA, 3e, DF, 11, 42, AD, 8b)
#define ADO_Reserved_94 GUID_BUILDER (ADO_Reserved_94, 1a856a0f, 0844, 4de4, AC, 7b, 75, 30, 62, 56, 39, 86)
#define ADO_Reserved_95 GUID_BUILDER (ADO_Reserved_95, 09a742a1, 19ed, 43bb, 85, E9, 99, 23, DE, C4, 17, F7)
#define ADO_Reserved_96 GUID_BUILDER (ADO_Reserved_96, 3695bd0c, 9de6, 4895, 84, E6, B2, 4c, E7, 55, 47, 02)
#define ADO_Reserved_97 GUID_BUILDER (ADO_Reserved_97, 8802531f, 6ea8, 4a55, 8a, 18, 05, 97, 86, 3c, DA, 38)
#define ADO_Reserved_98 GUID_BUILDER (ADO_Reserved_98, 498e70f0, B13F, 4804, AD, D5, 72, E8, 0e, 28, 05, E7)
#define ADO_Reserved_99 GUID_BUILDER (ADO_Reserved_99, 50d0e90f, E3A4, 4a93, 8b, 48, 71, 21, 66, E8, 87, CD)
#define ADO_Reserved_100 GUID_BUILDER (ADO_Reserved_100, F1D30550, 8515, 4f8b, 93, E1, 1e, F0, 12, 1b, 4b, D0)
#define ADO_Reserved_101 GUID_BUILDER (ADO_Reserved_101, 901cda31, 8cdb, 4a5b, 91, 6b, 63, EA, 90, 1d, 8c, E0)
#define ADO_Reserved_102 GUID_BUILDER (ADO_Reserved_102, 00bda239, 1094, 4aef, 93, AD, 7c, E2, 73, 6c, 42, 25)
#define ADO_Reserved_103 GUID_BUILDER (ADO_Reserved_103, DCA4E51E, 250e, 4ab3, B4, 90, F2, CB, 9e, 8f, 6c, C4)
#define ADO_Reserved_104 GUID_BUILDER (ADO_Reserved_104, 24679ebd, 8535, 4494, A9, 1c, 18, 91, F0, 75, 5b, 6f)
#define ADO_Reserved_105 GUID_BUILDER (ADO_Reserved_105, F041739E, F37E, 4925, 94, 25, FB, 51, 5e, 56, 0f, 54)
#define ADO_Reserved_106 GUID_BUILDER (ADO_Reserved_106, FECACBBF, A73C, 4616, 84, 2f, FE, F5, 72, 85, 70, AB)
#define ADO_Reserved_107 GUID_BUILDER (ADO_Reserved_107, DBAD7368, 1ded, 4a77, B8, 0a, 1a, EB, 12, 99, BD, B3)
#define ADO_Reserved_108 GUID_BUILDER (ADO_Reserved_108, CFDE81B8, 66ef, 4503, 84, A8, 7e, 8f, C8, AB, 0b, 31)
#define ADO_Reserved_109 GUID_BUILDER (ADO_Reserved_109, 9b7484fa, 023a, 4ffb, A2, 94, 11, A6, E5, 97, AB, 35)
#define ADO_Reserved_110 GUID_BUILDER (ADO_Reserved_110, 54f0f09c, 1201, 49a9, B4, 65, 6b, 02, 9b, 5f, E3, 12)
#define ADO_Reserved_111 GUID_BUILDER (ADO_Reserved_111, BFFA01F8, EAE7, 4fa1, BF, 74, 37, 73, 3f, BF, 36, 4c)
#define ADO_Reserved_112 GUID_BUILDER (ADO_Reserved_112, 12fad291, 4aab, 4038, 9d, D1, 04, E4, E7, A9, E0, F4)
#define ADO_Reserved_113 GUID_BUILDER (ADO_Reserved_113, 8d2af964, C489, 4d77, A8, 17, A0, 4d, B1, DB, 26, A5)
#define ADO_Reserved_114 GUID_BUILDER (ADO_Reserved_114, 79f89dd7, BE86, 4b36, BE, 9b, FA, 75, 24, 18, 55, 68)
#define ADO_Reserved_115 GUID_BUILDER (ADO_Reserved_115, 4387d7fa, 7a52, 4f67, BF, B6, 7e, 7d, 7a, B7, C9, DE)
#define ADO_Reserved_116 GUID_BUILDER (ADO_Reserved_116, 7571252f, 0e49, 4f4b, A3, 87, 9e, D9, 70, 54, 68, D8)
#define ADO_Reserved_117 GUID_BUILDER (ADO_Reserved_117, 0dab016b, 6ba4, 470f, 98, 1a, 2b, A7, 65, D4, 60, 4b)
#define ADO_Reserved_118 GUID_BUILDER (ADO_Reserved_118, E97D87A3, 8a95, 4080, 8c, A9, ED, 9f, 05, 1a, B7, B2)
#define ADO_Reserved_119 GUID_BUILDER (ADO_Reserved_119, C9EA1598, 2d23, 4978, 9b, 33, 3d, 2c, C4, 0a, B7, A1)
#define ADO_Reserved_120 GUID_BUILDER (ADO_Reserved_120, E41CA9FC, 7fc9, 4831, 90, CE, F5, 33, 96, CE, 42, C3)
#define ADO_Reserved_121 GUID_BUILDER (ADO_Reserved_121, 15df0905, 4acc, 44f7, A0, 1e, 0f, EF, 56, 3c, C4, E5)
#define ADO_Reserved_122 GUID_BUILDER (ADO_Reserved_122, D2879A0E, D0B3, 42a2, A1, 16, D1, 5e, 13, C7, 51, 77)
#define ADO_Reserved_123 GUID_BUILDER (ADO_Reserved_123, A999A8D2, 5e83, 4c0e, 83, 97, 18, 33, 19, 32, 79, CD)
#define ADO_Reserved_124 GUID_BUILDER (ADO_Reserved_124, C6AFAE72, B3FF, 48ab, B1, EE, F5, EE, F9, 05, DF, 47)
#define ADO_Reserved_125 GUID_BUILDER (ADO_Reserved_125, 0deadf50, 0940, 4f0e, AC, 3b, 94, 80, B7, 32, 2b, 1b)
#define ADO_Reserved_126 GUID_BUILDER (ADO_Reserved_126, 61278818, 2fe6, 4892, 8b, 95, A7, 5c, AC, 6e, 21, BB)
#define ADO_Reserved_127 GUID_BUILDER (ADO_Reserved_127, 3ac2bed7, 1111, 4e55, B2, 06, 1f, 54, 18, 94, 4c, BA)
#define ADO_Reserved_128 GUID_BUILDER (ADO_Reserved_128, 3d4751e2, 04b8, 4593, A0, 0d, 3a, 4b, 94, 67, 4b, E9)
#define ADO_Reserved_129 GUID_BUILDER (ADO_Reserved_129, 69bc6751, FE10, 4b3f, 89, 35, 40, 2f, A5, FD, 04, 82)
#define ADO_Reserved_130 GUID_BUILDER (ADO_Reserved_130, 5867af81, 995a, 4686, 8b, CB, 13, B6, 8b, 10, 26, 8a)
#define ADO_Reserved_131 GUID_BUILDER (ADO_Reserved_131, DA46C62F, BDCD, 4745, A3, CA, 4e, C9, FA, AB, E1, 10)
#define ADO_Reserved_132 GUID_BUILDER (ADO_Reserved_132, 93028aa6, EECC, 482f, B3, A4, 2f, D4, 13, 04, 96, 5e)
#define ADO_Reserved_133 GUID_BUILDER (ADO_Reserved_133, AB14F604, D05E, 4e50, A4, 5b, A8, 10, 48, E3, A4, 75)
#define ADO_Reserved_134 GUID_BUILDER (ADO_Reserved_134, 35267875, 8420, 4226, 87, C0, 25, 00, 58, 56, 0f, D2)
#define ADO_Reserved_135 GUID_BUILDER (ADO_Reserved_135, 16e34932, EEFA, 440e, A7, 86, 6a, 36, D2, C6, 21, 69)
#define ADO_Reserved_136 GUID_BUILDER (ADO_Reserved_136, 2710a15a, B2B0, 46ec, BD, EC, E2, 2e, A8, A6, 28, FA)
#define ADO_Reserved_137 GUID_BUILDER (ADO_Reserved_137, 2777696f, CB34, 4cc4, A0, A9, 02, EA, 15, 16, 63, DD)
#define ADO_Reserved_138 GUID_BUILDER (ADO_Reserved_138, D11CA1A0, A261, 4ba2, 81, 68, 46, 52, 32, 9a, 60, 77)
#define ADO_Reserved_139 GUID_BUILDER (ADO_Reserved_139, C33509A8, 883f, 4bea, AF, B5, 35, 26, CF, 0b, 8b, E1)
#define ADO_Reserved_140 GUID_BUILDER (ADO_Reserved_140, DEBDC8E1, 4f02, 43e1, 8c, 88, 0b, A8, E1, 50, 6b, F5)
#define ADO_Reserved_141 GUID_BUILDER (ADO_Reserved_141, 552f8531, 3f79, 4db3, 87, 7b, 8e, 54, C3, 5b, 38, 54)
#define ADO_Reserved_142 GUID_BUILDER (ADO_Reserved_142, 1e6a2bf4, 241c, 48a1, 90, 66, C6, E1, E5, 2b, 0a, 4b)
#define ADO_Reserved_143 GUID_BUILDER (ADO_Reserved_143, 8e5b2a8d, 1f0d, 429d, 94, 95, 16, F8, E9, 58, 06, 80)
#define ADO_Reserved_144 GUID_BUILDER (ADO_Reserved_144, 57faec9d, 5cde, 4ebe, 84, A1, 5a, CB, 75, 7c, D4, 51)
#define ADO_Reserved_145 GUID_BUILDER (ADO_Reserved_145, 707b03c3, A3B0, 4f00, 81, 61, 6e, 3f, 02, 7f, F0, B3)
#define ADO_Reserved_146 GUID_BUILDER (ADO_Reserved_146, 5dd552f4, 0718, 4bdd, 82, 6c, 7c, C3, 5c, DA, 1d, 93)
#define ADO_Reserved_147 GUID_BUILDER (ADO_Reserved_147, F3247F33, E377, 4a44, A9, 37, AC, E6, 36, F6, 58, 1f)
#define ADO_Reserved_148 GUID_BUILDER (ADO_Reserved_148, E7C324C4, 38a5, 42a8, 99, FF, 34, 5d, AD, 8c, D2, 29)
#define ADO_Reserved_149 GUID_BUILDER (ADO_Reserved_149, D14FCA70, 390d, 4158, B5, C3, 9a, 02, D1, F7, 85, 87)
#define ADO_Reserved_150 GUID_BUILDER (ADO_Reserved_150, 58d30b5f, 92a5, 4ef4, 8e, 45, A0, 24, A9, CD, F9, FE)
#define ADO_Reserved_151 GUID_BUILDER (ADO_Reserved_151, 9673df76, 73e4, 4c66, 89, 14, 7f, A4, 17, 43, 6c, 4a)
#define ADO_Reserved_152 GUID_BUILDER (ADO_Reserved_152, 9fa8a7e1, CF3C, 4a61, BE, 10, 1d, 85, 5f, A0, D5, 08)
#define ADO_Reserved_153 GUID_BUILDER (ADO_Reserved_153, B657729F, 6cc7, 4392, BD, 56, DC, ED, 6e, 53, F6, 4c)
#define ADO_Reserved_154 GUID_BUILDER (ADO_Reserved_154, 06e5224b, 8c27, 4f41, 8f, B7, C6, 41, E4, C5, 04, 2d)
#define ADO_Reserved_155 GUID_BUILDER (ADO_Reserved_155, 2268a619, CC1D, 4f72, B8, 3f, 79, 63, C0, 13, B1, 3d)
#define ADO_Reserved_156 GUID_BUILDER (ADO_Reserved_156, FB4810F3, 3a65, 4c33, B3, 99, B5, C9, 33, 11, 11, D7)
#define ADO_Reserved_157 GUID_BUILDER (ADO_Reserved_157, 9011be74, 6c9d, 44f7, BE, 2c, 8a, 2a, BB, 62, 51, AC)
#define ADO_Reserved_158 GUID_BUILDER (ADO_Reserved_158, 3145c182, 82c6, 4082, BB, E7, 79, 1a, 2f, 49, 6c, B1)
#define ADO_Reserved_159 GUID_BUILDER (ADO_Reserved_159, D8865377, 8799, 4c08, 97, E5, D6, 7e, 88, 6f, F5, 49)
#define ADO_Reserved_160 GUID_BUILDER (ADO_Reserved_160, 8993232e, 8afa, 4552, A7, 8c, C6, 6c, 9d, 3a, E6, D0)
#define ADO_Reserved_161 GUID_BUILDER (ADO_Reserved_161, 40af1931, 8721, 427b, 83, 5e, 50, 87, 79, BD, 1e, B2)
#define ADO_Reserved_162 GUID_BUILDER (ADO_Reserved_162, 9c6e2b26, 4468, 427c, 8c, F5, 01, 14, 7d, B8, DF, 22)
#define ADO_Reserved_163 GUID_BUILDER (ADO_Reserved_163, 3537fa93, 7e92, 4ce0, 80, 96, EF, DC, 1a, 80, A8, 95)
#define ADO_Reserved_164 GUID_BUILDER (ADO_Reserved_164, 36992492, 3e17, 47c1, AB, 98, 5f, 0c, 49, B4, 6a, 25)
#define ADO_Reserved_165 GUID_BUILDER (ADO_Reserved_165, 01662edb, CE23, 4215, AE, 9d, 51, 51, E6, DA, 36, 3c)
#define ADO_Reserved_166 GUID_BUILDER (ADO_Reserved_166, 80b4a97b, 5256, 4397, 89, CD, 4e, F9, 91, 0f, 1d, E6)
#define ADO_Reserved_167 GUID_BUILDER (ADO_Reserved_167, C2341A38, 2c6b, 414e, 96, A8, 8b, 5e, 47, F8, 14, DA)
#define ADO_Reserved_168 GUID_BUILDER (ADO_Reserved_168, 5c2b7578, 53fa, 4ace, 8e, 6c, 39, 18, 2f, 68, D2, 67)
#define ADO_Reserved_169 GUID_BUILDER (ADO_Reserved_169, B80C1E36, 611b, 49d4, 97, 19, 4e, 0c, 59, 0e, 2e, E1)
#define ADO_Reserved_170 GUID_BUILDER (ADO_Reserved_170, BA269EB4, B741, 4fb2, A9, C9, 52, 4c, 9d, BE, 7c, 16)
#define ADO_Reserved_171 GUID_BUILDER (ADO_Reserved_171, EE49769D, 1028, 4429, A9, 66, 2f, A8, 1d, 70, EE, 19)
#define ADO_Reserved_172 GUID_BUILDER (ADO_Reserved_172, 541fc621, D6E6, 4cc4, B4, 98, 8e, 4f, AA, A0, 65, BF)
#define ADO_Reserved_173 GUID_BUILDER (ADO_Reserved_173, AA8B544C, 4067, 4e00, 96, 09, 95, EE, 21, 68, AF, CE)
#define ADO_Reserved_174 GUID_BUILDER (ADO_Reserved_174, 5b161b2b, D02C, 4300, A1, 54, CF, DC, 25, 3b, 13, 0d)
#define ADO_Reserved_175 GUID_BUILDER (ADO_Reserved_175, 81f62203, 182e, 42de, B1, B7, 63, 5f, C6, 6f, 6e, 9e)
#define ADO_Reserved_176 GUID_BUILDER (ADO_Reserved_176, 04934bdd, A530, 48ec, 91, CE, 11, 83, 42, 5b, DB, 61)
#define ADO_Reserved_177 GUID_BUILDER (ADO_Reserved_177, F6997841, 9a99, 48aa, B0, 56, 8c, 75, 17, 06, 41, 7f)
#define ADO_Reserved_178 GUID_BUILDER (ADO_Reserved_178, 353fe3f1, DE50, 45ee, 91, E9, 3e, 62, E3, C7, 86, 04)
#define ADO_Reserved_179 GUID_BUILDER (ADO_Reserved_179, F142C8C6, 9e24, 422e, 81, BD, D2, 94, 7f, 93, 94, D4)
#define ADO_Reserved_180 GUID_BUILDER (ADO_Reserved_180, 95951773, 9566, 46c9, 86, B0, 40, ED, 25, 46, 02, 93)
#define ADO_Reserved_181 GUID_BUILDER (ADO_Reserved_181, 54140563, 0f25, 4f56, 9d, 8f, B6, DE, CB, 96, DC, E4)
#define ADO_Reserved_182 GUID_BUILDER (ADO_Reserved_182, 91a48243, AE16, 48cf, 82, 29, 00, 00, F8, 3c, 5e, FC)
#define ADO_Reserved_183 GUID_BUILDER (ADO_Reserved_183, E0FA1A1F, 3967, 4392, AB, 1a, E2, 8b, 85, 04, 68, CA)
#define ADO_Reserved_184 GUID_BUILDER (ADO_Reserved_184, 5582d772, ABAC, 4a85, A0, B3, 2e, 65, E1, 71, 10, 53)
#define ADO_Reserved_185 GUID_BUILDER (ADO_Reserved_185, 1cd1f347, 8fb4, 49a2, B5, 65, A6, 74, A0, C1, 45, 0e)
#define ADO_Reserved_186 GUID_BUILDER (ADO_Reserved_186, 0ec3aa4e, FEF5, 4a5c, BD, 0a, E9, CD, B7, 6a, 5f, 30)
#define ADO_Reserved_187 GUID_BUILDER (ADO_Reserved_187, 4118414d, 4a21, 46da, 88, C1, EF, A7, 01, 8c, 45, 27)
#define ADO_Reserved_188 GUID_BUILDER (ADO_Reserved_188, D5C1CC0D, E38E, 4cb6, 89, D9, 99, 27, 7f, 12, D1, 9e)
#define ADO_Reserved_189 GUID_BUILDER (ADO_Reserved_189, 0956b82a, 94a7, 474e, A5, 05, 1a, 76, 26, 36, AF, 08)
#define ADO_Reserved_190 GUID_BUILDER (ADO_Reserved_190, 2cbf62ab, B8E4, 48d0, B5, 01, 69, CF, 63, 3c, AA, E6)
#define ADO_Reserved_191 GUID_BUILDER (ADO_Reserved_191, C02B8113, AECF, 4a34, B3, E9, 5b, 52, 4e, 51, 44, B5)
#define ADO_Reserved_192 GUID_BUILDER (ADO_Reserved_192, 1c90947b, 4a3a, 4ecd, 8c, 70, F4, 3f, E5, 2d, 46, 45)
#define ADO_Reserved_193 GUID_BUILDER (ADO_Reserved_193, 48175e98, 6672, 4db4, B5, 74, 8c, 93, 25, 8d, BF, 14)
#define ADO_Reserved_194 GUID_BUILDER (ADO_Reserved_194, 99cb88bf, E5C1, 4af0, 85, 00, 72, 36, 47, DC, D2, 05)
#define ADO_Reserved_195 GUID_BUILDER (ADO_Reserved_195, 6a2cc3cc, 7855, 4b27, 86, F7, 98, 6b, AA, F9, 5f, 0f)
#define ADO_Reserved_196 GUID_BUILDER (ADO_Reserved_196, 7640b336, 9ebb, 4017, 9e, EE, 54, 01, F4, EC, B1, 70)
#define ADO_Reserved_197 GUID_BUILDER (ADO_Reserved_197, 507b39e1, 2965, 42ea, 92, 66, 55, 8d, E4, 31, 53, 73)
#define ADO_Reserved_198 GUID_BUILDER (ADO_Reserved_198, 58c591fa, 37ff, 4428, A0, 4a, 46, 71, 98, 17, 74, 8c)
#define ADO_Reserved_199 GUID_BUILDER (ADO_Reserved_199, 24be98e9, B43D, 49b5, 9c, 41, 20, AF, C2, FE, 1d, 8d)
#define ADO_Reserved_200 GUID_BUILDER (ADO_Reserved_200, 041956c5, B951, 4c8f, 8c, 61, 8e, 12, 34, E1, E9, 61)
#define ADO_Reserved_201 GUID_BUILDER (ADO_Reserved_201, 6c98d05c, D366, 48b4, 80, E3, 8f, A1, CC, 06, 1d, B7)
#define ADO_Reserved_202 GUID_BUILDER (ADO_Reserved_202, 09570783, A1E8, 4a52, BA, 74, 6c, AC, 02, C0, 14, 8c)
#define ADO_Reserved_203 GUID_BUILDER (ADO_Reserved_203, 96c8c205, FD0D, 4b56, 9a, 12, 39, B3, 7e, 9d, 07, 4d)
#define ADO_Reserved_204 GUID_BUILDER (ADO_Reserved_204, 136c40e1, 366e, 4ba6, AF, 71, C4, 9a, EF, 17, 3f, C0)
#define ADO_Reserved_205 GUID_BUILDER (ADO_Reserved_205, A298C799, 06fb, 466e, B5, 6d, 3e, CC, 6d, 0c, D6, 75)
#define ADO_Reserved_206 GUID_BUILDER (ADO_Reserved_206, 41a96542, 08f2, 4609, B7, 6a, ED, 93, E5, 5b, 8c, 60)
#define ADO_Reserved_207 GUID_BUILDER (ADO_Reserved_207, 65a3b57e, 06f9, 4572, 80, 91, 17, 3f, C4, A6, 5a, 16)
#define ADO_Reserved_208 GUID_BUILDER (ADO_Reserved_208, 114f3e9d, 5431, 4dc1, 95, 42, 9b, 85, 44, CF, 83, B2)
#define ADO_Reserved_209 GUID_BUILDER (ADO_Reserved_209, 41de92d4, 9f2a, 4085, 8c, C1, C1, 04, 3e, 5b, 11, 12)
#define ADO_Reserved_210 GUID_BUILDER (ADO_Reserved_210, E32A7A98, FF1E, 45c9, AA, 51, 5f, 86, 9a, 9a, 48, 57)
#define ADO_Reserved_211 GUID_BUILDER (ADO_Reserved_211, 5e5a209f, 3efc, 48bc, A7, 1e, F4, CE, BE, 4c, A6, 25)
#define ADO_Reserved_212 GUID_BUILDER (ADO_Reserved_212, C556C1CC, 8b2e, 482b, B7, 8c, E2, F6, FD, A0, 4f, 4d)
#define ADO_Reserved_213 GUID_BUILDER (ADO_Reserved_213, 39c54fd9, A22A, 43d4, A4, 36, D9, CB, C5, 53, D5, 5a)
#define ADO_Reserved_214 GUID_BUILDER (ADO_Reserved_214, 750e0ba2, E25C, 479f, B0, C1, 58, 44, A1, 4d, 08, 77)
#define ADO_Reserved_215 GUID_BUILDER (ADO_Reserved_215, 7ecbdb2c, C5C2, 48fb, 8a, 3a, 30, B7, E7, BD, 17, 25)
#define ADO_Reserved_216 GUID_BUILDER (ADO_Reserved_216, 0bf18ac7, 8be1, 49e6, A8, 57, EA, 89, 3a, 83, 58, F5)
#define ADO_Reserved_217 GUID_BUILDER (ADO_Reserved_217, DA74EAB6, AAFE, 42ad, 8a, 0d, B2, 73, 35, 0c, 82, E3)
#define ADO_Reserved_218 GUID_BUILDER (ADO_Reserved_218, F6A3D173, E366, 424a, AD, 0c, 25, 5c, 32, 2d, 09, 80)
#define ADO_Reserved_219 GUID_BUILDER (ADO_Reserved_219, 7cd83ba3, 0516, 4366, BB, 85, DE, 53, 03, F7, 75, 08)
#define ADO_Reserved_220 GUID_BUILDER (ADO_Reserved_220, 42edfc05, 3a70, 4f5c, 8c, 32, 06, 5e, 61, 45, 3c, BE)
#define ADO_Reserved_221 GUID_BUILDER (ADO_Reserved_221, 624bc037, 05b0, 44e1, 85, A7, 73, C4, 7f, A0, CC, 04)
#define ADO_Reserved_222 GUID_BUILDER (ADO_Reserved_222, 8811f8dd, FA15, 4fa6, A7, 6e, 7e, DA, E7, 0d, EC, D4)
#define ADO_Reserved_223 GUID_BUILDER (ADO_Reserved_223, DD310D89, 9f22, 4f49, 89, 8c, AF, A2, 7f, AF, 11, 1c)
#define ADO_Reserved_224 GUID_BUILDER (ADO_Reserved_224, 321e3a7d, DF0E, 4ff7, 98, 5d, F6, E6, 73, FD, E2, 9f)
#define ADO_Reserved_225 GUID_BUILDER (ADO_Reserved_225, 036d1b77, 3737, 47cb, 9e, 75, 31, 13, 13, 2d, 32, B8)
#define ADO_Reserved_226 GUID_BUILDER (ADO_Reserved_226, A46B9E8C, 4740, 4919, 86, 34, A3, 57, 73, F6, 53, 2f)
#define ADO_Reserved_227 GUID_BUILDER (ADO_Reserved_227, 7c064e3a, 014e, 4733, 9d, 00, 5d, 03, 13, F7, B7, F5)
#define ADO_Reserved_228 GUID_BUILDER (ADO_Reserved_228, 7cbff995, A041, 4b0a, B7, 9b, 16, 3a, 74, 2c, DC, CF)
#define ADO_Reserved_229 GUID_BUILDER (ADO_Reserved_229, C3271965, BA03, 4abc, 8f, D8, 98, 97, 7e, 4c, B3, 9a)
#define ADO_Reserved_230 GUID_BUILDER (ADO_Reserved_230, 565dc4b1, 8d7a, 41c6, AE, 01, 6c, EF, 63, 46, 4d, 5e)
#define ADO_Reserved_231 GUID_BUILDER (ADO_Reserved_231, 3331e567, EB74, 45d2, 86, 32, 20, 43, 47, DB, BE, 04)
#define ADO_Reserved_232 GUID_BUILDER (ADO_Reserved_232, 3cee44a8, 6fc5, 4cd5, AA, 9d, 1b, 67, 4c, B6, 2e, EC)
#define ADO_Reserved_233 GUID_BUILDER (ADO_Reserved_233, CD1BE145, 71b9, 4ccd, A7, AF, 5b, BA, A0, 2a, 51, E6)
#define ADO_Reserved_234 GUID_BUILDER (ADO_Reserved_234, 4203c429, F3F0, 4dd7, 91, 24, 51, E0, 13, 95, 5e, 7a)
#define ADO_Reserved_235 GUID_BUILDER (ADO_Reserved_235, BB256836, 2804, 492f, 9c, B2, CF, 83, CB, 82, 63, 8a)
#define ADO_Reserved_236 GUID_BUILDER (ADO_Reserved_236, 8b247756, 34aa, 45ef, B1, 24, A9, 60, 66, AC, E8, D6)
#define ADO_Reserved_237 GUID_BUILDER (ADO_Reserved_237, EF1CF73C, 4915, 4289, AD, C4, DD, DA, 62, 70, 70, A6)
#define ADO_Reserved_238 GUID_BUILDER (ADO_Reserved_238, D0EB0A94, 91a0, 49d3, 97, 26, 94, 52, 66, 5a, FE, 53)
#define ADO_Reserved_239 GUID_BUILDER (ADO_Reserved_239, D6F5003E, 4c06, 47b1, 89, E9, D6, 3c, 3d, 7d, 41, B6)
#define ADO_Reserved_240 GUID_BUILDER (ADO_Reserved_240, AA803151, F4AE, 4ce3, BC, 92, 97, 1c, 84, 2e, F5, BC)
#define ADO_Reserved_241 GUID_BUILDER (ADO_Reserved_241, C4BB086F, 5b11, 4c67, 98, 6c, 8c, D4, 8c, 5c, E3, 8b)
#define ADO_Reserved_242 GUID_BUILDER (ADO_Reserved_242, F1C4A502, 4744, 478f, 87, 71, C6, 94, CC, 2d, F7, B6)
#define ADO_Reserved_243 GUID_BUILDER (ADO_Reserved_243, 2cd39761, F389, 4f5e, BE, 91, A6, B9, 1b, 18, AD, 12)
#define ADO_Reserved_244 GUID_BUILDER (ADO_Reserved_244, 8895ba8f, 0cb7, 4354, A8, EA, CD, 9d, F4, 1b, F8, 88)
#define ADO_Reserved_245 GUID_BUILDER (ADO_Reserved_245, 71e0b0dc, 1245, 441d, 92, 92, 32, 71, 3f, 57, 97, 7a)
#define ADO_Reserved_246 GUID_BUILDER (ADO_Reserved_246, 7604d0cb, F137, 472d, 8b, 4c, 85, 66, 72, 9a, CF, 03)
#define ADO_Reserved_247 GUID_BUILDER (ADO_Reserved_247, 94c9b5ac, 8309, 4f4b, 8e, 68, C4, 37, 7e, C2, B7, 91)
#define ADO_Reserved_248 GUID_BUILDER (ADO_Reserved_248, 0e555180, 5e2c, 4bf6, 90, A0, 1b, 36, 3d, 4b, B9, 99)
#define ADO_Reserved_249 GUID_BUILDER (ADO_Reserved_249, C077D666, 6988, 4eac, A5, 52, 61, 61, 55, F9, 6a, 12)
#ifdef IMMEDIATE_GUID_USE
ADO_Reserved_4;
ADO_Reserved_6; ADO_Reserved_7; ADO_Reserved_8; ADO_Reserved_9;
ADO_Reserved_10; ADO_Reserved_12; ADO_Reserved_13; ADO_Reserved_14;
ADO_Reserved_15; ADO_Reserved_16; ADO_Reserved_17; ADO_Reserved_18; ADO_Reserved_19;
ADO_Reserved_20; ADO_Reserved_21; ADO_Reserved_22; ADO_Reserved_23; ADO_Reserved_24;
ADO_Reserved_25; ADO_Reserved_26; ADO_Reserved_27; ADO_Reserved_28; ADO_Reserved_29;
ADO_Reserved_30; ADO_Reserved_31; ADO_Reserved_32; ADO_Reserved_33; ADO_Reserved_34;
ADO_Reserved_35; ADO_Reserved_36; ADO_Reserved_37; ADO_Reserved_38; ADO_Reserved_39;
ADO_Reserved_40; ADO_Reserved_41; ADO_Reserved_42; ADO_Reserved_43; ADO_Reserved_44;
ADO_Reserved_45; ADO_Reserved_46; ADO_Reserved_47; ADO_Reserved_48; ADO_Reserved_49;
ADO_Reserved_50; ADO_Reserved_51; ADO_Reserved_52; ADO_Reserved_53; ADO_Reserved_54;
ADO_Reserved_55; ADO_Reserved_56; ADO_Reserved_57; ADO_Reserved_58; ADO_Reserved_59;
ADO_Reserved_60; ADO_Reserved_61; ADO_Reserved_62; ADO_Reserved_63; ADO_Reserved_64;
ADO_Reserved_65; ADO_Reserved_66; ADO_Reserved_67; ADO_Reserved_68; ADO_Reserved_69;
ADO_Reserved_70; ADO_Reserved_71; ADO_Reserved_72; ADO_Reserved_73; ADO_Reserved_74;
ADO_Reserved_75; ADO_Reserved_76; ADO_Reserved_77; ADO_Reserved_78; ADO_Reserved_79;
ADO_Reserved_80; ADO_Reserved_81; ADO_Reserved_82; ADO_Reserved_83; ADO_Reserved_84;
ADO_Reserved_85; ADO_Reserved_86; ADO_Reserved_87; ADO_Reserved_88; ADO_Reserved_89;
ADO_Reserved_90; ADO_Reserved_91; ADO_Reserved_92; ADO_Reserved_93; ADO_Reserved_94;
ADO_Reserved_95; ADO_Reserved_96; ADO_Reserved_97; ADO_Reserved_98; ADO_Reserved_99;
ADO_Reserved_100; ADO_Reserved_101; ADO_Reserved_102; ADO_Reserved_103; ADO_Reserved_104;
ADO_Reserved_105; ADO_Reserved_106; ADO_Reserved_107; ADO_Reserved_108; ADO_Reserved_109;
ADO_Reserved_110; ADO_Reserved_111; ADO_Reserved_112; ADO_Reserved_113; ADO_Reserved_114;
ADO_Reserved_115; ADO_Reserved_116; ADO_Reserved_117; ADO_Reserved_118; ADO_Reserved_119;
ADO_Reserved_120; ADO_Reserved_121; ADO_Reserved_122; ADO_Reserved_123; ADO_Reserved_124;
ADO_Reserved_125; ADO_Reserved_126; ADO_Reserved_127; ADO_Reserved_128; ADO_Reserved_129;
ADO_Reserved_130; ADO_Reserved_131; ADO_Reserved_132; ADO_Reserved_133; ADO_Reserved_134;
ADO_Reserved_135; ADO_Reserved_136; ADO_Reserved_137; ADO_Reserved_138; ADO_Reserved_139;
ADO_Reserved_140; ADO_Reserved_141; ADO_Reserved_142; ADO_Reserved_143; ADO_Reserved_144;
ADO_Reserved_145; ADO_Reserved_146; ADO_Reserved_147; ADO_Reserved_148; ADO_Reserved_149;
ADO_Reserved_150; ADO_Reserved_151; ADO_Reserved_152; ADO_Reserved_153; ADO_Reserved_154;
ADO_Reserved_155; ADO_Reserved_156; ADO_Reserved_157; ADO_Reserved_158; ADO_Reserved_159;
ADO_Reserved_160; ADO_Reserved_161; ADO_Reserved_162; ADO_Reserved_163; ADO_Reserved_164;
ADO_Reserved_165; ADO_Reserved_166; ADO_Reserved_167; ADO_Reserved_168; ADO_Reserved_169;
ADO_Reserved_170; ADO_Reserved_171; ADO_Reserved_172; ADO_Reserved_173; ADO_Reserved_174;
ADO_Reserved_175; ADO_Reserved_176; ADO_Reserved_177; ADO_Reserved_178; ADO_Reserved_179;
ADO_Reserved_180; ADO_Reserved_181; ADO_Reserved_182; ADO_Reserved_183; ADO_Reserved_184;
ADO_Reserved_185; ADO_Reserved_186; ADO_Reserved_187; ADO_Reserved_188; ADO_Reserved_189;
ADO_Reserved_190; ADO_Reserved_191; ADO_Reserved_192; ADO_Reserved_193; ADO_Reserved_194;
ADO_Reserved_195; ADO_Reserved_196; ADO_Reserved_197; ADO_Reserved_198; ADO_Reserved_199;
ADO_Reserved_200; ADO_Reserved_201; ADO_Reserved_202; ADO_Reserved_203; ADO_Reserved_204;
ADO_Reserved_205; ADO_Reserved_206; ADO_Reserved_207; ADO_Reserved_208; ADO_Reserved_209;
ADO_Reserved_210; ADO_Reserved_211; ADO_Reserved_212; ADO_Reserved_213; ADO_Reserved_214;
ADO_Reserved_215; ADO_Reserved_216; ADO_Reserved_217; ADO_Reserved_218; ADO_Reserved_219;
ADO_Reserved_220; ADO_Reserved_221; ADO_Reserved_222; ADO_Reserved_223; ADO_Reserved_224;
ADO_Reserved_225; ADO_Reserved_226; ADO_Reserved_227; ADO_Reserved_228; ADO_Reserved_229;
ADO_Reserved_230; ADO_Reserved_231; ADO_Reserved_232; ADO_Reserved_233; ADO_Reserved_234;
ADO_Reserved_235; ADO_Reserved_236; ADO_Reserved_237; ADO_Reserved_238; ADO_Reserved_239;
ADO_Reserved_240; ADO_Reserved_241; ADO_Reserved_242; ADO_Reserved_243; ADO_Reserved_244;
ADO_Reserved_245; ADO_Reserved_246; ADO_Reserved_247; ADO_Reserved_248; ADO_Reserved_249;
#undef ADO_Reserved_4
#undef ADO_Reserved_6
#undef ADO_Reserved_7
#undef ADO_Reserved_8
#undef ADO_Reserved_9
#undef ADO_Reserved_10
#undef ADO_Reserved_12
#undef ADO_Reserved_13
#undef ADO_Reserved_14
#undef ADO_Reserved_15
#undef ADO_Reserved_16
#undef ADO_Reserved_17
#undef ADO_Reserved_18
#undef ADO_Reserved_19
#undef ADO_Reserved_20
#undef ADO_Reserved_21
#undef ADO_Reserved_22
#undef ADO_Reserved_23
#undef ADO_Reserved_24
#undef ADO_Reserved_25
#undef ADO_Reserved_26
#undef ADO_Reserved_27
#undef ADO_Reserved_28
#undef ADO_Reserved_29
#undef ADO_Reserved_30
#undef ADO_Reserved_31
#undef ADO_Reserved_32
#undef ADO_Reserved_33
#undef ADO_Reserved_34
#undef ADO_Reserved_35
#undef ADO_Reserved_36
#undef ADO_Reserved_37
#undef ADO_Reserved_38
#undef ADO_Reserved_39
#undef ADO_Reserved_40
#undef ADO_Reserved_41
#undef ADO_Reserved_42
#undef ADO_Reserved_43
#undef ADO_Reserved_44
#undef ADO_Reserved_45
#undef ADO_Reserved_46
#undef ADO_Reserved_47
#undef ADO_Reserved_48
#undef ADO_Reserved_49
#undef ADO_Reserved_50
#undef ADO_Reserved_51
#undef ADO_Reserved_52
#undef ADO_Reserved_53
#undef ADO_Reserved_54
#undef ADO_Reserved_55
#undef ADO_Reserved_56
#undef ADO_Reserved_57
#undef ADO_Reserved_58
#undef ADO_Reserved_59
#undef ADO_Reserved_60
#undef ADO_Reserved_61
#undef ADO_Reserved_62
#undef ADO_Reserved_63
#undef ADO_Reserved_64
#undef ADO_Reserved_65
#undef ADO_Reserved_66
#undef ADO_Reserved_67
#undef ADO_Reserved_68
#undef ADO_Reserved_69
#undef ADO_Reserved_70
#undef ADO_Reserved_71
#undef ADO_Reserved_72
#undef ADO_Reserved_73
#undef ADO_Reserved_74
#undef ADO_Reserved_75
#undef ADO_Reserved_76
#undef ADO_Reserved_77
#undef ADO_Reserved_78
#undef ADO_Reserved_79
#undef ADO_Reserved_80
#undef ADO_Reserved_81
#undef ADO_Reserved_82
#undef ADO_Reserved_83
#undef ADO_Reserved_84
#undef ADO_Reserved_85
#undef ADO_Reserved_86
#undef ADO_Reserved_87
#undef ADO_Reserved_88
#undef ADO_Reserved_89
#undef ADO_Reserved_90
#undef ADO_Reserved_91
#undef ADO_Reserved_92
#undef ADO_Reserved_93
#undef ADO_Reserved_94
#undef ADO_Reserved_95
#undef ADO_Reserved_96
#undef ADO_Reserved_97
#undef ADO_Reserved_98
#undef ADO_Reserved_99
#undef ADO_Reserved_100
#undef ADO_Reserved_101
#undef ADO_Reserved_102
#undef ADO_Reserved_103
#undef ADO_Reserved_104
#undef ADO_Reserved_105
#undef ADO_Reserved_106
#undef ADO_Reserved_107
#undef ADO_Reserved_108
#undef ADO_Reserved_109
#undef ADO_Reserved_110
#undef ADO_Reserved_111
#undef ADO_Reserved_112
#undef ADO_Reserved_113
#undef ADO_Reserved_114
#undef ADO_Reserved_115
#undef ADO_Reserved_116
#undef ADO_Reserved_117
#undef ADO_Reserved_118
#undef ADO_Reserved_119
#undef ADO_Reserved_120
#undef ADO_Reserved_121
#undef ADO_Reserved_122
#undef ADO_Reserved_123
#undef ADO_Reserved_124
#undef ADO_Reserved_125
#undef ADO_Reserved_126
#undef ADO_Reserved_127
#undef ADO_Reserved_128
#undef ADO_Reserved_129
#undef ADO_Reserved_130
#undef ADO_Reserved_131
#undef ADO_Reserved_132
#undef ADO_Reserved_133
#undef ADO_Reserved_134
#undef ADO_Reserved_135
#undef ADO_Reserved_136
#undef ADO_Reserved_137
#undef ADO_Reserved_138
#undef ADO_Reserved_139
#undef ADO_Reserved_140
#undef ADO_Reserved_141
#undef ADO_Reserved_142
#undef ADO_Reserved_143
#undef ADO_Reserved_144
#undef ADO_Reserved_145
#undef ADO_Reserved_146
#undef ADO_Reserved_147
#undef ADO_Reserved_148
#undef ADO_Reserved_149
#undef ADO_Reserved_150
#undef ADO_Reserved_151
#undef ADO_Reserved_152
#undef ADO_Reserved_153
#undef ADO_Reserved_154
#undef ADO_Reserved_155
#undef ADO_Reserved_156
#undef ADO_Reserved_157
#undef ADO_Reserved_158
#undef ADO_Reserved_159
#undef ADO_Reserved_160
#undef ADO_Reserved_161
#undef ADO_Reserved_162
#undef ADO_Reserved_163
#undef ADO_Reserved_164
#undef ADO_Reserved_165
#undef ADO_Reserved_166
#undef ADO_Reserved_167
#undef ADO_Reserved_168
#undef ADO_Reserved_169
#undef ADO_Reserved_170
#undef ADO_Reserved_171
#undef ADO_Reserved_172
#undef ADO_Reserved_173
#undef ADO_Reserved_174
#undef ADO_Reserved_175
#undef ADO_Reserved_176
#undef ADO_Reserved_177
#undef ADO_Reserved_178
#undef ADO_Reserved_179
#undef ADO_Reserved_180
#undef ADO_Reserved_181
#undef ADO_Reserved_182
#undef ADO_Reserved_183
#undef ADO_Reserved_184
#undef ADO_Reserved_185
#undef ADO_Reserved_186
#undef ADO_Reserved_187
#undef ADO_Reserved_188
#undef ADO_Reserved_189
#undef ADO_Reserved_190
#undef ADO_Reserved_191
#undef ADO_Reserved_192
#undef ADO_Reserved_193
#undef ADO_Reserved_194
#undef ADO_Reserved_195
#undef ADO_Reserved_196
#undef ADO_Reserved_197
#undef ADO_Reserved_198
#undef ADO_Reserved_199
#undef ADO_Reserved_200
#undef ADO_Reserved_201
#undef ADO_Reserved_202
#undef ADO_Reserved_203
#undef ADO_Reserved_204
#undef ADO_Reserved_205
#undef ADO_Reserved_206
#undef ADO_Reserved_207
#undef ADO_Reserved_208
#undef ADO_Reserved_209
#undef ADO_Reserved_210
#undef ADO_Reserved_211
#undef ADO_Reserved_212
#undef ADO_Reserved_213
#undef ADO_Reserved_214
#undef ADO_Reserved_215
#undef ADO_Reserved_216
#undef ADO_Reserved_217
#undef ADO_Reserved_218
#undef ADO_Reserved_219
#undef ADO_Reserved_220
#undef ADO_Reserved_221
#undef ADO_Reserved_222
#undef ADO_Reserved_223
#undef ADO_Reserved_224
#undef ADO_Reserved_225
#undef ADO_Reserved_226
#undef ADO_Reserved_227
#undef ADO_Reserved_228
#undef ADO_Reserved_229
#undef ADO_Reserved_230
#undef ADO_Reserved_231
#undef ADO_Reserved_232
#undef ADO_Reserved_233
#undef ADO_Reserved_234
#undef ADO_Reserved_235
#undef ADO_Reserved_236
#undef ADO_Reserved_237
#undef ADO_Reserved_238
#undef ADO_Reserved_239
#undef ADO_Reserved_240
#undef ADO_Reserved_241
#undef ADO_Reserved_242
#undef ADO_Reserved_243
#undef ADO_Reserved_244
#undef ADO_Reserved_245
#undef ADO_Reserved_246
#undef ADO_Reserved_247
#undef ADO_Reserved_248
#undef ADO_Reserved_249
#endif
#endif
#endif

View File

@ -0,0 +1,957 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifndef INCLUDING_ADOGUIDS
#error Include via adoguids.h header only
#endif
#define MAXAVAILABLEGUID 0x570
#define MAXAVAILABLEGUIDALL 0x57f
#define LIBID_ADO LIBID_ADO60
#define LIBID_ADOR LIBID_ADOR20
#define LIBID_CADO10 LIBID_ADO20
#define LIBID_CADOR10 LIBID_ADOR20
#define CLSID_ADO GUID_BUILDER (CLSID_ADO, 0000051a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOCommand GUID_BUILDER (CLSID_CADOCommand, 00000507, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOConnection GUID_BUILDER (CLSID_CADOConnection, 00000514, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOError GUID_BUILDER (CLSID_CADOError, 00000541, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOErrorLookup GUID_BUILDER (CLSID_CADOErrorLookup, 00000542, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOField GUID_BUILDER (CLSID_CADOField, 0000053a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOParameter GUID_BUILDER (CLSID_CADOParameter, 0000050b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADORecField GUID_BUILDER (CLSID_CADORecField, 00000561, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADORecord GUID_BUILDER (CLSID_CADORecord, 00000560, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADORecordset GUID_BUILDER (CLSID_CADORecordset, 00000535, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define CLSID_CADOStream GUID_BUILDER (CLSID_CADOStream, 00000566, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID__ADO GUID_BUILDER (IID__ADO, 00000534, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_ConnectionEvents GUID_BUILDER (IID_ConnectionEvents, 00000400, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_ConnectionEventsVt GUID_BUILDER (IID_ConnectionEventsVt, 00000402, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumAffect GUID_BUILDER (IID_EnumAffect, 00000543, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCEResync GUID_BUILDER (IID_EnumCEResync, 00000553, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCommandType GUID_BUILDER (IID_EnumCommandType, 0000052e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCompare GUID_BUILDER (IID_EnumCompare, 00000545, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumConnectMode GUID_BUILDER (IID_EnumConnectMode, 00000521, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumConnectOption GUID_BUILDER (IID_EnumConnectOption, 00000541, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumConnectPrompt GUID_BUILDER (IID_EnumConnectPrompt, 00000520, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCopyRecordOptions GUID_BUILDER (IID_EnumCopyRecordOptions, 00000574, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCursorLocation GUID_BUILDER (IID_EnumCursorLocation, 0000052f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCursorOption GUID_BUILDER (IID_EnumCursorOption, 0000051c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumCursorType GUID_BUILDER (IID_EnumCursorType, 0000051b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumDataType GUID_BUILDER (IID_EnumDataType, 0000051f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumEditMode GUID_BUILDER (IID_EnumEditMode, 00000526, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumErrorValue GUID_BUILDER (IID_EnumErrorValue, 0000052a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumEventReason GUID_BUILDER (IID_EnumEventReason, 00000531, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumEventStatus GUID_BUILDER (IID_EnumEventStatus, 00000530, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumExecuteOption GUID_BUILDER (IID_EnumExecuteOption, 0000051e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFieldAttribute GUID_BUILDER (IID_EnumFieldAttribute, 00000525, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFieldStatus GUID_BUILDER (IID_EnumFieldStatus, 0000057e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFilterCriteria GUID_BUILDER (IID_EnumFilterCriteria, 0000052d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumFilterGroup GUID_BUILDER (IID_EnumFilterGroup, 00000546, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumGetRowsOption GUID_BUILDER (IID_EnumGetRowsOption, 00000542, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumIsolationLevel GUID_BUILDER (IID_EnumIsolationLevel, 00000523, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumLineSeparator GUID_BUILDER (IID_EnumLineSeparator, 00000577, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumLockType GUID_BUILDER (IID_EnumLockType, 0000051d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumMarshalOptions GUID_BUILDER (IID_EnumMarshalOptions, 00000540, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumMode GUID_BUILDER (IID_EnumMode, 00000575, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumMoveRecordOptions GUID_BUILDER (IID_EnumMoveRecordOptions, 00000573, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumObjectState GUID_BUILDER (IID_EnumObjectState, 00000532, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumParameterAttributes GUID_BUILDER (IID_EnumParameterAttributes, 0000052b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumParameterDirection GUID_BUILDER (IID_EnumParameterDirection, 0000052c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPersistFormat GUID_BUILDER (IID_EnumPersistFormat, 00000548, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPosition GUID_BUILDER (IID_EnumPosition, 00000528, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPrepareOption GUID_BUILDER (IID_EnumPrepareOption, 00000522, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumPropertyAttributes GUID_BUILDER (IID_EnumPropertyAttributes, 00000529, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRDSAsyncThreadPriority GUID_BUILDER (IID_EnumRDSAsyncThreadPriority, 0000054b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRDSAutoRecalc GUID_BUILDER (IID_EnumRDSAutoRecalc, 00000554, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRDSUpdateCriteria GUID_BUILDER (IID_EnumRDSUpdateCriteria, 0000054a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordCreateOptions GUID_BUILDER (IID_EnumRecordCreateOptions, 00000570, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordOpenOptions GUID_BUILDER (IID_EnumRecordOpenOptions, 00000571, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordStatus GUID_BUILDER (IID_EnumRecordStatus, 00000527, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumRecordType GUID_BUILDER (IID_EnumRecordType, 0000057d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumResync GUID_BUILDER (IID_EnumResync, 00000544, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSaveOptions GUID_BUILDER (IID_EnumSaveOptions, 0000057c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSchema GUID_BUILDER (IID_EnumSchema, 00000533, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSearchDirection GUID_BUILDER (IID_EnumSearchDirection, 00000547, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumSeek GUID_BUILDER (IID_EnumSeek, 00000552, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStreamOpenOptions GUID_BUILDER (IID_EnumStreamOpenOptions, 0000057a, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStreamType GUID_BUILDER (IID_EnumStreamType, 00000576, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStreamWrite GUID_BUILDER (IID_EnumStreamWrite, 0000057b, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumStringFormat GUID_BUILDER (IID_EnumStringFormat, 00000549, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_EnumXactAttribute GUID_BUILDER (IID_EnumXactAttribute, 00000524, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADO10StdObject GUID_BUILDER (IID_IADO10StdObject, 00000534, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOClass GUID_BUILDER (IID_IADOClass, 00000560, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCollection GUID_BUILDER (IID_IADOCollection, 00000512, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommand GUID_BUILDER (IID_IADOCommand, B08400BD, F9D1, 4d02, B8, 56, 71, D5, DB, A1, 23, E9)
#define IID_IADOCommand15 GUID_BUILDER (IID_IADOCommand15, 00000508, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommand25 GUID_BUILDER (IID_IADOCommand25, 0000054e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommandConstruction GUID_BUILDER (IID_IADOCommandConstruction, 00000517, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCommands GUID_BUILDER (IID_IADOCommands, 00000509, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnection GUID_BUILDER (IID_IADOConnection, 00000550, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnection15 GUID_BUILDER (IID_IADOConnection15, 00000515, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionConstruction GUID_BUILDER (IID_IADOConnectionConstruction, 00000551, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionConstruction15 GUID_BUILDER (IID_IADOConnectionConstruction15, 00000516, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionEvents GUID_BUILDER (IID_IADOConnectionEvents, 00000400, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnectionEventsVt GUID_BUILDER (IID_IADOConnectionEventsVt, 00000402, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOConnections GUID_BUILDER (IID_IADOConnections, 00000518, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOCustomError GUID_BUILDER (IID_IADOCustomError, 00000519, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADODynaCollection GUID_BUILDER (IID_IADODynaCollection, 00000513, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOError GUID_BUILDER (IID_IADOError, 00000500, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOErrors GUID_BUILDER (IID_IADOErrors, 00000501, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField GUID_BUILDER (IID_IADOField, 00000569, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField15 GUID_BUILDER (IID_IADOField15, 00000505, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField20 GUID_BUILDER (IID_IADOField20, 0000054c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOFields GUID_BUILDER (IID_IADOFields, 00000564, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOFields15 GUID_BUILDER (IID_IADOFields15, 00000506, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOFields20 GUID_BUILDER (IID_IADOFields20, 0000054d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOParameter GUID_BUILDER (IID_IADOParameter, 0000050c, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOParameters GUID_BUILDER (IID_IADOParameters, 0000050d, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOProperties GUID_BUILDER (IID_IADOProperties, 00000504, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOProperty GUID_BUILDER (IID_IADOProperty, 00000503, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecord GUID_BUILDER (IID_IADORecord, 00000562, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecord25 GUID_BUILDER (IID_IADORecord25, 00000562, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecord26 GUID_BUILDER (IID_IADORecord26, 00000563, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordConstruction GUID_BUILDER (IID_IADORecordConstruction, 00000567, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordGroup GUID_BUILDER (IID_IADORecordGroup, 00000511, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset GUID_BUILDER (IID_IADORecordset, 00000556, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset15 GUID_BUILDER (IID_IADORecordset15, 0000050e, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset20 GUID_BUILDER (IID_IADORecordset20, 0000054f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset21 GUID_BUILDER (IID_IADORecordset21, 00000555, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordset25 GUID_BUILDER (IID_IADORecordset25, 00000556, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsetConstruction GUID_BUILDER (IID_IADORecordsetConstruction, 00000283, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsetEvents GUID_BUILDER (IID_IADORecordsetEvents, 00000266, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsetEventsVt GUID_BUILDER (IID_IADORecordsetEventsVt, 00000403, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADORecordsets GUID_BUILDER (IID_IADORecordsets, 0000050f, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOStream GUID_BUILDER (IID_IADOStream, 00000565, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOStreamConstruction GUID_BUILDER (IID_IADOStreamConstruction, 00000568, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_ICMemStreamProperties GUID_BUILDER (IID_ICMemStreamProperties, FF184014, B5D3, 4310, AB, F0, 9b, 70, 45, A2, CF, 17)
#define IID_IPrivErrors GUID_BUILDER (IID_IPrivErrors, 00000502, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO20 GUID_BUILDER (LIBID_ADO20, 00000200, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO21 GUID_BUILDER (LIBID_ADO21, 00000201, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO25 GUID_BUILDER (LIBID_ADO25, 00000205, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO26 GUID_BUILDER (LIBID_ADO26, 00000206, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADO27 GUID_BUILDER (LIBID_ADO27, EF53050B, 882e, 4776, B6, 43, ED, A4, 72, E8, E3, F2)
#define LIBID_ADO28 GUID_BUILDER (LIBID_ADO28, 2a75196c, D9EB, 4129, B8, 03, 93, 13, 27, F7, 2d, 5c)
#define LIBID_ADO60 GUID_BUILDER (LIBID_ADO60, B691E011, 1797, 432e, 90, 7a, 4d, 8c, 69, 33, 91, 29)
#define LIBID_ADOR20 GUID_BUILDER (LIBID_ADOR20, 00000300, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define LIBID_ADOR25 GUID_BUILDER (LIBID_ADOR25, 00000305, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#ifdef IMMEDIATE_GUID_USE
CLSID_ADO;
CLSID_CADOCommand;
CLSID_CADOConnection;
CLSID_CADOError;
CLSID_CADOErrorLookup;
CLSID_CADOField;
CLSID_CADOParameter;
CLSID_CADORecField;
CLSID_CADORecord;
CLSID_CADORecordset;
CLSID_CADOStream;
IID__ADO;
IID_ConnectionEvents;
IID_ConnectionEventsVt;
IID_EnumAffect;
IID_EnumCEResync;
IID_EnumCommandType;
IID_EnumCompare;
IID_EnumConnectMode;
IID_EnumConnectOption;
IID_EnumConnectPrompt;
IID_EnumCopyRecordOptions;
IID_EnumCursorLocation;
IID_EnumCursorOption;
IID_EnumCursorType;
IID_EnumDataType;
IID_EnumEditMode;
IID_EnumErrorValue;
IID_EnumEventReason;
IID_EnumEventStatus;
IID_EnumExecuteOption;
IID_EnumFieldAttribute;
IID_EnumFieldStatus;
IID_EnumFilterCriteria;
IID_EnumFilterGroup;
IID_EnumGetRowsOption;
IID_EnumIsolationLevel;
IID_EnumLineSeparator;
IID_EnumLockType;
IID_EnumMarshalOptions;
IID_EnumMode;
IID_EnumMoveRecordOptions;
IID_EnumObjectState;
IID_EnumParameterAttributes;
IID_EnumParameterDirection;
IID_EnumPersistFormat;
IID_EnumPosition;
IID_EnumPrepareOption;
IID_EnumPropertyAttributes;
IID_EnumRDSAsyncThreadPriority;
IID_EnumRDSAutoRecalc;
IID_EnumRDSUpdateCriteria;
IID_EnumRecordCreateOptions;
IID_EnumRecordOpenOptions;
IID_EnumRecordStatus;
IID_EnumRecordType;
IID_EnumResync;
IID_EnumSaveOptions;
IID_EnumSchema;
IID_EnumSearchDirection;
IID_EnumSeek;
IID_EnumStreamOpenOptions;
IID_EnumStreamType;
IID_EnumStreamWrite;
IID_EnumStringFormat;
IID_EnumXactAttribute;
IID_IADO10StdObject;
IID_IADOClass;
IID_IADOCollection;
IID_IADOCommand;
IID_IADOCommand15;
IID_IADOCommand25;
IID_IADOCommandConstruction;
IID_IADOCommands;
IID_IADOConnection;
IID_IADOConnection15;
IID_IADOConnectionConstruction;
IID_IADOConnectionConstruction15;
IID_IADOConnectionEvents;
IID_IADOConnectionEventsVt;
IID_IADOConnections;
IID_IADOCustomError;
IID_IADODynaCollection;
IID_IADOError;
IID_IADOErrors;
IID_IADOField;
IID_IADOField15;
IID_IADOField20;
IID_IADOFields;
IID_IADOFields15;
IID_IADOFields20;
IID_IADOParameter;
IID_IADOParameters;
IID_IADOProperties;
IID_IADOProperty;
IID_IADORecord;
IID_IADORecord25;
IID_IADORecord26;
IID_IADORecordConstruction;
IID_IADORecordGroup;
IID_IADORecordset;
IID_IADORecordset15;
IID_IADORecordset20;
IID_IADORecordset21;
IID_IADORecordset25;
IID_IADORecordsetConstruction;
IID_IADORecordsetEvents;
IID_IADORecordsetEventsVt;
IID_IADORecordsets;
IID_IADOStream;
IID_IADOStreamConstruction;
IID_ICMemStreamProperties;
IID_IPrivErrors;
LIBID_ADO20;
LIBID_ADO21;
LIBID_ADO25;
LIBID_ADO26;
LIBID_ADO27;
LIBID_ADO28;
LIBID_ADO60;
LIBID_ADOR20;
LIBID_ADOR25;
#undef CLSID_ADO
#undef CLSID_CADOCommand
#undef CLSID_CADOConnection
#undef CLSID_CADOError
#undef CLSID_CADOErrorLookup
#undef CLSID_CADOField
#undef CLSID_CADOParameter
#undef CLSID_CADORecField
#undef CLSID_CADORecord
#undef CLSID_CADORecordset
#undef CLSID_CADOStream
#undef IID__ADO
#undef IID_ConnectionEvents
#undef IID_ConnectionEventsVt
#undef IID_EnumAffect
#undef IID_EnumCEResync
#undef IID_EnumCommandType
#undef IID_EnumCompare
#undef IID_EnumConnectMode
#undef IID_EnumConnectOption
#undef IID_EnumConnectPrompt
#undef IID_EnumCopyRecordOptions
#undef IID_EnumCursorLocation
#undef IID_EnumCursorOption
#undef IID_EnumCursorType
#undef IID_EnumDataType
#undef IID_EnumEditMode
#undef IID_EnumErrorValue
#undef IID_EnumEventReason
#undef IID_EnumEventStatus
#undef IID_EnumExecuteOption
#undef IID_EnumFieldAttribute
#undef IID_EnumFieldStatus
#undef IID_EnumFilterCriteria
#undef IID_EnumFilterGroup
#undef IID_EnumGetRowsOption
#undef IID_EnumIsolationLevel
#undef IID_EnumLineSeparator
#undef IID_EnumLockType
#undef IID_EnumMarshalOptions
#undef IID_EnumMode
#undef IID_EnumMoveRecordOptions
#undef IID_EnumObjectState
#undef IID_EnumParameterAttributes
#undef IID_EnumParameterDirection
#undef IID_EnumPersistFormat
#undef IID_EnumPosition
#undef IID_EnumPrepareOption
#undef IID_EnumPropertyAttributes
#undef IID_EnumRDSAsyncThreadPriority
#undef IID_EnumRDSAutoRecalc
#undef IID_EnumRDSUpdateCriteria
#undef IID_EnumRecordCreateOptions
#undef IID_EnumRecordOpenOptions
#undef IID_EnumRecordStatus
#undef IID_EnumRecordType
#undef IID_EnumResync
#undef IID_EnumSaveOptions
#undef IID_EnumSchema
#undef IID_EnumSearchDirection
#undef IID_EnumSeek
#undef IID_EnumStreamOpenOptions
#undef IID_EnumStreamType
#undef IID_EnumStreamWrite
#undef IID_EnumStringFormat
#undef IID_EnumXactAttribute
#undef IID_IADO10StdObject
#undef IID_IADOClass
#undef IID_IADOCollection
#undef IID_IADOCommand
#undef IID_IADOCommand15
#undef IID_IADOCommand25
#undef IID_IADOCommandConstruction
#undef IID_IADOCommands
#undef IID_IADOConnection
#undef IID_IADOConnection15
#undef IID_IADOConnectionConstruction
#undef IID_IADOConnectionConstruction15
#undef IID_IADOConnectionEvents
#undef IID_IADOConnectionEventsVt
#undef IID_IADOConnections
#undef IID_IADOCustomError
#undef IID_IADODynaCollection
#undef IID_IADOError
#undef IID_IADOErrors
#undef IID_IADOField
#undef IID_IADOField15
#undef IID_IADOField20
#undef IID_IADOFields
#undef IID_IADOFields15
#undef IID_IADOFields20
#undef IID_IADOParameter
#undef IID_IADOParameters
#undef IID_IADOProperties
#undef IID_IADOProperty
#undef IID_IADORecord
#undef IID_IADORecord25
#undef IID_IADORecord26
#undef IID_IADORecordConstruction
#undef IID_IADORecordGroup
#undef IID_IADORecordset
#undef IID_IADORecordset15
#undef IID_IADORecordset20
#undef IID_IADORecordset21
#undef IID_IADORecordset25
#undef IID_IADORecordsetConstruction
#undef IID_IADORecordsetEvents
#undef IID_IADORecordsetEventsVt
#undef IID_IADORecordsets
#undef IID_IADOStream
#undef IID_IADOStreamConstruction
#undef IID_ICMemStreamProperties
#undef IID_IPrivErrors
#undef LIBID_ADO20
#undef LIBID_ADO21
#undef LIBID_ADO25
#undef LIBID_ADO26
#undef LIBID_ADO27
#undef LIBID_ADO28
#undef LIBID_ADO60
#undef LIBID_ADOR20
#undef LIBID_ADOR25
#endif
#ifdef _LOCKBYTESUPPORT_
#define IID_IADOField25 GUID_BUILDER (IID_IADOField25, 00000569, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#define IID_IADOField26 GUID_BUILDER (IID_IADOField26, 00000557, 0000, 0010, 80, 00, 00, AA, 00, 6d, 2e, A4)
#ifdef IMMEDIATE_GUID_USE
IID_IADOField25;
IID_IADOField26;
#undef IID_IADOField25
#undef IID_IADOField26
#endif
#endif
#ifdef RESERVED_GUIDS_BEYOND_THIS_POINT
#define ADO_Reserved_4 GUID_BUILDER (ADO_Reserved_4, 567747f1, 658b, 4906, 82, C4, E9, CD, A1, 46, 26, 15)
#define ADO_Reserved_5 GUID_BUILDER (ADO_Reserved_5, 986761e8, 7269, 4890, AA, 65, AD, 7c, 03, 69, 7a, 6d)
#define ADO_Reserved_6 GUID_BUILDER (ADO_Reserved_6, ED5A4589, 7a9d, 41df, 89, 86, CC, A9, 25, 01, A5, DA)
#define ADO_Reserved_7 GUID_BUILDER (ADO_Reserved_7, C029178A, F16B, 4a06, 82, 93, A8, 08, B7, F8, 78, 92)
#define ADO_Reserved_8 GUID_BUILDER (ADO_Reserved_8, FD6974FD, 21fb, 409c, 96, 56, A5, 68, FE, C0, AC, 01)
#define ADO_Reserved_9 GUID_BUILDER (ADO_Reserved_9, F23FCB5E, 7159, 4cba, A3, 41, 0e, 7a, A5, 15, 18, 70)
#define ADO_Reserved_10 GUID_BUILDER (ADO_Reserved_10, E724D5C9, 327c, 43f7, 86, 4c, 68, 2f, FF, 5c, 99, 93)
#define ADO_Reserved_12 GUID_BUILDER (ADO_Reserved_12, 8831ebb5, 2c09, 4ddd, 9a, 7a, AC, 13, 6d, 58, D7, 21)
#define ADO_Reserved_13 GUID_BUILDER (ADO_Reserved_13, 447b1221, 64fa, 44e9, B1, 46, B1, 1f, 16, E3, 14, B2)
#define ADO_Reserved_14 GUID_BUILDER (ADO_Reserved_14, FC528DC2, A992, 44d3, 97, 9f, 07, F7, F4, 45, 5f, 23)
#define ADO_Reserved_15 GUID_BUILDER (ADO_Reserved_15, C2CC7BC0, 9f8b, 46c8, 83, 6b, BC, 46, 70, 28, F4, 54)
#define ADO_Reserved_16 GUID_BUILDER (ADO_Reserved_16, 4687ee6c, 12ce, 4a31, 97, E9, E6, 49, 6d, E7, 2c, 71)
#define ADO_Reserved_17 GUID_BUILDER (ADO_Reserved_17, 4b56fc5d, 992f, 4339, 95, 81, C5, 40, 7a, B2, BF, FD)
#define ADO_Reserved_18 GUID_BUILDER (ADO_Reserved_18, 1f13bfb3, 8ba8, 46ca, 91, 78, 74, 28, EF, 9a, 85, C0)
#define ADO_Reserved_19 GUID_BUILDER (ADO_Reserved_19, 0b410060, 4d75, 4f77, 96, A1, 68, 4c, 38, 15, E1, B1)
#define ADO_Reserved_20 GUID_BUILDER (ADO_Reserved_20, 5593f2e0, 436b, 40b8, 81, A8, 1b, 7e, F4, E6, 25, 2c)
#define ADO_Reserved_21 GUID_BUILDER (ADO_Reserved_21, 88447b2f, E1C9, 413e, BE, E7, A7, D2, B9, 0e, D1, 96)
#define ADO_Reserved_22 GUID_BUILDER (ADO_Reserved_22, 89bfee1b, 8cb5, 4a90, 89, AF, E8, 29, 93, 4e, 6c, 48)
#define ADO_Reserved_23 GUID_BUILDER (ADO_Reserved_23, 28d7f9fc, F485, 4bdb, 9c, C4, 6f, AE, 44, F9, 9f, D9)
#define ADO_Reserved_24 GUID_BUILDER (ADO_Reserved_24, 1bb4223f, B0E8, 4540, 96, FD, B8, FE, D9, A7, C0, 8b)
#define ADO_Reserved_25 GUID_BUILDER (ADO_Reserved_25, AD1A1568, 8b4a, 403f, 84, 76, D8, F6, 33, 4d, BD, 9f)
#define ADO_Reserved_26 GUID_BUILDER (ADO_Reserved_26, 1326b4d8, EE0B, 4054, 8f, 4c, 86, 35, 9f, 00, 24, AD)
#define ADO_Reserved_27 GUID_BUILDER (ADO_Reserved_27, 98b7eb70, 7aed, 401a, AF, 6d, A6, B8, DB, A0, AF, A6)
#define ADO_Reserved_28 GUID_BUILDER (ADO_Reserved_28, FD46F2C2, 7fda, 4dc9, A2, DB, D9, BE, 4f, 59, 98, C2)
#define ADO_Reserved_29 GUID_BUILDER (ADO_Reserved_29, FAA37542, B471, 4183, A6, 56, 99, C8, FD, 80, FF, 73)
#define ADO_Reserved_30 GUID_BUILDER (ADO_Reserved_30, 56ce86f1, 3116, 4104, A5, 28, 17, D1, 1e, DC, 68, 2a)
#define ADO_Reserved_31 GUID_BUILDER (ADO_Reserved_31, 83e8cf0e, 176f, 4908, 86, 3a, 2a, 77, 4d, 76, 9b, EF)
#define ADO_Reserved_32 GUID_BUILDER (ADO_Reserved_32, 0494d18d, 98f7, 4a38, 80, DF, 35, F8, 80, 98, BD, DF)
#define ADO_Reserved_33 GUID_BUILDER (ADO_Reserved_33, 00c61f59, 4e7f, 4093, BF, FD, 03, 53, B4, 5d, E5, 8b)
#define ADO_Reserved_34 GUID_BUILDER (ADO_Reserved_34, 732a172f, 384d, 4c4a, A6, AF, D2, 28, 20, D3, 34, 26)
#define ADO_Reserved_35 GUID_BUILDER (ADO_Reserved_35, 104e1f7e, 8993, 455c, B7, D8, 58, CD, 88, 74, 80, 75)
#define ADO_Reserved_36 GUID_BUILDER (ADO_Reserved_36, C12B8DFD, 42f7, 408e, AE, FB, A7, C2, FB, 43, 49, A7)
#define ADO_Reserved_37 GUID_BUILDER (ADO_Reserved_37, EE881FC9, 6c2f, 45a2, BA, 17, 24, 95, BC, 72, 4e, 55)
#define ADO_Reserved_38 GUID_BUILDER (ADO_Reserved_38, 7381c764, 646b, 4f11, A6, 73, 13, 50, 98, 9d, 62, 3a)
#define ADO_Reserved_39 GUID_BUILDER (ADO_Reserved_39, D8E4965C, F571, 4771, 8a, 74, 63, 95, 05, 16, B0, 88)
#define ADO_Reserved_40 GUID_BUILDER (ADO_Reserved_40, 2be262e5, 3a8c, 4b07, A3, C3, 3b, B7, 40, EF, 40, 95)
#define ADO_Reserved_41 GUID_BUILDER (ADO_Reserved_41, 3e90a199, 4f86, 445c, 84, 8e, A6, 17, 86, B9, 67, D1)
#define ADO_Reserved_42 GUID_BUILDER (ADO_Reserved_42, DCD025E0, DA44, 47e4, 82, 65, E4, A7, 6b, 85, 29, 0c)
#define ADO_Reserved_43 GUID_BUILDER (ADO_Reserved_43, 31eff562, FB6B, 41d6, 81, AD, 30, 1b, B0, 53, 9c, 61)
#define ADO_Reserved_44 GUID_BUILDER (ADO_Reserved_44, BD3ECD6B, F4A7, 42fc, 90, F1, 75, D5, 37, 2a, F2, 8f)
#define ADO_Reserved_45 GUID_BUILDER (ADO_Reserved_45, 6efbc56f, 67e4, 4f7d, BE, 59, C5, D6, FA, 21, B7, 77)
#define ADO_Reserved_46 GUID_BUILDER (ADO_Reserved_46, 3bf5e1fc, B960, 4564, 86, 54, 07, B0, 7a, AF, 6e, 4f)
#define ADO_Reserved_47 GUID_BUILDER (ADO_Reserved_47, 2430f883, 1462, 4899, 9a, DE, F7, 24, 27, FD, 5e, E4)
#define ADO_Reserved_48 GUID_BUILDER (ADO_Reserved_48, AB663F07, BA4D, 42cc, 93, C6, F2, EA, 9f, C8, BA, 74)
#define ADO_Reserved_49 GUID_BUILDER (ADO_Reserved_49, D808C6F7, 36c0, 4302, 80, EE, C4, B7, 00, F8, D2, 38)
#define ADO_Reserved_50 GUID_BUILDER (ADO_Reserved_50, AB146E06, E493, 4df0, A1, CD, 07, D4, B0, 74, 46, C3)
#define ADO_Reserved_51 GUID_BUILDER (ADO_Reserved_51, 74f1fd51, 9cb8, 4186, 8c, 3d, DD, F3, 55, 2a, 99, 9b)
#define ADO_Reserved_52 GUID_BUILDER (ADO_Reserved_52, 71701a97, 5386, 43b0, 95, 8d, 3c, EE, 40, 57, B1, 99)
#define ADO_Reserved_53 GUID_BUILDER (ADO_Reserved_53, 63cc6087, A6C6, 4ccf, 8e, D4, 17, 5b, 91, A6, 32, C5)
#define ADO_Reserved_54 GUID_BUILDER (ADO_Reserved_54, 7323fd37, B7D8, 4f8a, 80, F4, E8, 3d, 0b, 2a, 73, B5)
#define ADO_Reserved_55 GUID_BUILDER (ADO_Reserved_55, 5c666403, 2a0a, 4b12, 8e, 1d, 41, 19, 88, DD, E0, 0a)
#define ADO_Reserved_56 GUID_BUILDER (ADO_Reserved_56, ECA4C14C, 5529, 49df, B1, 3c, 17, F0, 22, DB, 1b, A6)
#define ADO_Reserved_57 GUID_BUILDER (ADO_Reserved_57, 304ade1d, 4458, 4a6a, 93, 48, 1f, 7c, 2e, 64, D6, FA)
#define ADO_Reserved_58 GUID_BUILDER (ADO_Reserved_58, D87A7AF2, FB3C, 49bc, B2, 69, F3, 57, 36, E7, 23, 2e)
#define ADO_Reserved_59 GUID_BUILDER (ADO_Reserved_59, 542d6d77, AECB, 4aff, B1, C6, 54, EF, 79, 8f, 61, ED)
#define ADO_Reserved_60 GUID_BUILDER (ADO_Reserved_60, 46359618, 34ae, 410e, AE, 20, F3, D4, E1, BD, A6, BE)
#define ADO_Reserved_61 GUID_BUILDER (ADO_Reserved_61, F98DF79B, 2935, 464b, AA, 08, CC, EF, F1, 5f, 71, 32)
#define ADO_Reserved_62 GUID_BUILDER (ADO_Reserved_62, 214887fb, 4867, 4dd8, 83, 9d, 4c, F0, BB, 83, E1, 95)
#define ADO_Reserved_63 GUID_BUILDER (ADO_Reserved_63, C9B68C08, F663, 4386, 8f, 5b, FA, BA, E0, 27, 43, 6d)
#define ADO_Reserved_64 GUID_BUILDER (ADO_Reserved_64, F46511DD, 10b6, 49cf, AA, 75, 5e, E2, 7c, FD, 9e, A4)
#define ADO_Reserved_65 GUID_BUILDER (ADO_Reserved_65, C057EF87, F3A8, 4890, A9, 56, 57, 8c, 07, CD, 2e, F8)
#define ADO_Reserved_66 GUID_BUILDER (ADO_Reserved_66, 1c9e0666, 1405, 4dc5, BD, A7, 65, F4, B4, 16, 1d, 7b)
#define ADO_Reserved_67 GUID_BUILDER (ADO_Reserved_67, B91484C2, 5e48, 438c, 91, CD, B9, D6, 99, 32, 30, E4)
#define ADO_Reserved_68 GUID_BUILDER (ADO_Reserved_68, 17d12bfe, 6c9f, 4229, 87, 95, 60, 20, 6f, D1, 45, 35)
#define ADO_Reserved_69 GUID_BUILDER (ADO_Reserved_69, 5a816ea3, EE82, 4f65, BC, 76, 74, 07, E9, E5, 43, 58)
#define ADO_Reserved_70 GUID_BUILDER (ADO_Reserved_70, 3ad0de2b, AA3E, 4508, BE, 9e, 1e, AA, DF, 1c, 4d, 8b)
#define ADO_Reserved_71 GUID_BUILDER (ADO_Reserved_71, 54dc8b80, 7869, 4d90, AB, 5c, 8c, 54, 1a, 74, EE, F8)
#define ADO_Reserved_72 GUID_BUILDER (ADO_Reserved_72, 80a200b0, 5783, 48e7, 81, 25, B9, E4, BF, 59, F7, 22)
#define ADO_Reserved_73 GUID_BUILDER (ADO_Reserved_73, 1502cb61, 8c42, 4c4b, B9, 0c, 3a, 9e, 4e, 46, D1, BE)
#define ADO_Reserved_74 GUID_BUILDER (ADO_Reserved_74, 70eb3f53, 91a0, 42f5, BE, 50, F1, 02, DE, C8, 92, 27)
#define ADO_Reserved_75 GUID_BUILDER (ADO_Reserved_75, 4680aa81, B27C, 4a8f, 83, F9, 6f, B7, E1, 8e, D2, 3c)
#define ADO_Reserved_76 GUID_BUILDER (ADO_Reserved_76, EF31F9EB, 4541, 4fcb, 8d, 67, 59, 2c, 85, 50, 93, 05)
#define ADO_Reserved_77 GUID_BUILDER (ADO_Reserved_77, 88b77d15, 997e, 4e3a, 83, 20, 3b, 37, 83, 52, 86, D5)
#define ADO_Reserved_78 GUID_BUILDER (ADO_Reserved_78, D03A3AA8, 1aac, 4867, 93, C9, 5f, 51, D8, 7d, 6a, 74)
#define ADO_Reserved_79 GUID_BUILDER (ADO_Reserved_79, 47022458, 17e7, 4bd7, 90, 81, 85, B4, 0b, 03, 6d, 5b)
#define ADO_Reserved_80 GUID_BUILDER (ADO_Reserved_80, 9e5bee82, F410, 44c7, 9d, 6d, 3f, 7d, D2, 8b, A7, CC)
#define ADO_Reserved_81 GUID_BUILDER (ADO_Reserved_81, 278a1c47, 3c39, 41c7, A3, FB, 7c, 2e, 62, 0b, E4, 44)
#define ADO_Reserved_82 GUID_BUILDER (ADO_Reserved_82, 964cbf05, 8084, 4c15, 9c, F5, 8c, 4b, 81, 41, B4, AE)
#define ADO_Reserved_83 GUID_BUILDER (ADO_Reserved_83, A86296A0, F272, 4acd, 83, 06, FF, CA, FF, 89, 14, A9)
#define ADO_Reserved_84 GUID_BUILDER (ADO_Reserved_84, F805FC7C, 7c4a, 43a1, B0, 14, 71, EA, 0e, EB, EA, 5f)
#define ADO_Reserved_85 GUID_BUILDER (ADO_Reserved_85, 33e6e9b6, 0bea, 4549, 90, CB, 3b, 64, 12, DB, 8c, F5)
#define ADO_Reserved_86 GUID_BUILDER (ADO_Reserved_86, 7337e3dc, 219f, 4d9e, 82, 5b, 0a, 2c, 18, 4e, C0, DE)
#define ADO_Reserved_87 GUID_BUILDER (ADO_Reserved_87, 7397bafc, 354e, 4f18, 9f, 76, C3, 3a, 4e, EF, 6d, 20)
#define ADO_Reserved_88 GUID_BUILDER (ADO_Reserved_88, 5ec2d163, E671, 4186, BE, 72, BF, FF, 72, D5, 7a, 5c)
#define ADO_Reserved_89 GUID_BUILDER (ADO_Reserved_89, 8b37b801, 0a35, 4f97, A3, 43, 82, 57, B3, E7, 6c, 79)
#define ADO_Reserved_90 GUID_BUILDER (ADO_Reserved_90, FAD396B6, EE4E, 4f70, 85, 54, E8, 23, 9e, 47, 05, 29)
#define ADO_Reserved_91 GUID_BUILDER (ADO_Reserved_91, 6063972c, 395b, 4fef, A0, 04, ED, 95, E7, D8, 72, 0d)
#define ADO_Reserved_92 GUID_BUILDER (ADO_Reserved_92, 85aeed72, A1F8, 4597, 82, 32, F8, 40, EF, C9, 21, 09)
#define ADO_Reserved_93 GUID_BUILDER (ADO_Reserved_93, CE4FD8FF, 553a, 4424, B1, EA, 3e, DF, 11, 42, AD, 8b)
#define ADO_Reserved_94 GUID_BUILDER (ADO_Reserved_94, 1a856a0f, 0844, 4de4, AC, 7b, 75, 30, 62, 56, 39, 86)
#define ADO_Reserved_95 GUID_BUILDER (ADO_Reserved_95, 09a742a1, 19ed, 43bb, 85, E9, 99, 23, DE, C4, 17, F7)
#define ADO_Reserved_96 GUID_BUILDER (ADO_Reserved_96, 3695bd0c, 9de6, 4895, 84, E6, B2, 4c, E7, 55, 47, 02)
#define ADO_Reserved_97 GUID_BUILDER (ADO_Reserved_97, 8802531f, 6ea8, 4a55, 8a, 18, 05, 97, 86, 3c, DA, 38)
#define ADO_Reserved_98 GUID_BUILDER (ADO_Reserved_98, 498e70f0, B13F, 4804, AD, D5, 72, E8, 0e, 28, 05, E7)
#define ADO_Reserved_99 GUID_BUILDER (ADO_Reserved_99, 50d0e90f, E3A4, 4a93, 8b, 48, 71, 21, 66, E8, 87, CD)
#define ADO_Reserved_100 GUID_BUILDER (ADO_Reserved_100, F1D30550, 8515, 4f8b, 93, E1, 1e, F0, 12, 1b, 4b, D0)
#define ADO_Reserved_101 GUID_BUILDER (ADO_Reserved_101, 901cda31, 8cdb, 4a5b, 91, 6b, 63, EA, 90, 1d, 8c, E0)
#define ADO_Reserved_102 GUID_BUILDER (ADO_Reserved_102, 00bda239, 1094, 4aef, 93, AD, 7c, E2, 73, 6c, 42, 25)
#define ADO_Reserved_103 GUID_BUILDER (ADO_Reserved_103, DCA4E51E, 250e, 4ab3, B4, 90, F2, CB, 9e, 8f, 6c, C4)
#define ADO_Reserved_104 GUID_BUILDER (ADO_Reserved_104, 24679ebd, 8535, 4494, A9, 1c, 18, 91, F0, 75, 5b, 6f)
#define ADO_Reserved_105 GUID_BUILDER (ADO_Reserved_105, F041739E, F37E, 4925, 94, 25, FB, 51, 5e, 56, 0f, 54)
#define ADO_Reserved_106 GUID_BUILDER (ADO_Reserved_106, FECACBBF, A73C, 4616, 84, 2f, FE, F5, 72, 85, 70, AB)
#define ADO_Reserved_107 GUID_BUILDER (ADO_Reserved_107, DBAD7368, 1ded, 4a77, B8, 0a, 1a, EB, 12, 99, BD, B3)
#define ADO_Reserved_108 GUID_BUILDER (ADO_Reserved_108, CFDE81B8, 66ef, 4503, 84, A8, 7e, 8f, C8, AB, 0b, 31)
#define ADO_Reserved_109 GUID_BUILDER (ADO_Reserved_109, 9b7484fa, 023a, 4ffb, A2, 94, 11, A6, E5, 97, AB, 35)
#define ADO_Reserved_110 GUID_BUILDER (ADO_Reserved_110, 54f0f09c, 1201, 49a9, B4, 65, 6b, 02, 9b, 5f, E3, 12)
#define ADO_Reserved_111 GUID_BUILDER (ADO_Reserved_111, BFFA01F8, EAE7, 4fa1, BF, 74, 37, 73, 3f, BF, 36, 4c)
#define ADO_Reserved_112 GUID_BUILDER (ADO_Reserved_112, 12fad291, 4aab, 4038, 9d, D1, 04, E4, E7, A9, E0, F4)
#define ADO_Reserved_113 GUID_BUILDER (ADO_Reserved_113, 8d2af964, C489, 4d77, A8, 17, A0, 4d, B1, DB, 26, A5)
#define ADO_Reserved_114 GUID_BUILDER (ADO_Reserved_114, 79f89dd7, BE86, 4b36, BE, 9b, FA, 75, 24, 18, 55, 68)
#define ADO_Reserved_115 GUID_BUILDER (ADO_Reserved_115, 4387d7fa, 7a52, 4f67, BF, B6, 7e, 7d, 7a, B7, C9, DE)
#define ADO_Reserved_116 GUID_BUILDER (ADO_Reserved_116, 7571252f, 0e49, 4f4b, A3, 87, 9e, D9, 70, 54, 68, D8)
#define ADO_Reserved_117 GUID_BUILDER (ADO_Reserved_117, 0dab016b, 6ba4, 470f, 98, 1a, 2b, A7, 65, D4, 60, 4b)
#define ADO_Reserved_118 GUID_BUILDER (ADO_Reserved_118, E97D87A3, 8a95, 4080, 8c, A9, ED, 9f, 05, 1a, B7, B2)
#define ADO_Reserved_119 GUID_BUILDER (ADO_Reserved_119, C9EA1598, 2d23, 4978, 9b, 33, 3d, 2c, C4, 0a, B7, A1)
#define ADO_Reserved_120 GUID_BUILDER (ADO_Reserved_120, E41CA9FC, 7fc9, 4831, 90, CE, F5, 33, 96, CE, 42, C3)
#define ADO_Reserved_121 GUID_BUILDER (ADO_Reserved_121, 15df0905, 4acc, 44f7, A0, 1e, 0f, EF, 56, 3c, C4, E5)
#define ADO_Reserved_122 GUID_BUILDER (ADO_Reserved_122, D2879A0E, D0B3, 42a2, A1, 16, D1, 5e, 13, C7, 51, 77)
#define ADO_Reserved_123 GUID_BUILDER (ADO_Reserved_123, A999A8D2, 5e83, 4c0e, 83, 97, 18, 33, 19, 32, 79, CD)
#define ADO_Reserved_124 GUID_BUILDER (ADO_Reserved_124, C6AFAE72, B3FF, 48ab, B1, EE, F5, EE, F9, 05, DF, 47)
#define ADO_Reserved_125 GUID_BUILDER (ADO_Reserved_125, 0deadf50, 0940, 4f0e, AC, 3b, 94, 80, B7, 32, 2b, 1b)
#define ADO_Reserved_126 GUID_BUILDER (ADO_Reserved_126, 61278818, 2fe6, 4892, 8b, 95, A7, 5c, AC, 6e, 21, BB)
#define ADO_Reserved_127 GUID_BUILDER (ADO_Reserved_127, 3ac2bed7, 1111, 4e55, B2, 06, 1f, 54, 18, 94, 4c, BA)
#define ADO_Reserved_128 GUID_BUILDER (ADO_Reserved_128, 3d4751e2, 04b8, 4593, A0, 0d, 3a, 4b, 94, 67, 4b, E9)
#define ADO_Reserved_129 GUID_BUILDER (ADO_Reserved_129, 69bc6751, FE10, 4b3f, 89, 35, 40, 2f, A5, FD, 04, 82)
#define ADO_Reserved_130 GUID_BUILDER (ADO_Reserved_130, 5867af81, 995a, 4686, 8b, CB, 13, B6, 8b, 10, 26, 8a)
#define ADO_Reserved_131 GUID_BUILDER (ADO_Reserved_131, DA46C62F, BDCD, 4745, A3, CA, 4e, C9, FA, AB, E1, 10)
#define ADO_Reserved_132 GUID_BUILDER (ADO_Reserved_132, 93028aa6, EECC, 482f, B3, A4, 2f, D4, 13, 04, 96, 5e)
#define ADO_Reserved_133 GUID_BUILDER (ADO_Reserved_133, AB14F604, D05E, 4e50, A4, 5b, A8, 10, 48, E3, A4, 75)
#define ADO_Reserved_134 GUID_BUILDER (ADO_Reserved_134, 35267875, 8420, 4226, 87, C0, 25, 00, 58, 56, 0f, D2)
#define ADO_Reserved_135 GUID_BUILDER (ADO_Reserved_135, 16e34932, EEFA, 440e, A7, 86, 6a, 36, D2, C6, 21, 69)
#define ADO_Reserved_136 GUID_BUILDER (ADO_Reserved_136, 2710a15a, B2B0, 46ec, BD, EC, E2, 2e, A8, A6, 28, FA)
#define ADO_Reserved_137 GUID_BUILDER (ADO_Reserved_137, 2777696f, CB34, 4cc4, A0, A9, 02, EA, 15, 16, 63, DD)
#define ADO_Reserved_138 GUID_BUILDER (ADO_Reserved_138, D11CA1A0, A261, 4ba2, 81, 68, 46, 52, 32, 9a, 60, 77)
#define ADO_Reserved_139 GUID_BUILDER (ADO_Reserved_139, C33509A8, 883f, 4bea, AF, B5, 35, 26, CF, 0b, 8b, E1)
#define ADO_Reserved_140 GUID_BUILDER (ADO_Reserved_140, DEBDC8E1, 4f02, 43e1, 8c, 88, 0b, A8, E1, 50, 6b, F5)
#define ADO_Reserved_141 GUID_BUILDER (ADO_Reserved_141, 552f8531, 3f79, 4db3, 87, 7b, 8e, 54, C3, 5b, 38, 54)
#define ADO_Reserved_142 GUID_BUILDER (ADO_Reserved_142, 1e6a2bf4, 241c, 48a1, 90, 66, C6, E1, E5, 2b, 0a, 4b)
#define ADO_Reserved_143 GUID_BUILDER (ADO_Reserved_143, 8e5b2a8d, 1f0d, 429d, 94, 95, 16, F8, E9, 58, 06, 80)
#define ADO_Reserved_144 GUID_BUILDER (ADO_Reserved_144, 57faec9d, 5cde, 4ebe, 84, A1, 5a, CB, 75, 7c, D4, 51)
#define ADO_Reserved_145 GUID_BUILDER (ADO_Reserved_145, 707b03c3, A3B0, 4f00, 81, 61, 6e, 3f, 02, 7f, F0, B3)
#define ADO_Reserved_146 GUID_BUILDER (ADO_Reserved_146, 5dd552f4, 0718, 4bdd, 82, 6c, 7c, C3, 5c, DA, 1d, 93)
#define ADO_Reserved_147 GUID_BUILDER (ADO_Reserved_147, F3247F33, E377, 4a44, A9, 37, AC, E6, 36, F6, 58, 1f)
#define ADO_Reserved_148 GUID_BUILDER (ADO_Reserved_148, E7C324C4, 38a5, 42a8, 99, FF, 34, 5d, AD, 8c, D2, 29)
#define ADO_Reserved_149 GUID_BUILDER (ADO_Reserved_149, D14FCA70, 390d, 4158, B5, C3, 9a, 02, D1, F7, 85, 87)
#define ADO_Reserved_150 GUID_BUILDER (ADO_Reserved_150, 58d30b5f, 92a5, 4ef4, 8e, 45, A0, 24, A9, CD, F9, FE)
#define ADO_Reserved_151 GUID_BUILDER (ADO_Reserved_151, 9673df76, 73e4, 4c66, 89, 14, 7f, A4, 17, 43, 6c, 4a)
#define ADO_Reserved_152 GUID_BUILDER (ADO_Reserved_152, 9fa8a7e1, CF3C, 4a61, BE, 10, 1d, 85, 5f, A0, D5, 08)
#define ADO_Reserved_153 GUID_BUILDER (ADO_Reserved_153, B657729F, 6cc7, 4392, BD, 56, DC, ED, 6e, 53, F6, 4c)
#define ADO_Reserved_154 GUID_BUILDER (ADO_Reserved_154, 06e5224b, 8c27, 4f41, 8f, B7, C6, 41, E4, C5, 04, 2d)
#define ADO_Reserved_155 GUID_BUILDER (ADO_Reserved_155, 2268a619, CC1D, 4f72, B8, 3f, 79, 63, C0, 13, B1, 3d)
#define ADO_Reserved_156 GUID_BUILDER (ADO_Reserved_156, FB4810F3, 3a65, 4c33, B3, 99, B5, C9, 33, 11, 11, D7)
#define ADO_Reserved_157 GUID_BUILDER (ADO_Reserved_157, 9011be74, 6c9d, 44f7, BE, 2c, 8a, 2a, BB, 62, 51, AC)
#define ADO_Reserved_158 GUID_BUILDER (ADO_Reserved_158, 3145c182, 82c6, 4082, BB, E7, 79, 1a, 2f, 49, 6c, B1)
#define ADO_Reserved_159 GUID_BUILDER (ADO_Reserved_159, D8865377, 8799, 4c08, 97, E5, D6, 7e, 88, 6f, F5, 49)
#define ADO_Reserved_160 GUID_BUILDER (ADO_Reserved_160, 8993232e, 8afa, 4552, A7, 8c, C6, 6c, 9d, 3a, E6, D0)
#define ADO_Reserved_161 GUID_BUILDER (ADO_Reserved_161, 40af1931, 8721, 427b, 83, 5e, 50, 87, 79, BD, 1e, B2)
#define ADO_Reserved_162 GUID_BUILDER (ADO_Reserved_162, 9c6e2b26, 4468, 427c, 8c, F5, 01, 14, 7d, B8, DF, 22)
#define ADO_Reserved_163 GUID_BUILDER (ADO_Reserved_163, 3537fa93, 7e92, 4ce0, 80, 96, EF, DC, 1a, 80, A8, 95)
#define ADO_Reserved_164 GUID_BUILDER (ADO_Reserved_164, 36992492, 3e17, 47c1, AB, 98, 5f, 0c, 49, B4, 6a, 25)
#define ADO_Reserved_165 GUID_BUILDER (ADO_Reserved_165, 01662edb, CE23, 4215, AE, 9d, 51, 51, E6, DA, 36, 3c)
#define ADO_Reserved_166 GUID_BUILDER (ADO_Reserved_166, 80b4a97b, 5256, 4397, 89, CD, 4e, F9, 91, 0f, 1d, E6)
#define ADO_Reserved_167 GUID_BUILDER (ADO_Reserved_167, C2341A38, 2c6b, 414e, 96, A8, 8b, 5e, 47, F8, 14, DA)
#define ADO_Reserved_168 GUID_BUILDER (ADO_Reserved_168, 5c2b7578, 53fa, 4ace, 8e, 6c, 39, 18, 2f, 68, D2, 67)
#define ADO_Reserved_169 GUID_BUILDER (ADO_Reserved_169, B80C1E36, 611b, 49d4, 97, 19, 4e, 0c, 59, 0e, 2e, E1)
#define ADO_Reserved_170 GUID_BUILDER (ADO_Reserved_170, BA269EB4, B741, 4fb2, A9, C9, 52, 4c, 9d, BE, 7c, 16)
#define ADO_Reserved_171 GUID_BUILDER (ADO_Reserved_171, EE49769D, 1028, 4429, A9, 66, 2f, A8, 1d, 70, EE, 19)
#define ADO_Reserved_172 GUID_BUILDER (ADO_Reserved_172, 541fc621, D6E6, 4cc4, B4, 98, 8e, 4f, AA, A0, 65, BF)
#define ADO_Reserved_173 GUID_BUILDER (ADO_Reserved_173, AA8B544C, 4067, 4e00, 96, 09, 95, EE, 21, 68, AF, CE)
#define ADO_Reserved_174 GUID_BUILDER (ADO_Reserved_174, 5b161b2b, D02C, 4300, A1, 54, CF, DC, 25, 3b, 13, 0d)
#define ADO_Reserved_175 GUID_BUILDER (ADO_Reserved_175, 81f62203, 182e, 42de, B1, B7, 63, 5f, C6, 6f, 6e, 9e)
#define ADO_Reserved_176 GUID_BUILDER (ADO_Reserved_176, 04934bdd, A530, 48ec, 91, CE, 11, 83, 42, 5b, DB, 61)
#define ADO_Reserved_177 GUID_BUILDER (ADO_Reserved_177, F6997841, 9a99, 48aa, B0, 56, 8c, 75, 17, 06, 41, 7f)
#define ADO_Reserved_178 GUID_BUILDER (ADO_Reserved_178, 353fe3f1, DE50, 45ee, 91, E9, 3e, 62, E3, C7, 86, 04)
#define ADO_Reserved_179 GUID_BUILDER (ADO_Reserved_179, F142C8C6, 9e24, 422e, 81, BD, D2, 94, 7f, 93, 94, D4)
#define ADO_Reserved_180 GUID_BUILDER (ADO_Reserved_180, 95951773, 9566, 46c9, 86, B0, 40, ED, 25, 46, 02, 93)
#define ADO_Reserved_181 GUID_BUILDER (ADO_Reserved_181, 54140563, 0f25, 4f56, 9d, 8f, B6, DE, CB, 96, DC, E4)
#define ADO_Reserved_182 GUID_BUILDER (ADO_Reserved_182, 91a48243, AE16, 48cf, 82, 29, 00, 00, F8, 3c, 5e, FC)
#define ADO_Reserved_183 GUID_BUILDER (ADO_Reserved_183, E0FA1A1F, 3967, 4392, AB, 1a, E2, 8b, 85, 04, 68, CA)
#define ADO_Reserved_184 GUID_BUILDER (ADO_Reserved_184, 5582d772, ABAC, 4a85, A0, B3, 2e, 65, E1, 71, 10, 53)
#define ADO_Reserved_185 GUID_BUILDER (ADO_Reserved_185, 1cd1f347, 8fb4, 49a2, B5, 65, A6, 74, A0, C1, 45, 0e)
#define ADO_Reserved_186 GUID_BUILDER (ADO_Reserved_186, 0ec3aa4e, FEF5, 4a5c, BD, 0a, E9, CD, B7, 6a, 5f, 30)
#define ADO_Reserved_187 GUID_BUILDER (ADO_Reserved_187, 4118414d, 4a21, 46da, 88, C1, EF, A7, 01, 8c, 45, 27)
#define ADO_Reserved_188 GUID_BUILDER (ADO_Reserved_188, D5C1CC0D, E38E, 4cb6, 89, D9, 99, 27, 7f, 12, D1, 9e)
#define ADO_Reserved_189 GUID_BUILDER (ADO_Reserved_189, 0956b82a, 94a7, 474e, A5, 05, 1a, 76, 26, 36, AF, 08)
#define ADO_Reserved_190 GUID_BUILDER (ADO_Reserved_190, 2cbf62ab, B8E4, 48d0, B5, 01, 69, CF, 63, 3c, AA, E6)
#define ADO_Reserved_191 GUID_BUILDER (ADO_Reserved_191, C02B8113, AECF, 4a34, B3, E9, 5b, 52, 4e, 51, 44, B5)
#define ADO_Reserved_192 GUID_BUILDER (ADO_Reserved_192, 1c90947b, 4a3a, 4ecd, 8c, 70, F4, 3f, E5, 2d, 46, 45)
#define ADO_Reserved_193 GUID_BUILDER (ADO_Reserved_193, 48175e98, 6672, 4db4, B5, 74, 8c, 93, 25, 8d, BF, 14)
#define ADO_Reserved_194 GUID_BUILDER (ADO_Reserved_194, 99cb88bf, E5C1, 4af0, 85, 00, 72, 36, 47, DC, D2, 05)
#define ADO_Reserved_195 GUID_BUILDER (ADO_Reserved_195, 6a2cc3cc, 7855, 4b27, 86, F7, 98, 6b, AA, F9, 5f, 0f)
#define ADO_Reserved_196 GUID_BUILDER (ADO_Reserved_196, 7640b336, 9ebb, 4017, 9e, EE, 54, 01, F4, EC, B1, 70)
#define ADO_Reserved_197 GUID_BUILDER (ADO_Reserved_197, 507b39e1, 2965, 42ea, 92, 66, 55, 8d, E4, 31, 53, 73)
#define ADO_Reserved_198 GUID_BUILDER (ADO_Reserved_198, 58c591fa, 37ff, 4428, A0, 4a, 46, 71, 98, 17, 74, 8c)
#define ADO_Reserved_199 GUID_BUILDER (ADO_Reserved_199, 24be98e9, B43D, 49b5, 9c, 41, 20, AF, C2, FE, 1d, 8d)
#define ADO_Reserved_200 GUID_BUILDER (ADO_Reserved_200, 041956c5, B951, 4c8f, 8c, 61, 8e, 12, 34, E1, E9, 61)
#define ADO_Reserved_201 GUID_BUILDER (ADO_Reserved_201, 6c98d05c, D366, 48b4, 80, E3, 8f, A1, CC, 06, 1d, B7)
#define ADO_Reserved_202 GUID_BUILDER (ADO_Reserved_202, 09570783, A1E8, 4a52, BA, 74, 6c, AC, 02, C0, 14, 8c)
#define ADO_Reserved_203 GUID_BUILDER (ADO_Reserved_203, 96c8c205, FD0D, 4b56, 9a, 12, 39, B3, 7e, 9d, 07, 4d)
#define ADO_Reserved_204 GUID_BUILDER (ADO_Reserved_204, 136c40e1, 366e, 4ba6, AF, 71, C4, 9a, EF, 17, 3f, C0)
#define ADO_Reserved_205 GUID_BUILDER (ADO_Reserved_205, A298C799, 06fb, 466e, B5, 6d, 3e, CC, 6d, 0c, D6, 75)
#define ADO_Reserved_206 GUID_BUILDER (ADO_Reserved_206, 41a96542, 08f2, 4609, B7, 6a, ED, 93, E5, 5b, 8c, 60)
#define ADO_Reserved_207 GUID_BUILDER (ADO_Reserved_207, 65a3b57e, 06f9, 4572, 80, 91, 17, 3f, C4, A6, 5a, 16)
#define ADO_Reserved_208 GUID_BUILDER (ADO_Reserved_208, 114f3e9d, 5431, 4dc1, 95, 42, 9b, 85, 44, CF, 83, B2)
#define ADO_Reserved_209 GUID_BUILDER (ADO_Reserved_209, 41de92d4, 9f2a, 4085, 8c, C1, C1, 04, 3e, 5b, 11, 12)
#define ADO_Reserved_210 GUID_BUILDER (ADO_Reserved_210, E32A7A98, FF1E, 45c9, AA, 51, 5f, 86, 9a, 9a, 48, 57)
#define ADO_Reserved_211 GUID_BUILDER (ADO_Reserved_211, 5e5a209f, 3efc, 48bc, A7, 1e, F4, CE, BE, 4c, A6, 25)
#define ADO_Reserved_212 GUID_BUILDER (ADO_Reserved_212, C556C1CC, 8b2e, 482b, B7, 8c, E2, F6, FD, A0, 4f, 4d)
#define ADO_Reserved_213 GUID_BUILDER (ADO_Reserved_213, 39c54fd9, A22A, 43d4, A4, 36, D9, CB, C5, 53, D5, 5a)
#define ADO_Reserved_214 GUID_BUILDER (ADO_Reserved_214, 750e0ba2, E25C, 479f, B0, C1, 58, 44, A1, 4d, 08, 77)
#define ADO_Reserved_215 GUID_BUILDER (ADO_Reserved_215, 7ecbdb2c, C5C2, 48fb, 8a, 3a, 30, B7, E7, BD, 17, 25)
#define ADO_Reserved_216 GUID_BUILDER (ADO_Reserved_216, 0bf18ac7, 8be1, 49e6, A8, 57, EA, 89, 3a, 83, 58, F5)
#define ADO_Reserved_217 GUID_BUILDER (ADO_Reserved_217, DA74EAB6, AAFE, 42ad, 8a, 0d, B2, 73, 35, 0c, 82, E3)
#define ADO_Reserved_218 GUID_BUILDER (ADO_Reserved_218, F6A3D173, E366, 424a, AD, 0c, 25, 5c, 32, 2d, 09, 80)
#define ADO_Reserved_219 GUID_BUILDER (ADO_Reserved_219, 7cd83ba3, 0516, 4366, BB, 85, DE, 53, 03, F7, 75, 08)
#define ADO_Reserved_220 GUID_BUILDER (ADO_Reserved_220, 42edfc05, 3a70, 4f5c, 8c, 32, 06, 5e, 61, 45, 3c, BE)
#define ADO_Reserved_221 GUID_BUILDER (ADO_Reserved_221, 624bc037, 05b0, 44e1, 85, A7, 73, C4, 7f, A0, CC, 04)
#define ADO_Reserved_222 GUID_BUILDER (ADO_Reserved_222, 8811f8dd, FA15, 4fa6, A7, 6e, 7e, DA, E7, 0d, EC, D4)
#define ADO_Reserved_223 GUID_BUILDER (ADO_Reserved_223, DD310D89, 9f22, 4f49, 89, 8c, AF, A2, 7f, AF, 11, 1c)
#define ADO_Reserved_224 GUID_BUILDER (ADO_Reserved_224, 321e3a7d, DF0E, 4ff7, 98, 5d, F6, E6, 73, FD, E2, 9f)
#define ADO_Reserved_225 GUID_BUILDER (ADO_Reserved_225, 036d1b77, 3737, 47cb, 9e, 75, 31, 13, 13, 2d, 32, B8)
#define ADO_Reserved_226 GUID_BUILDER (ADO_Reserved_226, A46B9E8C, 4740, 4919, 86, 34, A3, 57, 73, F6, 53, 2f)
#define ADO_Reserved_227 GUID_BUILDER (ADO_Reserved_227, 7c064e3a, 014e, 4733, 9d, 00, 5d, 03, 13, F7, B7, F5)
#define ADO_Reserved_228 GUID_BUILDER (ADO_Reserved_228, 7cbff995, A041, 4b0a, B7, 9b, 16, 3a, 74, 2c, DC, CF)
#define ADO_Reserved_229 GUID_BUILDER (ADO_Reserved_229, C3271965, BA03, 4abc, 8f, D8, 98, 97, 7e, 4c, B3, 9a)
#define ADO_Reserved_230 GUID_BUILDER (ADO_Reserved_230, 565dc4b1, 8d7a, 41c6, AE, 01, 6c, EF, 63, 46, 4d, 5e)
#define ADO_Reserved_231 GUID_BUILDER (ADO_Reserved_231, 3331e567, EB74, 45d2, 86, 32, 20, 43, 47, DB, BE, 04)
#define ADO_Reserved_232 GUID_BUILDER (ADO_Reserved_232, 3cee44a8, 6fc5, 4cd5, AA, 9d, 1b, 67, 4c, B6, 2e, EC)
#define ADO_Reserved_233 GUID_BUILDER (ADO_Reserved_233, CD1BE145, 71b9, 4ccd, A7, AF, 5b, BA, A0, 2a, 51, E6)
#define ADO_Reserved_234 GUID_BUILDER (ADO_Reserved_234, 4203c429, F3F0, 4dd7, 91, 24, 51, E0, 13, 95, 5e, 7a)
#define ADO_Reserved_235 GUID_BUILDER (ADO_Reserved_235, BB256836, 2804, 492f, 9c, B2, CF, 83, CB, 82, 63, 8a)
#define ADO_Reserved_236 GUID_BUILDER (ADO_Reserved_236, 8b247756, 34aa, 45ef, B1, 24, A9, 60, 66, AC, E8, D6)
#define ADO_Reserved_237 GUID_BUILDER (ADO_Reserved_237, EF1CF73C, 4915, 4289, AD, C4, DD, DA, 62, 70, 70, A6)
#define ADO_Reserved_238 GUID_BUILDER (ADO_Reserved_238, D0EB0A94, 91a0, 49d3, 97, 26, 94, 52, 66, 5a, FE, 53)
#define ADO_Reserved_239 GUID_BUILDER (ADO_Reserved_239, D6F5003E, 4c06, 47b1, 89, E9, D6, 3c, 3d, 7d, 41, B6)
#define ADO_Reserved_240 GUID_BUILDER (ADO_Reserved_240, AA803151, F4AE, 4ce3, BC, 92, 97, 1c, 84, 2e, F5, BC)
#define ADO_Reserved_241 GUID_BUILDER (ADO_Reserved_241, C4BB086F, 5b11, 4c67, 98, 6c, 8c, D4, 8c, 5c, E3, 8b)
#define ADO_Reserved_242 GUID_BUILDER (ADO_Reserved_242, F1C4A502, 4744, 478f, 87, 71, C6, 94, CC, 2d, F7, B6)
#define ADO_Reserved_243 GUID_BUILDER (ADO_Reserved_243, 2cd39761, F389, 4f5e, BE, 91, A6, B9, 1b, 18, AD, 12)
#define ADO_Reserved_244 GUID_BUILDER (ADO_Reserved_244, 8895ba8f, 0cb7, 4354, A8, EA, CD, 9d, F4, 1b, F8, 88)
#define ADO_Reserved_245 GUID_BUILDER (ADO_Reserved_245, 71e0b0dc, 1245, 441d, 92, 92, 32, 71, 3f, 57, 97, 7a)
#define ADO_Reserved_246 GUID_BUILDER (ADO_Reserved_246, 7604d0cb, F137, 472d, 8b, 4c, 85, 66, 72, 9a, CF, 03)
#define ADO_Reserved_247 GUID_BUILDER (ADO_Reserved_247, 94c9b5ac, 8309, 4f4b, 8e, 68, C4, 37, 7e, C2, B7, 91)
#define ADO_Reserved_248 GUID_BUILDER (ADO_Reserved_248, 0e555180, 5e2c, 4bf6, 90, A0, 1b, 36, 3d, 4b, B9, 99)
#define ADO_Reserved_249 GUID_BUILDER (ADO_Reserved_249, C077D666, 6988, 4eac, A5, 52, 61, 61, 55, F9, 6a, 12)
#ifdef IMMEDIATE_GUID_USE
ADO_Reserved_4;
ADO_Reserved_5; ADO_Reserved_6; ADO_Reserved_7; ADO_Reserved_8; ADO_Reserved_9;
ADO_Reserved_10; ADO_Reserved_12; ADO_Reserved_13; ADO_Reserved_14;
ADO_Reserved_15; ADO_Reserved_16; ADO_Reserved_17; ADO_Reserved_18; ADO_Reserved_19;
ADO_Reserved_20; ADO_Reserved_21; ADO_Reserved_22; ADO_Reserved_23; ADO_Reserved_24;
ADO_Reserved_25; ADO_Reserved_26; ADO_Reserved_27; ADO_Reserved_28; ADO_Reserved_29;
ADO_Reserved_30; ADO_Reserved_31; ADO_Reserved_32; ADO_Reserved_33; ADO_Reserved_34;
ADO_Reserved_35; ADO_Reserved_36; ADO_Reserved_37; ADO_Reserved_38; ADO_Reserved_39;
ADO_Reserved_40; ADO_Reserved_41; ADO_Reserved_42; ADO_Reserved_43; ADO_Reserved_44;
ADO_Reserved_45; ADO_Reserved_46; ADO_Reserved_47; ADO_Reserved_48; ADO_Reserved_49;
ADO_Reserved_50; ADO_Reserved_51; ADO_Reserved_52; ADO_Reserved_53; ADO_Reserved_54;
ADO_Reserved_55; ADO_Reserved_56; ADO_Reserved_57; ADO_Reserved_58; ADO_Reserved_59;
ADO_Reserved_60; ADO_Reserved_61; ADO_Reserved_62; ADO_Reserved_63; ADO_Reserved_64;
ADO_Reserved_65; ADO_Reserved_66; ADO_Reserved_67; ADO_Reserved_68; ADO_Reserved_69;
ADO_Reserved_70; ADO_Reserved_71; ADO_Reserved_72; ADO_Reserved_73; ADO_Reserved_74;
ADO_Reserved_75; ADO_Reserved_76; ADO_Reserved_77; ADO_Reserved_78; ADO_Reserved_79;
ADO_Reserved_80; ADO_Reserved_81; ADO_Reserved_82; ADO_Reserved_83; ADO_Reserved_84;
ADO_Reserved_85; ADO_Reserved_86; ADO_Reserved_87; ADO_Reserved_88; ADO_Reserved_89;
ADO_Reserved_90; ADO_Reserved_91; ADO_Reserved_92; ADO_Reserved_93; ADO_Reserved_94;
ADO_Reserved_95; ADO_Reserved_96; ADO_Reserved_97; ADO_Reserved_98; ADO_Reserved_99;
ADO_Reserved_100; ADO_Reserved_101; ADO_Reserved_102; ADO_Reserved_103; ADO_Reserved_104;
ADO_Reserved_105; ADO_Reserved_106; ADO_Reserved_107; ADO_Reserved_108; ADO_Reserved_109;
ADO_Reserved_110; ADO_Reserved_111; ADO_Reserved_112; ADO_Reserved_113; ADO_Reserved_114;
ADO_Reserved_115; ADO_Reserved_116; ADO_Reserved_117; ADO_Reserved_118; ADO_Reserved_119;
ADO_Reserved_120; ADO_Reserved_121; ADO_Reserved_122; ADO_Reserved_123; ADO_Reserved_124;
ADO_Reserved_125; ADO_Reserved_126; ADO_Reserved_127; ADO_Reserved_128; ADO_Reserved_129;
ADO_Reserved_130; ADO_Reserved_131; ADO_Reserved_132; ADO_Reserved_133; ADO_Reserved_134;
ADO_Reserved_135; ADO_Reserved_136; ADO_Reserved_137; ADO_Reserved_138; ADO_Reserved_139;
ADO_Reserved_140; ADO_Reserved_141; ADO_Reserved_142; ADO_Reserved_143; ADO_Reserved_144;
ADO_Reserved_145; ADO_Reserved_146; ADO_Reserved_147; ADO_Reserved_148; ADO_Reserved_149;
ADO_Reserved_150; ADO_Reserved_151; ADO_Reserved_152; ADO_Reserved_153; ADO_Reserved_154;
ADO_Reserved_155; ADO_Reserved_156; ADO_Reserved_157; ADO_Reserved_158; ADO_Reserved_159;
ADO_Reserved_160; ADO_Reserved_161; ADO_Reserved_162; ADO_Reserved_163; ADO_Reserved_164;
ADO_Reserved_165; ADO_Reserved_166; ADO_Reserved_167; ADO_Reserved_168; ADO_Reserved_169;
ADO_Reserved_170; ADO_Reserved_171; ADO_Reserved_172; ADO_Reserved_173; ADO_Reserved_174;
ADO_Reserved_175; ADO_Reserved_176; ADO_Reserved_177; ADO_Reserved_178; ADO_Reserved_179;
ADO_Reserved_180; ADO_Reserved_181; ADO_Reserved_182; ADO_Reserved_183; ADO_Reserved_184;
ADO_Reserved_185; ADO_Reserved_186; ADO_Reserved_187; ADO_Reserved_188; ADO_Reserved_189;
ADO_Reserved_190; ADO_Reserved_191; ADO_Reserved_192; ADO_Reserved_193; ADO_Reserved_194;
ADO_Reserved_195; ADO_Reserved_196; ADO_Reserved_197; ADO_Reserved_198; ADO_Reserved_199;
ADO_Reserved_200; ADO_Reserved_201; ADO_Reserved_202; ADO_Reserved_203; ADO_Reserved_204;
ADO_Reserved_205; ADO_Reserved_206; ADO_Reserved_207; ADO_Reserved_208; ADO_Reserved_209;
ADO_Reserved_210; ADO_Reserved_211; ADO_Reserved_212; ADO_Reserved_213; ADO_Reserved_214;
ADO_Reserved_215; ADO_Reserved_216; ADO_Reserved_217; ADO_Reserved_218; ADO_Reserved_219;
ADO_Reserved_220; ADO_Reserved_221; ADO_Reserved_222; ADO_Reserved_223; ADO_Reserved_224;
ADO_Reserved_225; ADO_Reserved_226; ADO_Reserved_227; ADO_Reserved_228; ADO_Reserved_229;
ADO_Reserved_230; ADO_Reserved_231; ADO_Reserved_232; ADO_Reserved_233; ADO_Reserved_234;
ADO_Reserved_235; ADO_Reserved_236; ADO_Reserved_237; ADO_Reserved_238; ADO_Reserved_239;
ADO_Reserved_240; ADO_Reserved_241; ADO_Reserved_242; ADO_Reserved_243; ADO_Reserved_244;
ADO_Reserved_245; ADO_Reserved_246; ADO_Reserved_247; ADO_Reserved_248; ADO_Reserved_249;
#undef ADO_Reserved_4
#undef ADO_Reserved_5
#undef ADO_Reserved_6
#undef ADO_Reserved_7
#undef ADO_Reserved_8
#undef ADO_Reserved_9
#undef ADO_Reserved_10
#undef ADO_Reserved_12
#undef ADO_Reserved_13
#undef ADO_Reserved_14
#undef ADO_Reserved_15
#undef ADO_Reserved_16
#undef ADO_Reserved_17
#undef ADO_Reserved_18
#undef ADO_Reserved_19
#undef ADO_Reserved_20
#undef ADO_Reserved_21
#undef ADO_Reserved_22
#undef ADO_Reserved_23
#undef ADO_Reserved_24
#undef ADO_Reserved_25
#undef ADO_Reserved_26
#undef ADO_Reserved_27
#undef ADO_Reserved_28
#undef ADO_Reserved_29
#undef ADO_Reserved_30
#undef ADO_Reserved_31
#undef ADO_Reserved_32
#undef ADO_Reserved_33
#undef ADO_Reserved_34
#undef ADO_Reserved_35
#undef ADO_Reserved_36
#undef ADO_Reserved_37
#undef ADO_Reserved_38
#undef ADO_Reserved_39
#undef ADO_Reserved_40
#undef ADO_Reserved_41
#undef ADO_Reserved_42
#undef ADO_Reserved_43
#undef ADO_Reserved_44
#undef ADO_Reserved_45
#undef ADO_Reserved_46
#undef ADO_Reserved_47
#undef ADO_Reserved_48
#undef ADO_Reserved_49
#undef ADO_Reserved_50
#undef ADO_Reserved_51
#undef ADO_Reserved_52
#undef ADO_Reserved_53
#undef ADO_Reserved_54
#undef ADO_Reserved_55
#undef ADO_Reserved_56
#undef ADO_Reserved_57
#undef ADO_Reserved_58
#undef ADO_Reserved_59
#undef ADO_Reserved_60
#undef ADO_Reserved_61
#undef ADO_Reserved_62
#undef ADO_Reserved_63
#undef ADO_Reserved_64
#undef ADO_Reserved_65
#undef ADO_Reserved_66
#undef ADO_Reserved_67
#undef ADO_Reserved_68
#undef ADO_Reserved_69
#undef ADO_Reserved_70
#undef ADO_Reserved_71
#undef ADO_Reserved_72
#undef ADO_Reserved_73
#undef ADO_Reserved_74
#undef ADO_Reserved_75
#undef ADO_Reserved_76
#undef ADO_Reserved_77
#undef ADO_Reserved_78
#undef ADO_Reserved_79
#undef ADO_Reserved_80
#undef ADO_Reserved_81
#undef ADO_Reserved_82
#undef ADO_Reserved_83
#undef ADO_Reserved_84
#undef ADO_Reserved_85
#undef ADO_Reserved_86
#undef ADO_Reserved_87
#undef ADO_Reserved_88
#undef ADO_Reserved_89
#undef ADO_Reserved_90
#undef ADO_Reserved_91
#undef ADO_Reserved_92
#undef ADO_Reserved_93
#undef ADO_Reserved_94
#undef ADO_Reserved_95
#undef ADO_Reserved_96
#undef ADO_Reserved_97
#undef ADO_Reserved_98
#undef ADO_Reserved_99
#undef ADO_Reserved_100
#undef ADO_Reserved_101
#undef ADO_Reserved_102
#undef ADO_Reserved_103
#undef ADO_Reserved_104
#undef ADO_Reserved_105
#undef ADO_Reserved_106
#undef ADO_Reserved_107
#undef ADO_Reserved_108
#undef ADO_Reserved_109
#undef ADO_Reserved_110
#undef ADO_Reserved_111
#undef ADO_Reserved_112
#undef ADO_Reserved_113
#undef ADO_Reserved_114
#undef ADO_Reserved_115
#undef ADO_Reserved_116
#undef ADO_Reserved_117
#undef ADO_Reserved_118
#undef ADO_Reserved_119
#undef ADO_Reserved_120
#undef ADO_Reserved_121
#undef ADO_Reserved_122
#undef ADO_Reserved_123
#undef ADO_Reserved_124
#undef ADO_Reserved_125
#undef ADO_Reserved_126
#undef ADO_Reserved_127
#undef ADO_Reserved_128
#undef ADO_Reserved_129
#undef ADO_Reserved_130
#undef ADO_Reserved_131
#undef ADO_Reserved_132
#undef ADO_Reserved_133
#undef ADO_Reserved_134
#undef ADO_Reserved_135
#undef ADO_Reserved_136
#undef ADO_Reserved_137
#undef ADO_Reserved_138
#undef ADO_Reserved_139
#undef ADO_Reserved_140
#undef ADO_Reserved_141
#undef ADO_Reserved_142
#undef ADO_Reserved_143
#undef ADO_Reserved_144
#undef ADO_Reserved_145
#undef ADO_Reserved_146
#undef ADO_Reserved_147
#undef ADO_Reserved_148
#undef ADO_Reserved_149
#undef ADO_Reserved_150
#undef ADO_Reserved_151
#undef ADO_Reserved_152
#undef ADO_Reserved_153
#undef ADO_Reserved_154
#undef ADO_Reserved_155
#undef ADO_Reserved_156
#undef ADO_Reserved_157
#undef ADO_Reserved_158
#undef ADO_Reserved_159
#undef ADO_Reserved_160
#undef ADO_Reserved_161
#undef ADO_Reserved_162
#undef ADO_Reserved_163
#undef ADO_Reserved_164
#undef ADO_Reserved_165
#undef ADO_Reserved_166
#undef ADO_Reserved_167
#undef ADO_Reserved_168
#undef ADO_Reserved_169
#undef ADO_Reserved_170
#undef ADO_Reserved_171
#undef ADO_Reserved_172
#undef ADO_Reserved_173
#undef ADO_Reserved_174
#undef ADO_Reserved_175
#undef ADO_Reserved_176
#undef ADO_Reserved_177
#undef ADO_Reserved_178
#undef ADO_Reserved_179
#undef ADO_Reserved_180
#undef ADO_Reserved_181
#undef ADO_Reserved_182
#undef ADO_Reserved_183
#undef ADO_Reserved_184
#undef ADO_Reserved_185
#undef ADO_Reserved_186
#undef ADO_Reserved_187
#undef ADO_Reserved_188
#undef ADO_Reserved_189
#undef ADO_Reserved_190
#undef ADO_Reserved_191
#undef ADO_Reserved_192
#undef ADO_Reserved_193
#undef ADO_Reserved_194
#undef ADO_Reserved_195
#undef ADO_Reserved_196
#undef ADO_Reserved_197
#undef ADO_Reserved_198
#undef ADO_Reserved_199
#undef ADO_Reserved_200
#undef ADO_Reserved_201
#undef ADO_Reserved_202
#undef ADO_Reserved_203
#undef ADO_Reserved_204
#undef ADO_Reserved_205
#undef ADO_Reserved_206
#undef ADO_Reserved_207
#undef ADO_Reserved_208
#undef ADO_Reserved_209
#undef ADO_Reserved_210
#undef ADO_Reserved_211
#undef ADO_Reserved_212
#undef ADO_Reserved_213
#undef ADO_Reserved_214
#undef ADO_Reserved_215
#undef ADO_Reserved_216
#undef ADO_Reserved_217
#undef ADO_Reserved_218
#undef ADO_Reserved_219
#undef ADO_Reserved_220
#undef ADO_Reserved_221
#undef ADO_Reserved_222
#undef ADO_Reserved_223
#undef ADO_Reserved_224
#undef ADO_Reserved_225
#undef ADO_Reserved_226
#undef ADO_Reserved_227
#undef ADO_Reserved_228
#undef ADO_Reserved_229
#undef ADO_Reserved_230
#undef ADO_Reserved_231
#undef ADO_Reserved_232
#undef ADO_Reserved_233
#undef ADO_Reserved_234
#undef ADO_Reserved_235
#undef ADO_Reserved_236
#undef ADO_Reserved_237
#undef ADO_Reserved_238
#undef ADO_Reserved_239
#undef ADO_Reserved_240
#undef ADO_Reserved_241
#undef ADO_Reserved_242
#undef ADO_Reserved_243
#undef ADO_Reserved_244
#undef ADO_Reserved_245
#undef ADO_Reserved_246
#undef ADO_Reserved_247
#undef ADO_Reserved_248
#undef ADO_Reserved_249
#endif
#endif
#endif

View File

@ -0,0 +1,19 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#define STRING_GUID(l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) l##-##w1##-##w2##-##b1##b2##-##b3##b4##b5##b6##b7##b8
#ifdef __WIDL__
#define GUID_BUILDER(n, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) STRING_GUID (l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
#else
#define GUID_BUILDER(n, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) DEFINE_GUID (n, 0x##l, 0x##w1, 0x##w2, 0x##b1, 0x##b2, 0x##b3, 0x##b4, 0x##b5, 0x##b6, 0x##b7, 0x##b8)
#define IMMEDIATE_GUID_USE
#endif
#define INCLUDING_ADOGUIDS
#include "adogpool.h"
#undef INCLUDING_ADOGUIDS
#undef IMMEDIATE_GUID_USE

View File

@ -0,0 +1,16 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef _ADOID_H_
#define _ADOID_H_
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#include "adodef.h"
#include "adoguids.h"
#endif
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,385 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 500
#endif
#ifndef __REQUIRED_RPCSAL_H_VERSION__
#define __REQUIRED_RPCSAL_H_VERSION__ 100
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of rpcndr.h header
#endif
#ifndef __adojet_h__
#define __adojet_h__
#ifndef __IReplica_FWD_DEFINED__
#define __IReplica_FWD_DEFINED__
typedef interface IReplica IReplica;
#endif
#ifndef __Filter_FWD_DEFINED__
#define __Filter_FWD_DEFINED__
typedef interface Filter Filter;
#endif
#ifndef __Filters_FWD_DEFINED__
#define __Filters_FWD_DEFINED__
typedef interface Filters Filters;
#endif
#ifndef __IJetEngine_FWD_DEFINED__
#define __IJetEngine_FWD_DEFINED__
typedef interface IJetEngine IJetEngine;
#endif
#ifndef __Replica_FWD_DEFINED__
#define __Replica_FWD_DEFINED__
#ifdef __cplusplus
typedef class Replica Replica;
#else
typedef struct Replica Replica;
#endif
#endif
#ifndef __JetEngine_FWD_DEFINED__
#define __JetEngine_FWD_DEFINED__
#ifdef __cplusplus
typedef class JetEngine JetEngine;
#else
typedef struct JetEngine JetEngine;
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
extern RPC_IF_HANDLE __MIDL_itf_adojet_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_adojet_0000_0000_v0_0_s_ifspec;
#ifndef __JRO_LIBRARY_DEFINED__
#define __JRO_LIBRARY_DEFINED__
typedef DECLSPEC_UUID ("D2D139DF-B6CA-11d1-9F31-00C04FC29D52")
enum ReplicaTypeEnum {
jrRepTypeNotReplicable = 0,
jrRepTypeDesignMaster = 0x1,
jrRepTypeFull = 0x2,
jrRepTypePartial = 0x3
} ReplicaTypeEnum;
typedef DECLSPEC_UUID ("6877D21A-B6CE-11d1-9F31-00C04FC29D52")
enum VisibilityEnum {
jrRepVisibilityGlobal = 0x1,
jrRepVisibilityLocal = 0x2,
jrRepVisibilityAnon = 0x4
} VisibilityEnum;
typedef DECLSPEC_UUID ("B42FBFF6-B6CF-11d1-9F31-00C04FC29D52")
enum UpdatabilityEnum {
jrRepUpdFull = 0,
jrRepUpdReadOnly = 0x2
} UpdatabilityEnum;
typedef DECLSPEC_UUID ("60C05416-B6D0-11d1-9F31-00C04FC29D52")
enum SyncTypeEnum {
jrSyncTypeExport = 0x1,
jrSyncTypeImport = 0x2,
jrSyncTypeImpExp = 0x3
} SyncTypeEnum;
typedef DECLSPEC_UUID ("5EBA3970-061E-11d2-BB77-00C04FAE22DA")
enum SyncModeEnum {
jrSyncModeIndirect = 0x1,
jrSyncModeDirect = 0x2,
jrSyncModeInternet = 0x3
} SyncModeEnum;
typedef DECLSPEC_UUID ("72769F94-BF78-11d1-AC4D-00C04FC29F8F")
enum FilterTypeEnum {
jrFilterTypeTable = 0x1,
jrFilterTypeRelationship = 0x2
} FilterTypeEnum;
EXTERN_C const IID LIBID_JRO;
#ifndef __IReplica_INTERFACE_DEFINED__
#define __IReplica_INTERFACE_DEFINED__
EXTERN_C const IID IID_IReplica;
#if defined (__cplusplus) && !defined (CINTERFACE)
MIDL_INTERFACE ("D2D139E0-B6CA-11d1-9F31-00C04FC29D52")
IReplica : public IDispatch {
public:
virtual HRESULT STDMETHODCALLTYPE putref_ActiveConnection (IDispatch *pconn) = 0;
virtual HRESULT STDMETHODCALLTYPE put_ActiveConnection (VARIANT vConn) = 0;
virtual HRESULT STDMETHODCALLTYPE get_ActiveConnection (IDispatch **ppconn) = 0;
virtual HRESULT STDMETHODCALLTYPE get_ConflictFunction (BSTR *pbstr) = 0;
virtual HRESULT STDMETHODCALLTYPE put_ConflictFunction (BSTR bstr) = 0;
virtual HRESULT STDMETHODCALLTYPE get_ConflictTables (_Recordset **pprset) = 0;
virtual HRESULT STDMETHODCALLTYPE get_DesignMasterId (VARIANT *pvar) = 0;
virtual HRESULT STDMETHODCALLTYPE put_DesignMasterId (VARIANT var) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Priority (long *pl) = 0;
virtual HRESULT STDMETHODCALLTYPE get_ReplicaId (VARIANT *pvar) = 0;
virtual HRESULT STDMETHODCALLTYPE get_ReplicaType (ReplicaTypeEnum *pl) = 0;
virtual HRESULT STDMETHODCALLTYPE get_RetentionPeriod (long *pl) = 0;
virtual HRESULT STDMETHODCALLTYPE put_RetentionPeriod (long l) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Visibility (VisibilityEnum *pl) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateReplica (BSTR replicaName, BSTR description, ReplicaTypeEnum replicaType = jrRepTypeFull, VisibilityEnum visibility = jrRepVisibilityGlobal, long priority = -1, UpdatabilityEnum updatability = jrRepUpdFull) = 0;
virtual HRESULT STDMETHODCALLTYPE GetObjectReplicability (BSTR objectName, BSTR objectType, VARIANT_BOOL *replicability) = 0;
virtual HRESULT STDMETHODCALLTYPE SetObjectReplicability (BSTR objectName, BSTR objectType, VARIANT_BOOL replicability) = 0;
virtual HRESULT STDMETHODCALLTYPE MakeReplicable (BSTR connectionString = L"", VARIANT_BOOL columnTracking = -1) = 0;
virtual HRESULT STDMETHODCALLTYPE PopulatePartial (BSTR FullReplica) = 0;
virtual HRESULT STDMETHODCALLTYPE Synchronize (BSTR target, SyncTypeEnum syncType = jrSyncTypeImpExp, SyncModeEnum syncMode = jrSyncModeIndirect) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Filters (Filters **ppFilters) = 0;
};
#else
typedef struct IReplicaVtbl {
BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (IReplica *This, REFIID riid, _COM_Outptr_ void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef) (IReplica *This);
ULONG (STDMETHODCALLTYPE *Release) (IReplica *This);
HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (IReplica *This, UINT *pctinfo);
HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (IReplica *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (IReplica *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
HRESULT (STDMETHODCALLTYPE *Invoke) (IReplica *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
HRESULT (STDMETHODCALLTYPE *putref_ActiveConnection) (IReplica *This, IDispatch *pconn);
HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (IReplica *This, VARIANT vConn);
HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (IReplica *This, IDispatch **ppconn);
HRESULT (STDMETHODCALLTYPE *get_ConflictFunction) (IReplica *This, BSTR *pbstr);
HRESULT (STDMETHODCALLTYPE *put_ConflictFunction) (IReplica *This, BSTR bstr);
HRESULT (STDMETHODCALLTYPE *get_ConflictTables) (IReplica *This, _Recordset **pprset);
HRESULT (STDMETHODCALLTYPE *get_DesignMasterId) (IReplica *This, VARIANT *pvar);
HRESULT (STDMETHODCALLTYPE *put_DesignMasterId) (IReplica *This, VARIANT var);
HRESULT (STDMETHODCALLTYPE *get_Priority) (IReplica *This, long *pl);
HRESULT (STDMETHODCALLTYPE *get_ReplicaId) (IReplica *This, VARIANT *pvar);
HRESULT (STDMETHODCALLTYPE *get_ReplicaType) (IReplica *This, ReplicaTypeEnum *pl);
HRESULT (STDMETHODCALLTYPE *get_RetentionPeriod) (IReplica *This, long *pl);
HRESULT (STDMETHODCALLTYPE *put_RetentionPeriod) (IReplica *This, long l);
HRESULT (STDMETHODCALLTYPE *get_Visibility) (IReplica *This, VisibilityEnum *pl);
HRESULT (STDMETHODCALLTYPE *CreateReplica) (IReplica *This, BSTR replicaName, BSTR description, ReplicaTypeEnum replicaType, VisibilityEnum visibility, long priority, UpdatabilityEnum updatability);
HRESULT (STDMETHODCALLTYPE *GetObjectReplicability) (IReplica *This, BSTR objectName, BSTR objectType, VARIANT_BOOL *replicability);
HRESULT (STDMETHODCALLTYPE *SetObjectReplicability) (IReplica *This, BSTR objectName, BSTR objectType, VARIANT_BOOL replicability);
HRESULT (STDMETHODCALLTYPE *MakeReplicable) (IReplica *This, BSTR connectionString, VARIANT_BOOL columnTracking);
HRESULT (STDMETHODCALLTYPE *PopulatePartial) (IReplica *This, BSTR FullReplica);
HRESULT (STDMETHODCALLTYPE *Synchronize) (IReplica *This, BSTR target, SyncTypeEnum syncType, SyncModeEnum syncMode);
HRESULT (STDMETHODCALLTYPE *get_Filters) (IReplica *This, Filters **ppFilters);
END_INTERFACE
} IReplicaVtbl;
interface IReplica {
CONST_VTBL struct IReplicaVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IReplica_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
#define IReplica_AddRef(This) ((This)->lpVtbl ->AddRef (This))
#define IReplica_Release(This) ((This)->lpVtbl ->Release (This))
#define IReplica_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
#define IReplica_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
#define IReplica_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
#define IReplica_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
#define IReplica_putref_ActiveConnection(This, pconn) ((This)->lpVtbl ->putref_ActiveConnection (This, pconn))
#define IReplica_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
#define IReplica_get_ActiveConnection(This, ppconn) ((This)->lpVtbl ->get_ActiveConnection (This, ppconn))
#define IReplica_get_ConflictFunction(This, pbstr) ((This)->lpVtbl ->get_ConflictFunction (This, pbstr))
#define IReplica_put_ConflictFunction(This, bstr) ((This)->lpVtbl ->put_ConflictFunction (This, bstr))
#define IReplica_get_ConflictTables(This, pprset) ((This)->lpVtbl ->get_ConflictTables (This, pprset))
#define IReplica_get_DesignMasterId(This, pvar) ((This)->lpVtbl ->get_DesignMasterId (This, pvar))
#define IReplica_put_DesignMasterId(This, var) ((This)->lpVtbl ->put_DesignMasterId (This, var))
#define IReplica_get_Priority(This, pl) ((This)->lpVtbl ->get_Priority (This, pl))
#define IReplica_get_ReplicaId(This, pvar) ((This)->lpVtbl ->get_ReplicaId (This, pvar))
#define IReplica_get_ReplicaType(This, pl) ((This)->lpVtbl ->get_ReplicaType (This, pl))
#define IReplica_get_RetentionPeriod(This, pl) ((This)->lpVtbl ->get_RetentionPeriod (This, pl))
#define IReplica_put_RetentionPeriod(This, l) ((This)->lpVtbl ->put_RetentionPeriod (This, l))
#define IReplica_get_Visibility(This, pl) ((This)->lpVtbl ->get_Visibility (This, pl))
#define IReplica_CreateReplica(This, replicaName, description, replicaType, visibility, priority, updatability) ((This)->lpVtbl ->CreateReplica (This, replicaName, description, replicaType, visibility, priority, updatability))
#define IReplica_GetObjectReplicability(This, objectName, objectType, replicability) ((This)->lpVtbl ->GetObjectReplicability (This, objectName, objectType, replicability))
#define IReplica_SetObjectReplicability(This, objectName, objectType, replicability) ((This)->lpVtbl ->SetObjectReplicability (This, objectName, objectType, replicability))
#define IReplica_MakeReplicable(This, connectionString, columnTracking) ((This)->lpVtbl ->MakeReplicable (This, connectionString, columnTracking))
#define IReplica_PopulatePartial(This, FullReplica) ((This)->lpVtbl ->PopulatePartial (This, FullReplica))
#define IReplica_Synchronize(This, target, syncType, syncMode) ((This)->lpVtbl ->Synchronize (This, target, syncType, syncMode))
#define IReplica_get_Filters(This, ppFilters) ((This)->lpVtbl ->get_Filters (This, ppFilters))
#endif
#endif
#endif
#ifndef __Filter_INTERFACE_DEFINED__
#define __Filter_INTERFACE_DEFINED__
EXTERN_C const IID IID_Filter;
#if defined (__cplusplus) && !defined (CINTERFACE)
MIDL_INTERFACE ("D2D139E1-B6CA-11d1-9F31-00C04FC29D52")
Filter : public IDispatch {
public:
virtual HRESULT STDMETHODCALLTYPE get_TableName (BSTR *pbstr) = 0;
virtual HRESULT STDMETHODCALLTYPE get_FilterType (FilterTypeEnum *ptype) = 0;
virtual HRESULT STDMETHODCALLTYPE get_FilterCriteria (BSTR *pbstr) = 0;
};
#else
typedef struct FilterVtbl {
BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Filter *This, REFIID riid, _COM_Outptr_ void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef) (Filter *This);
ULONG (STDMETHODCALLTYPE *Release) (Filter *This);
HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Filter *This, UINT *pctinfo);
HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Filter *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Filter *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
HRESULT (STDMETHODCALLTYPE *Invoke) (Filter *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
HRESULT (STDMETHODCALLTYPE *get_TableName) (Filter *This, BSTR *pbstr);
HRESULT (STDMETHODCALLTYPE *get_FilterType) (Filter *This, FilterTypeEnum *ptype);
HRESULT (STDMETHODCALLTYPE *get_FilterCriteria) (Filter *This, BSTR *pbstr);
END_INTERFACE
} FilterVtbl;
interface Filter {
CONST_VTBL struct FilterVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define Filter_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
#define Filter_AddRef(This) ((This)->lpVtbl ->AddRef (This))
#define Filter_Release(This) ((This)->lpVtbl ->Release (This))
#define Filter_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
#define Filter_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
#define Filter_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
#define Filter_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
#define Filter_get_TableName(This, pbstr) ((This)->lpVtbl ->get_TableName (This, pbstr))
#define Filter_get_FilterType(This, ptype) ((This)->lpVtbl ->get_FilterType (This, ptype))
#define Filter_get_FilterCriteria(This, pbstr) ((This)->lpVtbl ->get_FilterCriteria (This, pbstr))
#endif
#endif
#endif
#ifndef __Filters_INTERFACE_DEFINED__
#define __Filters_INTERFACE_DEFINED__
EXTERN_C const IID IID_Filters;
#if defined (__cplusplus) && !defined (CINTERFACE)
MIDL_INTERFACE ("D2D139E2-B6CA-11d1-9F31-00C04FC29D52")
Filters : public IDispatch {
public:
virtual HRESULT STDMETHODCALLTYPE Refresh (void) = 0;
virtual HRESULT STDMETHODCALLTYPE _NewEnum (IUnknown **ppvObject) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Count (long *c) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Item (VARIANT Index, Filter **ppvObject) = 0;
virtual HRESULT STDMETHODCALLTYPE Append (BSTR tableName, FilterTypeEnum filterType, BSTR filterCriteria) = 0;
virtual HRESULT STDMETHODCALLTYPE Delete (VARIANT Index) = 0;
};
#else
typedef struct FiltersVtbl {
BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Filters *This, REFIID riid, _COM_Outptr_ void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef) (Filters *This);
ULONG (STDMETHODCALLTYPE *Release) (Filters *This);
HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Filters *This, UINT *pctinfo);
HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Filters *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Filters *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
HRESULT (STDMETHODCALLTYPE *Invoke) (Filters *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
HRESULT (STDMETHODCALLTYPE *Refresh) (Filters *This);
HRESULT (STDMETHODCALLTYPE *_NewEnum) (Filters *This, IUnknown **ppvObject);
HRESULT (STDMETHODCALLTYPE *get_Count) (Filters *This, long *c);
HRESULT (STDMETHODCALLTYPE *get_Item) (Filters *This, VARIANT Index, Filter **ppvObject);
HRESULT (STDMETHODCALLTYPE *Append) (Filters *This, BSTR tableName, FilterTypeEnum filterType, BSTR filterCriteria);
HRESULT (STDMETHODCALLTYPE *Delete) (Filters *This, VARIANT Index);
END_INTERFACE
} FiltersVtbl;
interface Filters {
CONST_VTBL struct FiltersVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define Filters_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
#define Filters_AddRef(This) ((This)->lpVtbl ->AddRef (This))
#define Filters_Release(This) ((This)->lpVtbl ->Release (This))
#define Filters_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
#define Filters_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
#define Filters_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
#define Filters_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
#define Filters_Refresh(This) ((This)->lpVtbl ->Refresh (This))
#define Filters__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
#define Filters_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
#define Filters_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
#define Filters_Append(This, tableName, filterType, filterCriteria) ((This)->lpVtbl ->Append (This, tableName, filterType, filterCriteria))
#define Filters_Delete(This, Index) ((This)->lpVtbl ->Delete (This, Index))
#endif
#endif
#endif
#ifndef __IJetEngine_INTERFACE_DEFINED__
#define __IJetEngine_INTERFACE_DEFINED__
EXTERN_C const IID IID_IJetEngine;
#if defined (__cplusplus) && !defined (CINTERFACE)
MIDL_INTERFACE ("9F63D980-FF25-11D1-BB6F-00C04FAE22DA")
IJetEngine : public IDispatch {
public:
virtual HRESULT STDMETHODCALLTYPE CompactDatabase (BSTR SourceConnection, BSTR Destconnection) = 0;
virtual HRESULT STDMETHODCALLTYPE RefreshCache (_Connection *Connection) = 0;
};
#else
typedef struct IJetEngineVtbl {
BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (IJetEngine *This, REFIID riid, _COM_Outptr_ void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef) (IJetEngine *This);
ULONG (STDMETHODCALLTYPE *Release) (IJetEngine *This);
HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (IJetEngine *This, UINT *pctinfo);
HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (IJetEngine *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (IJetEngine *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
HRESULT (STDMETHODCALLTYPE *Invoke) (IJetEngine *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
HRESULT (STDMETHODCALLTYPE *CompactDatabase) (IJetEngine *This, BSTR SourceConnection, BSTR Destconnection);
HRESULT (STDMETHODCALLTYPE *RefreshCache) (IJetEngine *This, _Connection *Connection);
END_INTERFACE
} IJetEngineVtbl;
interface IJetEngine {
CONST_VTBL struct IJetEngineVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IJetEngine_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
#define IJetEngine_AddRef(This) ((This)->lpVtbl ->AddRef (This))
#define IJetEngine_Release(This) ((This)->lpVtbl ->Release (This))
#define IJetEngine_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
#define IJetEngine_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
#define IJetEngine_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
#define IJetEngine_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
#define IJetEngine_CompactDatabase(This, SourceConnection, Destconnection) ((This)->lpVtbl ->CompactDatabase (This, SourceConnection, Destconnection))
#define IJetEngine_RefreshCache(This, Connection) ((This)->lpVtbl ->RefreshCache (This, Connection))
#endif
#endif
#endif
EXTERN_C const CLSID CLSID_Replica;
#ifdef __cplusplus
class DECLSPEC_UUID ("D2D139E3-B6CA-11d1-9F31-00C04FC29D52")
Replica;
#endif
EXTERN_C const CLSID CLSID_JetEngine;
#ifdef __cplusplus
class DECLSPEC_UUID ("DE88C160-FF2C-11D1-BB6F-00C04FAE22DA")
JetEngine;
#endif
#endif
#ifdef __cplusplus
}
#endif
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,20 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _IPX_ADAPTER_
#define _IPX_ADAPTER_
typedef struct _ADDRESS_RESERVED {
UCHAR Reserved[28];
} ADDRESS_RESERVED,*PADDRESS_RESERVED;
HANDLE WINAPI CreateSocketPort(USHORT Socket);
DWORD WINAPI DeleteSocketPort(HANDLE Handle);
DWORD WINAPI IpxRecvPacket(HANDLE Handle,PUCHAR IpxPacket,ULONG IpxPacketLength,PADDRESS_RESERVED lpReserved,LPOVERLAPPED lpOverlapped,LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine);
DWORD WINAPI IpxSendPacket(HANDLE Handle,ULONG AdapterIdx,PUCHAR IpxPacket,ULONG IpxPacketLength,PADDRESS_RESERVED lpReserved,LPOVERLAPPED lpOverlapped,LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine);
#define GetNicIdx(pReserved) ((ULONG)*((USHORT *)(pReserved+2)))
#endif

View File

@ -0,0 +1,19 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus
extern "C" {
#endif
#define DBPROPFLAGS_ADSISEARCH 0x0000c000
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,48 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef RC_INVOKED
#define _HRESULT_TYPEDEF_(_sc) _sc
#else
#define _HRESULT_TYPEDEF_(_sc) ((HRESULT)_sc)
#endif
#define FACILITY_NULL 0
#define FACILITY_RPC 1
#define FACILITY_DISPATCH 2
#define FACILITY_STORAGE 3
#define FACILITY_ITF 4
#define FACILITY_WIN32 7
#define FACILITY_WINDOWS 8
#define FACILITY_SSPI 9
#define FACILITY_CONTROL 10
#define E_ADS_BAD_PATHNAME _HRESULT_TYPEDEF_(0x80005000)
#define E_ADS_INVALID_DOMAIN_OBJECT _HRESULT_TYPEDEF_(0x80005001)
#define E_ADS_INVALID_USER_OBJECT _HRESULT_TYPEDEF_(0x80005002)
#define E_ADS_INVALID_COMPUTER_OBJECT _HRESULT_TYPEDEF_(0x80005003)
#define E_ADS_UNKNOWN_OBJECT _HRESULT_TYPEDEF_(0x80005004)
#define E_ADS_PROPERTY_NOT_SET _HRESULT_TYPEDEF_(0x80005005)
#define E_ADS_PROPERTY_NOT_SUPPORTED _HRESULT_TYPEDEF_(0x80005006)
#define E_ADS_PROPERTY_INVALID _HRESULT_TYPEDEF_(0x80005007)
#define E_ADS_BAD_PARAMETER _HRESULT_TYPEDEF_(0x80005008)
#define E_ADS_OBJECT_UNBOUND _HRESULT_TYPEDEF_(0x80005009)
#define E_ADS_PROPERTY_NOT_MODIFIED _HRESULT_TYPEDEF_(0x8000500a)
#define E_ADS_PROPERTY_MODIFIED _HRESULT_TYPEDEF_(0x8000500b)
#define E_ADS_CANT_CONVERT_DATATYPE _HRESULT_TYPEDEF_(0x8000500c)
#define E_ADS_PROPERTY_NOT_FOUND _HRESULT_TYPEDEF_(0x8000500d)
#define E_ADS_OBJECT_EXISTS _HRESULT_TYPEDEF_(0x8000500e)
#define E_ADS_SCHEMA_VIOLATION _HRESULT_TYPEDEF_(0x8000500f)
#define E_ADS_COLUMN_NOT_SET _HRESULT_TYPEDEF_(0x80005010)
#define S_ADS_ERRORSOCCURRED _HRESULT_TYPEDEF_(0x00005011)
#define S_ADS_NOMORE_ROWS _HRESULT_TYPEDEF_(0x00005012)
#define S_ADS_NOMORE_COLUMNS _HRESULT_TYPEDEF_(0x00005013)
#define E_ADS_INVALID_FILTER _HRESULT_TYPEDEF_(0x80005014)
#endif

View File

@ -0,0 +1,47 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef _ADSHLP_
#define _ADSHLP_
#ifdef __cplusplus
extern "C" {
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
HRESULT WINAPI ADsGetObject (LPCWSTR lpszPathName, REFIID riid, VOID **ppObject);
HRESULT WINAPI ADsBuildEnumerator (IADsContainer *pADsContainer, IEnumVARIANT **ppEnumVariant);
HRESULT WINAPI ADsFreeEnumerator (IEnumVARIANT *pEnumVariant);
HRESULT WINAPI ADsEnumerateNext (IEnumVARIANT *pEnumVariant, ULONG cElements, VARIANT *pvar, ULONG *pcElementsFetched);
HRESULT WINAPI ADsBuildVarArrayStr (LPWSTR *lppPathNames, DWORD dwPathNames, VARIANT *pVar);
HRESULT WINAPI ADsBuildVarArrayInt (LPDWORD lpdwObjectTypes, DWORD dwObjectTypes, VARIANT *pVar);
HRESULT WINAPI ADsOpenObject (LPCWSTR lpszPathName, LPCWSTR lpszUserName, LPCWSTR lpszPassword, DWORD dwReserved, REFIID riid, void **ppObject);
HRESULT WINAPI ADsGetLastError (LPDWORD lpError, LPWSTR lpErrorBuf, DWORD dwErrorBufLen, LPWSTR lpNameBuf, DWORD dwNameBufLen);
VOID WINAPI ADsSetLastError (DWORD dwErr, LPCWSTR pszError, LPCWSTR pszProvider);
VOID WINAPI ADsFreeAllErrorRecords (VOID);
LPVOID WINAPI AllocADsMem (DWORD cb);
WINBOOL WINAPI FreeADsMem (LPVOID pMem);
LPVOID WINAPI ReallocADsMem (LPVOID pOldMem, DWORD cbOld, DWORD cbNew);
LPWSTR WINAPI AllocADsStr (LPCWSTR pStr);
WINBOOL WINAPI FreeADsStr (LPWSTR pStr);
WINBOOL WINAPI ReallocADsStr (LPWSTR *ppStr, LPWSTR pStr);
HRESULT WINAPI ADsEncodeBinaryData (PBYTE pbSrcData, DWORD dwSrcLen, LPWSTR *ppszDestData);
HRESULT WINAPI ADsDecodeBinaryData (LPCWSTR szSrcData, PBYTE *ppbDestData, ULONG *pdwDestLen);
HRESULT WINAPI PropVariantToAdsType (VARIANT *pVariant, DWORD dwNumVariant, PADSVALUE *ppAdsValues, PDWORD pdwNumValues);
HRESULT WINAPI AdsTypeToPropVariant (PADSVALUE pAdsValues, DWORD dwNumValues, VARIANT *pVariant);
void WINAPI AdsFreeAdsValues (PADSVALUE pAdsValues, DWORD dwNumValues);
HRESULT WINAPI BinarySDToSecurityDescriptor (PSECURITY_DESCRIPTOR pSecurityDescriptor, VARIANT *pVarsec, LPCWSTR pszServerName, LPCWSTR userName, LPCWSTR passWord, DWORD dwFlags);
HRESULT WINAPI SecurityDescriptorToBinarySD (VARIANT vVarSecDes, PSECURITY_DESCRIPTOR *ppSecurityDescriptor, PDWORD pdwSDLength, LPCWSTR pszServerName, LPCWSTR userName, LPCWSTR passWord, DWORD dwFlags);
#define InitADsMem()
#define AssertADsMemLeaks()
#define DumpMemoryTracker()
#endif
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,68 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef __ADSIID_H__
#define __ADSIID_H__
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus
extern "C" {
#endif
extern const GUID LIBID_ADs;
extern const GUID IID_IADs;
extern const GUID IID_IADsContainer;
extern const GUID IID_IADsNamespaces;
extern const GUID IID_IADsDomain;
extern const GUID IID_IADsUser;
extern const GUID IID_IADsComputerOperations;
extern const GUID IID_IADsComputer;
extern const GUID IID_IADsGroup;
extern const GUID IID_IADsMembers;
extern const GUID IID_IADsPrintQueue;
extern const GUID IID_IADsPrintQueueOperations;
extern const GUID IID_IADsPrintJobOperations;
extern const GUID IID_IADsPrintJob;
extern const GUID IID_IADsCollection;
extern const GUID IID_IADsServiceOperations;
extern const GUID IID_IADsService;
extern const GUID IID_IADsFileServiceOperations;
extern const GUID IID_IADsFileService;
extern const GUID IID_IADsResource;
extern const GUID IID_IADsSession;
extern const GUID IID_IADsFileShare;
extern const GUID IID_IADsSchema;
extern const GUID IID_IADsClass;
extern const GUID IID_IADsProperty;
extern const GUID IID_IADsSyntax;
extern const GUID IID_IADsLocality;
extern const GUID IID_IADsO;
extern const GUID IID_IADsOU;
extern const GUID IID_IADsOpenDSObject;
extern const GUID IID_IADsSearch;
extern const GUID IID_IADsPropertyList;
extern const GUID IID_IDSObject;
extern const GUID IID_IDSSearch;
extern const GUID IID_IDSAttrMgmt;
extern const GUID IID_IDirectorySearch;
extern const GUID IID_IDirectoryObject;
extern const GUID IID_IDirectoryAttrMgmt;
extern const GUID CLSID_LDAPConnectionObject;
extern const GUID CLSID_LDAPObject;
extern const GUID CLSID_UmiLDAPQueryObject;
extern const GUID CLSID_WinNTConnectionObject;
extern const GUID CLSID_WinNTObject;
extern const GUID CLSID_ADsDSOObject;
extern const GUID DBGUID_LDAPDialect;
extern const GUID DBPROPSET_ADSISEARCH;
extern const GUID DBPROPSET_ADSIBIND;
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,58 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus
extern "C" {
#endif
#define NAMESPACE_CLASS_NAME TEXT ("Namespace")
#define COUNTRY_CLASS_NAME TEXT ("Country")
#define LOCALITY_CLASS_NAME TEXT ("Locality")
#define ORGANIZATION_CLASS_NAME TEXT ("Organization")
#define ORGANIZATIONUNIT_CLASS_NAME TEXT ("Organizational Unit")
#define DOMAIN_CLASS_NAME TEXT ("Domain")
#define COMPUTER_CLASS_NAME TEXT ("Computer")
#define USER_CLASS_NAME TEXT ("User")
#define GROUP_CLASS_NAME TEXT ("Group")
#define GLOBALGROUP_CLASS_NAME TEXT ("GlobalGroup")
#define LOCALGROUP_CLASS_NAME TEXT ("LocalGroup")
#define SERVICE_CLASS_NAME TEXT ("Service")
#define FILESERVICE_CLASS_NAME TEXT ("FileService")
#define SESSION_CLASS_NAME TEXT ("Session")
#define RESOURCE_CLASS_NAME TEXT ("Resource")
#define FILESHARE_CLASS_NAME TEXT ("FileShare")
#define PRINTER_CLASS_NAME TEXT ("PrintQueue")
#define PRINTJOB_CLASS_NAME TEXT ("PrintJob")
#define SCHEMA_CLASS_NAME TEXT ("Schema")
#define CLASS_CLASS_NAME TEXT ("Class")
#define PROPERTY_CLASS_NAME TEXT ("Property")
#define SYNTAX_CLASS_NAME TEXT ("Syntax")
#define ROOTDSE_CLASS_NAME TEXT ("RootDSE")
#define NO_SCHEMA TEXT ("")
#define DOMAIN_SCHEMA_NAME TEXT ("Domain")
#define COMPUTER_SCHEMA_NAME TEXT ("Computer")
#define USER_SCHEMA_NAME TEXT ("User")
#define GROUP_SCHEMA_NAME TEXT ("Group")
#define GLOBALGROUP_SCHEMA_NAME TEXT ("GlobalGroup")
#define LOCALGROUP_SCHEMA_NAME TEXT ("LocalGroup")
#define SERVICE_SCHEMA_NAME TEXT ("Service")
#define PRINTER_SCHEMA_NAME TEXT ("PrintQueue")
#define PRINTJOB_SCHEMA_NAME TEXT ("PrintJob")
#define FILESERVICE_SCHEMA_NAME TEXT ("FileService")
#define SESSION_SCHEMA_NAME TEXT ("Session")
#define RESOURCE_SCHEMA_NAME TEXT ("Resource")
#define FILESHARE_SCHEMA_NAME TEXT ("FileShare")
#define FPNW_FILESERVICE_SCHEMA_NAME TEXT ("FPNWFileService")
#define FPNW_SESSION_SCHEMA_NAME TEXT ("FPNWSession")
#define FPNW_RESOURCE_SCHEMA_NAME TEXT ("FPNWResource")
#define FPNW_FILESHARE_SCHEMA_NAME TEXT ("FPNWFileShare")
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,53 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _ADSPROP_H_
#define _ADSPROP_H_
#include <iads.h>
#ifdef __cplusplus
extern "C" {
#endif
#define WM_ADSPROP_NOTIFY_PAGEINIT (WM_USER + 1101)
#define WM_ADSPROP_NOTIFY_PAGEHWND (WM_USER + 1102)
#define WM_ADSPROP_NOTIFY_CHANGE (WM_USER + 1103)
#define WM_ADSPROP_NOTIFY_APPLY (WM_USER + 1104)
#define WM_ADSPROP_NOTIFY_SETFOCUS (WM_USER + 1105)
#define WM_ADSPROP_NOTIFY_FOREGROUND (WM_USER + 1106)
#define WM_ADSPROP_NOTIFY_EXIT (WM_USER + 1107)
#define WM_ADSPROP_NOTIFY_ERROR (WM_USER + 1110)
typedef struct _ADSPROPINITPARAMS {
DWORD dwSize;
DWORD dwFlags;
HRESULT hr;
IDirectoryObject *pDsObj;
LPWSTR pwzCN;
PADS_ATTR_INFO pWritableAttrs;
} ADSPROPINITPARAMS,*PADSPROPINITPARAMS;
typedef struct _ADSPROPERROR {
HWND hwndPage;
PWSTR pszPageTitle;
PWSTR pszObjPath;
PWSTR pszObjClass;
HRESULT hr;
PWSTR pszError;
} ADSPROPERROR,*PADSPROPERROR;
STDAPI ADsPropCreateNotifyObj(LPDATAOBJECT pAppThdDataObj,PWSTR pwzADsObjName,HWND *phNotifyObj);
STDAPI_(WINBOOL) ADsPropGetInitInfo(HWND hNotifyObj,PADSPROPINITPARAMS pInitParams);
STDAPI_(WINBOOL) ADsPropSetHwndWithTitle(HWND hNotifyObj,HWND hPage,PTSTR ptzTitle);
STDAPI_(WINBOOL) ADsPropSetHwnd(HWND hNotifyObj,HWND hPage);
STDAPI_(WINBOOL) ADsPropCheckIfWritable(const PWSTR pwzAttr,const PADS_ATTR_INFO pWritableAttrs);
STDAPI_(WINBOOL) ADsPropSendErrorMessage(HWND hNotifyObj,PADSPROPERROR pError);
STDAPI_(WINBOOL) ADsPropShowErrorDialog(HWND hNotifyObj,HWND hPage);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,73 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifdef __cplusplus
extern "C" {
#endif
#define ADS_PRINTER_PAUSED 0x00000001
#define ADS_PRINTER_PENDING_DELETION 0x00000002
#define ADS_PRINTER_ERROR 0x00000003
#define ADS_PRINTER_PAPER_JAM 0x00000004
#define ADS_PRINTER_PAPER_OUT 0x00000005
#define ADS_PRINTER_MANUAL_FEED 0x00000006
#define ADS_PRINTER_PAPER_PROBLEM 0x00000007
#define ADS_PRINTER_OFFLINE 0x00000008
#define ADS_PRINTER_IO_ACTIVE 0x00000100
#define ADS_PRINTER_BUSY 0x00000200
#define ADS_PRINTER_PRINTING 0x00000400
#define ADS_PRINTER_OUTPUT_BIN_FULL 0x00000800
#define ADS_PRINTER_NOT_AVAILABLE 0x00001000
#define ADS_PRINTER_WAITING 0x00002000
#define ADS_PRINTER_PROCESSING 0x00004000
#define ADS_PRINTER_INITIALIZING 0x00008000
#define ADS_PRINTER_WARMING_UP 0x00010000
#define ADS_PRINTER_TONER_LOW 0x00020000
#define ADS_PRINTER_NO_TONER 0x00040000
#define ADS_PRINTER_PAGE_PUNT 0x00080000
#define ADS_PRINTER_USER_INTERVENTION 0x00100000
#define ADS_PRINTER_OUT_OF_MEMORY 0x00200000
#define ADS_PRINTER_DOOR_OPEN 0x00400000
#define ADS_PRINTER_SERVER_UNKNOWN 0x00800000
#define ADS_PRINTER_POWER_SAVE 0x01000000
#define ADS_JOB_PAUSED 0x00000001
#define ADS_JOB_ERROR 0x00000002
#define ADS_JOB_DELETING 0x00000004
#define ADS_JOB_SPOOLING 0x00000008
#define ADS_JOB_PRINTING 0x00000010
#define ADS_JOB_OFFLINE 0x00000020
#define ADS_JOB_PAPEROUT 0x00000040
#define ADS_JOB_PRINTED 0x00000080
#define ADS_JOB_DELETED 0x00000100
#define ADS_SERVICE_STOPPED 0x00000001
#define ADS_SERVICE_START_PENDING 0x00000002
#define ADS_SERVICE_STOP_PENDING 0x00000003
#define ADS_SERVICE_RUNNING 0x00000004
#define ADS_SERVICE_CONTINUE_PENDING 0x00000005
#define ADS_SERVICE_PAUSE_PENDING 0x00000006
#define ADS_SERVICE_PAUSED 0x00000007
#define ADS_SERVICE_ERROR 0x00000008
#define ADS_SERVICE_OWN_PROCESS 0x00000010
#define ADS_SERVICE_SHARE_PROCESS 0x00000020
#define ADS_SERVICE_KERNEL_DRIVER 0x00000001
#define ADS_SERVICE_FILE_SYSTEM_DRIVER 0x00000002
#define ADS_SERVICE_BOOT_START SERVICE_BOOT_START
#define ADS_SERVICE_SYSTEM_START SERVICE_SYSTEM_START
#define ADS_SERVICE_AUTO_START SERVICE_AUTO_START
#define ADS_SERVICE_DEMAND_START SERVICE_DEMAND_START
#define ADS_SERVICE_DISABLED SERVICE_DISABLED
#define ADS_SERVICE_ERROR_IGNORE 0
#define ADS_SERVICE_ERROR_NORMAL 1
#define ADS_SERVICE_ERROR_SEVERE 2
#define ADS_SERVICE_ERROR_CRITICAL 3
#ifdef __cplusplus
}
#endif

View File

@ -0,0 +1,190 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef _ADTGEN_H
#define _ADTGEN_H
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#define AUDIT_TYPE_LEGACY 1
#define AUDIT_TYPE_WMI 2
typedef enum _AUDIT_PARAM_TYPE {
APT_None = 1,
APT_String,
APT_Ulong,
APT_Pointer,
APT_Sid,
APT_LogonId,
APT_ObjectTypeList,
APT_Luid,
APT_Guid,
APT_Time,
APT_Int64,
APT_IpAddress,
APT_LogonIdWithSid
} AUDIT_PARAM_TYPE;
#define AP_ParamTypeBits 8
#define AP_ParamTypeMask __MSABI_LONG(0xff)
#define AP_FormatHex (__MSABI_LONG(0x1) << AP_ParamTypeBits)
#define AP_AccessMask (__MSABI_LONG(0x2) << AP_ParamTypeBits)
#define AP_Filespec (__MSABI_LONG(0x1) << AP_ParamTypeBits)
#define AP_SidAsLogonId (__MSABI_LONG(0x1) << AP_ParamTypeBits)
#define AP_PrimaryLogonId (__MSABI_LONG(0x1) << AP_ParamTypeBits)
#define AP_ClientLogonId (__MSABI_LONG(0x2) << AP_ParamTypeBits)
#define ApExtractType(TypeFlags) ((AUDIT_PARAM_TYPE) (TypeFlags & AP_ParamTypeMask))
#define ApExtractFlags(TypeFlags) ((TypeFlags & ~AP_ParamTypeMask))
#define _AUTHZ_SS_MAXSIZE 128
#define APF_AuditFailure 0x0
#define APF_AuditSuccess 0x1
#define APF_ValidFlags (APF_AuditSuccess)
#define AUTHZ_ALLOW_MULTIPLE_SOURCE_INSTANCES 0x1
#define AUTHZ_MIGRATED_LEGACY_PUBLISHER 0x2
#define AUTHZ_AUDIT_INSTANCE_INFORMATION 0x2
typedef struct _AUDIT_OBJECT_TYPE {
GUID ObjectType;
USHORT Flags;
USHORT Level;
ACCESS_MASK AccessMask;
} AUDIT_OBJECT_TYPE,*PAUDIT_OBJECT_TYPE;
typedef struct _AUDIT_OBJECT_TYPES {
USHORT Count;
USHORT Flags;
#ifdef __WIDL__
[size_is (Count)]
#endif
AUDIT_OBJECT_TYPE *pObjectTypes;
} AUDIT_OBJECT_TYPES,*PAUDIT_OBJECT_TYPES;
typedef struct _AUDIT_IP_ADDRESS {
BYTE pIpAddress[_AUTHZ_SS_MAXSIZE];
} AUDIT_IP_ADDRESS,*PAUDIT_IP_ADDRESS;
typedef struct _AUDIT_PARAM {
AUDIT_PARAM_TYPE Type;
ULONG Length;
DWORD Flags;
#ifdef __WIDL__
[switch_type (AUDIT_PARAM_TYPE), switch_is (Type)]
#else
__C89_NAMELESS
#endif
union {
#ifdef __WIDL__
[default]
#endif
ULONG_PTR Data0;
#ifdef __WIDL__
[case (APT_String)]
[string]
#endif
PWSTR String;
#ifdef __WIDL__
[case (APT_Ulong, APT_Pointer)]
#endif
ULONG_PTR u;
#ifdef __WIDL__
[case (APT_Sid)]
#endif
SID *psid;
#ifdef __WIDL__
[case (APT_Guid)]
#endif
GUID *pguid;
#ifdef __WIDL__
[case (APT_LogonId)]
#endif
ULONG LogonId_LowPart;
#ifdef __WIDL__
[case (APT_ObjectTypeList)]
#endif
AUDIT_OBJECT_TYPES *pObjectTypes;
#ifdef __WIDL__
[case (APT_IpAddress)]
#endif
AUDIT_IP_ADDRESS *pIpAddress;
};
#ifdef __WIDL__
[switch_type (AUDIT_PARAM_TYPE), switch_is (Type)]
#else
__C89_NAMELESS
#endif
union {
#ifdef __WIDL__
[default]
#endif
ULONG_PTR Data1;
#ifdef __WIDL__
[case (APT_LogonId)]
#endif
LONG LogonId_HighPart;
};
} AUDIT_PARAM,*PAUDIT_PARAM;
typedef struct _AUDIT_PARAMS {
ULONG Length;
DWORD Flags;
USHORT Count;
#ifdef __WIDL__
[size_is (Count)]
#endif
AUDIT_PARAM *Parameters;
} AUDIT_PARAMS,*PAUDIT_PARAMS;
typedef struct _AUTHZ_AUDIT_EVENT_TYPE_LEGACY {
USHORT CategoryId;
USHORT AuditId;
USHORT ParameterCount;
} AUTHZ_AUDIT_EVENT_TYPE_LEGACY,*PAUTHZ_AUDIT_EVENT_TYPE_LEGACY;
typedef
#ifdef __WIDL__
[switch_type (BYTE)]
#endif
union _AUTHZ_AUDIT_EVENT_TYPE_UNION {
#ifdef __WIDL__
[case (AUDIT_TYPE_LEGACY)]
#endif
AUTHZ_AUDIT_EVENT_TYPE_LEGACY Legacy;
} AUTHZ_AUDIT_EVENT_TYPE_UNION,*PAUTHZ_AUDIT_EVENT_TYPE_UNION;
typedef
struct _AUTHZ_AUDIT_EVENT_TYPE_OLD {
ULONG Version;
DWORD dwFlags;
LONG RefCount;
ULONG_PTR hAudit;
LUID LinkId;
#ifdef __WIDL__
[switch_is (Version)]
#endif
AUTHZ_AUDIT_EVENT_TYPE_UNION u;
} AUTHZ_AUDIT_EVENT_TYPE_OLD;
typedef
#ifdef __WIDL__
[handle]
#endif
AUTHZ_AUDIT_EVENT_TYPE_OLD *PAUTHZ_AUDIT_EVENT_TYPE_OLD;
#define AUTHZP_WPD_EVENT 0x10
typedef
#ifdef __WIDL__
[context_handle]
#endif
PVOID AUDIT_HANDLE,*PAUDIT_HANDLE;
#endif
#endif

View File

@ -0,0 +1,263 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _ADVPUB_H_
#define _ADVPUB_H_
#ifdef __cplusplus
extern "C" {
#endif
#ifndef S_ASYNCHRONOUS
#define S_ASYNCHRONOUS _HRESULT_TYPEDEF_(0x401e8)
#endif
#define achRUNSETUPCOMMANDFUNCTION "RunSetupCommand"
HRESULT WINAPI RunSetupCommand(HWND hWnd,LPCSTR szCmdName,LPCSTR szInfSection,LPCSTR szDir,LPCSTR lpszTitle,HANDLE *phEXE,DWORD dwFlags,LPVOID pvReserved);
typedef HRESULT (WINAPI *RUNSETUPCOMMAND)(HWND hWnd,LPCSTR szCmdName,LPCSTR szInfSection,LPCSTR szDir,LPCSTR szTitle,HANDLE *phEXE,DWORD dwFlags,LPVOID pvReserved);
#define RSC_FLAG_INF 1
#define RSC_FLAG_SKIPDISKSPACECHECK 2
#define RSC_FLAG_QUIET 4
#define RSC_FLAG_NGCONV 8
#define RSC_FLAG_UPDHLPDLLS 16
#define RSC_FLAG_DELAYREGISTEROCX 512
#define RSC_FLAG_SETUPAPI 1024
#define achNEEDREBOOTINITFUNCTION "NeedRebootInit"
DWORD WINAPI NeedRebootInit(VOID);
typedef DWORD (WINAPI *NEEDREBOOTINIT)(VOID);
#define achNEEDREBOOTFUNCTION "NeedReboot"
WINBOOL WINAPI NeedReboot(DWORD dwRebootCheck);
typedef WINBOOL (WINAPI *NEEDREBOOT)(DWORD dwRebootCheck);
#define achPRECHECKREBOOT "RebootCheckOnInstall"
HRESULT WINAPI RebootCheckOnInstall(HWND hwnd,PCSTR pszINF,PCSTR pszSec,DWORD dwReserved);
typedef HRESULT (WINAPI *REBOOTCHECKONINSTALL)(HWND,PCSTR,PCSTR,DWORD);
#define c_szTRANSLATEINFSTRING "TranslateInfString"
HRESULT WINAPI TranslateInfString(PCSTR pszInfFilename,PCSTR pszInstallSection,PCSTR pszTranslateSection,PCSTR pszTranslateKey,PSTR pszBuffer,DWORD dwBufferSize,PDWORD pdwRequiredSize,PVOID pvReserved);
typedef HRESULT (WINAPI *TRANSLATEINFSTRING)(PCSTR pszInfFilename,PCSTR pszInstallSection,PCSTR pszTranslateSection,PCSTR pszTranslateKey,PSTR pszBuffer,DWORD dwBufferSize,PDWORD pdwRequiredSize,PVOID pvReserved);
#define achREGINSTALL "RegInstall"
typedef struct _StrEntry {
LPSTR pszName;
LPSTR pszValue;
} STRENTRY,*LPSTRENTRY;
typedef const STRENTRY CSTRENTRY;
typedef CSTRENTRY *LPCSTRENTRY;
typedef struct _StrTable {
DWORD cEntries;
LPSTRENTRY pse;
} STRTABLE,*LPSTRTABLE;
typedef const STRTABLE CSTRTABLE;
typedef CSTRTABLE *LPCSTRTABLE;
HRESULT WINAPI RegInstall(HMODULE hm,LPCSTR pszSection,LPCSTRTABLE pstTable);
typedef HRESULT (WINAPI *REGINSTALL)(HMODULE hm,LPCSTR pszSection,LPCSTRTABLE pstTable);
#define achLAUNCHINFSECTIONEX "LaunchINFSectionEx"
HRESULT WINAPI LaunchINFSectionEx(HWND hwnd,HINSTANCE hInstance,PSTR pszParms,INT nShow);
typedef HRESULT (WINAPI *LAUNCHINFSECTIONEX)(HWND hwnd,HINSTANCE hInst,PSTR pszParams,INT nShow);
#define ALINF_QUIET 4
#define ALINF_NGCONV 8
#define ALINF_UPDHLPDLLS 16
#define ALINF_BKINSTALL 32
#define ALINF_ROLLBACK 64
#define ALINF_CHECKBKDATA 128
#define ALINF_ROLLBKDOALL 256
#define ALINF_DELAYREGISTEROCX 512
#define achEXECUTECAB "ExecuteCab"
typedef struct _CabInfo {
PSTR pszCab;
PSTR pszInf;
PSTR pszSection;
char szSrcPath[MAX_PATH];
DWORD dwFlags;
} CABINFO,*PCABINFO;
HRESULT WINAPI ExecuteCab(HWND hwnd,PCABINFO pCab,LPVOID pReserved);
typedef HRESULT (WINAPI *EXECUTECAB)(HWND hwnd,PCABINFO pCab,LPVOID pReserved);
#define AIF_WARNIFSKIP 0x00000001
#define AIF_NOSKIP 0x00000002
#define AIF_NOVERSIONCHECK 0x00000004
#define AIF_FORCE_FILE_IN_USE 0x00000008
#define AIF_NOOVERWRITE 0x00000010
#define AIF_NO_VERSION_DIALOG 0x00000020
#define AIF_REPLACEONLY 0x00000400
#define AIF_NOLANGUAGECHECK 0x10000000
#define AIF_QUIET 0x20000000
#define achADVINSTALLFILE "AdvInstallFile"
HRESULT WINAPI AdvInstallFile(HWND hwnd,LPCSTR lpszSourceDir,LPCSTR lpszSourceFile,LPCSTR lpszDestDir,LPCSTR lpszDestFile,DWORD dwFlags,DWORD dwReserved);
typedef HRESULT (WINAPI *ADVINSTALLFILE)(HWND hwnd,LPCSTR lpszSourceDir,LPCSTR lpszSourceFile,LPCSTR lpszDestDir,LPCSTR lpszDestFile,DWORD dwFlags,DWORD dwReserved);
#define IE4_RESTORE 0x00000001
#define IE4_BACKNEW 0x00000002
#define IE4_NODELETENEW 0x00000004
#define IE4_NOMESSAGES 0x00000008
#define IE4_NOPROGRESS 0x00000010
#define IE4_NOENUMKEY 0x00000020
#define IE4_NO_CRC_MAPPING 0x00000040
#define IE4_REGSECTION 0x00000080
#define IE4_FRDOALL 0x00000100
#define IE4_UPDREFCNT 0x00000200
#define IE4_USEREFCNT 0x00000400
#define IE4_EXTRAINCREFCNT 0x00000800
#define IE4_REMOVREGBKDATA 0x00001000
HRESULT WINAPI RegSaveRestore(HWND hWnd,PCSTR pszTitleString,HKEY hkBckupKey,PCSTR pcszRootKey,PCSTR pcszSubKey,PCSTR pcszValueName,DWORD dwFlags);
typedef HRESULT (WINAPI *REGSAVERESTORE)(HWND hWnd,PCSTR pszTitleString,HKEY hkBckupKey,PCSTR pcszRootKey,PCSTR pcszSubKey,PCSTR pcszValueName,DWORD dwFlags);
HRESULT WINAPI RegSaveRestoreOnINF(HWND hWnd,PCSTR pszTitle,PCSTR pszINF,PCSTR pszSection,HKEY hHKLMBackKey,HKEY hHKCUBackKey,DWORD dwFlags);
typedef HRESULT (WINAPI *REGSAVERESTOREONINF)(HWND hWnd,PCSTR pszTitle,PCSTR pszINF,PCSTR pszSection,HKEY hHKLMBackKey,HKEY hHKCUBackKey,DWORD dwFlags);
#define ARSR_RESTORE IE4_RESTORE
#define ARSR_NOMESSAGES IE4_NOMESSAGES
#define ARSR_REGSECTION IE4_REGSECTION
#define ARSR_REMOVREGBKDATA IE4_REMOVREGBKDATA
#define REG_SAVE_LOG_KEY "RegSaveLogFile"
#define REG_RESTORE_LOG_KEY "RegRestoreLogFile"
HRESULT WINAPI RegRestoreAll(HWND hWnd,PSTR pszTitleString,HKEY hkBckupKey);
typedef HRESULT (WINAPI *REGRESTOREALL)(HWND hWnd,PSTR pszTitleString,HKEY hkBckupKey);
HRESULT WINAPI FileSaveRestore(HWND hDlg,LPSTR lpFileList,LPSTR lpDir,LPSTR lpBaseName,DWORD dwFlags);
typedef HRESULT (WINAPI *FILESAVERESTORE)(HWND hDlg,LPSTR lpFileList,LPSTR lpDir,LPSTR lpBaseName,DWORD dwFlags);
HRESULT WINAPI FileSaveRestoreOnINF(HWND hWnd,PCSTR pszTitle,PCSTR pszINF,PCSTR pszSection,PCSTR pszBackupDir,PCSTR pszBaseBackupFile,DWORD dwFlags);
typedef HRESULT (WINAPI *FILESAVERESTOREONINF)(HWND hDlg,PCSTR pszTitle,PCSTR pszINF,PCSTR pszSection,PCSTR pszBackupDir,PCSTR pszBaseBackFile,DWORD dwFlags);
#define AFSR_RESTORE IE4_RESTORE
#define AFSR_BACKNEW IE4_BACKNEW
#define AFSR_NODELETENEW IE4_NODELETENEW
#define AFSR_NOMESSAGES IE4_NOMESSAGES
#define AFSR_NOPROGRESS IE4_NOPROGRESS
#define AFSR_UPDREFCNT IE4_UPDREFCNT
#define AFSR_USEREFCNT IE4_USEREFCNT
#define AFSR_EXTRAINCREFCNT IE4_EXTRAINCREFCNT
HRESULT WINAPI AddDelBackupEntry(LPCSTR lpcszFileList,LPCSTR lpcszBackupDir,LPCSTR lpcszBaseName,DWORD dwFlags);
typedef HRESULT (WINAPI *ADDDELBACKUPENTRY)(LPCSTR lpcszFileList,LPCSTR lpcszBackupDir,LPCSTR lpcszBaseName,DWORD dwFlags);
#define AADBE_ADD_ENTRY 0x01
#define AADBE_DEL_ENTRY 0x02
HRESULT WINAPI FileSaveMarkNotExist(LPSTR lpFileList,LPSTR lpDir,LPSTR lpBaseName);
typedef HRESULT (WINAPI *FILESAVEMARKNOTEXIST)(LPSTR lpFileList,LPSTR lpDir,LPSTR lpBaseName);
HRESULT WINAPI GetVersionFromFile(LPSTR lpszFilename,LPDWORD pdwMSVer,LPDWORD pdwLSVer,WINBOOL bVersion);
typedef HRESULT (WINAPI *GETVERSIONFROMFILE)(LPSTR lpszFilename,LPDWORD pdwMSVer,LPDWORD pdwLSVer,WINBOOL bVersion);
HRESULT WINAPI GetVersionFromFileEx(LPSTR lpszFilename,LPDWORD pdwMSVer,LPDWORD pdwLSVer,WINBOOL bVersion);
typedef HRESULT (WINAPI *GETVERSIONFROMFILE)(LPSTR lpszFilename,LPDWORD pdwMSVer,LPDWORD pdwLSVer,WINBOOL bVersion);
#define achISNTADMIN "IsNTAdmin"
WINBOOL WINAPI IsNTAdmin(DWORD dwReserved,DWORD *lpdwReserved);
typedef WINBOOL (WINAPI *ISNTADMIN)(DWORD,DWORD *);
#define ADN_DEL_IF_EMPTY 0x00000001
#define ADN_DONT_DEL_SUBDIRS 0x00000002
#define ADN_DONT_DEL_DIR 0x00000004
#define ADN_DEL_UNC_PATHS 0x00000008
#define achDELNODE "DelNode"
HRESULT WINAPI DelNode(LPCSTR pszFileOrDirName,DWORD dwFlags);
typedef HRESULT (WINAPI *DELNODE)(LPCSTR pszFileOrDirName,DWORD dwFlags);
#define achDELNODERUNDLL32 "DelNodeRunDLL32"
HRESULT WINAPI DelNodeRunDLL32(HWND hwnd,HINSTANCE hInstance,PSTR pszParms,INT nShow);
typedef HRESULT (WINAPI *DELNODERUNDLL32)(HWND hwnd,HINSTANCE hInst,PSTR pszParams,INT nShow);
typedef PVOID HINF;
HRESULT WINAPI OpenINFEngine(PCSTR pszInfFilename,PCSTR pszInstallSection,DWORD dwFlags,HINF *phInf,PVOID pvReserved);
HRESULT WINAPI TranslateInfStringEx(HINF hInf,PCSTR pszInfFilename,PCSTR pszTranslateSection,PCSTR pszTranslateKey,PSTR pszBuffer,DWORD dwBufferSize,PDWORD pdwRequiredSize,PVOID pvReserved);
HRESULT WINAPI CloseINFEngine(HINF hInf);
HRESULT WINAPI ExtractFiles(LPCSTR pszCabName,LPCSTR pszExpandDir,DWORD dwFlags,LPCSTR pszFileList,LPVOID lpReserved,DWORD dwReserved);
INT WINAPI LaunchINFSection(HWND,HINSTANCE,PSTR,INT);
#define LIS_QUIET 0x0001
#define LIS_NOGRPCONV 0x0002
#define RUNCMDS_QUIET 0x00000001
#define RUNCMDS_NOWAIT 0x00000002
#define RUNCMDS_DELAYPOSTCMD 0x00000004
#define awchMSIE4GUID L"{89820200-ECBD-11cf-8B85-00AA005B4383}"
#define achUserInstStubWrapper "UserInstStubWrapper"
#define achUserUnInstStubWrapper "UserUnInstStubWrapper"
typedef HRESULT (WINAPI *USERINSTSTUBWRAPPER)(HWND hwnd,HINSTANCE hInst,PSTR pszParams,INT nShow);
typedef HRESULT (WINAPI *USERUNINSTSTUBWRAPPER)(HWND hwnd,HINSTANCE hInst,PSTR pszParams,INT nShow);
HRESULT WINAPI UserInstStubWrapper(HWND hwnd,HINSTANCE hInstance,PSTR pszParms,INT nShow);
HRESULT WINAPI UserUnInstStubWrapper(HWND hwnd,HINSTANCE hInstance,PSTR pszParms,INT nShow);
typedef struct _PERUSERSECTION {
char szGUID[39+20];
char szDispName[128];
char szLocale[10];
char szStub[MAX_PATH*4];
char szVersion[32];
char szCompID[128];
DWORD dwIsInstalled;
WINBOOL bRollback;
} PERUSERSECTION,*PPERUSERSECTION;
HRESULT WINAPI SetPerUserSecValues(PPERUSERSECTION pPerUser);
#define achSetPerUserSecValues "SetPerUserSecValues"
typedef HRESULT (WINAPI *SETPERUSERSECVALUES)(PPERUSERSECTION pPerUser);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,220 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __AFIRDA__
#define __AFIRDA__
#ifdef __LP64__
#pragma push_macro("u_long")
#undef u_long
#define u_long __ms_u_long
#endif
#include <_bsd_types.h>
#define WINDOWS_AF_IRDA 26
#define WINDOWS_PF_IRDA WINDOWS_AF_IRDA
#define WCE_AF_IRDA 22
#define WCE_PF_IRDA WCE_AF_IRDA
#ifndef AF_IRDA
#define AF_IRDA WINDOWS_AF_IRDA
#endif
#define IRDA_PROTO_SOCK_STREAM 1
#define PF_IRDA AF_IRDA
#define SOL_IRLMP 0x00FF
#define IRLMP_ENUMDEVICES 0x00000010
#define IRLMP_IAS_SET 0x00000011
#define IRLMP_IAS_QUERY 0x00000012
#define IRLMP_SEND_PDU_LEN 0x00000013
#define IRLMP_EXCLUSIVE_MODE 0x00000014
#define IRLMP_IRLPT_MODE 0x00000015
#define IRLMP_9WIRE_MODE 0x00000016
#define IRLMP_TINYTP_MODE 0x00000017
#define IRLMP_PARAMETERS 0x00000018
#define IRLMP_DISCOVERY_MODE 0x00000019
#define IRLMP_SHARP_MODE 0x00000020
#define SIO_LAZY_DISCOVERY _IOR('t',127,u_long)
#define IAS_ATTRIB_NO_CLASS 0x00000010
#define IAS_ATTRIB_NO_ATTRIB 0x00000000
#define IAS_ATTRIB_INT 0x00000001
#define IAS_ATTRIB_OCTETSEQ 0x00000002
#define IAS_ATTRIB_STR 0x00000003
#define IAS_MAX_USER_STRING 256
#define IAS_MAX_OCTET_STRING 1024
#define IAS_MAX_CLASSNAME 64
#define IAS_MAX_ATTRIBNAME 256
enum {
LM_HB_Extension = 128,LM_HB1_PnP = 1,LM_HB1_PDA_Palmtop = 2,LM_HB1_Computer = 4,LM_HB1_Printer = 8,LM_HB1_Modem = 16,LM_HB1_Fax = 32,
LM_HB1_LANAccess = 64,LM_HB2_Telephony = 1,LM_HB2_FileServer = 2,
};
#define LmCharSetASCII 0
#define LmCharSetISO_8859_1 1
#define LmCharSetISO_8859_2 2
#define LmCharSetISO_8859_3 3
#define LmCharSetISO_8859_4 4
#define LmCharSetISO_8859_5 5
#define LmCharSetISO_8859_6 6
#define LmCharSetISO_8859_7 7
#define LmCharSetISO_8859_8 8
#define LmCharSetISO_8859_9 9
#define LmCharSetUNICODE 0xff
typedef u_long LM_BAUD_RATE;
#define LM_BAUD_1200 1200
#define LM_BAUD_2400 2400
#define LM_BAUD_9600 9600
#define LM_BAUD_19200 19200
#define LM_BAUD_38400 38400
#define LM_BAUD_57600 57600
#define LM_BAUD_115200 115200
#define LM_BAUD_576K 576000
#define LM_BAUD_1152K 1152000
#define LM_BAUD_4M 4000000
typedef struct {
u_long nTXDataBytes;
u_long nRXDataBytes;
LM_BAUD_RATE nBaudRate;
u_long thresholdTime;
u_long discTime;
u_short nMSLinkTurn;
u_char nTXPackets;
u_char nRXPackets;
} LM_IRPARMS,*PLM_IRPARMS;
typedef struct _SOCKADDR_IRDA {
u_short irdaAddressFamily;
u_char irdaDeviceID[4];
char irdaServiceName[25];
} SOCKADDR_IRDA,*PSOCKADDR_IRDA,*LPSOCKADDR_IRDA;
typedef struct _WINDOWS_IRDA_DEVICE_INFO {
u_char irdaDeviceID[4];
char irdaDeviceName[22];
u_char irdaDeviceHints1;
u_char irdaDeviceHints2;
u_char irdaCharSet;
} WINDOWS_IRDA_DEVICE_INFO,*PWINDOWS_IRDA_DEVICE_INFO,*LPWINDOWS_IRDA_DEVICE_INFO;
typedef struct _WCE_IRDA_DEVICE_INFO {
u_char irdaDeviceID[4];
char irdaDeviceName[22];
u_char Reserved[2];
} WCE_IRDA_DEVICE_INFO,*PWCE_IRDA_DEVICE_INFO;
typedef WINDOWS_IRDA_DEVICE_INFO IRDA_DEVICE_INFO,*PIRDA_DEVICE_INFO,*LPIRDA_DEVICE_INFO;
typedef struct _WINDOWS_DEVICELIST {
ULONG numDevice;
WINDOWS_IRDA_DEVICE_INFO Device[1];
} WINDOWS_DEVICELIST,*PWINDOWS_DEVICELIST,*LPWINDOWS_DEVICELIST;
typedef struct _WCE_DEVICELIST {
ULONG numDevice;
WCE_IRDA_DEVICE_INFO Device[1];
} WCE_DEVICELIST,*PWCE_DEVICELIST;
typedef WINDOWS_DEVICELIST DEVICELIST,*PDEVICELIST,*LPDEVICELIST;
typedef struct _WINDOWS_IAS_SET {
char irdaClassName[IAS_MAX_CLASSNAME];
char irdaAttribName[IAS_MAX_ATTRIBNAME];
u_long irdaAttribType;
union {
LONG irdaAttribInt;
struct {
u_short Len;
u_char OctetSeq[IAS_MAX_OCTET_STRING];
} irdaAttribOctetSeq;
struct {
u_char Len;
u_char CharSet;
u_char UsrStr[IAS_MAX_USER_STRING];
} irdaAttribUsrStr;
} irdaAttribute;
} WINDOWS_IAS_SET,*PWINDOWS_IAS_SET,*LPWINDOWS_IAS_SET;
typedef struct _WINDOWS_IAS_QUERY {
u_char irdaDeviceID[4];
char irdaClassName[IAS_MAX_CLASSNAME];
char irdaAttribName[IAS_MAX_ATTRIBNAME];
u_long irdaAttribType;
union {
LONG irdaAttribInt;
struct {
u_long Len;
u_char OctetSeq[IAS_MAX_OCTET_STRING];
} irdaAttribOctetSeq;
struct {
u_long Len;
u_long CharSet;
u_char UsrStr[IAS_MAX_USER_STRING];
} irdaAttribUsrStr;
} irdaAttribute;
} WINDOWS_IAS_QUERY,*PWINDOWS_IAS_QUERY,*LPWINDOWS_IAS_QUERY;
typedef struct _WCE_IAS_SET {
char irdaClassName[61];
char irdaAttribName[61];
u_short irdaAttribType;
union {
int irdaAttribInt;
struct {
int Len;
u_char OctetSeq[1];
u_char Reserved[3];
} irdaAttribOctetSeq;
struct {
int Len;
u_char CharSet;
u_char UsrStr[1];
u_char Reserved[2];
} irdaAttribUsrStr;
} irdaAttribute;
} WCE_IAS_SET,*PWCE_IAS_SET;
typedef struct _WCE_IAS_QUERY {
u_char irdaDeviceID[4];
char irdaClassName[61];
char irdaAttribName[61];
u_short irdaAttribType;
union {
int irdaAttribInt;
struct {
int Len;
u_char OctetSeq[1];
u_char Reserved[3];
} irdaAttribOctetSeq;
struct {
int Len;
u_char CharSet;
u_char UsrStr[1];
u_char Reserved[2];
} irdaAttribUsrStr;
} irdaAttribute;
} WCE_IAS_QUERY,*PWCE_IAS_QUERY;
typedef WINDOWS_IAS_SET IAS_SET,*PIAS_SET,*LPIASSET;
typedef WINDOWS_IAS_QUERY IAS_QUERY,*PIAS_QUERY,*LPIASQUERY;
#ifdef __LP64__
#pragma pop_macro("u_long")
#endif
#endif

View File

@ -0,0 +1,29 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _AFXRES_H
#define _AFXRES_H
#if __GNUC__ >= 3
#pragma GCC system_header
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _INC_WINDOWS
#include <windows.h>
#endif
/* IDC_STATIC is documented in winuser.h, but not defined. */
#ifndef IDC_STATIC
#define IDC_STATIC (-1)
#endif
#ifdef __cplusplus
}
#endif
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,105 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _AgentError_h_
#define _AgentError_h_
#define AGENTERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2000)
#define AGENTWARNING(x) MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,(x)+0x2000)
#define AGENTREQERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2100)
#define AGENTPROVIDERERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2200)
#define AGENTVOICEERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2300)
#define AGENTAUDIOERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2400)
#define AGENTCTLERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2500)
#define AGENTEXTERROR(x) MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,(x)+0x2600)
#define AGENTERR_CLIENTINVALID AGENTERROR(1)
#define AGENTERR_CHARACTERINVALID AGENTERROR(2)
#define AGENTERR_ANIMATIONNOTFOUND AGENTERROR(3)
#define AGENTERR_STATENOTFOUND AGENTERROR(4)
#define AGENTERR_AUDIONOTFOUND AGENTERROR(5)
#define AGENTERR_COMMANDNOTFOUND AGENTERROR(6)
#define AGENTERR_COMMANDALREADYINUSE AGENTERROR(7)
#define AGENTERR_MENUNOTFOUND AGENTERROR(8)
#define AGENTERR_LOSTCONNECTION AGENTERROR(9)
#define AGENTERR_CHARACTERNOTVISIBLE AGENTERROR(10)
#define AGENTERR_CHARACTERALREADYLOADED AGENTERROR(11)
#define AGENTERR_NOBALLOON AGENTERROR(12)
#define AGENTERR_NOCOMMANDSWINDOW AGENTERROR(13)
#define AGENTERR_INVALIDPREPARETYPE AGENTERROR(14)
#define AGENTERR_INVALIDANIMATION AGENTERROR(15)
#define AGENTERR_CANTMOVEDURINGDRAG AGENTERROR(16)
#define AGENTERR_CHARACTERNOTACTIVE AGENTERROR(17)
#define AGENTERR_LANGUAGENOTFOUND AGENTERROR(18)
#define AGENTERR_TTSLANGUAGENOTFOUND AGENTERROR(19)
#define AGENTERR_SRLANGUAGENOTFOUND AGENTERROR(20)
#define AGENTERR_LANGUAGEMISMATCH AGENTERROR(21)
#define AGENTERR_SPEAKINGDISABLED AGENTERROR(22)
#define AGENTERR_NOCHARACTERS AGENTERROR(23)
#define AGENTERR_DEFAULTCHARACTER AGENTERROR(24)
#define AGENTWARNING_TTSENGINENOTFOUND AGENTWARNING(1)
#define AGENTWARNING_ONLYCLIENT AGENTWARNING(2)
#define AGENTREQERR_OBJECTNOTFOUND AGENTREQERROR(1)
#define AGENTREQERR_OBJECTINVALID AGENTREQERROR(2)
#define AGENTREQERR_CANTSTOPOTHERS AGENTREQERROR(3)
#define AGENTREQERR_CANTINTERRUPTSELF AGENTREQERROR(4)
#define AGENTREQERR_CANTWAITONSELF AGENTREQERROR(5)
#define AGENTREQERR_INVALIDBOOKMARK AGENTREQERROR(6)
#define AGENTREQERR_SUSPENDED AGENTREQERROR(7)
#define AGENTREQERR_REMOVED AGENTREQERROR(8)
#define IS_INTERRUPT_ERROR(hRes) ((hRes >= AGENTREQERR_INTERRUPTEDLISTENKEY) && (hRes <= AGENTREQERR_INTERRUPTEDUSER))
#define AGENTREQERR_INTERRUPTEDLISTENKEY AGENTREQERROR(10)
#define AGENTREQERR_INTERRUPTEDHEARING AGENTREQERROR(11)
#define AGENTREQERR_INTERRUPTEDCODE AGENTREQERROR(12)
#define AGENTREQERR_INTERRUPTEDUSER AGENTREQERROR(13)
#define AGENTREQERR_INVALIDLASTTAG AGENTREQERROR(14)
#define AGENTPROVERROR_INIT AGENTPROVIDERERROR(1)
#define AGENTPROVERROR_CHARACTERVERSION AGENTPROVIDERERROR(2)
#define AGENTPROVERROR_VERSION AGENTPROVIDERERROR(3)
#define AGENTPROVERROR_MAGIC AGENTPROVIDERERROR(4)
#define AGENTPROVERROR_CHARACTERINVALID AGENTPROVIDERERROR(5)
#define AGENTPROVERROR_WAVEINVALID AGENTPROVIDERERROR(6)
#define AGENTPROVERROR_WAVECORRUPT AGENTPROVIDERERROR(7)
#define AGENTPROVERROR_MMIO AGENTPROVIDERERROR(8)
#define AGENTPROVERROR_PROTOCOL AGENTPROVIDERERROR(9)
#define AGENTAUDIOERROR_DEVICE AGENTAUDIOERROR(1)
#define AGENTAUDIOERROR_TTSENUMERATOR AGENTAUDIOERROR(2)
#define AGENTAUDIOERROR_TTSSELECT AGENTAUDIOERROR(3)
#define AGENTAUDIOERROR_TTSREGISTER AGENTAUDIOERROR(4)
#define AGENTAUDIOERROR_TTSUNEXPECTED AGENTAUDIOERROR(5)
#define AGENTAUDIOERROR_LWVINIT AGENTAUDIOERROR(6)
#define AGENTAUDIOERROR_LWVREGISTER AGENTAUDIOERROR(7)
#define AGENTAUDIOERROR_LWVUNEXPECTED AGENTAUDIOERROR(8)
#define AGENTCTLERROR_NOEVENTSAVAILABLE AGENTCTLERROR(1)
#define AGENTCTLERROR_SERVERINIT AGENTCTLERROR(2)
#define AGENTCTLERROR_LANGUAGE AGENTCTLERROR(3)
#define AGENTVOICEERROR_COULDNTSTARTDEVICE AGENTVOICEERROR(1)
#define AGENTVOICEERROR_NOTINSTALLED AGENTVOICEERROR(2)
#define AGENTVOICEERROR_NOTINITIALIZED AGENTVOICEERROR(3)
#define AGENTVOICEERROR_INVALIDMENU AGENTVOICEERROR(4)
#define AGENTVOICEERROR_UNCLOSEDALTERNATIVE AGENTVOICEERROR(5)
#define AGENTVOICEERROR_UNCLOSEDOPTIONAL AGENTVOICEERROR(6)
#define AGENTVOICEERROR_UNEXPECTEDENDOFALTERNATIVE AGENTVOICEERROR(7)
#define AGENTVOICEERROR_UNEXPECTEDENDOFOPTIONAL AGENTVOICEERROR(8)
#define AGENTVOICEERROR_UNEXPECTEDALTERNATIVE AGENTVOICEERROR(9)
#define AGENTVOICEERROR_NOSRMODE AGENTVOICEERROR(10)
#define AGENTVOICEERROR_SRMODENOTFOUND AGENTVOICEERROR(11)
#define AGENTVOICEERROR_SPEECHDISABLED AGENTVOICEERROR(12)
#define AGENTVOICEERROR_UNEXPECTEDENDOFREPEAT AGENTVOICEERROR(13)
#define AGENTVOICEERROR_UNCLOSEDREPEAT AGENTVOICEERROR(14)
#define AGENTVOICEERROR_UNEXPECTEDREPEAT AGENTVOICEERROR(15)
#define AGENTEXTERROR_EXTNOTFOUND AGENTEXTERROR(1)
#define AGENTEXTERROR_INVALIDCLIENT AGENTEXTERROR(2)
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,217 @@
#ifndef __alink_h__
#define __alink_h__
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
typedef enum _AssemblyOptions {
optAssemTitle = 0,
optAssemDescription,
optAssemConfig,
optAssemOS,
optAssemProcessor,
optAssemLocale,
optAssemVersion,
optAssemCompany,
optAssemProduct,
optAssemProductVersion,
optAssemCopyright,
optAssemTrademark,
optAssemKeyFile,
optAssemKeyName,
optAssemAlgID,
optAssemFlags,
optAssemHalfSign,
optAssemFileVersion,
optAssemSatelliteVer,
optAssemSignaturePublicKey,
optLastAssemOption
} AssemblyOptions;
typedef enum _AssemblyFlags {
afNone = 0x00000000,
afInMemory = 0x00000001,
afCleanModules = 0x00000002,
afNoRefHash = 0x00000004,
afNoDupTypeCheck = 0x00000008,
afDupeCheckTypeFwds = 0x00000010,
} AssemblyFlags;
EXTERN_GUID (CLSID_AssemblyLinker, 0xf7e02368, 0xa7f4, 0x471f, 0x8c, 0x5e, 0x98, 0x39, 0xed, 0x57, 0xcb, 0x5e);
EXTERN_GUID (IID_IALink, 0xc8e77f39, 0x3604, 0x4fd4, 0x85, 0xcf, 0x38, 0xbd, 0xeb, 0x23, 0x3a, 0xd4);
EXTERN_GUID (IID_IALink2, 0xc8e77f39, 0x3604, 0x4fd4, 0x85, 0xcf, 0x38, 0xbd, 0xeb, 0x23, 0x3a, 0xd5);
EXTERN_GUID (IID_IALink3, 0x22d4f7a0, 0x65, 0x43dd, 0x8e, 0xaf, 0xb9, 0xfb, 0x90, 0x1d, 0x82, 0x23);
#define AssemblyIsUBM ((mdAssembly) mdAssemblyNil)
#define MAX_IDENT_LEN 2048
#ifndef HALINKENUM
#define HALINKENUM void *
#endif
#undef INTERFACE
#define INTERFACE IALink
DECLARE_INTERFACE_ (IALink, IUnknown) {
BEGIN_INTERFACE
#ifndef __cplusplus
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
#endif
STDMETHOD (Init) (IMetaDataDispenserEx *pDispenser, IMetaDataError *pErrorHandler) PURE;
STDMETHOD (ImportFile) (LPCWSTR pszFilename, LPCWSTR pszTargetName, WINBOOL fSmartImport, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (SetAssemblyFile) (LPCWSTR pszFilename, IMetaDataEmit *pEmitter, AssemblyFlags afFlags, mdAssembly *pAssemblyID) PURE;
STDMETHOD (AddFile) (mdAssembly AssemblyID, LPCWSTR pszFilename, DWORD dwFlags, IMetaDataEmit *pEmitter, mdFile *pFileToken) PURE;
STDMETHOD (AddImport) (mdAssembly AssemblyID, mdToken ImportToken, DWORD dwFlags, mdFile *pFileToken) PURE;
STDMETHOD (GetScope) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, IMetaDataImport **ppImportScope) PURE;
STDMETHOD (GetAssemblyRefHash) (mdToken FileToken, const void **ppvHash, DWORD *pcbHash) PURE;
STDMETHOD (ImportTypes) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, HALINKENUM *phEnum, IMetaDataImport **ppImportScope, DWORD *pdwCountOfTypes) PURE;
STDMETHOD (EnumCustomAttributes) (HALINKENUM hEnum, mdToken tkType, mdCustomAttribute rCustomValues[], ULONG cMax, ULONG *pcCustomValues) PURE;
STDMETHOD (EnumImportTypes) (HALINKENUM hEnum, DWORD dwMax, mdTypeDef aTypeDefs[], DWORD *pdwCount) PURE;
STDMETHOD (CloseEnum) (HALINKENUM hEnum) PURE;
STDMETHOD (ExportType) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (ExportNestedType) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, mdExportedType ParentType, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (EmbedResource) (mdAssembly AssemblyID, mdToken FileToken, LPCWSTR pszResourceName, DWORD dwOffset, DWORD dwFlags) PURE;
STDMETHOD (LinkResource) (mdAssembly AssemblyID, LPCWSTR pszFileName, LPCWSTR pszNewLocation, LPCWSTR pszResourceName, DWORD dwFlags) PURE;
STDMETHOD (GetResolutionScope) (mdAssembly AssemblyID, mdToken FileToken, mdToken TargetFile, mdToken *pScope) PURE;
STDMETHOD (SetAssemblyProps) (mdAssembly AssemblyID, mdToken FileToken, AssemblyOptions Option, VARIANT Value) PURE;
STDMETHOD (EmitAssemblyCustomAttribute) (mdAssembly AssemblyID, mdToken FileToken, mdToken tkType, void const *pCustomValue, DWORD cbCustomValue, WINBOOL bSecurity, WINBOOL bAllowMulti) PURE;
STDMETHOD (GetWin32ResBlob) (mdAssembly AssemblyID, mdToken FileToken, WINBOOL fDll, LPCWSTR pszIconFile, const void **ppResBlob, DWORD *pcbResBlob) PURE;
STDMETHOD (FreeWin32ResBlob) (const void **ppResBlob) PURE;
STDMETHOD (EmitManifest) (mdAssembly AssemblyID, DWORD *pdwReserveSize, mdAssembly *ptkManifest) PURE;
STDMETHOD (PreCloseAssembly) (mdAssembly AssemblyID) PURE;
STDMETHOD (CloseAssembly) (mdAssembly AssemblyID) PURE;
STDMETHOD (EndMerge) (mdAssembly AssemblyID) PURE;
STDMETHOD (SetNonAssemblyFlags) (AssemblyFlags afFlags) PURE;
STDMETHOD (ImportFile2) (LPCWSTR pszFilename, LPCWSTR pszTargetName, IMetaDataAssemblyImport *pAssemblyScopeIn, WINBOOL fSmartImport, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (ExportTypeForwarder) (mdAssemblyRef tkAssemblyRef, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (ExportNestedTypeForwarder) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, mdExportedType ParentType, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
END_INTERFACE
};
__CRT_UUID_DECL (IALink, 0xc8e77f39, 0x3604, 0x4fd4, 0x85, 0xcf, 0x38, 0xbd, 0xeb, 0x23, 0x3a, 0xd4);
#undef INTERFACE
#define INTERFACE IALink2
DECLARE_INTERFACE_ (IALink2, IALink) {
#ifndef __cplusplus
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IALink */
STDMETHOD (Init) (IMetaDataDispenserEx *pDispenser, IMetaDataError *pErrorHandler) PURE;
STDMETHOD (ImportFile) (LPCWSTR pszFilename, LPCWSTR pszTargetName, WINBOOL fSmartImport, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (SetAssemblyFile) (LPCWSTR pszFilename, IMetaDataEmit *pEmitter, AssemblyFlags afFlags, mdAssembly *pAssemblyID) PURE;
STDMETHOD (AddFile) (mdAssembly AssemblyID, LPCWSTR pszFilename, DWORD dwFlags, IMetaDataEmit *pEmitter, mdFile *pFileToken) PURE;
STDMETHOD (AddImport) (mdAssembly AssemblyID, mdToken ImportToken, DWORD dwFlags, mdFile *pFileToken) PURE;
STDMETHOD (GetScope) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, IMetaDataImport **ppImportScope) PURE;
STDMETHOD (GetAssemblyRefHash) (mdToken FileToken, const void **ppvHash, DWORD *pcbHash) PURE;
STDMETHOD (ImportTypes) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, HALINKENUM *phEnum, IMetaDataImport **ppImportScope, DWORD *pdwCountOfTypes) PURE;
STDMETHOD (EnumCustomAttributes) (HALINKENUM hEnum, mdToken tkType, mdCustomAttribute rCustomValues[], ULONG cMax, ULONG *pcCustomValues) PURE;
STDMETHOD (EnumImportTypes) (HALINKENUM hEnum, DWORD dwMax, mdTypeDef aTypeDefs[], DWORD *pdwCount) PURE;
STDMETHOD (CloseEnum) (HALINKENUM hEnum) PURE;
STDMETHOD (ExportType) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (ExportNestedType) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, mdExportedType ParentType, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (EmbedResource) (mdAssembly AssemblyID, mdToken FileToken, LPCWSTR pszResourceName, DWORD dwOffset, DWORD dwFlags) PURE;
STDMETHOD (LinkResource) (mdAssembly AssemblyID, LPCWSTR pszFileName, LPCWSTR pszNewLocation, LPCWSTR pszResourceName, DWORD dwFlags) PURE;
STDMETHOD (GetResolutionScope) (mdAssembly AssemblyID, mdToken FileToken, mdToken TargetFile, mdToken *pScope) PURE;
STDMETHOD (SetAssemblyProps) (mdAssembly AssemblyID, mdToken FileToken, AssemblyOptions Option, VARIANT Value) PURE;
STDMETHOD (EmitAssemblyCustomAttribute) (mdAssembly AssemblyID, mdToken FileToken, mdToken tkType, void const *pCustomValue, DWORD cbCustomValue, WINBOOL bSecurity, WINBOOL bAllowMulti) PURE;
STDMETHOD (GetWin32ResBlob) (mdAssembly AssemblyID, mdToken FileToken, WINBOOL fDll, LPCWSTR pszIconFile, const void **ppResBlob, DWORD *pcbResBlob) PURE;
STDMETHOD (FreeWin32ResBlob) (const void **ppResBlob) PURE;
STDMETHOD (EmitManifest) (mdAssembly AssemblyID, DWORD *pdwReserveSize, mdAssembly *ptkManifest) PURE;
STDMETHOD (PreCloseAssembly) (mdAssembly AssemblyID) PURE;
STDMETHOD (CloseAssembly) (mdAssembly AssemblyID) PURE;
STDMETHOD (EndMerge) (mdAssembly AssemblyID) PURE;
STDMETHOD (SetNonAssemblyFlags) (AssemblyFlags afFlags) PURE;
STDMETHOD (ImportFile2) (LPCWSTR pszFilename, LPCWSTR pszTargetName, IMetaDataAssemblyImport *pAssemblyScopeIn, WINBOOL fSmartImport, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (ExportTypeForwarder) (mdAssemblyRef tkAssemblyRef, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (ExportNestedTypeForwarder) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, mdExportedType ParentType, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
#endif
STDMETHOD (SetAssemblyFile2) (LPCWSTR pszFilename, IMetaDataEmit2 *pEmitter, AssemblyFlags afFlags, mdAssembly *pAssemblyID) PURE;
STDMETHOD (AddFile2) (mdAssembly AssemblyID, LPCWSTR pszFilename, DWORD dwFlags, IMetaDataEmit2 *pEmitter, mdFile *pFileToken) PURE;
STDMETHOD (GetScope2) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, IMetaDataImport2 **ppImportScope) PURE;
STDMETHOD (ImportTypes2) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, HALINKENUM *phEnum, IMetaDataImport2 **ppImportScope, DWORD *pdwCountOfTypes) PURE;
STDMETHOD (GetFileDef) (mdAssembly AssemblyID, mdFile TargetFile, mdFile *pScope) PURE;
STDMETHOD (GetPublicKeyToken) (LPCWSTR pszKeyFile, LPCWSTR pszKeyContainer, void *pvPublicKeyToken, DWORD *pcbPublicKeyToken) PURE;
STDMETHOD (EmitInternalExportedTypes) (mdAssembly AssemblyID) PURE;
STDMETHOD (ImportFileEx) (LPCWSTR pszFilename, LPCWSTR pszTargetName, WINBOOL fSmartImport, DWORD dwOpenFlags, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (ImportFileEx2) (LPCWSTR pszFilename, LPCWSTR pszTargetName, IMetaDataAssemblyImport *pAssemblyScopeIn, WINBOOL fSmartImport, DWORD dwOpenFlags, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (SetPEKind) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwPEKind, DWORD dwMachine) PURE;
STDMETHOD (EmitAssembly) (mdAssembly AssemblyID) PURE;
};
__CRT_UUID_DECL (IALink2, 0xc8e77f39, 0x3604, 0x4fd4, 0x85, 0xcf, 0x38, 0xbd, 0xeb, 0x23, 0x3a, 0xd5);
#undef INTERFACE
#define INTERFACE IALink3
DECLARE_INTERFACE_ (IALink3, IALink2) {
#ifndef __cplusplus
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IALink */
STDMETHOD (Init) (IMetaDataDispenserEx *pDispenser, IMetaDataError *pErrorHandler) PURE;
STDMETHOD (ImportFile) (LPCWSTR pszFilename, LPCWSTR pszTargetName, WINBOOL fSmartImport, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (SetAssemblyFile) (LPCWSTR pszFilename, IMetaDataEmit *pEmitter, AssemblyFlags afFlags, mdAssembly *pAssemblyID) PURE;
STDMETHOD (AddFile) (mdAssembly AssemblyID, LPCWSTR pszFilename, DWORD dwFlags, IMetaDataEmit *pEmitter, mdFile *pFileToken) PURE;
STDMETHOD (AddImport) (mdAssembly AssemblyID, mdToken ImportToken, DWORD dwFlags, mdFile *pFileToken) PURE;
STDMETHOD (GetScope) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, IMetaDataImport **ppImportScope) PURE;
STDMETHOD (GetAssemblyRefHash) (mdToken FileToken, const void **ppvHash, DWORD *pcbHash) PURE;
STDMETHOD (ImportTypes) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, HALINKENUM *phEnum, IMetaDataImport **ppImportScope, DWORD *pdwCountOfTypes) PURE;
STDMETHOD (EnumCustomAttributes) (HALINKENUM hEnum, mdToken tkType, mdCustomAttribute rCustomValues[], ULONG cMax, ULONG *pcCustomValues) PURE;
STDMETHOD (EnumImportTypes) (HALINKENUM hEnum, DWORD dwMax, mdTypeDef aTypeDefs[], DWORD *pdwCount) PURE;
STDMETHOD (CloseEnum) (HALINKENUM hEnum) PURE;
STDMETHOD (ExportType) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (ExportNestedType) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, mdExportedType ParentType, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (EmbedResource) (mdAssembly AssemblyID, mdToken FileToken, LPCWSTR pszResourceName, DWORD dwOffset, DWORD dwFlags) PURE;
STDMETHOD (LinkResource) (mdAssembly AssemblyID, LPCWSTR pszFileName, LPCWSTR pszNewLocation, LPCWSTR pszResourceName, DWORD dwFlags) PURE;
STDMETHOD (GetResolutionScope) (mdAssembly AssemblyID, mdToken FileToken, mdToken TargetFile, mdToken *pScope) PURE;
STDMETHOD (SetAssemblyProps) (mdAssembly AssemblyID, mdToken FileToken, AssemblyOptions Option, VARIANT Value) PURE;
STDMETHOD (EmitAssemblyCustomAttribute) (mdAssembly AssemblyID, mdToken FileToken, mdToken tkType, void const *pCustomValue, DWORD cbCustomValue, WINBOOL bSecurity, WINBOOL bAllowMulti) PURE;
STDMETHOD (GetWin32ResBlob) (mdAssembly AssemblyID, mdToken FileToken, WINBOOL fDll, LPCWSTR pszIconFile, const void **ppResBlob, DWORD *pcbResBlob) PURE;
STDMETHOD (FreeWin32ResBlob) (const void **ppResBlob) PURE;
STDMETHOD (EmitManifest) (mdAssembly AssemblyID, DWORD *pdwReserveSize, mdAssembly *ptkManifest) PURE;
STDMETHOD (PreCloseAssembly) (mdAssembly AssemblyID) PURE;
STDMETHOD (CloseAssembly) (mdAssembly AssemblyID) PURE;
STDMETHOD (EndMerge) (mdAssembly AssemblyID) PURE;
STDMETHOD (SetNonAssemblyFlags) (AssemblyFlags afFlags) PURE;
STDMETHOD (ImportFile2) (LPCWSTR pszFilename, LPCWSTR pszTargetName, IMetaDataAssemblyImport *pAssemblyScopeIn, WINBOOL fSmartImport, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (ExportTypeForwarder) (mdAssemblyRef tkAssemblyRef, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
STDMETHOD (ExportNestedTypeForwarder) (mdAssembly AssemblyID, mdToken FileToken, mdTypeDef TypeToken, mdExportedType ParentType, LPCWSTR pszTypename, DWORD dwFlags, mdExportedType *pType) PURE;
/* IALink2 */
STDMETHOD (SetAssemblyFile2) (LPCWSTR pszFilename, IMetaDataEmit2 *pEmitter, AssemblyFlags afFlags, mdAssembly *pAssemblyID) PURE;
STDMETHOD (AddFile2) (mdAssembly AssemblyID, LPCWSTR pszFilename, DWORD dwFlags, IMetaDataEmit2 *pEmitter, mdFile *pFileToken) PURE;
STDMETHOD (GetScope2) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, IMetaDataImport2 **ppImportScope) PURE;
STDMETHOD (ImportTypes2) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwScope, HALINKENUM *phEnum, IMetaDataImport2 **ppImportScope, DWORD *pdwCountOfTypes) PURE;
STDMETHOD (GetFileDef) (mdAssembly AssemblyID, mdFile TargetFile, mdFile *pScope) PURE;
STDMETHOD (GetPublicKeyToken) (LPCWSTR pszKeyFile, LPCWSTR pszKeyContainer, void *pvPublicKeyToken, DWORD *pcbPublicKeyToken) PURE;
STDMETHOD (EmitInternalExportedTypes) (mdAssembly AssemblyID) PURE;
STDMETHOD (ImportFileEx) (LPCWSTR pszFilename, LPCWSTR pszTargetName, WINBOOL fSmartImport, DWORD dwOpenFlags, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (ImportFileEx2) (LPCWSTR pszFilename, LPCWSTR pszTargetName, IMetaDataAssemblyImport *pAssemblyScopeIn, WINBOOL fSmartImport, DWORD dwOpenFlags, mdToken *pImportToken, IMetaDataAssemblyImport **ppAssemblyScope, DWORD *pdwCountOfScopes) PURE;
STDMETHOD (SetPEKind) (mdAssembly AssemblyID, mdToken FileToken, DWORD dwPEKind, DWORD dwMachine) PURE;
STDMETHOD (EmitAssembly) (mdAssembly AssemblyID) PURE;
#endif
STDMETHOD (SetManifestFile) (LPCWSTR pszFile) PURE;
};
__CRT_UUID_DECL (IALink3, 0x22d4f7a0, 0x65, 0x43dd, 0x8e, 0xaf, 0xb9, 0xfb, 0x90, 0x1d, 0x82, 0x23);
#undef INTERFACE
#ifdef __cplusplus
extern "C" {
#endif
HRESULT WINAPI CreateALink (REFIID riid, IUnknown **ppInterface);
HINSTANCE WINAPI GetALinkMessageDll ();
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,48 @@
#undef INTERFACE
/*
* Copyright (C) 2010 Maarten Lankhorst for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __AMAUDIO__
#define __AMAUDIO__
#include <mmsystem.h>
#include <dsound.h>
#undef INTERFACE
#define INTERFACE IAMDirectSound
DECLARE_INTERFACE_(IAMDirectSound,IUnknown)
{
/*** IUnknown methods ***/
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
STDMETHOD_(ULONG,Release)(THIS) PURE;
/*** IAMDirectSound methods ***/
STDMETHOD(GetDirectSoundInterface)(THIS_ IDirectSound **ds) PURE;
STDMETHOD(GetPrimaryBufferInterface)(THIS_ IDirectSoundBuffer **buf) PURE;
STDMETHOD(GetSecondaryBufferInterface)(THIS_ IDirectSoundBuffer **buf) PURE;
STDMETHOD(ReleaseDirectSoundInterface)(THIS_ IDirectSound *ds) PURE;
STDMETHOD(ReleasePrimaryBufferInterface)(THIS_ IDirectSoundBuffer *buf) PURE;
STDMETHOD(ReleaseSecondaryBufferInterface)(THIS_ IDirectSoundBuffer *buf) PURE;
STDMETHOD(SetFocusWindow)(THIS_ HWND hwnd, WINBOOL bgaudible) PURE;
STDMETHOD(GetFocusWindow)(THIS_ HWND *hwnd, WINBOOL *bgaudible) PURE;
};
#undef INTERFACE
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,318 @@
/*
* Copyright 2004 Christian Costa
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
import "unknwn.idl";
import "mmstream.idl";
import "strmif.idl";
cpp_quote("#include <ddraw.h>")
cpp_quote("#include <mmsystem.h>")
cpp_quote("#include <mmstream.h>")
cpp_quote("#include <ddstream.h>")
cpp_quote("#include <austream.h>")
cpp_quote("#if 0")
interface IDirectDraw;
interface IDirectDrawSurface;
cpp_quote("#endif")
interface IAMMultiMediaStream;
interface IAMMediaStream;
interface IMediaStreamFilter;
interface IAMMediaTypeStream;
interface IAMMediaTypeSample;
enum {
AMMSF_NOGRAPHTHREAD = 0x00000001
};
enum {
AMMSF_ADDDEFAULTRENDERER = 0x00000001,
AMMSF_CREATEPEER = 0x00000002,
AMMSF_STOPIFNOSAMPLES = 0x00000004,
AMMSF_NOSTALL = 0x00000008
};
enum {
AMMSF_RENDERTYPEMASK = 0x00000003,
AMMSF_RENDERTOEXISTING = 0x00000000,
AMMSF_RENDERALLSTREAMS = 0x00000001,
AMMSF_NORENDER = 0x00000002,
AMMSF_NOCLOCK = 0x00000004,
AMMSF_RUN = 0x00000008
};
typedef [v1_enum] enum {
Disabled = 0,
ReadData = 1,
RenderData = 2
} OUTPUT_STATE;
[
object,
uuid(7DB01C96-C0C3-11d0-8FF1-00C04FD9189D),
dual,
helpstring("IDirectShowStream Interface"),
pointer_default(unique)
]
interface IDirectShowStream : IDispatch
{
[propget, id(1), helpstring("property FileName")] HRESULT FileName([out, retval] BSTR *pVal);
[propput, id(1), helpstring("property FileName")] HRESULT FileName([in] BSTR newVal);
[propget, id(2), helpstring("property Video")] HRESULT Video([out, retval] OUTPUT_STATE *pVal);
[propput, id(2), helpstring("property Video")] HRESULT Video([in] OUTPUT_STATE newVal);
[propget, id(3), helpstring("property Audio")] HRESULT Audio([out, retval] OUTPUT_STATE *pVal);
[propput, id(3), helpstring("property Audio")] HRESULT Audio([in] OUTPUT_STATE newVal);
}
[
object,
uuid(BEBE595C-9A6F-11d0-8FDE-00C04FD9189D),
pointer_default(unique)
]
interface IAMMultiMediaStream : IMultiMediaStream
{
HRESULT Initialize(
[in] STREAM_TYPE StreamType,
[in] DWORD dwFlags,
[in] IGraphBuilder *pFilterGraph);
HRESULT GetFilterGraph(
[out] IGraphBuilder **ppGraphBuilder);
HRESULT GetFilter(
[out] IMediaStreamFilter **ppFilter);
HRESULT AddMediaStream(
[in] IUnknown *pStreamObject,
[in] const MSPID *PurposeId,
[in] DWORD dwFlags,
[out] IMediaStream **ppNewStream);
HRESULT OpenFile(
[in] LPCWSTR pszFileName,
[in] DWORD dwFlags);
HRESULT OpenMoniker(
[in] IBindCtx *pCtx,
[in] IMoniker *pMoniker,
[in] DWORD dwFlags);
HRESULT Render(
[in] DWORD dwFlags);
}
[
object,
uuid(BEBE595D-9A6F-11d0-8FDE-00C04FD9189D),
pointer_default(unique)
]
interface IAMMediaStream : IMediaStream
{
HRESULT Initialize(
[in] IUnknown *pSourceObject,
[in] DWORD dwFlags,
[in] REFMSPID PurposeId,
[in] const STREAM_TYPE StreamType);
HRESULT SetState(
[in] FILTER_STATE State);
HRESULT JoinAMMultiMediaStream(
[in] IAMMultiMediaStream *pAMMultiMediaStream);
HRESULT JoinFilter(
[in] IMediaStreamFilter *pMediaStreamFilter);
HRESULT JoinFilterGraph(
[in] IFilterGraph *pFilterGraph);
}
[
object,
local,
uuid(BEBE595E-9A6F-11d0-8FDE-00C04FD9189D),
pointer_default(unique)
]
interface IMediaStreamFilter : IBaseFilter
{
HRESULT AddMediaStream(
[in] IAMMediaStream *pAMMediaStream);
HRESULT GetMediaStream(
[in] REFMSPID idPurpose,
[out] IMediaStream **ppMediaStream);
HRESULT EnumMediaStreams(
[in] long Index,
[out] IMediaStream **ppMediaStream);
HRESULT SupportSeeking(
[in] BOOL bRenderer);
HRESULT ReferenceTimeToStreamTime(
[in] [out] REFERENCE_TIME *pTime);
HRESULT GetCurrentStreamTime(
[out] REFERENCE_TIME *pCurrentStreamTime);
HRESULT WaitUntil(
[in] REFERENCE_TIME WaitStreamTime);
HRESULT Flush(
[in] BOOL bCancelEOS);
HRESULT EndOfStream();
}
[
object,
local,
uuid(AB6B4AFC-F6E4-11d0-900D-00C04FD9189D),
pointer_default(unique)
]
interface IDirectDrawMediaSampleAllocator : IUnknown
{
HRESULT GetDirectDraw(IDirectDraw **ppDirectDraw);
}
[
object,
local,
uuid(AB6B4AFE-F6E4-11d0-900D-00C04FD9189D),
pointer_default(unique)
]
interface IDirectDrawMediaSample : IUnknown
{
HRESULT GetSurfaceAndReleaseLock(
[out] IDirectDrawSurface **ppDirectDrawSurface,
[out] RECT * pRect);
HRESULT LockMediaSamplePointer(void);
}
[
object,
local,
uuid(AB6B4AFA-F6E4-11d0-900D-00C04FD9189D),
pointer_default(unique)
]
interface IAMMediaTypeStream : IMediaStream
{
HRESULT GetFormat(
[out] AM_MEDIA_TYPE * pMediaType,
[in] DWORD dwFlags);
HRESULT SetFormat(
[in] AM_MEDIA_TYPE * pMediaType,
[in] DWORD dwFlags);
HRESULT CreateSample(
[in] long lSampleSize,
[in] BYTE * pbBuffer,
[in] DWORD dwFlags,
[in] IUnknown *pUnkOuter,
[out] IAMMediaTypeSample ** ppAMMediaTypeSample);
HRESULT GetStreamAllocatorRequirements(
[out] ALLOCATOR_PROPERTIES *pProps);
HRESULT SetStreamAllocatorRequirements(
[in] ALLOCATOR_PROPERTIES *pProps);
}
[
object,
local,
uuid(AB6B4AFB-F6E4-11d0-900D-00C04FD9189D),
pointer_default(unique)
]
interface IAMMediaTypeSample : IStreamSample
{
HRESULT SetPointer(
[in] BYTE *pBuffer,
[in] long lSize);
HRESULT GetPointer(
[out] BYTE ** ppBuffer);
long GetSize(void);
HRESULT GetTime(
[out] REFERENCE_TIME * pTimeStart,
[out] REFERENCE_TIME * pTimeEnd);
HRESULT SetTime(
[in] REFERENCE_TIME * pTimeStart,
[in] REFERENCE_TIME * pTimeEnd);
HRESULT IsSyncPoint(void);
HRESULT SetSyncPoint(
BOOL bIsSyncPoint);
HRESULT IsPreroll(void);
HRESULT SetPreroll(
BOOL bIsPreroll);
long GetActualDataLength(void);
HRESULT SetActualDataLength(long Len);
HRESULT GetMediaType(
AM_MEDIA_TYPE **ppMediaType);
HRESULT SetMediaType(
AM_MEDIA_TYPE *pMediaType);
HRESULT IsDiscontinuity(void);
HRESULT SetDiscontinuity(
BOOL bDiscontinuity);
HRESULT GetMediaTime(
[out] LONGLONG * pTimeStart,
[out] LONGLONG * pTimeEnd);
HRESULT SetMediaTime(
[in] LONGLONG * pTimeStart,
[in] LONGLONG * pTimeEnd);
}
[
uuid(49C47CE5-9BA4-11d0-8212-00C04FC32C45)
]
coclass AMMultiMediaStream
{
[default] dispinterface IDirectShowStream;
}
cpp_quote("DEFINE_GUID(CLSID_AMDirectDrawStream, 0x49c47ce4, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
cpp_quote("DEFINE_GUID(CLSID_AMAudioStream, 0x8496e040, 0xaf4c, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
cpp_quote("DEFINE_GUID(CLSID_AMAudioData, 0xf2468580, 0xaf8a, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
cpp_quote("DEFINE_GUID(CLSID_AMMediaTypeStream, 0xcf0f2f7c, 0xf7bf, 0x11d0, 0x90, 0x0d, 0x00, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
cpp_quote("DEFINE_GUID(CLSID_MediaStreamFilter, 0x49c47ce0, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,241 @@
/*
* Copyright (C) 2003 Robert Shearman
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
import "objidl.idl";
/* trick widl into thinking that it knows the DirectDraw types
* as there is no IDL file for them (yet) */
cpp_quote("#if 0")
interface IDirectDraw;
typedef void DDSURFACEDESC,DDCAPS;
typedef DWORD RGBQUAD;
typedef LONGLONG REFERENCE_TIME;
typedef struct
{
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER, *PBITMAPINFOHEADER, *LPBITMAPINFOHEADER;
cpp_quote("#endif")
cpp_quote("#include <ddraw.h>")
cpp_quote("#define AMDDS_NONE 0x00")
cpp_quote("#define AMDDS_DCIPS 0x01")
cpp_quote("#define AMDDS_PS 0x02")
cpp_quote("#define AMDDS_RGBOVR 0x04")
cpp_quote("#define AMDDS_YUVOVR 0x08")
cpp_quote("#define AMDDS_RGBOFF 0x10")
cpp_quote("#define AMDDS_YUVOFF 0x20")
cpp_quote("#define AMDDS_RGBFLP 0x40")
cpp_quote("#define AMDDS_YUVFLP 0x80")
cpp_quote("#define AMDDS_ALL 0xFF")
cpp_quote("#define AMDDS_DEFAULT AMDDS_ALL")
cpp_quote("#define AMDDS_YUV (AMDDS_YUVOFF | AMDDS_YUVOVR | AMDDS_YUVFLP)")
cpp_quote("#define AMDDS_RGB (AMDDS_RGBOFF | AMDDS_RGBOVR | AMDDS_RGBFLP)")
cpp_quote("#define AMDSS_PRIMARY (AMDDS_DCIPS | AMDDS_PS)")
[
object,
/* uuid(36d39eb0-dd75-11ce-bf0e-00aa0055595a) conflicts with uuids.h */
pointer_default(unique),
local
]
interface IDirectDrawVideo : IUnknown
{
HRESULT GetSwitches([out] DWORD * pSwitches);
HRESULT SetSwitches([in] DWORD Switches);
HRESULT GetCaps([out] DDCAPS * pCaps);
HRESULT GetEmulatedCaps([out] DDCAPS *pCaps);
HRESULT GetSurfaceDesc([out] DDSURFACEDESC * pSurfaceDesc);
HRESULT GetFourCCCodes([out] DWORD * pCount, [out] DWORD * pCodes);
HRESULT SetDirectDraw([in] IDirectDraw *ddraw);
HRESULT GetDirectDraw([out] IDirectDraw **ddraw);
HRESULT GetSurfaceType([out] DWORD * pSurfaceType);
HRESULT SetDefault();
HRESULT UseScanLine([in] long UseScanLine);
HRESULT CanUseScanLine([out] long * UseScanLine);
HRESULT UseOverlayStretch([in] long UseOverlayStretch);
HRESULT CanUseOverlayStretch([out] long * UseOverlayStretch);
HRESULT UseWhenFullScreen([in] long UseWhenFullScreen);
HRESULT WillUseFullScreen([out] long * UseWhenFullScreen);
}
[
object,
/* uuid(1bd0ecb0-f8e2-11ce-aac6-0020af0b99a3) conflicts with uuids.h */
pointer_default(unique),
local
]
interface IQualProp : IUnknown
{
[propget] HRESULT FramesDroppedInRenderer([out] int * pcFrames);
[propget] HRESULT FramesDrawn([out] int * pcFramesDrawn);
[propget] HRESULT AvgFrameRate([out] int * piAvgFrameRate);
[propget] HRESULT Jitter([out] int * iJitter);
[propget] HRESULT AvgSyncOffset([out] int * piAvg);
[propget] HRESULT DevSyncOffset([out] int * piDev);
}
[
object,
/* uuid(dd1d7110-7836-11cf-bf47-00aa0055595a) conflicts with uuids.h */
pointer_default(unique)
]
interface IFullScreenVideo : IUnknown
{
HRESULT CountModes([out] long * pModes);
HRESULT GetModeInfo([in] long Mode, [out] long * pWidth, [out] long * pHeight, [out] long * pDepth);
HRESULT GetCurrentMode([out] long * pMode);
HRESULT IsModeAvailable([in] long Mode);
HRESULT IsModeEnabled([in] long Mode);
HRESULT SetEnabled([in] long Mode, [in] long bEnabled);
HRESULT GetClipFactor([out] long * pClipFactor);
HRESULT SetClipFactor([in] long ClipFactor);
HRESULT SetMessageDrain([in] HWND hwnd);
HRESULT GetMessageDrain([out] HWND * hwnd);
HRESULT SetMonitor([in] long Monitor);
HRESULT GetMonitor([out] long * Monitor);
HRESULT HideOnDeactivate([in] long Hide);
HRESULT IsHideOnDeactivate();
HRESULT SetCaption([in] BSTR strCaption);
HRESULT GetCaption([out] BSTR * pstrCaption);
HRESULT SetDefault();
}
[
object,
/* uuid(53479470-f1dd-11cf-bc42-00aa00ac74f6) conflicts with uuids.h */
pointer_default(unique),
local
]
interface IFullScreenVideoEx : IFullScreenVideo
{
HRESULT SetAcceleratorTable([in] HWND hwnd, [in] HACCEL hAccel);
HRESULT GetAcceleratorTable([out] HWND * phwnd, [out] HACCEL * phAccel);
HRESULT KeepPixelAspectRatio([in] long KeepAspect);
/* FIXME: not sure is this next method is an [out] */
HRESULT IsKeepPixelAspectRatio([out] long * pKeepAspect);
}
[
object,
/* uuid(61ded640-e912-11ce-a099-00aa00479a58) conflicts with uuids.h */
pointer_default(unique),
local
]
interface IBaseVideoMixer : IUnknown
{
HRESULT SetLeadPin([in] int iPin);
HRESULT GetLeadPin([out] int * piPin);
HRESULT GetInputPinCount([out] int * piPinCount);
HRESULT IsUsingClock([out] int * pbValue);
HRESULT SetUsingClock([in] int bValue);
HRESULT GetClockPeriod([out] int * pbValue);
HRESULT SetClockPeriod([in] int bValue);
}
#define iPALETTE_COLORS 256
#define iMASK_COLORS 3
cpp_quote("#define iPALETTE_COLORS 256")
cpp_quote("#define iEGA_COLORS 16")
cpp_quote("#define iMASK_COLORS 3")
cpp_quote("#define iTRUECOLOR 16")
cpp_quote("#define iRED 0")
cpp_quote("#define iGREEN 1")
cpp_quote("#define iBLUE 2")
cpp_quote("#define iPALETTE 8")
cpp_quote("#define iMAXBITS 8")
typedef struct tag_TRUECOLORINFO
{
DWORD dwBitMasks[iMASK_COLORS];
RGBQUAD bmiColors[iPALETTE_COLORS];
} TRUECOLORINFO;
typedef struct tagVIDEOINFOHEADER
{
RECT rcSource;
RECT rcTarget;
DWORD dwBitRate;
DWORD dwBitErrorRate;
REFERENCE_TIME AvgTimePerFrame;
BITMAPINFOHEADER bmiHeader;
} VIDEOINFOHEADER;
typedef struct tagVIDEOINFO
{
RECT rcSource;
RECT rcTarget;
DWORD dwBitRate;
DWORD dwBitErrorRate;
REFERENCE_TIME AvgTimePerFrame;
BITMAPINFOHEADER bmiHeader;
union
{
RGBQUAD bmiColors[iPALETTE_COLORS];
DWORD dwBitMasks[iMASK_COLORS];
TRUECOLORINFO TrueColorInfo;
};
} VIDEOINFO;
typedef struct tagMPEG1VIDEOINFO
{
VIDEOINFOHEADER hdr;
DWORD dwStartTimeCode;
DWORD cbSequenceHeader;
BYTE bSequenceHeader[1];
} MPEG1VIDEOINFO;
cpp_quote("#define MAX_SIZE_MPEG1_SEQUENCE_INFO 140")
cpp_quote("#define MPEG1_SEQUENCE_INFO(pv) ((const BYTE *)(pv)->bSequenceHeader)")
typedef struct tagAnalogVideoInfo
{
RECT rcSource;
RECT rcTarget;
DWORD dwActiveWidth;
DWORD dwActiveHeight;
REFERENCE_TIME AvgTimePerFrame;
} ANALOGVIDEOINFO;
typedef enum
{
AM_PROPERTY_FRAMESTEP_STEP = 0x01,
AM_PROPERTY_FRAMESTEP_CANCEL = 0x02,
AM_PROPERTY_FRAMESTEP_CANSTEP = 0x03,
AM_PROPERTY_FRAMESTEP_CANSTEPMULTIPLE = 0x04
} AM_PROPERTY_FRAMESTEP;
typedef struct _AM_FRAMESTEP_STEP
{
DWORD dwFramesToStep;
} AM_FRAMESTEP_STEP;

View File

@ -0,0 +1,14 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#if _WIN32_WINNT >= 0x0602
#include "devpropdef.h"
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterface_Autoplay_Silent,0x434dd28f,0x9e75,0x450a,0x9a,0xb9,0xff,0x61,0xe6,0x18,0xba,0xd0,2);
#endif
#endif /* WINAPI_PARTITION_DESKTOP. */

View File

@ -0,0 +1,108 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _API_SET_H_
#define _API_SET_H_
#include <_mingw.h>
#ifdef __cplusplus
extern "C" {
#endif
#define API_SET_PREFIX_NAME_A "API-"
#define API_SET_PREFIX_NAME_U L"API-"
#define API_SET_EXTENSION_NAME_A "EXT-"
#define API_SET_EXTENSION_NAME_U L"EXT-"
#define API_SET_SCHEMA_NAME ApiSetSchema
#define API_SET_SECTION_NAME ".apiset"
#define API_SET_SCHEMA_SUFFIX L".sys"
#define API_SET_SCHEMA_VERSION __MSABI_LONG(2U)
#define API_SET_HELPER_NAME ApiSetHelp
#define API_SET_LOAD_SCHEMA_ORDINAL 1
#define API_SET_LOOKUP_ORDINAL 2
#define API_SET_RELEASE_SCHEMA_ORDINAL 3
#define API_SET_STRING_X(s) #s
#define API_SET_STRING(s) API_SET_STRING_X(s)
#define API_SET_STRING_U_Y(s) L ## s
#define API_SET_STRING_U_X(s) API_SET_STRING_U_Y(s)
#define API_SET_STRING_U(s) API_SET_STRING_U_X(API_SET_STRING(s))
#define API_SET_OVERRIDE(X) X##Implementation
#define API_SET_LEGACY_OVERRIDE_DEF(X) X = API_SET_OVERRIDE(X)
#define API_SET_OVERRIDE_DEF(X) API_SET_LEGACY_OVERRIDE_DEF(X) PRIVATE
#define API_SET_PRIVATE(X) X PRIVATE
#undef API_SET
#undef API_SET_LIBRARY
#ifdef _API_SET_HOST
#define API_SET(X) X PRIVATE
#define API_SET_LIBRARY(X)
#else
#define API_SET_LIBRARY(X) LIBRARY X
#ifndef _API_SET_LEGACY_TARGET
#define API_SET(X) X
#else
#define API_SET(X) X = _API_SET_LEGACY_TARGET##.##X
#undef API_SET_PRIVATE
#define API_SET_PRIVATE(X) X = _API_SET_LEGACY_TARGET##.##X PRIVATE
#endif
#endif
#ifdef _NTDEF_
typedef struct _API_SET_VALUE_ENTRY {
ULONG NameOffset;
ULONG NameLength;
ULONG ValueOffset;
ULONG ValueLength;
} API_SET_VALUE_ENTRY, *PAPI_SET_VALUE_ENTRY;
typedef const API_SET_VALUE_ENTRY *PCAPI_SET_VALUE_ENTRY;
typedef struct _API_SET_VALUE_ARRAY {
ULONG Count;
API_SET_VALUE_ENTRY Array[1];
} API_SET_VALUE_ARRAY,*PAPI_SET_VALUE_ARRAY;
typedef const API_SET_VALUE_ARRAY *PCAPI_SET_VALUE_ARRAY;
typedef struct _API_SET_NAMESPACE_ENTRY {
ULONG NameOffset;
ULONG NameLength;
ULONG DataOffset;
} API_SET_NAMESPACE_ENTRY, *PAPI_SET_NAMESPACE_ENTRY;
typedef const API_SET_NAMESPACE_ENTRY *PCAPI_SET_NAMESPACE_ENTRY;
typedef struct _API_SET_NAMESPACE_ARRAY {
ULONG Version;
ULONG Count;
API_SET_NAMESPACE_ENTRY Array[1];
} API_SET_NAMESPACE_ARRAY, *PAPI_SET_NAMESPACE_ARRAY;
typedef const API_SET_NAMESPACE_ARRAY *PCAPI_SET_NAMESPACE_ARRAY;
typedef NTSTATUS (NTAPI *PAPI_SET_LOAD_SCHEMA_RTN)(PCSTR, PCAPI_SET_NAMESPACE_ARRAY *, PVOID *);
typedef NTSTATUS (NTAPI *PAPI_SET_LOOKUP_HELPER_RTN)(PCAPI_SET_NAMESPACE_ARRAY, PCSTR, PCSTR, PBOOLEAN, PSTR, ULONG);
typedef NTSTATUS (NTAPI *PAPI_SET_RELEASE_SCHEMA_RTN)(PVOID);
NTSTATUS NTAPI ApiSetResolveToHost(PCAPI_SET_NAMESPACE_ARRAY ApiSetSchema, PCUNICODE_STRING FileNameIn, PCUNICODE_STRING ParentName, PBOOLEAN Resolved, PUNICODE_STRING HostBinary);
#endif
#ifdef __cplusplus
}
#endif
#endif /* _API_SET_H_ */

View File

@ -0,0 +1,97 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _APISETCCONV_
#define _APISETCCONV_
#ifndef CMAPI
#ifndef _CFGMGR32_
#define CMAPI DECLSPEC_IMPORT
#else
#define CMAPI
#endif
#endif
#ifndef CREDUIAPI
#ifndef _CREDUI_
#define CREDUIAPI DECLSPEC_IMPORT
#else
#define CREDUIAPI
#endif
#endif
#ifndef WINABLEAPI
#ifndef _USER32_
#define WINABLEAPI DECLSPEC_IMPORT
#else
#define WINABLEAPI
#endif
#endif
#ifndef WINADVAPI
#ifndef _ADVAPI32_
#define WINADVAPI DECLSPEC_IMPORT
#else
#define WINADVAPI
#endif
#endif
#ifndef WINBASEAPI
#ifndef _KERNEL32_
#define WINBASEAPI DECLSPEC_IMPORT
#else
#define WINBASEAPI
#endif
#endif
#ifndef WINUSERAPI
#ifndef _USER32_
#define WINUSERAPI DECLSPEC_IMPORT
#else
#define WINUSERAPI
#endif
#endif
#ifndef ZAWPROXYAPI
#ifndef _ZAWPROXY_
#define ZAWPROXYAPI DECLSPEC_IMPORT
#else
#define ZAWPROXYAPI
#endif
#endif
#ifndef WINCFGMGR32API
#ifndef _SETUPAPI_
#define WINCFGMGR32API DECLSPEC_IMPORT
#else
#define WINCFGMGR32API
#endif
#endif
#ifndef WINDEVQUERYAPI
#ifndef _CFGMGR32_
#define WINDEVQUERYAPI DECLSPEC_IMPORT
#else
#define WINDEVQUERYAPI
#endif
#endif
#ifndef WINSWDEVICEAPI
#ifndef _CFGMGR32_
#define WINSWDEVICEAPI DECLSPEC_IMPORT
#else
#define WINSWDEVICEAPI
#endif
#endif
#ifndef WINPATHCCHAPI
#ifndef STATIC_PATHCCH
#define WINPATHCCHAPI WINBASEAPI
#else
#define WINPATHCCHAPI
#endif
#endif
#endif

View File

@ -0,0 +1,109 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _APPMGMT_H_
#define _APPMGMT_H_
#ifdef __cplusplus
extern "C" {
#endif
typedef enum _INSTALLSPECTYPE {
APPNAME = 1,
FILEEXT,PROGID,
COMCLASS
} INSTALLSPECTYPE;
typedef union _INSTALLSPEC {
struct {
WCHAR *Name;
GUID GPOId;
} AppName;
WCHAR *FileExt;
WCHAR *ProgId;
struct {
GUID Clsid;
DWORD ClsCtx;
} COMClass;
} INSTALLSPEC;
typedef struct _INSTALLDATA {
INSTALLSPECTYPE Type;
INSTALLSPEC Spec;
} INSTALLDATA,*PINSTALLDATA;
typedef enum {
ABSENT,ASSIGNED,PUBLISHED
} APPSTATE;
#define LOCALSTATE_ASSIGNED 0x1
#define LOCALSTATE_PUBLISHED 0x2
#define LOCALSTATE_UNINSTALL_UNMANAGED 0x4
#define LOCALSTATE_POLICYREMOVE_ORPHAN 0x8
#define LOCALSTATE_POLICYREMOVE_UNINSTALL 0x10
#define LOCALSTATE_ORPHANED 0x20
#define LOCALSTATE_UNINSTALLED 0x40
typedef struct _LOCALMANAGEDAPPLICATION {
LPWSTR pszDeploymentName;
LPWSTR pszPolicyName;
LPWSTR pszProductId;
DWORD dwState;
} LOCALMANAGEDAPPLICATION,*PLOCALMANAGEDAPPLICATION;
#define MANAGED_APPS_USERAPPLICATIONS 0x1
#define MANAGED_APPS_FROMCATEGORY 0x2
#define MANAGED_APPS_INFOLEVEL_DEFAULT 0x10000
#define MANAGED_APPTYPE_WINDOWSINSTALLER 0x1
#define MANAGED_APPTYPE_SETUPEXE 0x2
#define MANAGED_APPTYPE_UNSUPPORTED 0x3
typedef struct _MANAGEDAPPLICATION {
LPWSTR pszPackageName;
LPWSTR pszPublisher;
DWORD dwVersionHi;
DWORD dwVersionLo;
DWORD dwRevision;
GUID GpoId;
LPWSTR pszPolicyName;
GUID ProductId;
LANGID Language;
LPWSTR pszOwner;
LPWSTR pszCompany;
LPWSTR pszComments;
LPWSTR pszContact;
LPWSTR pszSupportUrl;
DWORD dwPathType;
WINBOOL bInstalled;
} MANAGEDAPPLICATION,*PMANAGEDAPPLICATION;
typedef struct _APPCATEGORYINFO {
LCID Locale;
LPWSTR pszDescription;
GUID AppCategoryId;
} APPCATEGORYINFO;
typedef struct _APPCATEGORYINFOLIST {
DWORD cCategory;
APPCATEGORYINFO *pCategoryInfo;
} APPCATEGORYINFOLIST;
#ifndef WINAPI
#define WINAPI __stdcall
#endif
DWORD WINAPI InstallApplication(PINSTALLDATA pInstallInfo);
DWORD WINAPI UninstallApplication(WCHAR *ProductCode,DWORD dwStatus);
DWORD WINAPI CommandLineFromMsiDescriptor(WCHAR *Descriptor,WCHAR *CommandLine,DWORD *CommandLineLength);
DWORD WINAPI GetManagedApplications(GUID *pCategory,DWORD dwQueryFlags,DWORD dwInfoLevel,LPDWORD pdwApps,PMANAGEDAPPLICATION *prgManagedApps);
DWORD WINAPI GetLocalManagedApplications(WINBOOL bUserApps,LPDWORD pdwApps,PLOCALMANAGEDAPPLICATION *prgLocalApps);
void WINAPI GetLocalManagedApplicationData(WCHAR *ProductCode,LPWSTR *DisplayName,LPWSTR *SupportUrl);
DWORD WINAPI GetManagedApplicationCategories(DWORD dwReserved,APPCATEGORYINFOLIST *pAppCategory);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,158 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __AQADMTYP_H__
#define __AQADMTYP_H__
#define MIDL(x)
#define QUEUE_ADMIN_MAX_BUFFER_REQUIRED 200
typedef enum tagQUEUE_ADMIN_VERSIONS {
CURRENT_QUEUE_ADMIN_VERSION = 4,
} QUEUE_ADMIN_VERSIONS;
typedef struct tagMESSAGE_FILTER {
DWORD dwVersion;
DWORD fFlags;
LPCWSTR szMessageId;
LPCWSTR szMessageSender;
LPCWSTR szMessageRecipient;
DWORD dwLargerThanSize;
SYSTEMTIME stOlderThan;
} MESSAGE_FILTER,*PMESSAGE_FILTER;
typedef enum tagMESSAGE_FILTER_FLAGS {
MF_MESSAGEID = 0x1,
MF_SENDER = 0x2,
MF_RECIPIENT = 0x4,
MF_SIZE = 0x8,
MF_TIME = 0x10,
MF_FROZEN = 0x20,
MF_FAILED = 0x100,
MF_ALL = 0x40000000,
MF_INVERTSENSE = 0x80000000
} MESSAGE_FILTER_FLAGS;
typedef enum tagMESSAGE_ACTION {
MA_THAW_GLOBAL = 0x1,
MA_COUNT = 0x2,
MA_FREEZE_GLOBAL = 0x4,
MA_DELETE = 0x8,
MA_DELETE_SILENT = 0x10
} MESSAGE_ACTION;
typedef enum tagMESSAGE_ENUM_FILTER_TYPE {
MEF_FIRST_N_MESSAGES = 0x1,
MEF_SENDER = 0x2,
MEF_RECIPIENT = 0x4,
MEF_LARGER_THAN = 0x8,
MEF_OLDER_THAN = 0x10,
MEF_FROZEN = 0x20,
MEF_N_LARGEST_MESSAGES = 0x40,
MEF_N_OLDEST_MESSAGES = 0x80,
MEF_FAILED = 0x100,
MEF_ALL = 0x40000000,
MEF_INVERTSENSE = 0x80000000,
} MESSAGE_ENUM_FILTER_TYPE;
typedef struct tagMESSAGE_ENUM_FILTER {
DWORD dwVersion;
DWORD mefType;
DWORD cMessages;
DWORD cbSize;
DWORD cSkipMessages;
SYSTEMTIME stDate;
LPCWSTR szMessageSender;
LPCWSTR szMessageRecipient;
} MESSAGE_ENUM_FILTER,*PMESSAGE_ENUM_FILTER;
typedef enum tagLINK_INFO_FLAGS {
LI_ACTIVE = 0x1,
LI_READY = 0x2,
LI_RETRY = 0x4,
LI_SCHEDULED = 0x8,
LI_REMOTE = 0x10,
LI_FROZEN = 0x20,
LI_TYPE_REMOTE_DELIVERY = 0x100,
LI_TYPE_LOCAL_DELIVERY = 0x200,
LI_TYPE_PENDING_ROUTING = 0x400,
LI_TYPE_PENDING_CAT = 0x800,
LI_TYPE_CURRENTLY_UNREACHABLE = 0x1000,
LI_TYPE_DEFERRED_DELIVERY = 0x2000,
LI_TYPE_INTERNAL = 0x4000,
LI_TYPE_PENDING_SUBMIT = 0x8000
} LINK_INFO_FLAGS;
typedef enum tagLINK_ACTION {
LA_INTERNAL = 0x0,
LA_KICK = 0x1,
LA_FREEZE = 0x20,
LA_THAW = 0x40
} LINK_ACTION;
typedef struct tagLINK_INFO {
DWORD dwVersion;
LPWSTR szLinkName;
DWORD cMessages;
DWORD fStateFlags;
SYSTEMTIME stNextScheduledConnection;
SYSTEMTIME stOldestMessage;
ULARGE_INTEGER cbLinkVolume;
LPWSTR szLinkDN;
LPWSTR szExtendedStateInfo;
DWORD dwSupportedLinkActions;
} LINK_INFO,*PLINK_INFO;
typedef struct tagQUEUE_INFO {
DWORD dwVersion;
LPWSTR szQueueName;
LPWSTR szLinkName;
DWORD cMessages;
ULARGE_INTEGER cbQueueVolume;
DWORD dwMsgEnumFlagsSupported;
} QUEUE_INFO,*PQUEUE_INFO;
typedef enum tagAQ_MESSAGE_FLAGS {
MP_HIGH = 0x1,
MP_NORMAL = 0x2,
MP_LOW = 0x4,
MP_MSG_FROZEN = 0x8,
MP_MSG_RETRY = 0x10,
MP_MSG_CONTENT_AVAILABLE = 0x20
} AQ_MESSAGE_FLAGS;
typedef struct tagMESSAGE_INFO {
DWORD dwVersion;
LPWSTR szMessageId;
LPWSTR szSender;
LPWSTR szSubject;
DWORD cRecipients;
LPWSTR szRecipients;
DWORD cCCRecipients;
LPWSTR szCCRecipients;
DWORD cBCCRecipients;
LPWSTR szBCCRecipients;
DWORD fMsgFlags;
DWORD cbMessageSize;
SYSTEMTIME stSubmission;
SYSTEMTIME stReceived;
SYSTEMTIME stExpiry;
DWORD cFailures;
DWORD cEnvRecipients;
DWORD cbEnvRecipients;
WCHAR *mszEnvRecipients;
} MESSAGE_INFO,*PMESSAGE_INFO;
typedef enum tagQUEUELINK_TYPE {
QLT_QUEUE,QLT_LINK,QLT_NONE
} QUEUELINK_TYPE;
typedef struct tagQUEUELINK_ID {
GUID uuid;
LPWSTR szName;
DWORD dwId;
QUEUELINK_TYPE qltType;
} QUEUELINK_ID;
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,79 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
/* According to C99 standard (section 7.2) the assert
macro shall be redefined each time assert.h gets
included depending on the status of NDEBUG macro. */
#undef assert
#ifndef __ASSERT_H_
#define __ASSERT_H_
#include <crtdefs.h>
#ifdef __cplusplus
#include <stdlib.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _CRT_TERMINATE_DEFINED
#define _CRT_TERMINATE_DEFINED
void __cdecl __MINGW_NOTHROW exit(int _Code) __MINGW_ATTRIB_NORETURN;
void __cdecl __MINGW_NOTHROW _exit(int _Code) __MINGW_ATTRIB_NORETURN;
#if !defined __NO_ISOCEXT /* extern stub in static libmingwex.a */
/* C99 function name */
void __cdecl _Exit(int) __MINGW_ATTRIB_NORETURN;
#ifndef __CRT__NO_INLINE
__CRT_INLINE __MINGW_ATTRIB_NORETURN void __cdecl _Exit(int status)
{ _exit(status); }
#endif /* !__CRT__NO_INLINE */
#endif /* Not __NO_ISOCEXT */
#pragma push_macro("abort")
#undef abort
void __cdecl __MINGW_ATTRIB_NORETURN abort(void);
#pragma pop_macro("abort")
#endif /* _CRT_TERMINATE_DEFINED */
extern void __cdecl
_wassert(const wchar_t *_Message,const wchar_t *_File,unsigned _Line);
extern void __cdecl
_assert (const char *_Message, const char *_File, unsigned _Line);
#ifdef __cplusplus
}
#endif
#endif /* !defined (__ASSERT_H_) */
#if (defined _ISOC11_SOURCE \
|| (defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L)) \
&& !defined (__cplusplus)
/* Static assertion. Requires support in the compiler. */
#undef static_assert
#define static_assert _Static_assert
#endif
#ifdef NDEBUG
#define assert(_Expression) ((void)0)
#else /* !defined (NDEBUG) */
#if defined(_UNICODE) || defined(UNICODE)
#define assert(_Expression) \
(void) \
((!!(_Expression)) || \
(_wassert(_CRT_WIDE(#_Expression),_CRT_WIDE(__FILE__),__LINE__),0))
#else /* not unicode */
#define assert(_Expression) \
(void) \
((!!(_Expression)) || \
(_assert(#_Expression,__FILE__,__LINE__),0))
#endif /* _UNICODE||UNICODE */
#endif /* !defined (NDEBUG) */

View File

@ -0,0 +1,22 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _ATACCT_H_
#define _ATACCT_H_
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus
extern "C" {
#endif
STDAPI GetNetScheduleAccountInformation (LPCWSTR pwszServerName, DWORD ccAccount, WCHAR wszAccount[]);
STDAPI SetNetScheduleAccountInformation (LPCWSTR pwszServerName, LPCWSTR pwszAccount, LPCWSTR pwszPassword);
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,113 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _ATALKWSH_
#define _ATALKWSH_
#define DECIMAL_BASE 10
#define ATPROTO_BASE (1000 *AF_APPLETALK)
#define SOL_APPLETALK (ATPROTO_BASE)
#define DDPPROTO_RTMP (ATPROTO_BASE + 1)
#define DDPPROTO_NBP (ATPROTO_BASE + 2)
#define DDPPROTO_ATP (ATPROTO_BASE + 3)
#define DDPPROTO_AEP (ATPROTO_BASE + 4)
#define DDPPROTO_RTMPRQ (ATPROTO_BASE + 5)
#define DDPPROTO_ZIP (ATPROTO_BASE + 6)
#define DDPPROTO_ADSP (ATPROTO_BASE + 7)
#define DDPPROTO_MAX (ATPROTO_BASE + 255)
#define ATPROTO_ADSP (DDPPROTO_MAX + 1)
#define ATPROTO_ATP (DDPPROTO_MAX + 2)
#define ATPROTO_ASP (DDPPROTO_MAX + 3)
#define ATPROTO_PAP (DDPPROTO_MAX + 4)
#define SO_REGISTER_NAME 0xA000
#define SO_DEREGISTER_NAME 0xA001
#define SO_REMOVE_NAME SO_DEREGISTER_NAME
#define SO_LOOKUP_NAME 0xA002
#define SO_CONFIRM_NAME 0xA003
#define SO_LOOKUP_MYZONE 0xA004
#define SO_GETMYZONE SO_LOOKUP_MYZONE
#define SO_LOOKUP_ZONES 0xA005
#define SO_GETZONELIST SO_LOOKUP_ZONES
#define SO_LOOKUP_ZONES_ON_ADAPTER 0xA006
#define SO_GETLOCALZONES SO_LOOKUP_ZONES_ON_ADAPTER
#define SO_LOOKUP_NETDEF_ON_ADAPTER 0xA007
#define SO_GETNETINFO SO_LOOKUP_NETDEF_ON_ADAPTER
#define SO_PAP_SET_SERVER_STATUS 0xA007
#define SO_PAP_GET_SERVER_STATUS 0xA008
#define SO_PAP_PRIME_READ 0xA009
#define ATADDR_ANY 0
#define ATADDR_BROADCAST 0xFF
#define WSAEMSGPARTIAL (WSABASEERR+100)
#define MAX_PAP_STATUS_SIZE 255
#define MIN_PAP_READ_BUF_SIZE 4096
#define PAP_UNUSED_STATUS_BYTES 4
typedef struct sockaddr_at {
USHORT sat_family;
USHORT sat_net;
UCHAR sat_node;
UCHAR sat_socket;
} SOCKADDR_AT,*PSOCKADDR_AT;
typedef union {
struct {
USHORT Network;
UCHAR Node;
UCHAR Socket;
};
ULONG Address;
} WSH_ATALK_ADDRESS,*PWSH_ATALK_ADDRESS;
#define MAX_ENTITY 32
typedef struct {
CHAR ObjectNameLen;
CHAR ObjectName[MAX_ENTITY];
CHAR TypeNameLen;
CHAR TypeName[MAX_ENTITY];
CHAR ZoneNameLen;
CHAR ZoneName[MAX_ENTITY];
} WSH_NBP_NAME,*PWSH_NBP_NAME;
typedef struct {
WSH_ATALK_ADDRESS Address;
USHORT Enumerator;
WSH_NBP_NAME NbpName;
} WSH_NBP_TUPLE,*PWSH_NBP_TUPLE;
typedef WSH_NBP_NAME WSH_REGISTER_NAME,*PWSH_REGISTER_NAME;
typedef WSH_NBP_NAME WSH_DEREGISTER_NAME,*PWSH_DEREGISTER_NAME;
typedef WSH_NBP_NAME WSH_REMOVE_NAME,*PWSH_REMOVE_NAME;
typedef struct _WSH_LOOKUP_ZONES {
ULONG NoZones;
} WSH_LOOKUP_ZONES,*PWSH_LOOKUP_ZONES;
typedef struct _WSH_LOOKUP_NETDEF_ON_ADAPTER {
USHORT NetworkRangeLowerEnd;
USHORT NetworkRangeUpperEnd;
} WSH_LOOKUP_NETDEF_ON_ADAPTER,*PWSH_LOOKUP_NETDEF_ON_ADAPTER;
typedef struct _WSH_LOOKUP_NAME {
WSH_NBP_TUPLE LookupTuple;
ULONG NoTuples;
} WSH_LOOKUP_NAME,*PWSH_LOOKUP_NAME;
typedef struct _WSH_PAP_GET_SERVER_STATUS {
SOCKADDR_AT ServerAddr;
UCHAR Reserved[PAP_UNUSED_STATUS_BYTES];
UCHAR ServerStatus[MAX_PAP_STATUS_SIZE+1];
} WSH_PAP_GET_SERVER_STATUS,*PWSH_PAP_GET_SERVER_STATUS;
#endif

View File

@ -0,0 +1,37 @@
/*
* atsmedia.h
*
* Contributors:
* Created by Magnus Olsen.
*
* THIS SOFTWARE IS NOT COPYRIGHTED
*
* This source code is offered for use in the public domain. You may
* use, modify or distribute it freely.
*
* This code is distributed in the hope that it will be useful but
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
* DISCLAIMED. This includes but is not limited to warranties of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#pragma once
#ifndef _ATSCMEDIA_
#define _ATSCMEDIA_
#include <bdamedia.h>
#define BDANETWORKTYPE_ATSC DEFINE_GUIDNAMED(BDANETWORKTYPE_ATSC)
#define STATIC_BDANETWORKTYPE_ATSC \
0x71985F51, 0x1CA1, 0x11D3, 0x9C, 0xC8, 0x0, 0xC0, 0x4F, 0x79, 0x71, 0xE0
DEFINE_GUIDSTRUCT("71985F51-1CA1-11D3-9CC8-00C04F7971E0", BDANETWORKTYPE_ATSC);
#endif /* _ATSCMEDIA_ */
#endif /* Desktop partition. */

View File

@ -0,0 +1,44 @@
/*
* Copyright (C) 2002 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __AUDEVCOD__
#define __AUDEVCOD__
typedef enum _tagSND_DEVICE_ERROR
{
SNDDEV_ERROR_Open=1,
SNDDEV_ERROR_Close=2,
SNDDEV_ERROR_GetCaps=3,
SNDDEV_ERROR_PrepareHeader=4,
SNDDEV_ERROR_UnprepareHeader=5,
SNDDEV_ERROR_Reset=6,
SNDDEV_ERROR_Restart=7,
SNDDEV_ERROR_GetPosition=8,
SNDDEV_ERROR_Write=9,
SNDDEV_ERROR_Pause=10,
SNDDEV_ERROR_Stop=11,
SNDDEV_ERROR_Start=12,
SNDDEV_ERROR_AddBuffer=13,
SNDDEV_ERROR_Query=14
} SNDDEV_ERR;
#define EC_SND_DEVICE_ERROR_BASE 0x0200
#define EC_SNDDEV_IN_ERROR (EC_SND_DEVICE_ERROR_BASE+0x00)
#define EC_SNDDEV_OUT_ERROR (EC_SND_DEVICE_ERROR_BASE+0x01)
#endif /* __AUDEVCOD__ */

View File

@ -0,0 +1,36 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
typedef LONGLONG HNSTIME;
typedef LONGLONG MFTIME;
typedef float FLOAT32;
typedef double FLOAT64;
typedef enum APO_BUFFER_FLAGS {
BUFFER_INVALID = 0,
BUFFER_VALID = 1,
BUFFER_SILENT = 2
} APO_BUFFER_FLAGS;
typedef struct APO_CONNECTION_PROPERTY {
UINT_PTR pBuffer;
UINT32 u32ValidFrameCount;
APO_BUFFER_FLAGS u32BufferFlags;
UINT32 u32Signature;
} APO_CONNECTION_PROPERTY;
#ifndef _AUDIO_CURVE_TYPE_
#define _AUDIO_CURVE_TYPE_
typedef enum {
AUDIO_CURVE_TYPE_NONE = 0,
AUDIO_CURVE_TYPE_WINDOWS_FADE = 1,
} AUDIO_CURVE_TYPE;
#endif
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,137 @@
/*** Autogenerated by WIDL 1.6 from include/audioendpoints.idl - Do not edit ***/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif
#ifndef __audioendpoints_h__
#define __audioendpoints_h__
/* Forward declarations */
#ifndef __IAudioEndpointFormatControl_FWD_DEFINED__
#define __IAudioEndpointFormatControl_FWD_DEFINED__
typedef interface IAudioEndpointFormatControl IAudioEndpointFormatControl;
#endif
/* Headers for imported files */
#include <unknwn.h>
#ifdef __cplusplus
extern "C" {
#endif
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
/*****************************************************************************
* IAudioEndpointFormatControl interface
*/
#ifndef __IAudioEndpointFormatControl_INTERFACE_DEFINED__
#define __IAudioEndpointFormatControl_INTERFACE_DEFINED__
DEFINE_GUID(IID_IAudioEndpointFormatControl, 0x784cfd40, 0x9f89, 0x456e, 0xa1,0xa6, 0x87,0x3b,0x00,0x6a,0x66,0x4e);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("784cfd40-9f89-456e-a1a6-873b006a664e")
IAudioEndpointFormatControl : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE ResetToDefault(
DWORD ResetFlags) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IAudioEndpointFormatControl, 0x784cfd40, 0x9f89, 0x456e, 0xa1,0xa6, 0x87,0x3b,0x00,0x6a,0x66,0x4e)
#endif
#else
typedef struct IAudioEndpointFormatControlVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IAudioEndpointFormatControl* This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IAudioEndpointFormatControl* This);
ULONG (STDMETHODCALLTYPE *Release)(
IAudioEndpointFormatControl* This);
/*** IAudioEndpointFormatControl methods ***/
HRESULT (STDMETHODCALLTYPE *ResetToDefault)(
IAudioEndpointFormatControl* This,
DWORD ResetFlags);
END_INTERFACE
} IAudioEndpointFormatControlVtbl;
interface IAudioEndpointFormatControl {
CONST_VTBL IAudioEndpointFormatControlVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IAudioEndpointFormatControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioEndpointFormatControl_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioEndpointFormatControl_Release(This) (This)->lpVtbl->Release(This)
/*** IAudioEndpointFormatControl methods ***/
#define IAudioEndpointFormatControl_ResetToDefault(This,ResetFlags) (This)->lpVtbl->ResetToDefault(This,ResetFlags)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IAudioEndpointFormatControl_QueryInterface(IAudioEndpointFormatControl* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IAudioEndpointFormatControl_AddRef(IAudioEndpointFormatControl* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IAudioEndpointFormatControl_Release(IAudioEndpointFormatControl* This) {
return This->lpVtbl->Release(This);
}
/*** IAudioEndpointFormatControl methods ***/
static FORCEINLINE HRESULT IAudioEndpointFormatControl_ResetToDefault(IAudioEndpointFormatControl* This,DWORD ResetFlags) {
return This->lpVtbl->ResetToDefault(This,ResetFlags);
}
#endif
#endif
#endif
HRESULT STDMETHODCALLTYPE IAudioEndpointFormatControl_ResetToDefault_Proxy(
IAudioEndpointFormatControl* This,
DWORD ResetFlags);
void __RPC_STUB IAudioEndpointFormatControl_ResetToDefault_Stub(
IRpcStubBuffer* This,
IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IAudioEndpointFormatControl_INTERFACE_DEFINED__ */
#define ENDPOINT_FORMAT_RESET_MIX_ONLY 0x1
#endif
/* Begin additional prototypes for all interfaces */
/* End additional prototypes */
#ifdef __cplusplus
}
#endif
#endif /* __audioendpoints_h__ */

View File

@ -0,0 +1,356 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef __INC_AUDIOENGINEENDPOINT__
#define __INC_AUDIOENGINEENDPOINT__
#include <endpointvolume.h>
#include <audioapotypes.h>
#if (_WIN32_WINNT >= 0x0601)
#ifdef __cplusplus
extern "C" {
#endif
typedef LONGLONG HNSTIME;
typedef enum AE_POSITION_FLAGS {
POSITION_INVALID = 0,
POSITION_DISCONTINUOUS = 1,
POSITION_CONTINUOUS = 2,
POSITION_QPC_ERROR = 4
} AE_POSITION_FLAGS;
typedef struct AE_CURRENT_POSITION {
UINT64 u64DevicePosition;
UINT64 u64StreamPosition;
UINT64 u64PaddingFrames;
HNSTIME hnsQPCPosition;
FLOAT32 f32FramesPerSecond;
AE_POSITION_FLAGS Flag;
} AE_CURRENT_POSITION, *PAE_CURRENT_POSITION;
typedef struct _AUDIO_ENDPOINT_EXCLUSIVE_CREATE_PARAMS {
UINT32 u32Size;
LONGLONG hConnection;
WINBOOL bIsRtCapable;
HNSTIME hnsBufferDuration;
HNSTIME hnsPeriod;
UINT32 u32LatencyCoefficient;
WAVEFORMATEX wfxDeviceFormat;
} AUDIO_ENDPOINT_EXCLUSIVE_CREATE_PARAMS, *PAUDIO_ENDPOINT_EXCLUSIVE_CREATE_PARAMS;
typedef struct _AUDIO_ENDPOINT_SHARED_CREATE_PARAMS {
UINT32 u32Size;
UINT32 u32TSSessionId;
} AUDIO_ENDPOINT_SHARED_CREATE_PARAMS, *PAUDIO_ENDPOINT_SHARED_CREATE_PARAMS;
#ifdef __cplusplus
}
#endif
#ifndef __IAudioDeviceEndpoint_FWD_DEFINED__
#define __IAudioDeviceEndpoint_FWD_DEFINED__
typedef struct IAudioDeviceEndpoint IAudioDeviceEndpoint;
#endif
#ifndef __IAudioEndpoint_FWD_DEFINED__
#define __IAudioEndpoint_FWD_DEFINED__
typedef struct IAudioEndpoint IAudioEndpoint;
#endif
#ifndef __IAudioEndpointControl_FWD_DEFINED__
#define __IAudioEndpointControl_FWD_DEFINED__
typedef struct IAudioEndpointControl IAudioEndpointControl;
#endif
#ifndef __IAudioEndpointRT_FWD_DEFINED__
#define __IAudioEndpointRT_FWD_DEFINED__
typedef struct IAudioEndpointRT IAudioEndpointRT;
#endif
#ifndef __IAudioEndpointVolumeEx_FWD_DEFINED__
#define __IAudioEndpointVolumeEx_FWD_DEFINED__
typedef struct IAudioEndpointVolumeEx IAudioEndpointVolumeEx;
#endif
#ifndef __IAudioInputEndpointRT_FWD_DEFINED__
#define __IAudioInputEndpointRT_FWD_DEFINED__
typedef struct IAudioInputEndpointRT IAudioInputEndpointRT;
#endif
#ifndef __IAudioInputEndpointRT_FWD_DEFINED__
#define __IAudioInputEndpointRT_FWD_DEFINED__
typedef struct IAudioOutputEndpointRT IAudioOutputEndpointRT;
#endif
#undef INTERFACE
#define INTERFACE IAudioDeviceEndpoint
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioDeviceEndpoint,IUnknown)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioDeviceEndpoint methods */
STDMETHOD_(HRESULT,GetEventDrivenCapable)(THIS_ WINBOOL *pbIsEventCapable) PURE;
STDMETHOD_(HRESULT,GetRTCaps)(THIS_ WINBOOL *pbIsRTCapable) PURE;
STDMETHOD_(HRESULT,SetBuffer)(THIS_ HNSTIME MaxPeriod,UINT32 u32LatencyCoefficient) PURE;
STDMETHOD_(HRESULT,WriteExclusiveModeParametersToSharedMemory)(THIS_ UINT_PTR hTargetProcess,HNSTIME hnsPeriod,HNSTIME hnsBufferDuration,UINT32 u32LatencyCoefficient,UINT32 *pu32SharedMemorySize,UINT_PTR *phSharedMemory) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioDeviceEndpoint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioDeviceEndpoint_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioDeviceEndpoint_Release(This) (This)->lpVtbl->Release(This)
#define IAudioDeviceEndpoint_GetEventDrivenCapable(This,pbIsEventCapable) (This)->lpVtbl->GetEventDrivenCapable(This,pbIsEventCapable)
#define IAudioDeviceEndpoint_GetRTCaps(This,pbIsRTCapable) (This)->lpVtbl->GetRTCaps(This,pbIsRTCapable)
#define IAudioDeviceEndpoint_SetBuffer(This,MaxPeriod,u32LatencyCoefficient) (This)->lpVtbl->SetBuffer(This,MaxPeriod,u32LatencyCoefficient)
#define IAudioDeviceEndpoint_WriteExclusiveModeParametersToSharedMemory(This,hTargetProcess,hnsPeriod,hnsBufferDuration,u32LatencyCoefficient,pu32SharedMemorySize,phSharedMemory) (This)->lpVtbl->WriteExclusiveModeParametersToSharedMemory(This,hTargetProcess,hnsPeriod,hnsBufferDuration,u32LatencyCoefficient,pu32SharedMemorySize,phSharedMemory)
#endif /*COBJMACROS*/
#undef INTERFACE
#define INTERFACE IAudioEndpoint
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioEndpoint,IUnknown)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioEndpoint methods */
STDMETHOD_(HRESULT,GetFrameFormat)(THIS_ WAVEFORMATEX **ppFormat) PURE;
STDMETHOD_(HRESULT,GetFramesPerPacket)(THIS_ UINT32 *pFramesPerPacket) PURE;
STDMETHOD_(HRESULT,GetLatency)(THIS_ HNSTIME *pLatency) PURE;
STDMETHOD_(HRESULT,SetEventHandle)(THIS_ HANDLE eventHandle) PURE;
STDMETHOD_(HRESULT,SetStreamFlags)(THIS_ DWORD streamFlags) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioEndpoint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioEndpoint_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioEndpoint_Release(This) (This)->lpVtbl->Release(This)
#define IAudioEndpoint_GetFrameFormat(This,ppFormat) (This)->lpVtbl->GetFrameFormat(This,ppFormat)
#define IAudioEndpoint_GetFramesPerPacket(This,pFramesPerPacket) (This)->lpVtbl->GetFramesPerPacket(This,pFramesPerPacket)
#define IAudioEndpoint_GetLatency(This,pLatency) (This)->lpVtbl->GetLatency(This,pLatency)
#define IAudioEndpoint_SetEventHandle(This,eventHandle) (This)->lpVtbl->SetEventHandle(This,eventHandle)
#define IAudioEndpoint_SetStreamFlags(This,streamFlags) (This)->lpVtbl->SetStreamFlags(This,streamFlags)
#endif /*COBJMACROS*/
#undef INTERFACE
#define INTERFACE IAudioEndpointControl
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioEndpointControl,IUnknown)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioEndpointControl methods */
STDMETHOD_(HRESULT,Reset)(THIS) PURE;
STDMETHOD_(HRESULT,Start)(THIS) PURE;
STDMETHOD_(HRESULT,Stop)(THIS) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioEndpointControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioEndpointControl_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioEndpointControl_Release(This) (This)->lpVtbl->Release(This)
#define IAudioEndpointControl_Reset() (This)->lpVtbl->Reset(This)
#define IAudioEndpointControl_Start() (This)->lpVtbl->Start(This)
#define IAudioEndpointControl_Stop() (This)->lpVtbl->Stop(This)
#endif /*COBJMACROS*/
#undef INTERFACE
#define INTERFACE IAudioEndpointRT
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioEndpointRT,IUnknown)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioEndpointRT methods */
STDMETHOD(GetCurrentPadding)(THIS_ HNSTIME *pPadding,AE_CURRENT_POSITION *pAeCurrentPosition) PURE;
STDMETHOD(ProcessingComplete)(THIS) PURE;
STDMETHOD_(HRESULT,SetPinActive)(THIS) PURE;
STDMETHOD_(HRESULT,SetPinInactive)(THIS) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioEndpointRT_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioEndpointRT_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioEndpointRT_Release(This) (This)->lpVtbl->Release(This)
#define IAudioEndpointRT_GetCurrentPadding(This,pPadding,pAeCurrentPosition) (This)->lpVtbl->GetCurrentPadding(This,pPadding,pAeCurrentPosition)
#define IAudioEndpointRT_ProcessingComplete() (This)->lpVtbl->ProcessingComplete(This)
#define IAudioEndpointRT_SetPinActive() (This)->lpVtbl->SetPinActive(This)
#define IAudioEndpointRT_SetPinInactive() (This)->lpVtbl->SetPinInactive(This)
#endif /*COBJMACROS*/
#undef INTERFACE
#define INTERFACE IAudioEndpointVolumeEx
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioEndpointVolumeEx,IAudioEndpointVolume)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioEndpointVolume methods */
STDMETHOD_(HRESULT,GetChannelCount)(THIS_ UINT *pnChannelCount) PURE;
STDMETHOD_(HRESULT,GetChannelVolumeLevel)(THIS_ UINT nChannel,float *pfLevelDB) PURE;
STDMETHOD_(HRESULT,GetChannelVolumeLevelScalar)(THIS_ UINT nChannel,float *pfLevel) PURE;
STDMETHOD_(HRESULT,GetMasterVolumeLevel)(THIS_ float *pfLevelDB) PURE;
STDMETHOD_(HRESULT,GetMasterVolumeLevelScalar)(THIS_ float *pfLevel) PURE;
STDMETHOD_(HRESULT,GetMute)(THIS_ WINBOOL *pbMute) PURE;
STDMETHOD_(HRESULT,GetVolumeRange)(THIS_ float *pfLevelMinDB,float *pfLevelMaxDB,float *pfVolumeIncrementDB) PURE;
STDMETHOD_(HRESULT,GetVolumeStepInfo)(THIS_ UINT *pnStep,UINT *pnStepCount) PURE;
STDMETHOD_(HRESULT,QueryHardwareSupport)(THIS_ DWORD *pdwHardwareSupportMask) PURE;
STDMETHOD_(HRESULT,RegisterControlChangeNotify)(THIS_ IAudioEndpointVolumeCallback *pNotify) PURE;
STDMETHOD_(HRESULT,SetChannelVolumeLevel)(THIS_ UINT nChannel,float fLevelDB,LPCGUID pguidEventContext) PURE;
STDMETHOD_(HRESULT,SetChannelVolumeLevelScalar)(THIS_ UINT nChannel,float fLevel,LPCGUID pguidEventContext) PURE;
STDMETHOD_(HRESULT,SetMasterVolumeLevel)(THIS_ float fLevelDB,LPCGUID pguidEventContext) PURE;
STDMETHOD_(HRESULT,SetMasterVolumeLevelScalar)(THIS_ float fLevel,LPCGUID pguidEventContext) PURE;
STDMETHOD_(HRESULT,SetMute)(THIS_ WINBOOL bMute,LPCGUID pguidEventContext) PURE;
STDMETHOD_(HRESULT,UnregisterControlChangeNotify)(THIS_ IAudioEndpointVolumeCallback *pNotify) PURE;
STDMETHOD_(HRESULT,VolumeStepDown)(THIS_ LPCGUID pguidEventContext) PURE;
STDMETHOD_(HRESULT,VolumeStepUp)(THIS_ LPCGUID pguidEventContext) PURE;
/* IAudioEndpointVolumeEx methods */
STDMETHOD_(HRESULT,GetVolumeRangeChannel)(THIS_ UINT iChannel,float *pflVolumeMinDB,float *pflVolumeMaxDB,float *pflVolumeIncrementDB) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioEndpointVolumeEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioEndpointVolumeEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioEndpointVolumeEx_Release(This) (This)->lpVtbl->Release(This)
#define IAudioEndpointVolumeEx_GetChannelCount(This,pnChannelCount) (This)->lpVtbl->GetChannelCount(This,pnChannelCount)
#define IAudioEndpointVolumeEx_GetChannelVolumeLevel(This,nChannel,pfLevelDB) (This)->lpVtbl->GetChannelVolumeLevel(This,nChannel,pfLevelDB)
#define IAudioEndpointVolumeEx_GetChannelVolumeLevelScalar(This,nChannel,pfLevel) (This)->lpVtbl->GetChannelVolumeLevelScalar(This,nChannel,pfLevel)
#define IAudioEndpointVolumeEx_GetMasterVolumeLevel(This,pfLevelDB) (This)->lpVtbl->GetMasterVolumeLevel(This,pfLevelDB)
#define IAudioEndpointVolumeEx_GetMasterVolumeLevelScalar(This,pfLevel) (This)->lpVtbl->GetMasterVolumeLevelScalar(This,pfLevel)
#define IAudioEndpointVolumeEx_GetMute(This,pbMute) (This)->lpVtbl->GetMute(This,pbMute)
#define IAudioEndpointVolumeEx_GetVolumeRange(This,pfLevelMinDB,pfLevelMaxDB,pfVolumeIncrementDB) (This)->lpVtbl->GetVolumeRange(This,pfLevelMinDB,pfLevelMaxDB,pfVolumeIncrementDB)
#define IAudioEndpointVolumeEx_GetVolumeStepInfo(This,pnStep,pnStepCount) (This)->lpVtbl->GetVolumeStepInfo(This,pnStep,pnStepCount)
#define IAudioEndpointVolumeEx_QueryHardwareSupport(This,pdwHardwareSupportMask) (This)->lpVtbl->QueryHardwareSupport(This,pdwHardwareSupportMask)
#define IAudioEndpointVolumeEx_RegisterControlChangeNotify(This,pNotify) (This)->lpVtbl->RegisterControlChangeNotify(This,pNotify)
#define IAudioEndpointVolumeEx_SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext) (This)->lpVtbl->SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext)
#define IAudioEndpointVolumeEx_SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext) (This)->lpVtbl->SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext)
#define IAudioEndpointVolumeEx_SetMasterVolumeLevel(This,fLevelDB,pguidEventContext) (This)->lpVtbl->SetMasterVolumeLevel(This,fLevelDB,pguidEventContext)
#define IAudioEndpointVolumeEx_SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext) (This)->lpVtbl->SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext)
#define IAudioEndpointVolumeEx_SetMute(This,bMute,pguidEventContext) (This)->lpVtbl->SetMute(This,bMute,pguidEventContext)
#define IAudioEndpointVolumeEx_UnregisterControlChangeNotify(This,pNotify) (This)->lpVtbl->UnregisterControlChangeNotify(This,pNotify)
#define IAudioEndpointVolumeEx_VolumeStepDown(This,pguidEventContext) (This)->lpVtbl->VolumeStepDown(This,pguidEventContext)
#define IAudioEndpointVolumeEx_VolumeStepUp(This,pguidEventContext) (This)->lpVtbl->VolumeStepUp(This,pguidEventContext)
#define IAudioEndpointVolumeEx_GetVolumeRangeChannel(This,iChannel,pflVolumeMinDB,pflVolumeMaxDB,pflVolumeIncrementDB) (This)->lpVtbl->GetVolumeRangeChannel(This,iChannel,pflVolumeMinDB,pflVolumeMaxDB,pflVolumeIncrementDB)
#endif /*COBJMACROS*/
#undef INTERFACE
#define INTERFACE IAudioInputEndpointRT
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioInputEndpointRT,IUnknown)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioInputEndpointRT methods */
STDMETHOD(GetInputDataPointer)(THIS_ AE_CURRENT_POSITION *pAeTimeStamp) PURE;
STDMETHOD(PulseEndpoint)(THIS) PURE;
STDMETHOD(ReleaseInputDataPointer)(THIS_ UINT32 u32FrameCount,UINT_PTR pDataPointer) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioInputEndpointRT_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioInputEndpointRT_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioInputEndpointRT_Release(This) (This)->lpVtbl->Release(This)
#define IAudioInputEndpointRT_GetInputDataPointer(This,pAeTimeStamp) (This)->lpVtbl->GetInputDataPointer(This,pAeTimeStamp)
#define IAudioInputEndpointRT_PulseEndpoint() (This)->lpVtbl->PulseEndpoint(This)
#define IAudioInputEndpointRT_ReleaseInputDataPointer(This,u32FrameCount,pDataPointer) (This)->lpVtbl->ReleaseInputDataPointer(This,u32FrameCount,pDataPointer)
#endif /*COBJMACROS*/
#undef INTERFACE
#define INTERFACE IAudioOutputEndpointRT
#ifdef __GNUC__
#warning COM interfaces layout in this header has not been verified.
#warning COM interfaces with incorrect layout may not work at all.
__MINGW_BROKEN_INTERFACE(INTERFACE)
#endif
DECLARE_INTERFACE_(IAudioOutputEndpointRT,IUnknown)
{
BEGIN_INTERFACE
/* IUnknown methods */
STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
STDMETHOD_(ULONG, AddRef)(THIS) PURE;
STDMETHOD_(ULONG, Release)(THIS) PURE;
/* IAudioOutputEndpointRT methods */
STDMETHOD_(UINT_PTR,GetOutputDataPointer)(THIS_ UINT32 u32FrameCount,AE_CURRENT_POSITION *pAeTimeStamp) PURE;
STDMETHOD(PulseEndpoint)(THIS) PURE;
STDMETHOD(ReleaseOutputDataPointer)(THIS_ const APO_CONNECTION_PROPERTY *pConnectionProperty) PURE;
END_INTERFACE
};
#ifdef COBJMACROS
#define IAudioOutputEndpointRT_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioOutputEndpointRT_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioOutputEndpointRT_Release(This) (This)->lpVtbl->Release(This)
#define IAudioOutputEndpointRT_GetOutputDataPointer(This,u32FrameCount,pAeTimeStamp) (This)->lpVtbl->GetOutputDataPointer(This,u32FrameCount,pAeTimeStamp)
#define IAudioOutputEndpointRT_PulseEndpoint() (This)->lpVtbl->PulseEndpoint(This)
#define IAudioOutputEndpointRT_ReleaseOutputDataPointer(This,pConnectionProperty) (This)->lpVtbl->ReleaseOutputDataPointer(This,pConnectionProperty)
#endif /*COBJMACROS*/
#endif /*(_WIN32_WINNT >= 0x0601)*/
#endif /*_INC_AUDIOENGINEENDPOINT*/

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,54 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef __AUDIOSESSIONTYPES__
#define __AUDIOSESSIONTYPES__
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
#if defined (__WIDL__)
#define MIDL_SIZE_IS(x) [size_is (x)]
#define MIDL_STRING [string]
#define MIDL_ANYSIZE_ARRAY
#else
#define MIDL_SIZE_IS(x)
#define MIDL_STRING
#define MIDL_ANYSIZE_ARRAY ANYSIZE_ARRAY
#endif
typedef enum _AudioSessionState {
AudioSessionStateInactive = 0,
AudioSessionStateActive = 1,
AudioSessionStateExpired = 2
} AudioSessionState;
typedef enum _AUDCLNT_SHAREMODE {
AUDCLNT_SHAREMODE_SHARED,
AUDCLNT_SHAREMODE_EXCLUSIVE
} AUDCLNT_SHAREMODE;
typedef enum _AUDIO_STREAM_CATEGORY {
AudioCategory_Other = 0,
AudioCategory_ForegroundOnlyMedia,
AudioCategory_BackgroundCapableMedia,
AudioCategory_Communications,
AudioCategory_Alerts,
AudioCategory_SoundEffects,
AudioCategory_GameEffects,
AudioCategory_GameMedia
} AUDIO_STREAM_CATEGORY;
#define AUDCLNT_STREAMFLAGS_CROSSPROCESS 0x00010000
#define AUDCLNT_STREAMFLAGS_LOOPBACK 0x00020000
#define AUDCLNT_STREAMFLAGS_EVENTCALLBACK 0x00040000
#define AUDCLNT_STREAMFLAGS_NOPERSIST 0x00080000
#define AUDCLNT_STREAMFLAGS_RATEADJUST 0x00100000
#define AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED 0x10000000
#define AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE 0x20000000
#define AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED 0x40000000
#endif
#endif

View File

@ -0,0 +1,617 @@
/*** Autogenerated by WIDL 3.1 from direct-x/include/austream.idl - Do not edit ***/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif
#ifndef __austream_h__
#define __austream_h__
/* Forward declarations */
#ifndef __IAudioMediaStream_FWD_DEFINED__
#define __IAudioMediaStream_FWD_DEFINED__
typedef interface IAudioMediaStream IAudioMediaStream;
#ifdef __cplusplus
interface IAudioMediaStream;
#endif /* __cplusplus */
#endif
#ifndef __IAudioStreamSample_FWD_DEFINED__
#define __IAudioStreamSample_FWD_DEFINED__
typedef interface IAudioStreamSample IAudioStreamSample;
#ifdef __cplusplus
interface IAudioStreamSample;
#endif /* __cplusplus */
#endif
#ifndef __IMemoryData_FWD_DEFINED__
#define __IMemoryData_FWD_DEFINED__
typedef interface IMemoryData IMemoryData;
#ifdef __cplusplus
interface IMemoryData;
#endif /* __cplusplus */
#endif
#ifndef __IAudioData_FWD_DEFINED__
#define __IAudioData_FWD_DEFINED__
typedef interface IAudioData IAudioData;
#ifdef __cplusplus
interface IAudioData;
#endif /* __cplusplus */
#endif
/* Headers for imported files */
#include <unknwn.h>
#include <mmstream.h>
#ifdef __cplusplus
extern "C" {
#endif
#if 0
typedef struct tWAVEFORMATEX WAVEFORMATEX;
#endif
#ifndef __IAudioMediaStream_FWD_DEFINED__
#define __IAudioMediaStream_FWD_DEFINED__
typedef interface IAudioMediaStream IAudioMediaStream;
#ifdef __cplusplus
interface IAudioMediaStream;
#endif /* __cplusplus */
#endif
#ifndef __IAudioStreamSample_FWD_DEFINED__
#define __IAudioStreamSample_FWD_DEFINED__
typedef interface IAudioStreamSample IAudioStreamSample;
#ifdef __cplusplus
interface IAudioStreamSample;
#endif /* __cplusplus */
#endif
#ifndef __IMemoryData_FWD_DEFINED__
#define __IMemoryData_FWD_DEFINED__
typedef interface IMemoryData IMemoryData;
#ifdef __cplusplus
interface IMemoryData;
#endif /* __cplusplus */
#endif
#ifndef __IAudioData_FWD_DEFINED__
#define __IAudioData_FWD_DEFINED__
typedef interface IAudioData IAudioData;
#ifdef __cplusplus
interface IAudioData;
#endif /* __cplusplus */
#endif
/*****************************************************************************
* IAudioMediaStream interface
*/
#ifndef __IAudioMediaStream_INTERFACE_DEFINED__
#define __IAudioMediaStream_INTERFACE_DEFINED__
DEFINE_GUID(IID_IAudioMediaStream, 0xf7537560, 0xa3be, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("f7537560-a3be-11d0-8212-00c04fc32c45")
IAudioMediaStream : public IMediaStream
{
virtual HRESULT STDMETHODCALLTYPE GetFormat(
WAVEFORMATEX *pWaveFormatCurrent) = 0;
virtual HRESULT STDMETHODCALLTYPE SetFormat(
const WAVEFORMATEX *lpWaveFormat) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateSample(
IAudioData *pAudioData,
DWORD dwFlags,
IAudioStreamSample **ppSample) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IAudioMediaStream, 0xf7537560, 0xa3be, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
#endif
#else
typedef struct IAudioMediaStreamVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IAudioMediaStream *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IAudioMediaStream *This);
ULONG (STDMETHODCALLTYPE *Release)(
IAudioMediaStream *This);
/*** IMediaStream methods ***/
HRESULT (STDMETHODCALLTYPE *GetMultiMediaStream)(
IAudioMediaStream *This,
IMultiMediaStream **ppMultiMediaStream);
HRESULT (STDMETHODCALLTYPE *GetInformation)(
IAudioMediaStream *This,
MSPID *pPurposeId,
STREAM_TYPE *pType);
HRESULT (STDMETHODCALLTYPE *SetSameFormat)(
IAudioMediaStream *This,
IMediaStream *pStreamThatHasDesiredFormat,
DWORD dwFlags);
HRESULT (STDMETHODCALLTYPE *AllocateSample)(
IAudioMediaStream *This,
DWORD dwFlags,
IStreamSample **ppSample);
HRESULT (STDMETHODCALLTYPE *CreateSharedSample)(
IAudioMediaStream *This,
IStreamSample *pExistingSample,
DWORD dwFlags,
IStreamSample **ppNewSample);
HRESULT (STDMETHODCALLTYPE *SendEndOfStream)(
IAudioMediaStream *This,
DWORD dwFlags);
/*** IAudioMediaStream methods ***/
HRESULT (STDMETHODCALLTYPE *GetFormat)(
IAudioMediaStream *This,
WAVEFORMATEX *pWaveFormatCurrent);
HRESULT (STDMETHODCALLTYPE *SetFormat)(
IAudioMediaStream *This,
const WAVEFORMATEX *lpWaveFormat);
HRESULT (STDMETHODCALLTYPE *CreateSample)(
IAudioMediaStream *This,
IAudioData *pAudioData,
DWORD dwFlags,
IAudioStreamSample **ppSample);
END_INTERFACE
} IAudioMediaStreamVtbl;
interface IAudioMediaStream {
CONST_VTBL IAudioMediaStreamVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IAudioMediaStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioMediaStream_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioMediaStream_Release(This) (This)->lpVtbl->Release(This)
/*** IMediaStream methods ***/
#define IAudioMediaStream_GetMultiMediaStream(This,ppMultiMediaStream) (This)->lpVtbl->GetMultiMediaStream(This,ppMultiMediaStream)
#define IAudioMediaStream_GetInformation(This,pPurposeId,pType) (This)->lpVtbl->GetInformation(This,pPurposeId,pType)
#define IAudioMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) (This)->lpVtbl->SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
#define IAudioMediaStream_AllocateSample(This,dwFlags,ppSample) (This)->lpVtbl->AllocateSample(This,dwFlags,ppSample)
#define IAudioMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) (This)->lpVtbl->CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
#define IAudioMediaStream_SendEndOfStream(This,dwFlags) (This)->lpVtbl->SendEndOfStream(This,dwFlags)
/*** IAudioMediaStream methods ***/
#define IAudioMediaStream_GetFormat(This,pWaveFormatCurrent) (This)->lpVtbl->GetFormat(This,pWaveFormatCurrent)
#define IAudioMediaStream_SetFormat(This,lpWaveFormat) (This)->lpVtbl->SetFormat(This,lpWaveFormat)
#define IAudioMediaStream_CreateSample(This,pAudioData,dwFlags,ppSample) (This)->lpVtbl->CreateSample(This,pAudioData,dwFlags,ppSample)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IAudioMediaStream_QueryInterface(IAudioMediaStream* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IAudioMediaStream_AddRef(IAudioMediaStream* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IAudioMediaStream_Release(IAudioMediaStream* This) {
return This->lpVtbl->Release(This);
}
/*** IMediaStream methods ***/
static FORCEINLINE HRESULT IAudioMediaStream_GetMultiMediaStream(IAudioMediaStream* This,IMultiMediaStream **ppMultiMediaStream) {
return This->lpVtbl->GetMultiMediaStream(This,ppMultiMediaStream);
}
static FORCEINLINE HRESULT IAudioMediaStream_GetInformation(IAudioMediaStream* This,MSPID *pPurposeId,STREAM_TYPE *pType) {
return This->lpVtbl->GetInformation(This,pPurposeId,pType);
}
static FORCEINLINE HRESULT IAudioMediaStream_SetSameFormat(IAudioMediaStream* This,IMediaStream *pStreamThatHasDesiredFormat,DWORD dwFlags) {
return This->lpVtbl->SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags);
}
static FORCEINLINE HRESULT IAudioMediaStream_AllocateSample(IAudioMediaStream* This,DWORD dwFlags,IStreamSample **ppSample) {
return This->lpVtbl->AllocateSample(This,dwFlags,ppSample);
}
static FORCEINLINE HRESULT IAudioMediaStream_CreateSharedSample(IAudioMediaStream* This,IStreamSample *pExistingSample,DWORD dwFlags,IStreamSample **ppNewSample) {
return This->lpVtbl->CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample);
}
static FORCEINLINE HRESULT IAudioMediaStream_SendEndOfStream(IAudioMediaStream* This,DWORD dwFlags) {
return This->lpVtbl->SendEndOfStream(This,dwFlags);
}
/*** IAudioMediaStream methods ***/
static FORCEINLINE HRESULT IAudioMediaStream_GetFormat(IAudioMediaStream* This,WAVEFORMATEX *pWaveFormatCurrent) {
return This->lpVtbl->GetFormat(This,pWaveFormatCurrent);
}
static FORCEINLINE HRESULT IAudioMediaStream_SetFormat(IAudioMediaStream* This,const WAVEFORMATEX *lpWaveFormat) {
return This->lpVtbl->SetFormat(This,lpWaveFormat);
}
static FORCEINLINE HRESULT IAudioMediaStream_CreateSample(IAudioMediaStream* This,IAudioData *pAudioData,DWORD dwFlags,IAudioStreamSample **ppSample) {
return This->lpVtbl->CreateSample(This,pAudioData,dwFlags,ppSample);
}
#endif
#endif
#endif
#endif /* __IAudioMediaStream_INTERFACE_DEFINED__ */
/*****************************************************************************
* IAudioStreamSample interface
*/
#ifndef __IAudioStreamSample_INTERFACE_DEFINED__
#define __IAudioStreamSample_INTERFACE_DEFINED__
DEFINE_GUID(IID_IAudioStreamSample, 0x345fee00, 0xaba5, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("345fee00-aba5-11d0-8212-00c04fc32c45")
IAudioStreamSample : public IStreamSample
{
virtual HRESULT STDMETHODCALLTYPE GetAudioData(
IAudioData **ppAudio) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IAudioStreamSample, 0x345fee00, 0xaba5, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
#endif
#else
typedef struct IAudioStreamSampleVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IAudioStreamSample *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IAudioStreamSample *This);
ULONG (STDMETHODCALLTYPE *Release)(
IAudioStreamSample *This);
/*** IStreamSample methods ***/
HRESULT (STDMETHODCALLTYPE *GetMediaStream)(
IAudioStreamSample *This,
IMediaStream **ppMediaStream);
HRESULT (STDMETHODCALLTYPE *GetSampleTimes)(
IAudioStreamSample *This,
STREAM_TIME *pStartTime,
STREAM_TIME *pEndTime,
STREAM_TIME *pCurrentTime);
HRESULT (STDMETHODCALLTYPE *SetSampleTimes)(
IAudioStreamSample *This,
const STREAM_TIME *pStartTime,
const STREAM_TIME *pEndTime);
HRESULT (STDMETHODCALLTYPE *Update)(
IAudioStreamSample *This,
DWORD dwFlags,
HANDLE hEvent,
PAPCFUNC pfnAPC,
DWORD dwAPCData);
HRESULT (STDMETHODCALLTYPE *CompletionStatus)(
IAudioStreamSample *This,
DWORD dwFlags,
DWORD dwMilliseconds);
/*** IAudioStreamSample methods ***/
HRESULT (STDMETHODCALLTYPE *GetAudioData)(
IAudioStreamSample *This,
IAudioData **ppAudio);
END_INTERFACE
} IAudioStreamSampleVtbl;
interface IAudioStreamSample {
CONST_VTBL IAudioStreamSampleVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IAudioStreamSample_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioStreamSample_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioStreamSample_Release(This) (This)->lpVtbl->Release(This)
/*** IStreamSample methods ***/
#define IAudioStreamSample_GetMediaStream(This,ppMediaStream) (This)->lpVtbl->GetMediaStream(This,ppMediaStream)
#define IAudioStreamSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) (This)->lpVtbl->GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
#define IAudioStreamSample_SetSampleTimes(This,pStartTime,pEndTime) (This)->lpVtbl->SetSampleTimes(This,pStartTime,pEndTime)
#define IAudioStreamSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) (This)->lpVtbl->Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
#define IAudioStreamSample_CompletionStatus(This,dwFlags,dwMilliseconds) (This)->lpVtbl->CompletionStatus(This,dwFlags,dwMilliseconds)
/*** IAudioStreamSample methods ***/
#define IAudioStreamSample_GetAudioData(This,ppAudio) (This)->lpVtbl->GetAudioData(This,ppAudio)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IAudioStreamSample_QueryInterface(IAudioStreamSample* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IAudioStreamSample_AddRef(IAudioStreamSample* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IAudioStreamSample_Release(IAudioStreamSample* This) {
return This->lpVtbl->Release(This);
}
/*** IStreamSample methods ***/
static FORCEINLINE HRESULT IAudioStreamSample_GetMediaStream(IAudioStreamSample* This,IMediaStream **ppMediaStream) {
return This->lpVtbl->GetMediaStream(This,ppMediaStream);
}
static FORCEINLINE HRESULT IAudioStreamSample_GetSampleTimes(IAudioStreamSample* This,STREAM_TIME *pStartTime,STREAM_TIME *pEndTime,STREAM_TIME *pCurrentTime) {
return This->lpVtbl->GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime);
}
static FORCEINLINE HRESULT IAudioStreamSample_SetSampleTimes(IAudioStreamSample* This,const STREAM_TIME *pStartTime,const STREAM_TIME *pEndTime) {
return This->lpVtbl->SetSampleTimes(This,pStartTime,pEndTime);
}
static FORCEINLINE HRESULT IAudioStreamSample_Update(IAudioStreamSample* This,DWORD dwFlags,HANDLE hEvent,PAPCFUNC pfnAPC,DWORD dwAPCData) {
return This->lpVtbl->Update(This,dwFlags,hEvent,pfnAPC,dwAPCData);
}
static FORCEINLINE HRESULT IAudioStreamSample_CompletionStatus(IAudioStreamSample* This,DWORD dwFlags,DWORD dwMilliseconds) {
return This->lpVtbl->CompletionStatus(This,dwFlags,dwMilliseconds);
}
/*** IAudioStreamSample methods ***/
static FORCEINLINE HRESULT IAudioStreamSample_GetAudioData(IAudioStreamSample* This,IAudioData **ppAudio) {
return This->lpVtbl->GetAudioData(This,ppAudio);
}
#endif
#endif
#endif
#endif /* __IAudioStreamSample_INTERFACE_DEFINED__ */
/*****************************************************************************
* IMemoryData interface
*/
#ifndef __IMemoryData_INTERFACE_DEFINED__
#define __IMemoryData_INTERFACE_DEFINED__
DEFINE_GUID(IID_IMemoryData, 0x327fc560, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("327fc560-af60-11d0-8212-00c04fc32c45")
IMemoryData : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE SetBuffer(
DWORD cbSize,
BYTE *pbData,
DWORD dwFlags) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInfo(
DWORD *pdwLength,
BYTE **ppbData,
DWORD *pcbActualData) = 0;
virtual HRESULT STDMETHODCALLTYPE SetActual(
DWORD cbDataValid) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IMemoryData, 0x327fc560, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
#endif
#else
typedef struct IMemoryDataVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IMemoryData *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IMemoryData *This);
ULONG (STDMETHODCALLTYPE *Release)(
IMemoryData *This);
/*** IMemoryData methods ***/
HRESULT (STDMETHODCALLTYPE *SetBuffer)(
IMemoryData *This,
DWORD cbSize,
BYTE *pbData,
DWORD dwFlags);
HRESULT (STDMETHODCALLTYPE *GetInfo)(
IMemoryData *This,
DWORD *pdwLength,
BYTE **ppbData,
DWORD *pcbActualData);
HRESULT (STDMETHODCALLTYPE *SetActual)(
IMemoryData *This,
DWORD cbDataValid);
END_INTERFACE
} IMemoryDataVtbl;
interface IMemoryData {
CONST_VTBL IMemoryDataVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IMemoryData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IMemoryData_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IMemoryData_Release(This) (This)->lpVtbl->Release(This)
/*** IMemoryData methods ***/
#define IMemoryData_SetBuffer(This,cbSize,pbData,dwFlags) (This)->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags)
#define IMemoryData_GetInfo(This,pdwLength,ppbData,pcbActualData) (This)->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData)
#define IMemoryData_SetActual(This,cbDataValid) (This)->lpVtbl->SetActual(This,cbDataValid)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IMemoryData_QueryInterface(IMemoryData* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IMemoryData_AddRef(IMemoryData* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IMemoryData_Release(IMemoryData* This) {
return This->lpVtbl->Release(This);
}
/*** IMemoryData methods ***/
static FORCEINLINE HRESULT IMemoryData_SetBuffer(IMemoryData* This,DWORD cbSize,BYTE *pbData,DWORD dwFlags) {
return This->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags);
}
static FORCEINLINE HRESULT IMemoryData_GetInfo(IMemoryData* This,DWORD *pdwLength,BYTE **ppbData,DWORD *pcbActualData) {
return This->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData);
}
static FORCEINLINE HRESULT IMemoryData_SetActual(IMemoryData* This,DWORD cbDataValid) {
return This->lpVtbl->SetActual(This,cbDataValid);
}
#endif
#endif
#endif
#endif /* __IMemoryData_INTERFACE_DEFINED__ */
/*****************************************************************************
* IAudioData interface
*/
#ifndef __IAudioData_INTERFACE_DEFINED__
#define __IAudioData_INTERFACE_DEFINED__
DEFINE_GUID(IID_IAudioData, 0x54c719c0, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("54c719c0-af60-11d0-8212-00c04fc32c45")
IAudioData : public IMemoryData
{
virtual HRESULT STDMETHODCALLTYPE GetFormat(
WAVEFORMATEX *pWaveFormatCurrent) = 0;
virtual HRESULT STDMETHODCALLTYPE SetFormat(
const WAVEFORMATEX *lpWaveFormat) = 0;
};
#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IAudioData, 0x54c719c0, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
#endif
#else
typedef struct IAudioDataVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IAudioData *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IAudioData *This);
ULONG (STDMETHODCALLTYPE *Release)(
IAudioData *This);
/*** IMemoryData methods ***/
HRESULT (STDMETHODCALLTYPE *SetBuffer)(
IAudioData *This,
DWORD cbSize,
BYTE *pbData,
DWORD dwFlags);
HRESULT (STDMETHODCALLTYPE *GetInfo)(
IAudioData *This,
DWORD *pdwLength,
BYTE **ppbData,
DWORD *pcbActualData);
HRESULT (STDMETHODCALLTYPE *SetActual)(
IAudioData *This,
DWORD cbDataValid);
/*** IAudioData methods ***/
HRESULT (STDMETHODCALLTYPE *GetFormat)(
IAudioData *This,
WAVEFORMATEX *pWaveFormatCurrent);
HRESULT (STDMETHODCALLTYPE *SetFormat)(
IAudioData *This,
const WAVEFORMATEX *lpWaveFormat);
END_INTERFACE
} IAudioDataVtbl;
interface IAudioData {
CONST_VTBL IAudioDataVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IAudioData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IAudioData_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IAudioData_Release(This) (This)->lpVtbl->Release(This)
/*** IMemoryData methods ***/
#define IAudioData_SetBuffer(This,cbSize,pbData,dwFlags) (This)->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags)
#define IAudioData_GetInfo(This,pdwLength,ppbData,pcbActualData) (This)->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData)
#define IAudioData_SetActual(This,cbDataValid) (This)->lpVtbl->SetActual(This,cbDataValid)
/*** IAudioData methods ***/
#define IAudioData_GetFormat(This,pWaveFormatCurrent) (This)->lpVtbl->GetFormat(This,pWaveFormatCurrent)
#define IAudioData_SetFormat(This,lpWaveFormat) (This)->lpVtbl->SetFormat(This,lpWaveFormat)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IAudioData_QueryInterface(IAudioData* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IAudioData_AddRef(IAudioData* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IAudioData_Release(IAudioData* This) {
return This->lpVtbl->Release(This);
}
/*** IMemoryData methods ***/
static FORCEINLINE HRESULT IAudioData_SetBuffer(IAudioData* This,DWORD cbSize,BYTE *pbData,DWORD dwFlags) {
return This->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags);
}
static FORCEINLINE HRESULT IAudioData_GetInfo(IAudioData* This,DWORD *pdwLength,BYTE **ppbData,DWORD *pcbActualData) {
return This->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData);
}
static FORCEINLINE HRESULT IAudioData_SetActual(IAudioData* This,DWORD cbDataValid) {
return This->lpVtbl->SetActual(This,cbDataValid);
}
/*** IAudioData methods ***/
static FORCEINLINE HRESULT IAudioData_GetFormat(IAudioData* This,WAVEFORMATEX *pWaveFormatCurrent) {
return This->lpVtbl->GetFormat(This,pWaveFormatCurrent);
}
static FORCEINLINE HRESULT IAudioData_SetFormat(IAudioData* This,const WAVEFORMATEX *lpWaveFormat) {
return This->lpVtbl->SetFormat(This,lpWaveFormat);
}
#endif
#endif
#endif
#endif /* __IAudioData_INTERFACE_DEFINED__ */
/* Begin additional prototypes for all interfaces */
/* End additional prototypes */
#ifdef __cplusplus
}
#endif
#endif /* __austream_h__ */

View File

@ -0,0 +1,108 @@
/*
* Copyright 2004 Christian Costa
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
import "unknwn.idl";
import "mmstream.idl";
cpp_quote("#if 0")
typedef struct tWAVEFORMATEX WAVEFORMATEX;
cpp_quote ("#endif")
interface IAudioMediaStream;
interface IAudioStreamSample;
interface IMemoryData;
interface IAudioData;
[
object,
local,
uuid(f7537560-a3be-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
interface IAudioMediaStream : IMediaStream
{
HRESULT GetFormat(
[out] /*[optional]*/ WAVEFORMATEX *pWaveFormatCurrent
);
HRESULT SetFormat(
[in] const WAVEFORMATEX *lpWaveFormat);
HRESULT CreateSample(
[in] IAudioData *pAudioData,
[in] DWORD dwFlags,
[out] IAudioStreamSample **ppSample
);
}
[
object,
local,
uuid(345fee00-aba5-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
interface IAudioStreamSample : IStreamSample
{
HRESULT GetAudioData(
[out] IAudioData **ppAudio
);
}
[
object,
local,
uuid(327fc560-af60-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
interface IMemoryData : IUnknown
{
HRESULT SetBuffer(
[in] DWORD cbSize,
[in] BYTE *pbData,
[in] DWORD dwFlags
);
HRESULT GetInfo(
[out] DWORD *pdwLength,
[out] BYTE **ppbData,
[out] DWORD *pcbActualData
);
HRESULT SetActual(
[in] DWORD cbDataValid
);
}
[
object,
local,
uuid(54c719c0-af60-11d0-8212-00c04fc32c45),
pointer_default(unique)
]
interface IAudioData : IMemoryData
{
HRESULT GetFormat(
[out] /*[optional]*/ WAVEFORMATEX *pWaveFormatCurrent
);
HRESULT SetFormat(
[in] const WAVEFORMATEX *lpWaveFormat
);
}

View File

@ -0,0 +1,202 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef _AUTHIF_H_
#define _AUTHIF_H_
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
typedef enum _RADIUS_ATTRIBUTE_TYPE {
ratMinimum = 0,
ratUserName = 1,
ratUserPassword = 2,
ratCHAPPassword = 3,
ratNASIPAddress = 4,
ratNASPort = 5,
ratServiceType = 6,
ratFramedProtocol = 7,
ratFramedIPAddress = 8,
ratFramedIPNetmask = 9,
ratFramedRouting = 10,
ratFilterId = 11,
ratFramedMTU = 12,
ratFramedCompression = 13,
ratLoginIPHost = 14,
ratLoginService = 15,
ratLoginPort = 16,
ratReplyMessage = 18,
ratCallbackNumber = 19,
ratCallbackId = 20,
ratFramedRoute = 22,
ratFramedIPXNetwork = 23,
ratState = 24,
ratClass = 25,
ratVendorSpecific = 26,
ratSessionTimeout = 27,
ratIdleTimeout = 28,
ratTerminationAction = 29,
ratCalledStationId = 30,
ratCallingStationId = 31,
ratNASIdentifier = 32,
ratProxyState = 33,
ratLoginLATService = 34,
ratLoginLATNode = 35,
ratLoginLATGroup = 36,
ratFramedAppleTalkLink = 37,
ratFramedAppleTalkNetwork = 38,
ratFramedAppleTalkZone = 39,
ratAcctStatusType = 40,
ratAcctDelayTime = 41,
ratAcctInputOctets = 42,
ratAcctOutputOctets = 43,
ratAcctSessionId = 44,
ratAcctAuthentic = 45,
ratAcctSessionTime = 46,
ratAcctInputPackets = 47,
ratAcctOutputPackets = 48,
ratAcctTerminationCause = 49,
ratCHAPChallenge = 60,
ratNASPortType = 61,
ratPortLimit = 62,
ratTunnelType = 64,
ratMediumType = 65,
ratTunnelPassword = 69,
ratTunnelPrivateGroupID = 81,
ratNASIPv6Address = 95,
ratFramedInterfaceId,
ratFramedIPv6Prefix,
ratLoginIPv6Host,
ratFramedIPv6Route,
ratFramedIPv6Pool,
ratCode = 262,
ratIdentifier = 263,
ratAuthenticator = 264,
ratSrcIPAddress = 265,
ratSrcPort = 266,
ratProvider = 267,
ratStrippedUserName = 268,
ratFQUserName = 269,
ratPolicyName = 270,
ratUniqueId = 271,
ratExtensionState = 272,
ratEAPTLV = 273,
ratRejectReasonCode = 274,
ratCRPPolicyName = 275,
ratProviderName = 276,
ratClearTextPassword = 277,
ratSrcIPv6Address = 278
} RADIUS_ATTRIBUTE_TYPE;
typedef enum _RADIUS_CODE {
rcUnknown = 0,
rcAccessRequest = 1,
rcAccessAccept = 2,
rcAccessReject = 3,
rcAccountingRequest = 4,
rcAccountingResponse = 5,
rcAccessChallenge = 11,
rcDiscard = 256
} RADIUS_CODE;
typedef enum _RADIUS_AUTHENTICATION_PROVIDER {
rapUnknown,
rapUsersFile,
rapProxy,
rapWindowsNT,
rapMCIS,
rapODBC,
rapNone
} RADIUS_AUTHENTICATION_PROVIDER;
typedef enum _RADIUS_REJECT_REASON_CODE {
rrrcUndefined = 0,
rrrcAccountUnknown = 1,
rrrcAccountDisabled = 2,
rrrcAccountExpired = 3,
rrrcAuthenticationFailure = 4
} RADIUS_REJECT_REASON_CODE;
typedef enum _RADIUS_DATA_TYPE {
rdtUnknown,
rdtString,
rdtAddress,
rdtInteger,
rdtTime,
rdtIpv6Address
} RADIUS_DATA_TYPE;
typedef struct _RADIUS_ATTRIBUTE {
DWORD dwAttrType;
RADIUS_DATA_TYPE fDataType;
DWORD cbDataLength;
__C89_NAMELESS union {
DWORD dwValue;
CONST BYTE *lpValue;
};
} RADIUS_ATTRIBUTE,*PRADIUS_ATTRIBUTE;
typedef struct _RADIUS_VSA_FORMAT {
BYTE VendorId[4];
BYTE VendorType;
BYTE VendorLength;
BYTE AttributeSpecific[1];
} RADIUS_VSA_FORMAT;
typedef enum _RADIUS_ACTION {
raContinue,
raReject,
raAccept
} RADIUS_ACTION,*PRADIUS_ACTION;
#define RADIUS_EXTENSION_INIT "RadiusExtensionInit"
#define RADIUS_EXTENSION_TERM "RadiusExtensionTerm"
#define RADIUS_EXTENSION_PROCESS "RadiusExtensionProcess"
#define RADIUS_EXTENSION_PROCESS_EX "RadiusExtensionProcessEx"
#define RADIUS_EXTENSION_FREE_ATTRIBUTES "RadiusExtensionFreeAttributes"
#define RADIUS_EXTENSION_PROCESS2 "RadiusExtensionProcess2"
typedef DWORD (WINAPI *PRADIUS_EXTENSION_INIT) (VOID);
typedef VOID (WINAPI *PRADIUS_EXTENSION_TERM) (VOID);
typedef DWORD (WINAPI *PRADIUS_EXTENSION_PROCESS) (const RADIUS_ATTRIBUTE *pAttrs, PRADIUS_ACTION pfAction);
typedef DWORD (WINAPI *PRADIUS_EXTENSION_PROCESS_EX) (const RADIUS_ATTRIBUTE *pInAttrs, PRADIUS_ATTRIBUTE *pOutAttrs, PRADIUS_ACTION pfAction);
typedef VOID (WINAPI *PRADIUS_EXTENSION_FREE_ATTRIBUTES) (PRADIUS_ATTRIBUTE pAttrs);
#define AUTHSRV_PARAMETERS_KEY_W L"System\\CurrentControlSet\\Services\\AuthSrv\\Parameters"
#define AUTHSRV_EXTENSIONS_VALUE_W L"ExtensionDLLs"
#define AUTHSRV_AUTHORIZATION_VALUE_W L"AuthorizationDLLs"
#define RADIUS_EXTENSION_VERSION (1)
typedef enum _RADIUS_EXTENSION_POINT {
repAuthentication,
repAuthorization
} RADIUS_EXTENSION_POINT;
typedef struct _RADIUS_ATTRIBUTE_ARRAY {
DWORD cbSize;
DWORD (WINAPI *Add) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, const RADIUS_ATTRIBUTE *pAttr);
const RADIUS_ATTRIBUTE *(WINAPI *AttributeAt) (const struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex);
DWORD (WINAPI *GetSize) (const struct _RADIUS_ATTRIBUTE_ARRAY *_This);
DWORD (WINAPI *InsertAt) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex, const RADIUS_ATTRIBUTE *pAttr);
DWORD (WINAPI *RemoveAt) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex);
DWORD (WINAPI *SetAt) (struct _RADIUS_ATTRIBUTE_ARRAY *_This, DWORD dwIndex, const RADIUS_ATTRIBUTE *pAttr);
} RADIUS_ATTRIBUTE_ARRAY,*PRADIUS_ATTRIBUTE_ARRAY;
typedef struct _RADIUS_EXTENSION_CONTROL_BLOCK {
DWORD cbSize;
DWORD dwVersion;
RADIUS_EXTENSION_POINT repPoint;
RADIUS_CODE rcRequestType;
RADIUS_CODE rcResponseType;
PRADIUS_ATTRIBUTE_ARRAY (WINAPI *GetRequest) (struct _RADIUS_EXTENSION_CONTROL_BLOCK *This);
PRADIUS_ATTRIBUTE_ARRAY (WINAPI *GetResponse) (struct _RADIUS_EXTENSION_CONTROL_BLOCK *This, RADIUS_CODE rcResponseType);
DWORD (WINAPI *SetResponseType) (struct _RADIUS_EXTENSION_CONTROL_BLOCK *This, RADIUS_CODE rcResponseType);
} RADIUS_EXTENSION_CONTROL_BLOCK,*PRADIUS_EXTENSION_CONTROL_BLOCK;
typedef DWORD (WINAPI *PRADIUS_EXTENSION_PROCESS_2) (PRADIUS_EXTENSION_CONTROL_BLOCK pECB);
#endif
#endif

View File

@ -0,0 +1,293 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef __AUTHZ_H__
#define __AUTHZ_H__
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _AUTHZ_
#define AUTHZAPI DECLSPEC_IMPORT
#else
#define AUTHZAPI
#endif
#ifndef __WIDL__
#include <windows.h>
#endif
#include <adtgen.h>
#define AUTHZ_SKIP_TOKEN_GROUPS 0x2
#define AUTHZ_REQUIRE_S4U_LOGON 0x4
#define AUTHZ_COMPUTE_PRIVILEGES 0x8
DECLARE_HANDLE(AUTHZ_ACCESS_CHECK_RESULTS_HANDLE);
DECLARE_HANDLE(AUTHZ_CLIENT_CONTEXT_HANDLE);
DECLARE_HANDLE(AUTHZ_RESOURCE_MANAGER_HANDLE);
DECLARE_HANDLE(AUTHZ_AUDIT_EVENT_HANDLE);
DECLARE_HANDLE(AUTHZ_AUDIT_EVENT_TYPE_HANDLE);
DECLARE_HANDLE(AUTHZ_SECURITY_EVENT_PROVIDER_HANDLE);
#if _WIN32_WINNT >= 0x0602
DECLARE_HANDLE(AUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE);
#endif
typedef AUTHZ_ACCESS_CHECK_RESULTS_HANDLE *PAUTHZ_ACCESS_CHECK_RESULTS_HANDLE;
typedef AUTHZ_CLIENT_CONTEXT_HANDLE *PAUTHZ_CLIENT_CONTEXT_HANDLE;
typedef AUTHZ_RESOURCE_MANAGER_HANDLE *PAUTHZ_RESOURCE_MANAGER_HANDLE;
typedef AUTHZ_AUDIT_EVENT_HANDLE *PAUTHZ_AUDIT_EVENT_HANDLE;
typedef AUTHZ_AUDIT_EVENT_TYPE_HANDLE *PAUTHZ_AUDIT_EVENT_TYPE_HANDLE;
typedef AUTHZ_SECURITY_EVENT_PROVIDER_HANDLE *PAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE;
#if _WIN32_WINNT >= 0x0602
typedef AUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE *PAUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE;
#endif
typedef struct _AUTHZ_ACCESS_REQUEST {
ACCESS_MASK DesiredAccess;
PSID PrincipalSelfSid;
POBJECT_TYPE_LIST ObjectTypeList;
DWORD ObjectTypeListLength;
PVOID OptionalArguments;
} AUTHZ_ACCESS_REQUEST,*PAUTHZ_ACCESS_REQUEST;
#define AUTHZ_GENERATE_SUCCESS_AUDIT 0x1
#define AUTHZ_GENERATE_FAILURE_AUDIT 0x2
typedef struct _AUTHZ_ACCESS_REPLY {
DWORD ResultListLength;
PACCESS_MASK GrantedAccessMask;
PDWORD SaclEvaluationResults;
PDWORD Error;
} AUTHZ_ACCESS_REPLY,*PAUTHZ_ACCESS_REPLY;
typedef WINBOOL (CALLBACK *PFN_AUTHZ_DYNAMIC_ACCESS_CHECK) (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PACE_HEADER pAce, PVOID pArgs, PBOOL pbAceApplicable);
typedef WINBOOL (CALLBACK *PFN_AUTHZ_COMPUTE_DYNAMIC_GROUPS) (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PVOID Args, PSID_AND_ATTRIBUTES *pSidAttrArray, PDWORD pSidCount, PSID_AND_ATTRIBUTES *pRestrictedSidAttrArray, PDWORD pRestrictedSidCount);
typedef VOID (CALLBACK *PFN_AUTHZ_FREE_DYNAMIC_GROUPS) (PSID_AND_ATTRIBUTES pSidAttrArray);
#if _WIN32_WINNT >= 0x0602
typedef WINBOOL (CALLBACK *PFN_AUTHZ_GET_CENTRAL_ACCESS_POLICY) (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PSID capid, PVOID pArgs, PBOOL pCentralAccessPolicyApplicable, PVOID *ppCentralAccessPolicy);
typedef VOID (CALLBACK *PFN_AUTHZ_FREE_CENTRAL_ACCESS_POLICY) (PVOID pCentralAccessPolicy);
#endif
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_INVALID 0x00
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_INT64 0x01
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_UINT64 0x02
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_STRING 0x03
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_FQBN 0x04
#if _WIN32_WINNT >= 0x0602
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_SID 0x05
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_BOOLEAN 0x06
#endif
#define AUTHZ_SECURITY_ATTRIBUTE_TYPE_OCTET_STRING 0x10
typedef struct _AUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE {
ULONG64 Version;
PWSTR pName;
} AUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE,*PAUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE;
typedef struct _AUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE {
PVOID pValue;
ULONG ValueLength;
} AUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE,*PAUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE;
typedef enum {
AUTHZ_SECURITY_ATTRIBUTE_OPERATION_NONE = 0,
AUTHZ_SECURITY_ATTRIBUTE_OPERATION_REPLACE_ALL,
AUTHZ_SECURITY_ATTRIBUTE_OPERATION_ADD,
AUTHZ_SECURITY_ATTRIBUTE_OPERATION_DELETE,
AUTHZ_SECURITY_ATTRIBUTE_OPERATION_REPLACE
} AUTHZ_SECURITY_ATTRIBUTE_OPERATION,*PAUTHZ_SECURITY_ATTRIBUTE_OPERATION;
#if _WIN32_WINNT >= 0x0602
typedef enum {
AUTHZ_SID_OPERATION_NONE = 0,
AUTHZ_SID_OPERATION_REPLACE_ALL,
AUTHZ_SID_OPERATION_ADD,
AUTHZ_SID_OPERATION_DELETE,
AUTHZ_SID_OPERATION_REPLACE
} AUTHZ_SID_OPERATION,*PAUTHZ_SID_OPERATION;
#endif
#define AUTHZ_SECURITY_ATTRIBUTE_NON_INHERITABLE 0x1
#define AUTHZ_SECURITY_ATTRIBUTE_VALUE_CASE_SENSITIVE 0x2
#define AUTHZ_SECURITY_ATTRIBUTE_VALID_FLAGS (AUTHZ_SECURITY_ATTRIBUTE_NON_INHERITABLE | AUTHZ_SECURITY_ATTRIBUTE_VALUE_CASE_SENSITIVE)
#define AUTHZ_SECURITY_ATTRIBUTES_INFORMATION_VERSION_V1 1
#define AUTHZ_SECURITY_ATTRIBUTES_INFORMATION_VERSION AUTHZ_SECURITY_ATTRIBUTES_INFORMATION_VERSION_V1
#define AUTHZ_ACCESS_CHECK_NO_DEEP_COPY_SD 0x1
#define AUTHZ_RM_FLAG_NO_AUDIT 0x1
#define AUTHZ_RM_FLAG_INITIALIZE_UNDER_IMPERSONATION 0x2
#define AUTHZ_RM_FLAG_NO_CENTRAL_ACCESS_POLICIES 0x4
#define AUTHZ_VALID_RM_INIT_FLAGS (AUTHZ_RM_FLAG_NO_AUDIT | AUTHZ_RM_FLAG_INITIALIZE_UNDER_IMPERSONATION | AUTHZ_RM_FLAG_NO_CENTRAL_ACCESS_POLICIES)
typedef struct _AUTHZ_SECURITY_ATTRIBUTE_V1 {
PWSTR pName;
USHORT ValueType;
USHORT Reserved;
ULONG Flags;
ULONG ValueCount;
union {
PLONG64 pInt64;
PULONG64 pUint64;
PWSTR *ppString;
PAUTHZ_SECURITY_ATTRIBUTE_FQBN_VALUE pFqbn;
PAUTHZ_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE pOctetString;
} Values;
} AUTHZ_SECURITY_ATTRIBUTE_V1,*PAUTHZ_SECURITY_ATTRIBUTE_V1;
typedef struct _AUTHZ_SECURITY_ATTRIBUTES_INFORMATION {
USHORT Version;
USHORT Reserved;
ULONG AttributeCount;
union {
PAUTHZ_SECURITY_ATTRIBUTE_V1 pAttributeV1;
} Attribute;
} AUTHZ_SECURITY_ATTRIBUTES_INFORMATION,*PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION;
AUTHZAPI WINBOOL WINAPI AuthzAccessCheck (DWORD Flags, AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PAUTHZ_ACCESS_REQUEST pRequest, AUTHZ_AUDIT_EVENT_HANDLE hAuditEvent, PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR *OptionalSecurityDescriptorArray, DWORD OptionalSecurityDescriptorCount, PAUTHZ_ACCESS_REPLY pReply, PAUTHZ_ACCESS_CHECK_RESULTS_HANDLE phAccessCheckResults);
AUTHZAPI WINBOOL WINAPI AuthzCachedAccessCheck (DWORD Flags, AUTHZ_ACCESS_CHECK_RESULTS_HANDLE hAccessCheckResults, PAUTHZ_ACCESS_REQUEST pRequest, AUTHZ_AUDIT_EVENT_HANDLE hAuditEvent, PAUTHZ_ACCESS_REPLY pReply);
AUTHZAPI WINBOOL WINAPI AuthzOpenObjectAudit (DWORD Flags, AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PAUTHZ_ACCESS_REQUEST pRequest, AUTHZ_AUDIT_EVENT_HANDLE hAuditEvent, PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR *OptionalSecurityDescriptorArray, DWORD OptionalSecurityDescriptorCount, PAUTHZ_ACCESS_REPLY pReply);
AUTHZAPI WINBOOL WINAPI AuthzFreeHandle (AUTHZ_ACCESS_CHECK_RESULTS_HANDLE hAccessCheckResults);
AUTHZAPI WINBOOL WINAPI AuthzInitializeResourceManager (DWORD Flags, PFN_AUTHZ_DYNAMIC_ACCESS_CHECK pfnDynamicAccessCheck, PFN_AUTHZ_COMPUTE_DYNAMIC_GROUPS pfnComputeDynamicGroups, PFN_AUTHZ_FREE_DYNAMIC_GROUPS pfnFreeDynamicGroups, PCWSTR szResourceManagerName, PAUTHZ_RESOURCE_MANAGER_HANDLE phAuthzResourceManager);
#if _WIN32_WINNT >= 0x0602
#define AUTHZ_RPC_INIT_INFO_CLIENT_VERSION_V1 1
#define AUTHZ_INIT_INFO_VERSION_V1 1
typedef struct _AUTHZ_RPC_INIT_INFO_CLIENT {
USHORT version;
PWSTR ObjectUuid;
PWSTR ProtSeq;
PWSTR NetworkAddr;
PWSTR Endpoint;
PWSTR Options;
PWSTR ServerSpn;
} AUTHZ_RPC_INIT_INFO_CLIENT,*PAUTHZ_RPC_INIT_INFO_CLIENT;
typedef struct _AUTHZ_INIT_INFO {
USHORT version;
PCWSTR szResourceManagerName;
PFN_AUTHZ_DYNAMIC_ACCESS_CHECK pfnDynamicAccessCheck;
PFN_AUTHZ_COMPUTE_DYNAMIC_GROUPS pfnComputeDynamicGroups;
PFN_AUTHZ_FREE_DYNAMIC_GROUPS pfnFreeDynamicGroups;
PFN_AUTHZ_GET_CENTRAL_ACCESS_POLICY pfnGetCentralAccessPolicy;
PFN_AUTHZ_FREE_CENTRAL_ACCESS_POLICY pfnFreeCentralAccessPolicy;
} AUTHZ_INIT_INFO,*PAUTHZ_INIT_INFO;
AUTHZAPI WINBOOL WINAPI AuthzInitializeResourceManagerEx (DWORD Flags, PAUTHZ_INIT_INFO pAuthzInitInfo, PAUTHZ_RESOURCE_MANAGER_HANDLE phAuthzResourceManager);
AUTHZAPI WINBOOL WINAPI AuthzInitializeRemoteResourceManager (PAUTHZ_RPC_INIT_INFO_CLIENT pRpcInitInfo, PAUTHZ_RESOURCE_MANAGER_HANDLE phAuthzResourceManager);
#endif
AUTHZAPI WINBOOL WINAPI AuthzFreeResourceManager (AUTHZ_RESOURCE_MANAGER_HANDLE hAuthzResourceManager);
AUTHZAPI WINBOOL WINAPI AuthzInitializeContextFromToken (DWORD Flags, HANDLE TokenHandle, AUTHZ_RESOURCE_MANAGER_HANDLE hAuthzResourceManager, PLARGE_INTEGER pExpirationTime, LUID Identifier, PVOID DynamicGroupArgs, PAUTHZ_CLIENT_CONTEXT_HANDLE phAuthzClientContext);
AUTHZAPI WINBOOL WINAPI AuthzInitializeContextFromSid (DWORD Flags, PSID UserSid, AUTHZ_RESOURCE_MANAGER_HANDLE hAuthzResourceManager, PLARGE_INTEGER pExpirationTime, LUID Identifier, PVOID DynamicGroupArgs, PAUTHZ_CLIENT_CONTEXT_HANDLE phAuthzClientContext);
AUTHZAPI WINBOOL WINAPI AuthzInitializeContextFromAuthzContext (DWORD Flags, AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PLARGE_INTEGER pExpirationTime, LUID Identifier, PVOID DynamicGroupArgs, PAUTHZ_CLIENT_CONTEXT_HANDLE phNewAuthzClientContext);
#if _WIN32_WINNT >= 0x0602
AUTHZAPI WINBOOL WINAPI AuthzInitializeCompoundContext (AUTHZ_CLIENT_CONTEXT_HANDLE UserContext, AUTHZ_CLIENT_CONTEXT_HANDLE DeviceContext, PAUTHZ_CLIENT_CONTEXT_HANDLE phCompoundContext);
#endif
AUTHZAPI WINBOOL WINAPI AuthzAddSidsToContext (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PSID_AND_ATTRIBUTES Sids, DWORD SidCount, PSID_AND_ATTRIBUTES RestrictedSids, DWORD RestrictedSidCount, PAUTHZ_CLIENT_CONTEXT_HANDLE phNewAuthzClientContext);
AUTHZAPI WINBOOL WINAPI AuthzModifySecurityAttributes (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PAUTHZ_SECURITY_ATTRIBUTE_OPERATION pOperations, PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION pAttributes);
typedef enum _AUTHZ_CONTEXT_INFORMATION_CLASS {
AuthzContextInfoUserSid = 1,
AuthzContextInfoGroupsSids,
AuthzContextInfoRestrictedSids,
AuthzContextInfoPrivileges,
AuthzContextInfoExpirationTime,
AuthzContextInfoServerContext,
AuthzContextInfoIdentifier,
AuthzContextInfoSource,
AuthzContextInfoAll,
AuthzContextInfoAuthenticationId,
AuthzContextInfoSecurityAttributes,
AuthzContextInfoDeviceSids,
AuthzContextInfoUserClaims,
AuthzContextInfoDeviceClaims,
AuthzContextInfoAppContainerSid,
AuthzContextInfoCapabilitySids
} AUTHZ_CONTEXT_INFORMATION_CLASS;
#if _WIN32_WINNT >= 0x0602
AUTHZAPI WINBOOL WINAPI AuthzModifyClaims (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, AUTHZ_CONTEXT_INFORMATION_CLASS ClaimClass, PAUTHZ_SECURITY_ATTRIBUTE_OPERATION pClaimOperations, PAUTHZ_SECURITY_ATTRIBUTES_INFORMATION pClaims);
AUTHZAPI WINBOOL WINAPI AuthzModifySids (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, AUTHZ_CONTEXT_INFORMATION_CLASS SidClass, PAUTHZ_SID_OPERATION pSidOperations, PTOKEN_GROUPS pSids);
AUTHZAPI WINBOOL WINAPI AuthzSetAppContainerInformation (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, PSID pAppContainerSid, DWORD CapabilityCount, PSID_AND_ATTRIBUTES pCapabilitySids);
#endif
AUTHZAPI WINBOOL WINAPI AuthzGetInformationFromContext (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext, AUTHZ_CONTEXT_INFORMATION_CLASS InfoClass, DWORD BufferSize, PDWORD pSizeRequired, PVOID Buffer);
AUTHZAPI WINBOOL WINAPI AuthzFreeContext (AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext);
#define AUTHZ_NO_SUCCESS_AUDIT 0x1
#define AUTHZ_NO_FAILURE_AUDIT 0x2
#define AUTHZ_NO_ALLOC_STRINGS 0x4
#define AUTHZ_WPD_CATEGORY_FLAG 0x10
#define AUTHZ_VALID_OBJECT_ACCESS_AUDIT_FLAGS (AUTHZ_NO_SUCCESS_AUDIT | AUTHZ_NO_FAILURE_AUDIT | AUTHZ_NO_ALLOC_STRINGS | AUTHZ_WPD_CATEGORY_FLAG)
AUTHZAPI WINBOOL WINAPI AuthzInitializeObjectAccessAuditEvent (DWORD Flags, AUTHZ_AUDIT_EVENT_TYPE_HANDLE hAuditEventType, PWSTR szOperationType, PWSTR szObjectType, PWSTR szObjectName, PWSTR szAdditionalInfo, PAUTHZ_AUDIT_EVENT_HANDLE phAuditEvent, DWORD dwAdditionalParameterCount,...);
AUTHZAPI WINBOOL WINAPI AuthzInitializeObjectAccessAuditEvent2 (DWORD Flags, AUTHZ_AUDIT_EVENT_TYPE_HANDLE hAuditEventType, PWSTR szOperationType, PWSTR szObjectType, PWSTR szObjectName, PWSTR szAdditionalInfo, PWSTR szAdditionalInfo2, PAUTHZ_AUDIT_EVENT_HANDLE phAuditEvent, DWORD dwAdditionalParameterCount,...);
typedef enum _AUTHZ_AUDIT_EVENT_INFORMATION_CLASS {
AuthzAuditEventInfoFlags = 1,
AuthzAuditEventInfoOperationType,
AuthzAuditEventInfoObjectType,
AuthzAuditEventInfoObjectName,
AuthzAuditEventInfoAdditionalInfo,
} AUTHZ_AUDIT_EVENT_INFORMATION_CLASS;
AUTHZAPI WINBOOL WINAPI AuthzFreeAuditEvent (AUTHZ_AUDIT_EVENT_HANDLE hAuditEvent);
AUTHZAPI WINBOOL WINAPI AuthzEvaluateSacl (AUTHZ_CLIENT_CONTEXT_HANDLE AuthzClientContext, PAUTHZ_ACCESS_REQUEST pRequest, PACL Sacl, ACCESS_MASK GrantedAccess, WINBOOL AccessGranted, PBOOL pbGenerateAudit);
typedef struct _AUTHZ_REGISTRATION_OBJECT_TYPE_NAME_OFFSET {
PWSTR szObjectTypeName;
DWORD dwOffset;
} AUTHZ_REGISTRATION_OBJECT_TYPE_NAME_OFFSET,*PAUTHZ_REGISTRATION_OBJECT_TYPE_NAME_OFFSET;
typedef struct _AUTHZ_SOURCE_SCHEMA_REGISTRATION {
DWORD dwFlags;
PWSTR szEventSourceName;
PWSTR szEventMessageFile;
PWSTR szEventSourceXmlSchemaFile;
PWSTR szEventAccessStringsFile;
PWSTR szExecutableImagePath;
__C89_NAMELESS union {
PVOID pReserved;
GUID *pProviderGuid;
};
DWORD dwObjectTypeNameCount;
AUTHZ_REGISTRATION_OBJECT_TYPE_NAME_OFFSET ObjectTypeNames[ANYSIZE_ARRAY];
} AUTHZ_SOURCE_SCHEMA_REGISTRATION,*PAUTHZ_SOURCE_SCHEMA_REGISTRATION;
#define AUTHZ_FLAG_ALLOW_MULTIPLE_SOURCE_INSTANCES 0x1
AUTHZAPI WINBOOL WINAPI AuthzInstallSecurityEventSource (DWORD dwFlags, PAUTHZ_SOURCE_SCHEMA_REGISTRATION pRegistration);
AUTHZAPI WINBOOL WINAPI AuthzUninstallSecurityEventSource (DWORD dwFlags, PCWSTR szEventSourceName);
AUTHZAPI WINBOOL WINAPI AuthzEnumerateSecurityEventSources (DWORD dwFlags, PAUTHZ_SOURCE_SCHEMA_REGISTRATION Buffer, PDWORD pdwCount, PDWORD pdwLength);
AUTHZAPI WINBOOL WINAPI AuthzRegisterSecurityEventSource (DWORD dwFlags, PCWSTR szEventSourceName, PAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE phEventProvider);
AUTHZAPI WINBOOL WINAPI AuthzUnregisterSecurityEventSource (DWORD dwFlags, PAUTHZ_SECURITY_EVENT_PROVIDER_HANDLE phEventProvider);
AUTHZAPI WINBOOL WINAPI AuthzReportSecurityEvent (DWORD dwFlags, AUTHZ_SECURITY_EVENT_PROVIDER_HANDLE hEventProvider, DWORD dwAuditId, PSID pUserSid, DWORD dwCount,...);
AUTHZAPI WINBOOL WINAPI AuthzReportSecurityEventFromParams (DWORD dwFlags, AUTHZ_SECURITY_EVENT_PROVIDER_HANDLE hEventProvider, DWORD dwAuditId, PSID pUserSid, PAUDIT_PARAMS pParams);
#if _WIN32_WINNT >= 0x0602
AUTHZAPI WINBOOL WINAPI AuthzRegisterCapChangeNotification (PAUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE phCapChangeSubscription, LPTHREAD_START_ROUTINE pfnCapChangeCallback, PVOID pCallbackContext);
AUTHZAPI WINBOOL WINAPI AuthzUnregisterCapChangeNotification (AUTHZ_CAP_CHANGE_SUBSCRIPTION_HANDLE hCapChangeSubscription);
AUTHZAPI WINBOOL WINAPI AuthzFreeCentralAccessPolicyCache ();
#endif
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,29 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _AUX_SHLD_LIB_H
#define _AUX_SHLD_LIB_H
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#include <windows.h>
#ifdef __cplusplus
extern "C" {
#endif
WINBOOL WINAPI AuxUlibInitialize (VOID);
WINBOOL WINAPI AuxUlibSetSystemFileCacheSize (SIZE_T MinimumFileCacheSize, SIZE_T MaximumFileCacheSize, DWORD Flags);
WINBOOL WINAPI AuxUlibIsDLLSynchronizationHeld (PBOOL SynchronizationHeld);
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,131 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
/* The contents of this file is duplicated in vfw.h */
#ifndef _INC_AVIFMT
#define _INC_AVIFMT 100
#ifdef __cplusplus
extern "C" {
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifndef mmioFOURCC
#define mmioFOURCC(ch0, ch1, ch2, ch3) ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24))
#endif
#ifndef aviTWOCC
#define aviTWOCC(ch0, ch1) ((WORD) (BYTE) (ch0) | ((WORD) (BYTE) (ch1) << 8))
#endif
typedef WORD TWOCC;
#define formtypeAVI mmioFOURCC('A', 'V', 'I', ' ')
#define listtypeAVIHEADER mmioFOURCC('h', 'd', 'r', 'l')
#define ckidAVIMAINHDR mmioFOURCC('a', 'v', 'i', 'h')
#define listtypeSTREAMHEADER mmioFOURCC('s', 't', 'r', 'l')
#define ckidSTREAMHEADER mmioFOURCC('s', 't', 'r', 'h')
#define ckidSTREAMFORMAT mmioFOURCC('s', 't', 'r', 'f')
#define ckidSTREAMHANDLERDATA mmioFOURCC('s', 't', 'r', 'd')
#define ckidSTREAMNAME mmioFOURCC('s', 't', 'r', 'n')
#define listtypeAVIMOVIE mmioFOURCC('m', 'o', 'v', 'i')
#define listtypeAVIRECORD mmioFOURCC('r', 'e', 'c', ' ')
#define ckidAVINEWINDEX mmioFOURCC('i', 'd', 'x', '1')
#define streamtypeVIDEO mmioFOURCC('v', 'i', 'd', 's')
#define streamtypeAUDIO mmioFOURCC('a', 'u', 'd', 's')
#define streamtypeMIDI mmioFOURCC('m', 'i', 'd', 's')
#define streamtypeTEXT mmioFOURCC('t', 'x', 't', 's')
#define cktypeDIBbits aviTWOCC('d', 'b')
#define cktypeDIBcompressed aviTWOCC('d', 'c')
#define cktypePALchange aviTWOCC('p', 'c')
#define cktypeWAVEbytes aviTWOCC('w', 'b')
#define ckidAVIPADDING mmioFOURCC('J', 'U', 'N', 'K')
#define FromHex(n) (((n) >= 'A') ? ((n) + 10 - 'A') : ((n) - '0'))
#define StreamFromFOURCC(fcc) ((WORD) ((FromHex(LOBYTE(LOWORD(fcc))) << 4) + (FromHex(HIBYTE(LOWORD(fcc))))))
#define TWOCCFromFOURCC(fcc) HIWORD(fcc)
#define ToHex(n) ((BYTE) (((n) > 9) ? ((n) - 10 + 'A') : ((n) + '0')))
#define MAKEAVICKID(tcc, stream) MAKELONG((ToHex((stream) & 0xf) << 8) | (ToHex(((stream) & 0xf0) >> 4)), tcc)
#define AVIF_HASINDEX 0x00000010
#define AVIF_MUSTUSEINDEX 0x00000020
#define AVIF_ISINTERLEAVED 0x00000100
#define AVIF_TRUSTCKTYPE 0x00000800
#define AVIF_WASCAPTUREFILE 0x00010000
#define AVIF_COPYRIGHTED 0x00020000
#define AVI_HEADERSIZE 2048
typedef struct {
DWORD dwMicroSecPerFrame;
DWORD dwMaxBytesPerSec;
DWORD dwPaddingGranularity;
DWORD dwFlags;
DWORD dwTotalFrames;
DWORD dwInitialFrames;
DWORD dwStreams;
DWORD dwSuggestedBufferSize;
DWORD dwWidth;
DWORD dwHeight;
DWORD dwReserved[4];
} MainAVIHeader;
#define AVISF_DISABLED 0x00000001
#define AVISF_VIDEO_PALCHANGES 0x00010000
typedef struct {
FOURCC fccType;
FOURCC fccHandler;
DWORD dwFlags;
WORD wPriority;
WORD wLanguage;
DWORD dwInitialFrames;
DWORD dwScale;
DWORD dwRate;
DWORD dwStart;
DWORD dwLength;
DWORD dwSuggestedBufferSize;
DWORD dwQuality;
DWORD dwSampleSize;
RECT rcFrame;
} AVIStreamHeader;
#define AVIIF_LIST __MSABI_LONG(0x00000001)
#define AVIIF_KEYFRAME __MSABI_LONG(0x00000010)
#define AVIIF_FIRSTPART __MSABI_LONG(0x00000020)
#define AVIIF_LASTPART __MSABI_LONG(0x00000040)
#define AVIIF_MIDPART (AVIIF_LASTPART|AVIIF_FIRSTPART)
#define AVIIF_NOTIME __MSABI_LONG(0x00000100)
#define AVIIF_COMPUSE __MSABI_LONG(0x0fff0000)
typedef struct {
DWORD ckid;
DWORD dwFlags;
DWORD dwChunkOffset;
DWORD dwChunkLength;
} AVIINDEXENTRY;
typedef struct {
BYTE bFirstEntry;
BYTE bNumEntries;
WORD wFlags;
PALETTEENTRY peNew[];
} AVIPALCHANGE;
#endif
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,291 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef AVIRIFF_H
#define AVIRIFF_H
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifndef NUMELMS
#define NUMELMS (aa) (sizeof (aa) / sizeof ((aa)[0]))
#endif
#define FCC(ch4) ((((DWORD)(ch4) & 0xff) << 24) | (((DWORD)(ch4) & 0xff00) << 8) | (((DWORD)(ch4) & 0xff0000) >> 8) | (((DWORD)(ch4) & 0xff000000) >> 24))
#include <pshpack2.h>
typedef struct _riffchunk {
FOURCC fcc;
DWORD cb;
} RIFFCHUNK,*LPRIFFCHUNK;
typedef struct _rifflist {
FOURCC fcc;
DWORD cb;
FOURCC fccListType;
} RIFFLIST,*LPRIFFLIST;
#define RIFFROUND(cb) ((cb) + ((cb) & 1))
#define RIFFNEXT(pChunk) (LPRIFFCHUNK) ((LPBYTE) (pChunk) + sizeof (RIFFCHUNK) + RIFFROUND (((LPRIFFCHUNK)pChunk)->cb))
#define ckidMAINAVIHEADER FCC('avih')
#define ckidAVIEXTHEADER FCC('dmlh')
#define ckidAVIOLDINDEX FCC('idx1')
#define ckidAVISUPERINDEX FCC('indx')
#define ckidODML FCC('odml')
#ifndef ckidSTREAMFORMAT
#define ckidSTREAMFORMAT FCC('strf')
#endif
#ifndef ckidSTREAMHEADER
#define ckidSTREAMHEADER FCC('strh')
#endif
#define ckidSTREAMLIST FCC('strl')
#ifndef streamtypeVIDEO
#define streamtypeAUDIO FCC('auds')
#define streamtypeMIDI FCC('mids')
#define streamtypeTEXT FCC('txts')
#define streamtypeVIDEO FCC('vids')
#endif
#define AVIF_HASINDEX 0x00000010
#define AVIF_MUSTUSEINDEX 0x00000020
#define AVIF_ISINTERLEAVED 0x00000100
#define AVIF_TRUSTCKTYPE 0x00000800
#define AVIF_WASCAPTUREFILE 0x00010000
#define AVIF_COPYRIGHTED 0x00020000
#ifndef AVIIF_LIST
#define AVIIF_LIST 0x1
#define AVIIF_KEYFRAME 0x10
#endif
#define AVIIF_NO_TIME 0x100
#define AVIIF_COMPRESSOR 0xfff0000
#define AVISF_DISABLED 0x00000001
#define AVISF_VIDEO_PALCHANGES 0x00010000
#define TIMECODE_RATE_30DROP 0
#define TIMECODE_SMPTE_BINARY_GROUP 0x7
#define TIMECODE_SMPTE_COLOR_FRAME 0x8
#define AVI_INDEX_OF_INDEXES 0x0
#define AVI_INDEX_OF_CHUNKS 0x1
#define AVI_INDEX_OF_TIMED_CHUNKS 0x2
#define AVI_INDEX_OF_SUB_2FIELD 0x3
#define AVI_INDEX_IS_DATA 0x80
#define AVI_INDEX_SUB_DEFAULT 0x0
#define AVI_INDEX_SUB_2FIELD 0x1
#define STDINDEXSIZE 0x4000
#define NUMINDEX(wLongsPerEntry) ((STDINDEXSIZE - 32) / 4 / (wLongsPerEntry))
#define NUMINDEXFILL(wLongsPerEntry) ((STDINDEXSIZE / 4) - NUMINDEX (wLongsPerEntry))
#define Valid_SUPERINDEX(pi) (*(DWORD *) (&((pi)->wLongsPerEntry)) == 4)
typedef struct _avimainheader {
FOURCC fcc;
DWORD cb;
DWORD dwMicroSecPerFrame;
DWORD dwMaxBytesPerSec;
DWORD dwPaddingGranularity;
DWORD dwFlags;
DWORD dwTotalFrames;
DWORD dwInitialFrames;
DWORD dwStreams;
DWORD dwSuggestedBufferSize;
DWORD dwWidth;
DWORD dwHeight;
DWORD dwReserved[4];
} AVIMAINHEADER;
typedef struct _aviextheader {
FOURCC fcc;
DWORD cb;
DWORD dwGrandFrames;
DWORD dwFuture[61];
} AVIEXTHEADER;
typedef struct _avistreamheader {
FOURCC fcc;
DWORD cb;
FOURCC fccType;
FOURCC fccHandler;
DWORD dwFlags;
WORD wPriority;
WORD wLanguage;
DWORD dwInitialFrames;
DWORD dwScale;
DWORD dwRate;
DWORD dwStart;
DWORD dwLength;
DWORD dwSuggestedBufferSize;
DWORD dwQuality;
DWORD dwSampleSize;
struct {
short int left;
short int top;
short int right;
short int bottom;
} rcFrame;
} AVISTREAMHEADER;
typedef struct _avioldindex {
FOURCC fcc;
DWORD cb;
struct _avioldindex_entry {
DWORD dwChunkId;
DWORD dwFlags;
DWORD dwOffset;
DWORD dwSize;
} aIndex[];
} AVIOLDINDEX;
#ifndef TIMECODE_DEFINED
#define TIMECODE_DEFINED
typedef union _timecode {
__C89_NAMELESS struct {
WORD wFrameRate;
WORD wFrameFract;
LONG cFrames;
};
DWORDLONG qw;
} TIMECODE;
#endif
typedef struct _timecodedata {
TIMECODE time;
DWORD dwSMPTEflags;
DWORD dwUser;
} TIMECODEDATA;
typedef struct _avimetaindex {
FOURCC fcc;
UINT cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORD dwReserved[3];
DWORD adwIndex[];
} AVIMETAINDEX;
typedef struct _avisuperindex {
FOURCC fcc;
UINT cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORD dwReserved[3];
struct _avisuperindex_entry {
DWORDLONG qwOffset;
DWORD dwSize;
DWORD dwDuration;
} aIndex[NUMINDEX (4)];
} AVISUPERINDEX;
typedef struct _avistdindex_entry {
DWORD dwOffset;
DWORD dwSize;
} AVISTDINDEX_ENTRY;
#define AVISTDINDEX_DELTAFRAME (0x80000000)
#define AVISTDINDEX_SIZEMASK (~0x80000000)
typedef struct _avistdindex {
FOURCC fcc;
UINT cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORDLONG qwBaseOffset;
DWORD dwReserved_3;
AVISTDINDEX_ENTRY aIndex[NUMINDEX (2)];
} AVISTDINDEX;
typedef struct _avitimedindex_entry {
DWORD dwOffset;
DWORD dwSize;
DWORD dwDuration;
} AVITIMEDINDEX_ENTRY;
typedef struct _avitimedindex {
FOURCC fcc;
UINT cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORDLONG qwBaseOffset;
DWORD dwReserved_3;
AVITIMEDINDEX_ENTRY aIndex[NUMINDEX (3)];
DWORD adwTrailingFill[NUMINDEXFILL (3)];
} AVITIMEDINDEX;
typedef struct _avitimecodeindex {
FOURCC fcc;
UINT cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORD dwReserved[3];
TIMECODEDATA aIndex[NUMINDEX (sizeof (TIMECODEDATA)/sizeof (LONG))];
} AVITIMECODEINDEX;
typedef struct _avitcdlindex_entry {
DWORD dwTick;
TIMECODE time;
DWORD dwSMPTEflags;
DWORD dwUser;
TCHAR szReelId[12];
} AVITCDLINDEX_ENTRY;
typedef struct _avitcdlindex {
FOURCC fcc;
UINT cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORD dwReserved[3];
AVITCDLINDEX_ENTRY aIndex[NUMINDEX (7)];
DWORD adwTrailingFill[NUMINDEXFILL (7)];
} AVITCDLINDEX;
typedef struct _avifieldindex_chunk {
FOURCC fcc;
DWORD cb;
WORD wLongsPerEntry;
BYTE bIndexSubType;
BYTE bIndexType;
DWORD nEntriesInUse;
DWORD dwChunkId;
DWORDLONG qwBaseOffset;
DWORD dwReserved3;
struct _avifieldindex_entry {
DWORD dwOffset;
DWORD dwSize;
DWORD dwOffsetField2;
} aIndex[];
} AVIFIELDINDEX,*PAVIFIELDINDEX;
#include <poppack.h>
#endif
#endif

View File

@ -0,0 +1,91 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef _AVRFSDK_
#define _AVRFSDK_
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus
extern "C" {
#endif
#define AVRF_MAX_TRACES 32
enum eHeapAllocationState {
HeapFullPageHeap = 0x40000000,
HeapMetadata = 0x80000000,
HeapStateMask = 0xffff0000
};
enum eHeapEnumerationLevel {
HeapEnumerationEverything = 0x0,
HeapEnumerationStop = 0xffffffff
};
enum eHANDLE_TRACE_OPERATIONS {
OperationDbUnused,
OperationDbOPEN,
OperationDbCLOSE,
OperationDbBADREF
};
enum eAvrfResourceTypes {
AvrfResourceHeapAllocation,
AvrfResourceHandleTrace,
AvrfResourceMax
};
enum eUserAllocationState {
AllocationStateUnknown,
AllocationStateBusy,
AllocationStateFree
};
typedef struct _AVRF_BACKTRACE_INFORMATION {
ULONG Depth;
ULONG Index;
ULONG64 ReturnAddresses[AVRF_MAX_TRACES];
} AVRF_BACKTRACE_INFORMATION,*PAVRF_BACKTRACE_INFORMATION;
typedef struct _AVRF_HEAP_ALLOCATION {
ULONG64 HeapHandle;
ULONG64 UserAllocation;
ULONG64 UserAllocationSize;
ULONG64 Allocation;
ULONG64 AllocationSize;
ULONG UserAllocationState;
ULONG HeapState;
ULONG64 HeapContext;
PAVRF_BACKTRACE_INFORMATION BackTraceInformation;
} AVRF_HEAP_ALLOCATION,*PAVRF_HEAP_ALLOCATION;
typedef struct _AVRF_HANDLE_OPERATION {
ULONG64 Handle;
ULONG ProcessId;
ULONG ThreadId;
ULONG OperationType;
ULONG Spare0;
AVRF_BACKTRACE_INFORMATION BackTraceInformation;
} AVRF_HANDLE_OPERATION,*PAVRF_HANDLE_OPERATION;
typedef ULONG (NTAPI *AVRF_RESOURCE_ENUMERATE_CALLBACK) (PVOID ResourceDescription, PVOID EnumerationContext, PULONG EnumerationLevel);
typedef ULONG (NTAPI *AVRF_HEAPALLOCATION_ENUMERATE_CALLBACK) (PAVRF_HEAP_ALLOCATION HeapAllocation, PVOID EnumerationContext, PULONG EnumerationLevel);
typedef ULONG (NTAPI *AVRF_HANDLEOPERATION_ENUMERATE_CALLBACK) (PAVRF_HANDLE_OPERATION HandleOperation, PVOID EnumerationContext, PULONG EnumerationLevel);
#define AVRF_ENUM_RESOURCES_FLAGS_SUSPEND 0x0001
#define AVRF_ENUM_RESOURCES_FLAGS_DONT_RESOLVE_TRACES 0x0002
ULONG NTAPI VerifierEnumerateResource (HANDLE Process, ULONG Flags, ULONG ResourceType, AVRF_RESOURCE_ENUMERATE_CALLBACK ResourceCallback, PVOID EnumerationContext);
WINBOOL NTAPI VerifierIsPerUserSettingsEnabled (VOID);
#ifdef __cplusplus
}
#endif
#endif
#endif

View File

@ -0,0 +1,53 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef _AVRT_
#define _AVRT_
#ifdef __cplusplus
extern "C" {
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
typedef enum _AVRT_PRIORITY {
AVRT_PRIORITY_VERYLOW = -2,
AVRT_PRIORITY_LOW,
AVRT_PRIORITY_NORMAL,
AVRT_PRIORITY_HIGH,
AVRT_PRIORITY_CRITICAL
} AVRT_PRIORITY,*PAVRT_PRIORITY;
#define THREAD_ORDER_GROUP_INFINITE_TIMEOUT (-1LL)
#define AVRTAPI
WINBOOL WINAPI AvQuerySystemResponsiveness (HANDLE AvrtHandle, PULONG SystemResponsivenessValue);
WINBOOL WINAPI AvRevertMmThreadCharacteristics (HANDLE AvrtHandle);
WINBOOL WINAPI AvRtCreateThreadOrderingGroup (PHANDLE Context, PLARGE_INTEGER Period, GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout);
WINBOOL WINAPI AvRtCreateThreadOrderingGroupExA (PHANDLE Context, PLARGE_INTEGER Period, GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout, LPCSTR TaskName);
WINBOOL WINAPI AvRtCreateThreadOrderingGroupExW (PHANDLE Context, PLARGE_INTEGER Period, GUID *ThreadOrderingGuid, PLARGE_INTEGER Timeout, LPCWSTR TaskName);
WINBOOL WINAPI AvRtDeleteThreadOrderingGroup (HANDLE Context);
WINBOOL WINAPI AvRtJoinThreadOrderingGroup (PHANDLE Context, GUID *ThreadOrderingGuid, WINBOOL Before);
WINBOOL WINAPI AvRtLeaveThreadOrderingGroup (HANDLE Context);
WINBOOL WINAPI AvRtWaitOnThreadOrderingGroup (HANDLE Context);
HANDLE WINAPI AvSetMmMaxThreadCharacteristicsA (LPCSTR FirstTask, LPCSTR SecondTask, LPDWORD TaskIndex);
HANDLE WINAPI AvSetMmMaxThreadCharacteristicsW (LPCWSTR FirstTask, LPCWSTR SecondTask, LPDWORD TaskIndex);
HANDLE WINAPI AvSetMmThreadCharacteristicsA (LPCSTR TaskName, LPDWORD TaskIndex);
HANDLE WINAPI AvSetMmThreadCharacteristicsW (LPCWSTR TaskName, LPDWORD TaskIndex);
WINBOOL WINAPI AvSetMmThreadPriority (HANDLE AvrtHandle, AVRT_PRIORITY Priority);
#define AvSetMmThreadCharacteristics __MINGW_NAME_AW(AvSetMmThreadCharacteristics)
#define AvSetMmMaxThreadCharacteristics __MINGW_NAME_AW(AvSetMmMaxThreadCharacteristics)
#define AvRtCreateThreadOrderingGroupEx __MINGW_NAME_AW(AvRtCreateThreadOrderingGroupEx)
#endif
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,53 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef AXEXTEND_ENUM_H
#define AXEXTEND_ENUM_H
#include <winapifamily.h>
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
typedef
#ifdef __WIDL__
[v1_enum]
#endif
enum tagAnalogVideoStandard {
AnalogVideo_None = 0x0,
AnalogVideo_NTSC_M = 0x1,
AnalogVideo_NTSC_M_J = 0x2,
AnalogVideo_NTSC_433 = 0x4,
AnalogVideo_PAL_B = 0x10,
AnalogVideo_PAL_D = 0x20,
AnalogVideo_PAL_G = 0x40,
AnalogVideo_PAL_H = 0x80,
AnalogVideo_PAL_I = 0x100,
AnalogVideo_PAL_M = 0x200,
AnalogVideo_PAL_N = 0x400,
AnalogVideo_PAL_60 = 0x800,
AnalogVideo_SECAM_B = 0x1000,
AnalogVideo_SECAM_D = 0x2000,
AnalogVideo_SECAM_G = 0x4000,
AnalogVideo_SECAM_H = 0x8000,
AnalogVideo_SECAM_K = 0x10000,
AnalogVideo_SECAM_K1 = 0x20000,
AnalogVideo_SECAM_L = 0x40000,
AnalogVideo_SECAM_L1 = 0x80000,
AnalogVideo_PAL_N_COMBO = 0x100000,
AnalogVideoMask_MCE_NTSC = AnalogVideo_NTSC_M | AnalogVideo_NTSC_M_J | AnalogVideo_NTSC_433 | AnalogVideo_PAL_M | AnalogVideo_PAL_N | AnalogVideo_PAL_60 | AnalogVideo_PAL_N_COMBO,
AnalogVideoMask_MCE_PAL = AnalogVideo_PAL_B | AnalogVideo_PAL_D | AnalogVideo_PAL_G | AnalogVideo_PAL_H | AnalogVideo_PAL_I,
AnalogVideoMask_MCE_SECAM = AnalogVideo_SECAM_B | AnalogVideo_SECAM_D | AnalogVideo_SECAM_G | AnalogVideo_SECAM_H | AnalogVideo_SECAM_K | AnalogVideo_SECAM_K1 | AnalogVideo_SECAM_L | AnalogVideo_SECAM_L1
} AnalogVideoStandard;
typedef
#ifdef __WIDL__
[v1_enum]
#endif
enum tagTunerInputType {
TunerInputCable,
TunerInputAntenna
} TunerInputType;
#endif
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,201 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <_mingw.h>
#ifndef _BASETSD_H_
#define _BASETSD_H_
#if (defined (__x86_64__) || defined (__ia64__)) && !(defined (__WIDL__) || defined (RC_INVOKED))
__MINGW_EXTENSION typedef unsigned __int64 POINTER_64_INT;
#else
typedef unsigned long POINTER_64_INT;
#endif
#define POINTER_32
#define POINTER_64
#define FIRMWARE_PTR
#define POINTER_SIGNED
#define POINTER_UNSIGNED
#define SPOINTER_32 POINTER_SIGNED POINTER_32
#define UPOINTER_32 POINTER_UNSIGNED POINTER_32
#ifdef __cplusplus
extern "C" {
#endif
typedef signed char INT8,*PINT8;
typedef signed short INT16,*PINT16;
typedef signed int INT32,*PINT32;
__MINGW_EXTENSION typedef signed __int64 INT64,*PINT64;
typedef unsigned char UINT8,*PUINT8;
typedef unsigned short UINT16,*PUINT16;
typedef unsigned int UINT32,*PUINT32;
__MINGW_EXTENSION typedef unsigned __int64 UINT64,*PUINT64;
typedef signed int LONG32,*PLONG32;
typedef unsigned int ULONG32,*PULONG32;
typedef unsigned int DWORD32,*PDWORD32;
#ifndef _W64
#define _W64
#endif
#ifdef _WIN64
__MINGW_EXTENSION typedef __int64 INT_PTR,*PINT_PTR;
__MINGW_EXTENSION typedef unsigned __int64 UINT_PTR,*PUINT_PTR;
__MINGW_EXTENSION typedef __int64 LONG_PTR,*PLONG_PTR;
__MINGW_EXTENSION typedef unsigned __int64 ULONG_PTR,*PULONG_PTR;
#define __int3264 __int64
#else
typedef int INT_PTR,*PINT_PTR;
typedef unsigned int UINT_PTR,*PUINT_PTR;
typedef long LONG_PTR,*PLONG_PTR;
typedef unsigned long ULONG_PTR,*PULONG_PTR;
#define __int3264 int
#endif
#ifdef _WIN64
#define ADDRESS_TAG_BIT 0x40000000000ULL
__MINGW_EXTENSION typedef __int64 SHANDLE_PTR;
__MINGW_EXTENSION typedef unsigned __int64 HANDLE_PTR;
typedef unsigned int UHALF_PTR,*PUHALF_PTR;
typedef int HALF_PTR,*PHALF_PTR;
#ifndef __WIDL__
static __inline unsigned __LONG32 HandleToULong (const void *h) { return ((unsigned __LONG32) (ULONG_PTR) h); }
static __inline __LONG32 HandleToLong (const void *h) { return ((__LONG32) (LONG_PTR) h); }
static __inline void *ULongToHandle (const unsigned __LONG32 h) { return ((void *) (UINT_PTR) h); }
static __inline void *LongToHandle (const __LONG32 h) { return ((void *) (INT_PTR) h); }
static __inline unsigned __LONG32 PtrToUlong (const void *p) { return ((unsigned __LONG32) (ULONG_PTR) p); }
static __inline unsigned int PtrToUint (const void *p) { return ((unsigned int) (UINT_PTR) p); }
static __inline unsigned short PtrToUshort (const void *p) { return ((unsigned short) (unsigned __LONG32) (ULONG_PTR) p); }
static __inline __LONG32 PtrToLong (const void *p) { return ((__LONG32) (LONG_PTR) p); }
static __inline int PtrToInt (const void *p) { return ((int) (INT_PTR) p); }
static __inline short PtrToShort (const void *p) { return ((short) (__LONG32) (LONG_PTR) p); }
static __inline void *IntToPtr (const int i) { return ((void *) (INT_PTR)i); }
static __inline void *UIntToPtr (const unsigned int ui) { return ((void *) (UINT_PTR)ui); }
static __inline void *LongToPtr (const __LONG32 l) { return ((void *) (LONG_PTR)l); }
static __inline void *ULongToPtr (const unsigned __LONG32 ul) { return ((void *) (ULONG_PTR)ul); }
#define PtrToPtr64(p) ((void *POINTER_64) p)
#define Ptr64ToPtr(p) ((void *) p)
#define HandleToHandle64(h) (PtrToPtr64 (h))
#define Handle64ToHandle(h) (Ptr64ToPtr (h))
static __inline void *Ptr32ToPtr (const void *POINTER_32 p) { return ((void *) (ULONG_PTR) (unsigned __LONG32) (ULONG_PTR) p); }
static __inline void *Handle32ToHandle (const void *POINTER_32 h) { return ((void *) (LONG_PTR) (__LONG32) (ULONG_PTR) h); }
static __inline void *POINTER_32 PtrToPtr32 (const void *p) { return ((void *POINTER_32) (ULONG_PTR) (unsigned __LONG32) (ULONG_PTR) p); }
#define HandleToHandle32(h) (PtrToPtr32 (h))
#endif
#else
#define ADDRESS_TAG_BIT __MSABI_LONG (0x80000000U)
typedef unsigned short UHALF_PTR,*PUHALF_PTR;
typedef short HALF_PTR,*PHALF_PTR;
typedef __LONG32 SHANDLE_PTR;
typedef unsigned __LONG32 HANDLE_PTR;
#define HandleToULong(h) ((ULONG) (ULONG_PTR) (h))
#define HandleToLong(h) ((LONG) (LONG_PTR) (h))
#define ULongToHandle(ul) ((HANDLE) (ULONG_PTR) (ul))
#define LongToHandle(h) ((HANDLE) (LONG_PTR) (h))
#define PtrToUlong(p) ((ULONG) (ULONG_PTR) (p))
#define PtrToLong(p) ((LONG) (LONG_PTR) (p))
#define PtrToUint(p) ((UINT) (UINT_PTR) (p))
#define PtrToInt(p) ((INT) (INT_PTR) (p))
#define PtrToUshort(p) ((unsigned short) (ULONG_PTR) (p))
#define PtrToShort(p) ((short) (LONG_PTR) (p))
#define IntToPtr(i) ((VOID *) (INT_PTR) ((int)i))
#define UIntToPtr(ui) ((VOID *) (UINT_PTR) ((unsigned int)ui))
#define LongToPtr(l) ((VOID *) (LONG_PTR) ((__LONG32) l))
#define ULongToPtr(ul) ((VOID *) (ULONG_PTR) ((unsigned __LONG32) ul))
#ifndef __WIDL__
static __inline void *POINTER_64 PtrToPtr64 (const void *p) { return ((void *POINTER_64) (ULONG_PTR) p); }
static __inline void *Ptr64ToPtr (const void *POINTER_64 p) { return ((void *) (ULONG_PTR) p); }
static __inline void *POINTER_64 HandleToHandle64 (const void *h) { return ((void *POINTER_64) (LONG_PTR) h); }
static __inline void *Handle64ToHandle (const void *POINTER_64 h) { return ((void *) (ULONG_PTR) h); }
#endif
#define Ptr32ToPtr(p) ((void *) p)
#define Handle32ToHandle(h) (Ptr32ToPtr (h))
#define PtrToPtr32(p) ((void *POINTER_32) p)
#define HandleToHandle32(h) (PtrToPtr32 (h))
#endif
#define HandleToUlong(h) HandleToULong (h)
#define UlongToHandle(ul) ULongToHandle (ul)
#define UlongToPtr(ul) ULongToPtr (ul)
#define UintToPtr(ui) UIntToPtr (ui)
#define MAXUINT_PTR (~ ((UINT_PTR)0))
#define MAXINT_PTR ((INT_PTR) (MAXUINT_PTR >> 1))
#define MININT_PTR (~MAXINT_PTR)
#define MAXULONG_PTR (~ ((ULONG_PTR)0))
#define MAXLONG_PTR ((LONG_PTR) (MAXULONG_PTR >> 1))
#define MINLONG_PTR (~MAXLONG_PTR)
#define MAXUHALF_PTR ((UHALF_PTR)~0)
#define MAXHALF_PTR ((HALF_PTR) (MAXUHALF_PTR >> 1))
#define MINHALF_PTR (~MAXHALF_PTR)
__MINGW_EXTENSION typedef ULONG_PTR SIZE_T,*PSIZE_T;
__MINGW_EXTENSION typedef LONG_PTR SSIZE_T,*PSSIZE_T;
#if _WIN32_WINNT >= 0x0600 || (defined (__cplusplus) && defined (WINDOWS_ENABLE_CPLUSPLUS))
#define MAXUINT8 ((UINT8)~ ((UINT8)0))
#define MAXINT8 ((INT8) (MAXUINT8 >> 1))
#define MININT8 ((INT8)~MAXINT8)
#define MAXUINT16 ((UINT16)~ ((UINT16)0))
#define MAXINT16 ((INT16) (MAXUINT16 >> 1))
#define MININT16 ((INT16)~MAXINT16)
#define MAXUINT32 ((UINT32)~ ((UINT32)0))
#define MAXINT32 ((INT32) (MAXUINT32 >> 1))
#define MININT32 ((INT32)~MAXINT32)
#define MAXUINT64 ((UINT64)~ ((UINT64)0))
#define MAXINT64 ((INT64) (MAXUINT64 >> 1))
#define MININT64 ((INT64)~MAXINT64)
#define MAXULONG32 ((ULONG32)~ ((ULONG32)0))
#define MAXLONG32 ((LONG32) (MAXULONG32 >> 1))
#define MINLONG32 ((LONG32)~MAXLONG32)
#define MAXULONG64 ((ULONG64)~ ((ULONG64)0))
#define MAXLONG64 ((LONG64) (MAXULONG64 >> 1))
#define MINLONG64 ((LONG64)~MAXLONG64)
#define MAXULONGLONG ((ULONGLONG)~ ((ULONGLONG)0))
#define MINLONGLONG ((LONGLONG)~MAXLONGLONG)
#define MAXSIZE_T ((SIZE_T)~ ((SIZE_T)0))
#define MAXSSIZE_T ((SSIZE_T) (MAXSIZE_T >> 1))
#define MINSSIZE_T ((SSIZE_T)~MAXSSIZE_T)
#define MAXUINT ((UINT)~ ((UINT)0))
#define MAXINT ((INT) (MAXUINT >> 1))
#define MININT ((INT)~MAXINT)
#define MAXDWORD32 ((DWORD32)~ ((DWORD32)0))
#define MAXDWORD64 ((DWORD64)~ ((DWORD64)0))
#endif
__MINGW_EXTENSION typedef ULONG_PTR DWORD_PTR,*PDWORD_PTR;
__MINGW_EXTENSION typedef __int64 LONG64,*PLONG64;
__MINGW_EXTENSION typedef unsigned __int64 ULONG64,*PULONG64;
__MINGW_EXTENSION typedef unsigned __int64 DWORD64,*PDWORD64;
__MINGW_EXTENSION typedef ULONG_PTR KAFFINITY;
__MINGW_EXTENSION typedef KAFFINITY *PKAFFINITY;
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,97 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _BASETYPS_H_
#define _BASETYPS_H_
#ifdef __cplusplus
#define EXTERN_C extern "C"
#else
#define EXTERN_C extern
#endif
/* Keep in sync with winnt.h header. */
#ifndef STDMETHODCALLTYPE
#define STDMETHODCALLTYPE WINAPI
#define STDMETHODVCALLTYPE __cdecl
#define STDAPICALLTYPE WINAPI
#define STDAPIVCALLTYPE __cdecl
#define STDAPI EXTERN_C HRESULT STDAPICALLTYPE
#define STDAPI_(type) EXTERN_C type STDAPICALLTYPE
#define STDMETHODIMP HRESULT STDMETHODCALLTYPE
#define STDMETHODIMP_(type) type STDMETHODCALLTYPE
#define STDAPIV EXTERN_C HRESULT STDAPIVCALLTYPE
#define STDAPIV_(type) EXTERN_C type STDAPIVCALLTYPE
#define STDMETHODIMPV HRESULT STDMETHODVCALLTYPE
#define STDMETHODIMPV_(type) type STDMETHODVCALLTYPE
#endif
#if defined (__cplusplus) && !defined (CINTERFACE)
#ifdef COM_STDMETHOD_CAN_THROW
#define COM_DECLSPEC_NOTHROW
#else
#define COM_DECLSPEC_NOTHROW DECLSPEC_NOTHROW
#endif
#define __STRUCT__ struct
#ifndef __OBJC__
#undef interface
#define interface __STRUCT__
#endif
#define STDMETHOD(method) virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE method
#define STDMETHOD_(type, method) virtual COM_DECLSPEC_NOTHROW type STDMETHODCALLTYPE method
#define STDMETHODV(method) virtual COM_DECLSPEC_NOTHROW HRESULT STDMETHODVCALLTYPE method
#define STDMETHODV_(type, method) virtual COM_DECLSPEC_NOTHROW type STDMETHODVCALLTYPE method
#define PURE = 0
#define THIS_
#define THIS void
#define DECLARE_INTERFACE(iface) interface DECLSPEC_NOVTABLE iface
#define DECLARE_INTERFACE_(iface, baseiface) interface DECLSPEC_NOVTABLE iface : public baseiface
#else
#ifndef __OBJC__
#undef interface
#define interface struct
#endif
#define STDMETHOD(method) HRESULT (STDMETHODCALLTYPE *method)
#define STDMETHOD_(type, method) type (STDMETHODCALLTYPE *method)
#define STDMETHODV(method) HRESULT (STDMETHODVCALLTYPE *method)
#define STDMETHODV_(type, method) type (STDMETHODVCALLTYPE *method)
#define PURE
#define THIS_ INTERFACE *This,
#define THIS INTERFACE *This
#ifdef CONST_VTABLE
#define DECLARE_INTERFACE(iface) typedef interface iface { const struct iface##Vtbl *lpVtbl; } iface; typedef const struct iface##Vtbl iface##Vtbl; const struct iface##Vtbl
#else
#define DECLARE_INTERFACE(iface) typedef interface iface { struct iface##Vtbl *lpVtbl; } iface; typedef struct iface##Vtbl iface##Vtbl; struct iface##Vtbl
#endif
#define DECLARE_INTERFACE_(iface, baseiface) DECLARE_INTERFACE (iface)
#endif
#define IFACEMETHOD(method) /*override*/ STDMETHOD (method)
#define IFACEMETHOD_(type, method) /*override*/ STDMETHOD_(type, method)
#define IFACEMETHODV(method) /*override*/ STDMETHODV (method)
#define IFACEMETHODV_(type, method) /*override*/ STDMETHODV_(type, method)
#include <guiddef.h>
#ifndef _ERROR_STATUS_T_DEFINED
#define _ERROR_STATUS_T_DEFINED
typedef unsigned __LONG32 error_status_t;
#endif
#ifndef _WCHAR_T_DEFINED
#define _WCHAR_T_DEFINED
typedef unsigned short wchar_t;
#endif
#endif

View File

@ -0,0 +1,141 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#include <poclass.h>
DEFINE_GUID (BATTERY_STATUS_WMI_GUID, 0xfc4670d1, 0xebbf, 0x416e, 0x87, 0xce, 0x37, 0x4a, 0x4e, 0xbc, 0x11, 0x1a);
DEFINE_GUID (BATTERY_RUNTIME_WMI_GUID, 0x535a3767, 0x1ac2, 0x49bc, 0xa0, 0x77, 0x3f, 0x7a, 0x02, 0xe4, 0x0a, 0xec);
DEFINE_GUID (BATTERY_TEMPERATURE_WMI_GUID, 0x1a52a14d, 0xadce, 0x4a44, 0x9a, 0x3e, 0xc8, 0xd8, 0xf1, 0x5f, 0xf2, 0xc2);
DEFINE_GUID (BATTERY_FULL_CHARGED_CAPACITY_WMI_GUID, 0x40b40565, 0x96f7, 0x4435, 0x86, 0x94, 0x97, 0xe0, 0xe4, 0x39, 0x59, 0x05);
DEFINE_GUID (BATTERY_CYCLE_COUNT_WMI_GUID, 0xef98db24, 0x0014, 0x4c25, 0xa5, 0x0b, 0xc7, 0x24, 0xae, 0x5c, 0xd3, 0x71);
DEFINE_GUID (BATTERY_STATIC_DATA_WMI_GUID, 0x05e1e463, 0xe4e2, 0x4ea9, 0x80, 0xcb, 0x9b, 0xd4, 0xb3, 0xca, 0x06, 0x55);
DEFINE_GUID (BATTERY_STATUS_CHANGE_WMI_GUID, 0xcddfa0c3, 0x7c5b, 0x4e43, 0xa0, 0x34, 0x05, 0x9f, 0xa5, 0xb8, 0x43, 0x64);
DEFINE_GUID (BATTERY_TAG_CHANGE_WMI_GUID, 0x5e1f6e19, 0x8786, 0x4d23, 0x94, 0xfc, 0x9e, 0x74, 0x6b, 0xd5, 0xd8, 0x88);
#ifndef _BATCLASS_
#define _BATCLASS_
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifndef _WINDOWS_
typedef NTSTATUS (BCLASS_QUERY_TAG_CALLBACK) (PVOID Context, PULONG BatteryTag);
typedef BCLASS_QUERY_TAG_CALLBACK *PBCLASS_QUERY_TAG_CALLBACK;
typedef NTSTATUS (BCLASS_QUERY_INFORMATION_CALLBACK) (PVOID Context, ULONG BatteryTag, BATTERY_QUERY_INFORMATION_LEVEL Level, LONG AtRate, PVOID Buffer, ULONG BufferLength, PULONG ReturnedLength);
typedef BCLASS_QUERY_INFORMATION_CALLBACK *PBCLASS_QUERY_INFORMATION_CALLBACK;
typedef NTSTATUS (BCLASS_QUERY_STATUS_CALLBACK) (PVOID Context, ULONG BatteryTag, PBATTERY_STATUS BatteryStatus);
typedef BCLASS_QUERY_STATUS_CALLBACK *PBCLASS_QUERY_STATUS_CALLBACK;
typedef struct {
ULONG PowerState;
ULONG LowCapacity;
ULONG HighCapacity;
} BATTERY_NOTIFY,*PBATTERY_NOTIFY;
typedef NTSTATUS (BCLASS_SET_STATUS_NOTIFY_CALLBACK) (PVOID Context, ULONG BatteryTag, PBATTERY_NOTIFY BatteryNotify);
typedef BCLASS_SET_STATUS_NOTIFY_CALLBACK *PBCLASS_SET_STATUS_NOTIFY_CALLBACK;
typedef NTSTATUS (BCLASS_SET_INFORMATION_CALLBACK) (PVOID Context, ULONG BatteryTag, BATTERY_SET_INFORMATION_LEVEL Level, PVOID Buffer);
typedef BCLASS_SET_INFORMATION_CALLBACK *PBCLASS_SET_INFORMATION_CALLBACK;
typedef NTSTATUS (BCLASS_DISABLE_STATUS_NOTIFY_CALLBACK) (PVOID Context);
typedef BCLASS_DISABLE_STATUS_NOTIFY_CALLBACK *PBCLASS_DISABLE_STATUS_NOTIFY_CALLBACK;
typedef PBCLASS_QUERY_TAG_CALLBACK BCLASS_QUERY_TAG;
typedef PBCLASS_QUERY_INFORMATION_CALLBACK BCLASS_QUERY_INFORMATION;
typedef PBCLASS_QUERY_STATUS_CALLBACK BCLASS_QUERY_STATUS;
typedef PBCLASS_SET_STATUS_NOTIFY_CALLBACK BCLASS_SET_STATUS_NOTIFY;
typedef PBCLASS_SET_INFORMATION_CALLBACK BCLASS_SET_INFORMATION;
typedef PBCLASS_DISABLE_STATUS_NOTIFY_CALLBACK BCLASS_DISABLE_STATUS_NOTIFY;
typedef struct {
USHORT MajorVersion;
USHORT MinorVersion;
PVOID Context;
BCLASS_QUERY_TAG QueryTag;
BCLASS_QUERY_INFORMATION QueryInformation;
BCLASS_SET_INFORMATION SetInformation;
BCLASS_QUERY_STATUS QueryStatus;
BCLASS_SET_STATUS_NOTIFY SetStatusNotify;
BCLASS_DISABLE_STATUS_NOTIFY DisableStatusNotify;
PDEVICE_OBJECT Pdo;
PUNICODE_STRING DeviceName;
} BATTERY_MINIPORT_INFO,*PBATTERY_MINIPORT_INFO;
#define BATTERY_CLASS_MAJOR_VERSION 0x0001
#define BATTERY_CLASS_MINOR_VERSION 0x0000
typedef struct _BATTERY_WMI_STATUS {
ULONG Tag;
ULONG RemainingCapacity;
LONG ChargeRate;
LONG DischargeRate;
ULONG Voltage;
BOOLEAN PowerOnline;
BOOLEAN Charging;
BOOLEAN Discharging;
BOOLEAN Critical;
} BATTERY_WMI_STATUS,*PBATTERY_WMI_STATUS;
typedef struct _BATTERY_WMI_RUNTIME {
ULONG Tag;
ULONG EstimatedRuntime;
} BATTERY_WMI_RUNTIME,*PBATTERY_WMI_RUNTIME;
typedef struct _BATTERY_WMI_TEMPERATURE {
ULONG Tag;
ULONG Temperature;
} BATTERY_WMI_TEMPERATURE,*PBATTERY_WMI_TEMPERATURE;
typedef struct _BATTERY_WMI_FULL_CHARGED_CAPACITY {
ULONG Tag;
ULONG FullChargedCapacity;
} BATTERY_WMI_FULL_CHARGED_CAPACITY,*PBATTERY_WMI_FULL_CHARGED_CAPACITY;
typedef struct _BATTERY_WMI_CYCLE_COUNT {
ULONG Tag;
ULONG CycleCount;
} BATTERY_WMI_CYCLE_COUNT,*PBATTERY_WMI_CYCLE_COUNT;
typedef struct _BATTERY_WMI_STATIC_DATA {
ULONG Tag;
WCHAR ManufactureDate[25];
BATTERY_REPORTING_SCALE Granularity [4];
ULONG Capabilities;
UCHAR Technology;
ULONG Chemistry;
ULONG DesignedCapacity;
ULONG DefaultAlert1;
ULONG DefaultAlert2;
ULONG CriticalBias;
WCHAR Strings[1];
} BATTERY_WMI_STATIC_DATA,*PBATTERY_WMI_STATIC_DATA;
typedef struct _BATTERY_WMI_STATUS_CHANGE {
ULONG Tag;
BOOLEAN PowerOnline;
BOOLEAN Charging;
BOOLEAN Discharging;
BOOLEAN Critical;
} BATTERY_WMI_STATUS_CHANGE,*PBATTERY_WMI_STATUS_CHANGE;
typedef struct _BATTERY_TAG_CHANGE {
ULONG Tag;
} BATTERY_TAG_CHANGE,*PBATTERY_TAG_CHANGE;
#ifndef BATTERYCLASS
#define BATTERYCLASSAPI DECLSPEC_IMPORT
#else
#define BATTERYCLASSAPI
#endif
NTSTATUS BATTERYCLASSAPI BatteryClassInitializeDevice (PBATTERY_MINIPORT_INFO MiniportInfo, PVOID *ClassData);
NTSTATUS BATTERYCLASSAPI BatteryClassUnload (PVOID ClassData);
NTSTATUS BATTERYCLASSAPI BatteryClassIoctl (PVOID ClassData, PIRP Irp);
NTSTATUS BATTERYCLASSAPI BatteryClassSystemControl (PVOID ClassData, PVOID WmiLibContext, PDEVICE_OBJECT DeviceObject, PIRP Irp, PVOID Disposition);
NTSTATUS BATTERYCLASSAPI BatteryClassQueryWmiDataBlock (PVOID ClassData, PDEVICE_OBJECT DeviceObject, PIRP Irp, ULONG GuidIndex, PULONG InstanceLengthArray, ULONG OutBufferSize, PUCHAR Buffer);
NTSTATUS BATTERYCLASSAPI BatteryClassStatusNotify (PVOID ClassData);
#endif
#endif
#endif

View File

@ -0,0 +1,616 @@
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#include <winapifamily.h>
#ifndef __BCRYPT_H__
#define __BCRYPT_H__
#ifdef __cplusplus
extern "C" {
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= 0x0A00
#ifndef WINAPI
#if defined(_ARM_)
#define WINAPI
#else
#define WINAPI __stdcall
#endif
#endif
#if !defined (_NTDEF_) && !defined (_NTSTATUS_PSDK)
#define _NTSTATUS_PSDK
typedef LONG NTSTATUS,*PNTSTATUS;
#endif
#ifndef BCRYPT_SUCCESS
#define BCRYPT_SUCCESS(Status) (((NTSTATUS) (Status)) >= 0)
#endif
#ifndef CONST
#define CONST const
#endif
#ifndef _NO_W32_PSEUDO_MODIFIERS
#ifndef IN
#define IN
#endif
#ifndef OUT
#define OUT
#endif
#ifndef OPTIONAL
#define OPTIONAL
#endif
#endif
#define BCRYPT_OBJECT_ALIGNMENT 16
#define BCRYPT_STRUCT_ALIGNMENT
#define BCRYPT_KDF_HASH L"HASH"
#define BCRYPT_KDF_HMAC L"HMAC"
#define BCRYPT_KDF_TLS_PRF L"TLS_PRF"
#define BCRYPT_KDF_SP80056A_CONCAT L"SP800_56A_CONCAT"
#define KDF_HASH_ALGORITHM 0x0
#define KDF_SECRET_PREPEND 0x1
#define KDF_SECRET_APPEND 0x2
#define KDF_HMAC_KEY 0x3
#define KDF_TLS_PRF_LABEL 0x4
#define KDF_TLS_PRF_SEED 0x5
#define KDF_SECRET_HANDLE 0x6
#define KDF_TLS_PRF_PROTOCOL 0x7
#define KDF_ALGORITHMID 0x8
#define KDF_PARTYUINFO 0x9
#define KDF_PARTYVINFO 0xa
#define KDF_SUPPPUBINFO 0xb
#define KDF_SUPPPRIVINFO 0xc
#define KDF_LABEL 0xd
#define KDF_CONTEXT 0xe
#define KDF_SALT 0xf
#define KDF_ITERATION_COUNT 0x10
#define KDF_GENERIC_PARAMETER 0x11
#define KDF_KEYBITLENGTH 0x12
#define KDF_USE_SECRET_AS_HMAC_KEY_FLAG 1
#define BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_VERSION 1
#define BCRYPT_AUTH_MODE_CHAIN_CALLS_FLAG 0x00000001
#define BCRYPT_AUTH_MODE_IN_PROGRESS_FLAG 0x00000002
#define BCRYPT_INIT_AUTH_MODE_INFO(_AUTH_INFO_STRUCT_) \
RtlZeroMemory ((&_AUTH_INFO_STRUCT_), sizeof (BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO)); \
(_AUTH_INFO_STRUCT_).cbSize = sizeof (BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO); \
(_AUTH_INFO_STRUCT_).dwInfoVersion = BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_VERSION;
#define BCRYPT_OPAQUE_KEY_BLOB L"OpaqueKeyBlob"
#define BCRYPT_KEY_DATA_BLOB L"KeyDataBlob"
#define BCRYPT_AES_WRAP_KEY_BLOB L"Rfc3565KeyWrapBlob"
#define BCRYPT_ALGORITHM_NAME L"AlgorithmName"
#define BCRYPT_AUTH_TAG_LENGTH L"AuthTagLength"
#define BCRYPT_BLOCK_LENGTH L"BlockLength"
#define BCRYPT_BLOCK_SIZE_LIST L"BlockSizeList"
#define BCRYPT_CHAINING_MODE L"ChainingMode"
#define BCRYPT_CHAIN_MODE_CBC L"ChainingModeCBC"
#define BCRYPT_CHAIN_MODE_CCM L"ChainingModeCCM"
#define BCRYPT_CHAIN_MODE_CFB L"ChainingModeCFB"
#define BCRYPT_CHAIN_MODE_ECB L"ChainingModeECB"
#define BCRYPT_CHAIN_MODE_GCM L"ChainingModeGCM"
#define BCRYPT_CHAIN_MODE_NA L"ChainingModeN/A"
#define BCRYPT_EFFECTIVE_KEY_LENGTH L"EffectiveKeyLength"
#define BCRYPT_HASH_BLOCK_LENGTH L"HashBlockLength"
#define BCRYPT_HASH_LENGTH L"HashDigestLength"
#define BCRYPT_HASH_OID_LIST L"HashOIDList"
#define BCRYPT_INITIALIZATION_VECTOR L"IV"
#define BCRYPT_IS_KEYED_HASH L"IsKeyedHash"
#define BCRYPT_IS_REUSABLE_HASH L"IsReusableHash"
#define BCRYPT_KEY_LENGTH L"KeyLength"
#define BCRYPT_KEY_LENGTHS L"KeyLengths"
#define BCRYPT_KEY_OBJECT_LENGTH L"KeyObjectLength"
#define BCRYPT_KEY_STRENGTH L"KeyStrength"
#define BCRYPT_MESSAGE_BLOCK_LENGTH L"MessageBlockLength"
#define BCRYPT_OBJECT_LENGTH L"ObjectLength"
#define BCRYPT_PADDING_SCHEMES L"PaddingSchemes"
#define BCRYPT_PCP_PLATFORM_TYPE_PROPERTY L"PCP_PLATFORM_TYPE"
#define BCRYPT_PCP_PROVIDER_VERSION_PROPERTY L"PCP_PROVIDER_VERSION"
#define BCRYPT_PRIMITIVE_TYPE L"PrimitiveType"
#define BCRYPT_PROVIDER_HANDLE L"ProviderHandle"
#define BCRYPT_SIGNATURE_LENGTH L"SignatureLength"
#define BCRYPT_SUPPORTED_PAD_ROUTER 0x00000001
#define BCRYPT_SUPPORTED_PAD_PKCS1_ENC 0x00000002
#define BCRYPT_SUPPORTED_PAD_PKCS1_SIG 0x00000004
#define BCRYPT_SUPPORTED_PAD_OAEP 0x00000008
#define BCRYPT_SUPPORTED_PAD_PSS 0x00000010
#define BCRYPT_PROV_DISPATCH 0x00000001
#define BCRYPT_BLOCK_PADDING 0x00000001
#define BCRYPT_PAD_NONE 0x00000001
#define BCRYPT_PAD_PKCS1 0x00000002
#define BCRYPT_PAD_OAEP 0x00000004
#define BCRYPT_PAD_PSS 0x00000008
#define BCRYPTBUFFER_VERSION 0
typedef struct __BCRYPT_KEY_LENGTHS_STRUCT {
ULONG dwMinLength;
ULONG dwMaxLength;
ULONG dwIncrement;
} BCRYPT_KEY_LENGTHS_STRUCT;
typedef BCRYPT_KEY_LENGTHS_STRUCT BCRYPT_AUTH_TAG_LENGTHS_STRUCT;
typedef struct _BCRYPT_OID {
ULONG cbOID;
PUCHAR pbOID;
} BCRYPT_OID;
typedef struct _BCRYPT_OID_LIST {
ULONG dwOIDCount;
BCRYPT_OID *pOIDs;
} BCRYPT_OID_LIST;
typedef struct _BCRYPT_PKCS1_PADDING_INFO {
LPCWSTR pszAlgId;
} BCRYPT_PKCS1_PADDING_INFO;
typedef struct _BCRYPT_PSS_PADDING_INFO {
LPCWSTR pszAlgId;
ULONG cbSalt;
} BCRYPT_PSS_PADDING_INFO;
typedef struct _BCRYPT_OAEP_PADDING_INFO {
LPCWSTR pszAlgId;
PUCHAR pbLabel;
ULONG cbLabel;
} BCRYPT_OAEP_PADDING_INFO;
typedef struct _BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO {
ULONG cbSize;
ULONG dwInfoVersion;
PUCHAR pbNonce;
ULONG cbNonce;
PUCHAR pbAuthData;
ULONG cbAuthData;
PUCHAR pbTag;
ULONG cbTag;
PUCHAR pbMacContext;
ULONG cbMacContext;
ULONG cbAAD;
ULONGLONG cbData;
ULONG dwFlags;
} BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO,*PBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO;
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) || _WIN32_WINNT >= 0x0A00
typedef struct _BCryptBuffer {
ULONG cbBuffer;
ULONG BufferType;
PVOID pvBuffer;
} BCryptBuffer,*PBCryptBuffer;
typedef struct _BCryptBufferDesc {
ULONG ulVersion;
ULONG cBuffers;
PBCryptBuffer pBuffers;
} BCryptBufferDesc,*PBCryptBufferDesc;
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= 0x0A00
#define BCRYPT_PUBLIC_KEY_BLOB L"PUBLICBLOB"
#define BCRYPT_PRIVATE_KEY_BLOB L"PRIVATEBLOB"
#define BCRYPT_RSAPUBLIC_BLOB L"RSAPUBLICBLOB"
#define BCRYPT_RSAPRIVATE_BLOB L"RSAPRIVATEBLOB"
#define LEGACY_RSAPUBLIC_BLOB L"CAPIPUBLICBLOB"
#define LEGACY_RSAPRIVATE_BLOB L"CAPIPRIVATEBLOB"
#define BCRYPT_RSAPUBLIC_MAGIC 0x31415352
#define BCRYPT_RSAPRIVATE_MAGIC 0x32415352
#define BCRYPT_RSAFULLPRIVATE_BLOB L"RSAFULLPRIVATEBLOB"
#define BCRYPT_RSAFULLPRIVATE_MAGIC 0x33415352
#define BCRYPT_GLOBAL_PARAMETERS L"SecretAgreementParam"
#define BCRYPT_PRIVATE_KEY L"PrivKeyVal"
#define BCRYPT_ECCPUBLIC_BLOB L"ECCPUBLICBLOB"
#define BCRYPT_ECCPRIVATE_BLOB L"ECCPRIVATEBLOB"
#define BCRYPT_ECDH_PUBLIC_P256_MAGIC 0x314b4345
#define BCRYPT_ECDH_PRIVATE_P256_MAGIC 0x324b4345
#define BCRYPT_ECDH_PUBLIC_P384_MAGIC 0x334b4345
#define BCRYPT_ECDH_PRIVATE_P384_MAGIC 0x344b4345
#define BCRYPT_ECDH_PUBLIC_P521_MAGIC 0x354b4345
#define BCRYPT_ECDH_PRIVATE_P521_MAGIC 0x364b4345
#define BCRYPT_ECDSA_PUBLIC_P256_MAGIC 0x31534345
#define BCRYPT_ECDSA_PRIVATE_P256_MAGIC 0x32534345
#define BCRYPT_ECDSA_PUBLIC_P384_MAGIC 0x33534345
#define BCRYPT_ECDSA_PRIVATE_P384_MAGIC 0x34534345
#define BCRYPT_ECDSA_PUBLIC_P521_MAGIC 0x35534345
#define BCRYPT_ECDSA_PRIVATE_P521_MAGIC 0x36534345
#define BCRYPT_DH_PUBLIC_BLOB L"DHPUBLICBLOB"
#define BCRYPT_DH_PRIVATE_BLOB L"DHPRIVATEBLOB"
#define LEGACY_DH_PUBLIC_BLOB L"CAPIDHPUBLICBLOB"
#define LEGACY_DH_PRIVATE_BLOB L"CAPIDHPRIVATEBLOB"
#define BCRYPT_DH_PUBLIC_MAGIC 0x42504844
#define BCRYPT_DH_PRIVATE_MAGIC 0x56504844
#define BCRYPT_DH_PARAMETERS L"DHParameters"
#define BCRYPT_DH_PARAMETERS_MAGIC 0x4d504844
#define BCRYPT_DSA_PUBLIC_BLOB L"DSAPUBLICBLOB"
#define BCRYPT_DSA_PRIVATE_BLOB L"DSAPRIVATEBLOB"
#define LEGACY_DSA_PUBLIC_BLOB L"CAPIDSAPUBLICBLOB"
#define LEGACY_DSA_PRIVATE_BLOB L"CAPIDSAPRIVATEBLOB"
#define LEGACY_DSA_V2_PUBLIC_BLOB L"V2CAPIDSAPUBLICBLOB"
#define LEGACY_DSA_V2_PRIVATE_BLOB L"V2CAPIDSAPRIVATEBLOB"
#define BCRYPT_DSA_PUBLIC_MAGIC 0x42505344
#define BCRYPT_DSA_PRIVATE_MAGIC 0x56505344
#define BCRYPT_DSA_PUBLIC_MAGIC_V2 0x32425044
#define BCRYPT_DSA_PRIVATE_MAGIC_V2 0x32565044
#define BCRYPT_KEY_DATA_BLOB_MAGIC 0x4d42444b
#define BCRYPT_KEY_DATA_BLOB_VERSION1 0x1
#define BCRYPT_DSA_PARAMETERS L"DSAParameters"
#define BCRYPT_DSA_PARAMETERS_MAGIC 0x4d505344
#define BCRYPT_DSA_PARAMETERS_MAGIC_V2 0x324d5044
#define MS_PRIMITIVE_PROVIDER L"Microsoft Primitive Provider"
#define MS_PLATFORM_CRYPTO_PROVIDER L"Microsoft Platform Crypto Provider"
#define BCRYPT_RSA_ALGORITHM L"RSA"
#define BCRYPT_RSA_SIGN_ALGORITHM L"RSA_SIGN"
#define BCRYPT_DH_ALGORITHM L"DH"
#define BCRYPT_DSA_ALGORITHM L"DSA"
#define BCRYPT_RC2_ALGORITHM L"RC2"
#define BCRYPT_RC4_ALGORITHM L"RC4"
#define BCRYPT_AES_ALGORITHM L"AES"
#define BCRYPT_DES_ALGORITHM L"DES"
#define BCRYPT_DESX_ALGORITHM L"DESX"
#define BCRYPT_3DES_ALGORITHM L"3DES"
#define BCRYPT_3DES_112_ALGORITHM L"3DES_112"
#define BCRYPT_MD2_ALGORITHM L"MD2"
#define BCRYPT_MD4_ALGORITHM L"MD4"
#define BCRYPT_MD5_ALGORITHM L"MD5"
#define BCRYPT_SHA1_ALGORITHM L"SHA1"
#define BCRYPT_SHA256_ALGORITHM L"SHA256"
#define BCRYPT_SHA384_ALGORITHM L"SHA384"
#define BCRYPT_SHA512_ALGORITHM L"SHA512"
#define BCRYPT_AES_GMAC_ALGORITHM L"AES-GMAC"
#define BCRYPT_AES_CMAC_ALGORITHM L"AES-CMAC"
#define BCRYPT_ECDSA_P256_ALGORITHM L"ECDSA_P256"
#define BCRYPT_ECDSA_P384_ALGORITHM L"ECDSA_P384"
#define BCRYPT_ECDSA_P521_ALGORITHM L"ECDSA_P521"
#define BCRYPT_ECDH_P256_ALGORITHM L"ECDH_P256"
#define BCRYPT_ECDH_P384_ALGORITHM L"ECDH_P384"
#define BCRYPT_ECDH_P521_ALGORITHM L"ECDH_P521"
#define BCRYPT_RNG_ALGORITHM L"RNG"
#define BCRYPT_RNG_FIPS186_DSA_ALGORITHM L"FIPS186DSARNG"
#define BCRYPT_RNG_DUAL_EC_ALGORITHM L"DUALECRNG"
#define BCRYPT_SP800108_CTR_HMAC_ALGORITHM L"SP800_108_CTR_HMAC"
#define BCRYPT_SP80056A_CONCAT_ALGORITHM L"SP800_56A_CONCAT"
#define BCRYPT_PBKDF2_ALGORITHM L"PBKDF2"
#define BCRYPT_CAPI_KDF_ALGORITHM L"CAPI_KDF"
#define BCRYPT_CIPHER_INTERFACE 0x00000001
#define BCRYPT_HASH_INTERFACE 0x00000002
#define BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE 0x00000003
#define BCRYPT_SECRET_AGREEMENT_INTERFACE 0x00000004
#define BCRYPT_SIGNATURE_INTERFACE 0x00000005
#define BCRYPT_RNG_INTERFACE 0x00000006
#define BCRYPT_KEY_DERIVATION_INTERFACE 0x00000007
#define BCRYPT_ALG_HANDLE_HMAC_FLAG 0x00000008
#define BCRYPT_CAPI_AES_FLAG 0x00000010
#define BCRYPT_HASH_REUSABLE_FLAG 0x00000020
#define BCRYPT_BUFFERS_LOCKED_FLAG 0x00000040
#define BCRYPT_CIPHER_OPERATION 0x00000001
#define BCRYPT_HASH_OPERATION 0x00000002
#define BCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION 0x00000004
#define BCRYPT_SECRET_AGREEMENT_OPERATION 0x00000008
#define BCRYPT_SIGNATURE_OPERATION 0x00000010
#define BCRYPT_RNG_OPERATION 0x00000020
#define BCRYPT_KEY_DERIVATION_OPERATION 0x00000040
#define BCRYPT_PUBLIC_KEY_FLAG 0x00000001
#define BCRYPT_PRIVATE_KEY_FLAG 0x00000002
#define BCRYPT_NO_KEY_VALIDATION 0x00000008
#define BCRYPT_RNG_USE_ENTROPY_IN_BUFFER 0x00000001
#define BCRYPT_USE_SYSTEM_PREFERRED_RNG 0x00000002
#define BCRYPT_MAKE_INTERFACE_VERSION(major, minor) { (USHORT)major,(USHORT)minor}
#define BCRYPT_IS_INTERFACE_VERSION_COMPATIBLE(loader, provider) ((loader).MajorVersion <= (provider).MajorVersion)
#define BCRYPT_CIPHER_INTERFACE_VERSION_1 BCRYPT_MAKE_INTERFACE_VERSION (1, 0)
#define BCRYPT_HASH_INTERFACE_VERSION_1 BCRYPT_MAKE_INTERFACE_VERSION (1, 0)
#define BCRYPT_ASYMMETRIC_ENCRYPTION_INTERFACE_VERSION_1 BCRYPT_MAKE_INTERFACE_VERSION (1, 0)
#define BCRYPT_SECRET_AGREEMENT_INTERFACE_VERSION_1 BCRYPT_MAKE_INTERFACE_VERSION (1, 0)
#define BCRYPT_SIGNATURE_INTERFACE_VERSION_1 BCRYPT_MAKE_INTERFACE_VERSION (1, 0)
#define BCRYPT_RNG_INTERFACE_VERSION_1 BCRYPT_MAKE_INTERFACE_VERSION (1, 0)
#define CRYPT_MIN_DEPENDENCIES (0x00000001)
#define CRYPT_PROCESS_ISOLATE (0x00010000)
#define CRYPT_UM (0x00000001)
#define CRYPT_KM (0x00000002)
#define CRYPT_MM (0x00000003)
#define CRYPT_ANY (0x00000004)
#define CRYPT_OVERWRITE (0x00000001)
#define CRYPT_LOCAL (0x00000001)
#define CRYPT_DOMAIN (0x00000002)
#define CRYPT_EXCLUSIVE (0x00000001)
#define CRYPT_OVERRIDE (0x00010000)
#define CRYPT_ALL_FUNCTIONS (0x00000001)
#define CRYPT_ALL_PROVIDERS (0x00000002)
#define CRYPT_PRIORITY_TOP (0x00000000)
#define CRYPT_PRIORITY_BOTTOM (0xffffffff)
#define CRYPT_DEFAULT_CONTEXT L"Default"
typedef PVOID BCRYPT_HANDLE;
typedef PVOID BCRYPT_ALG_HANDLE;
typedef PVOID BCRYPT_KEY_HANDLE;
typedef PVOID BCRYPT_HASH_HANDLE;
typedef PVOID BCRYPT_SECRET_HANDLE;
typedef struct _BCRYPT_KEY_BLOB {
ULONG Magic;
} BCRYPT_KEY_BLOB;
typedef struct _BCRYPT_RSAKEY_BLOB {
ULONG Magic;
ULONG BitLength;
ULONG cbPublicExp;
ULONG cbModulus;
ULONG cbPrime1;
ULONG cbPrime2;
} BCRYPT_RSAKEY_BLOB;
typedef struct _BCRYPT_ECCKEY_BLOB {
ULONG dwMagic;
ULONG cbKey;
} BCRYPT_ECCKEY_BLOB,*PBCRYPT_ECCKEY_BLOB;
typedef struct _BCRYPT_DH_KEY_BLOB {
ULONG dwMagic;
ULONG cbKey;
} BCRYPT_DH_KEY_BLOB,*PBCRYPT_DH_KEY_BLOB;
typedef struct _BCRYPT_DH_PARAMETER_HEADER {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
} BCRYPT_DH_PARAMETER_HEADER;
typedef struct _BCRYPT_DSA_KEY_BLOB {
ULONG dwMagic;
ULONG cbKey;
UCHAR Count[4];
UCHAR Seed[20];
UCHAR q[20];
} BCRYPT_DSA_KEY_BLOB,*PBCRYPT_DSA_KEY_BLOB;
typedef enum {
DSA_HASH_ALGORITHM_SHA1,
DSA_HASH_ALGORITHM_SHA256,
DSA_HASH_ALGORITHM_SHA512
} HASHALGORITHM_ENUM;
typedef enum {
DSA_FIPS186_2,
DSA_FIPS186_3
} DSAFIPSVERSION_ENUM;
typedef struct _BCRYPT_DSA_KEY_BLOB_V2 {
ULONG dwMagic;
ULONG cbKey;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_KEY_BLOB_V2,*PBCRYPT_DSA_KEY_BLOB_V2;
typedef struct _BCRYPT_KEY_DATA_BLOB_HEADER {
ULONG dwMagic;
ULONG dwVersion;
ULONG cbKeyData;
} BCRYPT_KEY_DATA_BLOB_HEADER,*PBCRYPT_KEY_DATA_BLOB_HEADER;
typedef struct _BCRYPT_DSA_PARAMETER_HEADER {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
UCHAR Count[4];
UCHAR Seed[20];
UCHAR q[20];
} BCRYPT_DSA_PARAMETER_HEADER;
typedef struct _BCRYPT_DSA_PARAMETER_HEADER_V2 {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_PARAMETER_HEADER_V2;
typedef struct _BCRYPT_ALGORITHM_IDENTIFIER {
LPWSTR pszName;
ULONG dwClass;
ULONG dwFlags;
} BCRYPT_ALGORITHM_IDENTIFIER;
typedef struct _BCRYPT_PROVIDER_NAME {
LPWSTR pszProviderName;
} BCRYPT_PROVIDER_NAME;
typedef struct _BCRYPT_INTERFACE_VERSION {
USHORT MajorVersion;
USHORT MinorVersion;
} BCRYPT_INTERFACE_VERSION,*PBCRYPT_INTERFACE_VERSION;
typedef struct _CRYPT_INTERFACE_REG {
ULONG dwInterface;
ULONG dwFlags;
ULONG cFunctions;
PWSTR *rgpszFunctions;
} CRYPT_INTERFACE_REG,*PCRYPT_INTERFACE_REG;
typedef struct _CRYPT_IMAGE_REG {
PWSTR pszImage;
ULONG cInterfaces;
PCRYPT_INTERFACE_REG *rgpInterfaces;
} CRYPT_IMAGE_REG,*PCRYPT_IMAGE_REG;
typedef struct _CRYPT_PROVIDER_REG {
ULONG cAliases;
PWSTR *rgpszAliases;
PCRYPT_IMAGE_REG pUM;
PCRYPT_IMAGE_REG pKM;
} CRYPT_PROVIDER_REG,*PCRYPT_PROVIDER_REG;
typedef struct _CRYPT_PROVIDERS {
ULONG cProviders;
PWSTR *rgpszProviders;
} CRYPT_PROVIDERS,*PCRYPT_PROVIDERS;
typedef struct _CRYPT_CONTEXT_CONFIG {
ULONG dwFlags;
ULONG dwReserved;
} CRYPT_CONTEXT_CONFIG,*PCRYPT_CONTEXT_CONFIG;
typedef struct _CRYPT_CONTEXT_FUNCTION_CONFIG {
ULONG dwFlags;
ULONG dwReserved;
} CRYPT_CONTEXT_FUNCTION_CONFIG,*PCRYPT_CONTEXT_FUNCTION_CONFIG;
typedef struct _CRYPT_CONTEXTS {
ULONG cContexts;
PWSTR *rgpszContexts;
} CRYPT_CONTEXTS,*PCRYPT_CONTEXTS;
typedef struct _CRYPT_CONTEXT_FUNCTIONS {
ULONG cFunctions;
PWSTR *rgpszFunctions;
} CRYPT_CONTEXT_FUNCTIONS,*PCRYPT_CONTEXT_FUNCTIONS;
typedef struct _CRYPT_CONTEXT_FUNCTION_PROVIDERS {
ULONG cProviders;
PWSTR *rgpszProviders;
} CRYPT_CONTEXT_FUNCTION_PROVIDERS,*PCRYPT_CONTEXT_FUNCTION_PROVIDERS;
typedef struct _CRYPT_PROPERTY_REF {
PWSTR pszProperty;
ULONG cbValue;
PUCHAR pbValue;
} CRYPT_PROPERTY_REF,*PCRYPT_PROPERTY_REF;
typedef struct _CRYPT_IMAGE_REF {
PWSTR pszImage;
ULONG dwFlags;
} CRYPT_IMAGE_REF,*PCRYPT_IMAGE_REF;
typedef struct _CRYPT_PROVIDER_REF {
ULONG dwInterface;
PWSTR pszFunction;
PWSTR pszProvider;
ULONG cProperties;
PCRYPT_PROPERTY_REF *rgpProperties;
PCRYPT_IMAGE_REF pUM;
PCRYPT_IMAGE_REF pKM;
} CRYPT_PROVIDER_REF,*PCRYPT_PROVIDER_REF;
typedef struct _CRYPT_PROVIDER_REFS {
ULONG cProviders;
PCRYPT_PROVIDER_REF *rgpProviders;
} CRYPT_PROVIDER_REFS,*PCRYPT_PROVIDER_REFS;
NTSTATUS WINAPI BCryptOpenAlgorithmProvider (BCRYPT_ALG_HANDLE *phAlgorithm, LPCWSTR pszAlgId, LPCWSTR pszImplementation, ULONG dwFlags);
NTSTATUS WINAPI BCryptEnumAlgorithms (ULONG dwAlgOperations, ULONG *pAlgCount, BCRYPT_ALGORITHM_IDENTIFIER **ppAlgList, ULONG dwFlags);
NTSTATUS WINAPI BCryptEnumProviders (LPCWSTR pszAlgId, ULONG *pImplCount, BCRYPT_PROVIDER_NAME **ppImplList, ULONG dwFlags);
NTSTATUS WINAPI BCryptGetProperty (BCRYPT_HANDLE hObject, LPCWSTR pszProperty, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptSetProperty (BCRYPT_HANDLE hObject, LPCWSTR pszProperty, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS WINAPI BCryptCloseAlgorithmProvider (BCRYPT_ALG_HANDLE hAlgorithm, ULONG dwFlags);
VOID WINAPI BCryptFreeBuffer (PVOID pvBuffer);
NTSTATUS WINAPI BCryptGenerateSymmetricKey (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbKeyObject, ULONG cbKeyObject, PUCHAR pbSecret, ULONG cbSecret, ULONG dwFlags);
NTSTATUS WINAPI BCryptGenerateKeyPair (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE *phKey, ULONG dwLength, ULONG dwFlags);
NTSTATUS WINAPI BCryptEncrypt (BCRYPT_KEY_HANDLE hKey, PUCHAR pbInput, ULONG cbInput, VOID *pPaddingInfo, PUCHAR pbIV, ULONG cbIV, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptDecrypt (BCRYPT_KEY_HANDLE hKey, PUCHAR pbInput, ULONG cbInput, VOID *pPaddingInfo, PUCHAR pbIV, ULONG cbIV, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptExportKey (BCRYPT_KEY_HANDLE hKey, BCRYPT_KEY_HANDLE hExportKey, LPCWSTR pszBlobType, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptImportKey (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbKeyObject, ULONG cbKeyObject, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS WINAPI BCryptImportKeyPair (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS WINAPI BCryptDuplicateKey (BCRYPT_KEY_HANDLE hKey, BCRYPT_KEY_HANDLE *phNewKey, PUCHAR pbKeyObject, ULONG cbKeyObject, ULONG dwFlags);
NTSTATUS WINAPI BCryptFinalizeKeyPair (BCRYPT_KEY_HANDLE hKey, ULONG dwFlags);
NTSTATUS WINAPI BCryptDestroyKey (BCRYPT_KEY_HANDLE hKey);
NTSTATUS WINAPI BCryptDestroySecret (BCRYPT_SECRET_HANDLE hSecret);
NTSTATUS WINAPI BCryptSignHash (BCRYPT_KEY_HANDLE hKey, VOID *pPaddingInfo, PUCHAR pbInput, ULONG cbInput, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptVerifySignature (BCRYPT_KEY_HANDLE hKey, VOID *pPaddingInfo, PUCHAR pbHash, ULONG cbHash, PUCHAR pbSignature, ULONG cbSignature, ULONG dwFlags);
NTSTATUS WINAPI BCryptSecretAgreement (BCRYPT_KEY_HANDLE hPrivKey, BCRYPT_KEY_HANDLE hPubKey, BCRYPT_SECRET_HANDLE *phAgreedSecret, ULONG dwFlags);
NTSTATUS WINAPI BCryptDeriveKey (BCRYPT_SECRET_HANDLE hSharedSecret, LPCWSTR pwszKDF, BCryptBufferDesc *pParameterList, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptKeyDerivation (BCRYPT_KEY_HANDLE hKey, BCryptBufferDesc *pParameterList, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG *pcbResult, ULONG dwFlags);
NTSTATUS WINAPI BCryptCreateHash (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_HASH_HANDLE *phHash, PUCHAR pbHashObject, ULONG cbHashObject, PUCHAR pbSecret, ULONG cbSecret, ULONG dwFlags);
NTSTATUS WINAPI BCryptHashData (BCRYPT_HASH_HANDLE hHash, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
NTSTATUS WINAPI BCryptFinishHash (BCRYPT_HASH_HANDLE hHash, PUCHAR pbOutput, ULONG cbOutput, ULONG dwFlags);
NTSTATUS WINAPI BCryptDuplicateHash (BCRYPT_HASH_HANDLE hHash, BCRYPT_HASH_HANDLE *phNewHash, PUCHAR pbHashObject, ULONG cbHashObject, ULONG dwFlags);
NTSTATUS WINAPI BCryptDestroyHash (BCRYPT_HASH_HANDLE hHash);
NTSTATUS WINAPI BCryptGenRandom (BCRYPT_ALG_HANDLE hAlgorithm, PUCHAR pbBuffer, ULONG cbBuffer, ULONG dwFlags);
NTSTATUS WINAPI BCryptDeriveKeyCapi (BCRYPT_HASH_HANDLE hHash, BCRYPT_ALG_HANDLE hTargetAlg, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG dwFlags);
NTSTATUS WINAPI BCryptDeriveKeyPBKDF2 (BCRYPT_ALG_HANDLE hPrf, PUCHAR pbPassword, ULONG cbPassword, PUCHAR pbSalt, ULONG cbSalt, ULONGLONG cIterations, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG dwFlags);
NTSTATUS WINAPI BCryptResolveProviders (LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProvider, ULONG dwMode, ULONG dwFlags, ULONG *pcbBuffer, PCRYPT_PROVIDER_REFS *ppBuffer);
NTSTATUS WINAPI BCryptGetFipsAlgorithmMode (BOOLEAN *pfEnabled);
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
#ifndef KERNEL_MODE_CNG
NTSTATUS WINAPI BCryptQueryProviderRegistration (LPCWSTR pszProvider, ULONG dwMode, ULONG dwInterface, ULONG *pcbBuffer, PCRYPT_PROVIDER_REG *ppBuffer);
NTSTATUS WINAPI BCryptEnumRegisteredProviders (ULONG *pcbBuffer, PCRYPT_PROVIDERS *ppBuffer);
NTSTATUS WINAPI BCryptCreateContext (ULONG dwTable, LPCWSTR pszContext, PCRYPT_CONTEXT_CONFIG pConfig);
NTSTATUS WINAPI BCryptDeleteContext (ULONG dwTable, LPCWSTR pszContext);
NTSTATUS WINAPI BCryptEnumContexts (ULONG dwTable, ULONG *pcbBuffer, PCRYPT_CONTEXTS *ppBuffer);
NTSTATUS WINAPI BCryptConfigureContext (ULONG dwTable, LPCWSTR pszContext, PCRYPT_CONTEXT_CONFIG pConfig);
NTSTATUS WINAPI BCryptQueryContextConfiguration (ULONG dwTable, LPCWSTR pszContext, ULONG *pcbBuffer, PCRYPT_CONTEXT_CONFIG *ppBuffer);
NTSTATUS WINAPI BCryptAddContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG dwPosition);
NTSTATUS WINAPI BCryptRemoveContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction);
NTSTATUS WINAPI BCryptEnumContextFunctions (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTIONS *ppBuffer);
NTSTATUS WINAPI BCryptConfigureContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, PCRYPT_CONTEXT_FUNCTION_CONFIG pConfig);
NTSTATUS WINAPI BCryptQueryContextFunctionConfiguration (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTION_CONFIG *ppBuffer);
NTSTATUS WINAPI BCryptEnumContextFunctionProviders (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTION_PROVIDERS *ppBuffer);
NTSTATUS WINAPI BCryptSetContextFunctionProperty (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProperty, ULONG cbValue, PUCHAR pbValue);
NTSTATUS WINAPI BCryptQueryContextFunctionProperty (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProperty, ULONG *pcbValue, PUCHAR *ppbValue);
NTSTATUS WINAPI BCryptRegisterConfigChangeNotify (HANDLE *phEvent);
#else
NTSTATUS WINAPI BCryptRegisterConfigChangeNotify (PRKEVENT pEvent);
NTSTATUS WINAPI BCryptUnregisterConfigChangeNotify (PRKEVENT pEvent);
NTSTATUS WINAPI BCryptUnregisterConfigChangeNotify (HANDLE hEvent);
#endif
#endif
#ifdef __cplusplus
}
#endif
#endif

Some files were not shown because too many files have changed in this diff Show More