mirror of
https://github.com/zimawhit3/Ghidra-Windows-Data-Types
synced 2026-06-08 18:35:46 +00:00
73286 lines
2.8 MiB
Plaintext
73286 lines
2.8 MiB
Plaintext
|
|
|
|
#pragma pack(push,_CRT_PACKING)
|
|
typedef __builtin_va_list __gnuc_va_list;
|
|
typedef __gnuc_va_list va_list;
|
|
#pragma pack(pop)
|
|
void __attribute__((__cdecl__)) __debugbreak(void);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void __attribute__((__cdecl__)) __debugbreak(void)
|
|
{
|
|
/*__asm__*/
|
|
}
|
|
const char *__mingw_get_crt_info (void);
|
|
#pragma pack(push,_CRT_PACKING)
|
|
__extension__ typedef unsigned long long size_t;
|
|
__extension__ typedef long long ssize_t;
|
|
typedef size_t rsize_t;
|
|
__extension__ typedef long long intptr_t;
|
|
__extension__ typedef unsigned long long uintptr_t;
|
|
__extension__ typedef long long ptrdiff_t;
|
|
typedef unsigned short wchar_t;
|
|
typedef unsigned short wint_t;
|
|
typedef unsigned short wctype_t;
|
|
typedef int errno_t;
|
|
typedef long __time32_t;
|
|
__extension__ typedef long long __time64_t;
|
|
typedef __time64_t time_t;
|
|
struct threadlocaleinfostruct;
|
|
struct threadmbcinfostruct;
|
|
typedef struct threadlocaleinfostruct *pthreadlocinfo;
|
|
typedef struct threadmbcinfostruct *pthreadmbcinfo;
|
|
struct __lc_time_data;
|
|
typedef struct localeinfo_struct {
|
|
pthreadlocinfo locinfo;
|
|
pthreadmbcinfo mbcinfo;
|
|
} _locale_tstruct,*_locale_t;
|
|
typedef struct tagLC_ID {
|
|
unsigned short wLanguage;
|
|
unsigned short wCountry;
|
|
unsigned short wCodePage;
|
|
} LC_ID,*LPLC_ID;
|
|
typedef struct threadlocaleinfostruct {
|
|
int refcount;
|
|
unsigned int lc_codepage;
|
|
unsigned int lc_collate_cp;
|
|
unsigned long lc_handle[6];
|
|
LC_ID lc_id[6];
|
|
struct {
|
|
char *locale;
|
|
wchar_t *wlocale;
|
|
int *refcount;
|
|
int *wrefcount;
|
|
} lc_category[6];
|
|
int lc_clike;
|
|
int mb_cur_max;
|
|
int *lconv_intl_refcount;
|
|
int *lconv_num_refcount;
|
|
int *lconv_mon_refcount;
|
|
struct lconv *lconv;
|
|
int *ctype1_refcount;
|
|
unsigned short *ctype1;
|
|
const unsigned short *pctype;
|
|
const unsigned char *pclmap;
|
|
const unsigned char *pcumap;
|
|
struct __lc_time_data *lc_time_curr;
|
|
} threadlocinfo;
|
|
#pragma pack(pop)
|
|
#pragma pack(push,_CRT_PACKING)
|
|
struct _EXCEPTION_POINTERS;
|
|
struct _EXCEPTION_RECORD;
|
|
struct _CONTEXT;
|
|
struct _DISPATCHER_CONTEXT;
|
|
__extension__ __attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __C_specific_handler (struct _EXCEPTION_RECORD *_ExceptionRecord, void *_EstablisherFrame, struct _CONTEXT *_ContextRecord, struct _DISPATCHER_CONTEXT *_DispatcherContext);
|
|
unsigned long __attribute__((__cdecl__)) _exception_code(void);
|
|
void *__attribute__((__cdecl__)) _exception_info(void);
|
|
int __attribute__((__cdecl__)) _abnormal_termination(void);
|
|
typedef void (__attribute__((__cdecl__)) * _PHNDLR)(int);
|
|
struct _XCPT_ACTION {
|
|
unsigned long XcptNum;
|
|
int SigNum;
|
|
_PHNDLR XcptAction;
|
|
};
|
|
extern struct _XCPT_ACTION _XcptActTab[];
|
|
extern int _XcptActTabCount;
|
|
extern int _XcptActTabSize;
|
|
extern int _First_FPE_Indx;
|
|
extern int _Num_FPE;
|
|
int __attribute__((__cdecl__)) __CppXcptFilter(unsigned long _ExceptionNum,struct _EXCEPTION_POINTERS * _ExceptionPtr);
|
|
int __attribute__((__cdecl__)) _XcptFilter(unsigned long _ExceptionNum,struct _EXCEPTION_POINTERS * _ExceptionPtr);
|
|
typedef int (*PEXCEPTION_HANDLER)(struct _EXCEPTION_RECORD*, void*, struct _CONTEXT*, void*);
|
|
#pragma pack(pop)
|
|
typedef unsigned long ULONG;
|
|
typedef ULONG *PULONG;
|
|
typedef unsigned short USHORT;
|
|
typedef USHORT *PUSHORT;
|
|
typedef unsigned char UCHAR;
|
|
typedef UCHAR *PUCHAR;
|
|
typedef char *PSZ;
|
|
typedef int WINBOOL;
|
|
|
|
typedef int BOOL;
|
|
typedef WINBOOL *PBOOL;
|
|
typedef WINBOOL *LPBOOL;
|
|
|
|
typedef unsigned char BYTE;
|
|
typedef unsigned short WORD;
|
|
typedef unsigned long DWORD;
|
|
typedef float FLOAT;
|
|
typedef FLOAT *PFLOAT;
|
|
typedef BYTE *PBYTE;
|
|
typedef BYTE *LPBYTE;
|
|
typedef int *PINT;
|
|
typedef int *LPINT;
|
|
typedef WORD *PWORD;
|
|
typedef WORD *LPWORD;
|
|
typedef long *LPLONG;
|
|
typedef DWORD *PDWORD;
|
|
typedef DWORD *LPDWORD;
|
|
typedef void *LPVOID;
|
|
typedef const void *LPCVOID;
|
|
typedef int INT;
|
|
typedef unsigned int UINT;
|
|
typedef unsigned int *PUINT;
|
|
extern unsigned short ** __imp__pctype;
|
|
extern unsigned short ** __imp__wctype;
|
|
extern unsigned short ** __imp__pwctype;
|
|
extern const unsigned char __newclmap[];
|
|
extern const unsigned char __newcumap[];
|
|
extern pthreadlocinfo __ptlocinfo;
|
|
extern pthreadmbcinfo __ptmbcinfo;
|
|
extern int __globallocalestatus;
|
|
extern int __locale_changed;
|
|
extern struct threadlocaleinfostruct __initiallocinfo;
|
|
extern _locale_tstruct __initiallocalestructinfo;
|
|
pthreadlocinfo __attribute__((__cdecl__)) __updatetlocinfo(void);
|
|
pthreadmbcinfo __attribute__((__cdecl__)) __updatetmbcinfo(void);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isctype(int _C,int _Type);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isctype_l(int _C,int _Type,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isalpha(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isalpha_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isupper(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isupper_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) islower(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _islower_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isdigit(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isdigit_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isxdigit(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isxdigit_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isspace(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isspace_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) ispunct(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _ispunct_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isalnum(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isalnum_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isprint(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isprint_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) isgraph(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isgraph_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) iscntrl(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iscntrl_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) toupper(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) tolower(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _tolower(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _tolower_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _toupper(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _toupper_l(int _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __isascii(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __toascii(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iscsymf(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iscsym(int _C);
|
|
int __attribute__((__cdecl__)) isblank(int _C);
|
|
int __attribute__((__cdecl__)) iswalpha(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswalpha_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswupper(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswupper_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswlower(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswlower_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswdigit(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswdigit_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswxdigit(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswxdigit_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswspace(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswspace_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswpunct(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswpunct_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswalnum(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswalnum_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswprint(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswprint_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswgraph(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswgraph_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswcntrl(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswcntrl_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswascii(wint_t _C);
|
|
int __attribute__((__cdecl__)) isleadbyte(int _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _isleadbyte_l(int _C,_locale_t _Locale);
|
|
wint_t __attribute__((__cdecl__)) towupper(wint_t _C);
|
|
__attribute__ ((__dllimport__)) wint_t __attribute__((__cdecl__)) _towupper_l(wint_t _C,_locale_t _Locale);
|
|
wint_t __attribute__((__cdecl__)) towlower(wint_t _C);
|
|
__attribute__ ((__dllimport__)) wint_t __attribute__((__cdecl__)) _towlower_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) iswctype(wint_t _C,wctype_t _Type);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iswcsymf(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswcsymf_l(wint_t _C,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) __iswcsym(wint_t _C);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _iswcsym_l(wint_t _C,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) is_wctype(wint_t _C,wctype_t _Type);
|
|
int __attribute__((__cdecl__)) iswblank(wint_t _C);
|
|
extern int * __imp___mb_cur_max;
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) ___mb_cur_max_func(void);
|
|
|
|
void __faststorefence(void);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __faststorefence(void) {
|
|
__builtin_ia32_sfence();
|
|
}
|
|
__extension__ void __stosq(unsigned long long *, unsigned long long, size_t);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __stosq(unsigned long long *Dest, unsigned long long Data, size_t Count) { /*__asm__*/ }
|
|
__extension__ unsigned char _interlockedbittestandset64(long long volatile *a, long long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _interlockedbittestandset64(long long volatile *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char _interlockedbittestandreset64(long long volatile *a, long long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _interlockedbittestandreset64(long long volatile *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char _interlockedbittestandcomplement64(long long volatile *a, long long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _interlockedbittestandcomplement64(long long volatile *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char InterlockedBitTestAndSet64(volatile long long *a, long long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char InterlockedBitTestAndSet64(long long volatile *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char InterlockedBitTestAndReset64(volatile long long *a, long long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char InterlockedBitTestAndReset64(long long volatile *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char InterlockedBitTestAndComplement64(volatile long long *a, long long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char InterlockedBitTestAndComplement64(long long volatile *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ long long _InterlockedAnd64(long long volatile *, long long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedAnd64(volatile long long *Destination, long long Value) { return __sync_fetch_and_and(Destination, Value); }
|
|
__extension__ long long _InterlockedOr64(long long volatile *, long long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedOr64(volatile long long *Destination, long long Value) { return __sync_fetch_and_or(Destination, Value); }
|
|
__extension__ long long _InterlockedXor64(long long volatile *, long long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedXor64(volatile long long *Destination, long long Value) { return __sync_fetch_and_xor(Destination, Value); }
|
|
__extension__ long long _InterlockedIncrement64(long long volatile *Addend);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedIncrement64(long long volatile *Addend) {
|
|
return __sync_add_and_fetch(Addend, 1);
|
|
}
|
|
__extension__ long long _InterlockedDecrement64(long long volatile *Addend);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedDecrement64(long long volatile *Addend) {
|
|
return __sync_sub_and_fetch(Addend, 1);
|
|
}
|
|
__extension__ long long _InterlockedExchange64(long long volatile *Target, long long Value);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedExchange64(long long volatile *Target, long long Value) {
|
|
return __sync_lock_test_and_set(Target, Value);
|
|
}
|
|
__extension__ long long _InterlockedExchangeAdd64(long long volatile *Addend, long long Value);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedExchangeAdd64(long long volatile *Addend, long long Value) {
|
|
return __sync_fetch_and_add(Addend, Value);
|
|
}
|
|
unsigned char __readgsbyte(unsigned long Offset);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char __readgsbyte(unsigned long Offset) { unsigned char ret; /*__asm__*/ return ret; }
|
|
unsigned short __readgsword(unsigned long Offset);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned short __readgsword(unsigned long Offset) { unsigned short ret; /*__asm__*/ return ret; }
|
|
unsigned long __readgsdword(unsigned long Offset);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned long __readgsdword(unsigned long Offset) { unsigned long ret; /*__asm__*/ return ret; }
|
|
__extension__ unsigned long long __readgsqword(unsigned long Offset);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned long long __readgsqword(unsigned long Offset) { unsigned long long ret; /*__asm__*/ return ret; }
|
|
void __writegsbyte(unsigned long Offset,unsigned char Data);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __writegsbyte(unsigned long Offset, unsigned char Data) { /*__asm__*/ }
|
|
void __writegsword(unsigned long Offset,unsigned short Data);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __writegsword(unsigned long Offset, unsigned short Data) { /*__asm__*/ }
|
|
void __writegsdword(unsigned long Offset,unsigned long Data);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __writegsdword(unsigned long Offset, unsigned long Data) { /*__asm__*/ }
|
|
__extension__ void __writegsqword(unsigned long Offset,unsigned long long Data);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __writegsqword(unsigned long Offset, unsigned long long Data) { /*__asm__*/ }
|
|
__extension__ unsigned char _BitScanForward64(unsigned long *Index, unsigned long long Mask);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _BitScanForward64(unsigned long *Index, unsigned long long Mask) { unsigned long long n; unsigned char old; /*__asm__*/ *Index = n; return old; }
|
|
__extension__ unsigned char _BitScanReverse64(unsigned long *Index, unsigned long long Mask);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _BitScanReverse64(unsigned long *Index, unsigned long long Mask) { unsigned long long n; unsigned char old; /*__asm__*/ *Index = n; return old; }
|
|
__extension__ unsigned char _bittest64(long long const *a, long long b);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittest64(const long long *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char _bittestandset64(long long *a, long long b);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittestandset64(long long *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char _bittestandreset64(long long *a, long long b);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittestandreset64(long long *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ unsigned char _bittestandcomplement64(long long *a, long long b);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittestandcomplement64(long long *Base, long long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
__extension__ void __movsq(unsigned long long *Dest, unsigned long long const *Source, size_t Count);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __movsq(unsigned long long *Destination, unsigned long long const *Source, size_t Count) { /*__asm__*/ }
|
|
long _InterlockedAnd(long volatile *, long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedAnd(volatile long *Destination, long Value) { return __sync_fetch_and_and(Destination, Value); }
|
|
long _InterlockedOr(long volatile *, long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedOr(volatile long *Destination, long Value) { return __sync_fetch_and_or(Destination, Value); }
|
|
long _InterlockedXor(long volatile *, long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedXor(volatile long *Destination, long Value) { return __sync_fetch_and_xor(Destination, Value); }
|
|
short _InterlockedIncrement16(short volatile *Addend);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
short _InterlockedIncrement16(short volatile *Addend) {
|
|
return __sync_add_and_fetch(Addend, 1);
|
|
}
|
|
short _InterlockedDecrement16(short volatile *Addend);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
short _InterlockedDecrement16(short volatile *Addend) {
|
|
return __sync_sub_and_fetch(Addend, 1);
|
|
}
|
|
short _InterlockedCompareExchange16(short volatile *Destination, short ExChange, short Comperand);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
short _InterlockedCompareExchange16(short volatile *Destination, short ExChange, short Comperand) {
|
|
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
|
|
}
|
|
long _InterlockedExchangeAdd(long volatile *Addend, long Value);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedExchangeAdd(long volatile *Addend, long Value) {
|
|
return __sync_fetch_and_add(Addend, Value);
|
|
}
|
|
long _InterlockedCompareExchange(long volatile *Destination, long ExChange, long Comperand);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedCompareExchange(long volatile *Destination, long ExChange, long Comperand) {
|
|
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
|
|
}
|
|
long _InterlockedIncrement(long volatile *Addend);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedIncrement(long volatile *Addend) {
|
|
return __sync_add_and_fetch(Addend, 1);
|
|
}
|
|
long _InterlockedDecrement(long volatile *Addend);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedDecrement(long volatile *Addend) {
|
|
return __sync_sub_and_fetch(Addend, 1);
|
|
}
|
|
long _InterlockedAdd(long volatile *Addend, long Value);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedAdd(long volatile *Addend, long Value) {
|
|
return __sync_add_and_fetch(Addend, Value);
|
|
}
|
|
__extension__ long long _InterlockedAdd64(long long volatile *Addend, long long Value);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedAdd64(long long volatile *Addend, long long Value) {
|
|
return __sync_add_and_fetch(Addend, Value);
|
|
}
|
|
long _InterlockedExchange(long volatile *Target, long Value);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long _InterlockedExchange(long volatile *Target, long Value) {
|
|
return __sync_lock_test_and_set(Target, Value);
|
|
}
|
|
__extension__ long long _InterlockedCompareExchange64(long long volatile *Destination, long long ExChange, long long Comperand);
|
|
__extension__ extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
long long _InterlockedCompareExchange64(long long volatile *Destination, long long ExChange, long long Comperand) {
|
|
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
|
|
}
|
|
void *_InterlockedCompareExchangePointer(void * volatile *Destination, void *ExChange, void *Comperand);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void *_InterlockedCompareExchangePointer(void *volatile *Destination, void *ExChange, void *Comperand) {
|
|
return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
|
|
}
|
|
void *_InterlockedExchangePointer(void *volatile *Target,void *Value);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void *_InterlockedExchangePointer(void *volatile *Target,void *Value) {
|
|
return __sync_lock_test_and_set(Target, Value);
|
|
}
|
|
void __int2c(void);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __int2c(void) {
|
|
/*__asm__*/
|
|
}
|
|
void __stosb(unsigned char *, unsigned char, size_t);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __stosb(unsigned char *Dest, unsigned char Data, size_t Count) { /*__asm__*/ }
|
|
void __stosw(unsigned short *, unsigned short, size_t);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __stosw(unsigned short *Dest, unsigned short Data, size_t Count) { /*__asm__*/ }
|
|
void __stosd(unsigned long *, unsigned long, size_t);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __stosd(unsigned long *Dest, unsigned long Data, size_t Count) { /*__asm__*/ }
|
|
unsigned char _interlockedbittestandset(long volatile *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _interlockedbittestandset(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char _interlockedbittestandreset(long volatile *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _interlockedbittestandreset(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char _interlockedbittestandcomplement(long volatile *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _interlockedbittestandcomplement(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char InterlockedBitTestAndSet(volatile long *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char InterlockedBitTestAndSet(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char InterlockedBitTestAndReset(volatile long *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char InterlockedBitTestAndReset(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char InterlockedBitTestAndComplement(volatile long *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char InterlockedBitTestAndComplement(long volatile *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char _BitScanForward(unsigned long *Index, unsigned long Mask);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _BitScanForward(unsigned long *Index, unsigned long Mask) { unsigned long n; unsigned char old; /*__asm__*/ *Index = n; return old; }
|
|
unsigned char _BitScanReverse(unsigned long *Index, unsigned long Mask);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _BitScanReverse(unsigned long *Index, unsigned long Mask) { unsigned long n; unsigned char old; /*__asm__*/ *Index = n; return old; }
|
|
unsigned char _bittest(long const *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittest(const long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char _bittestandset(long *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittestandset(long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char _bittestandreset(long *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittestandreset(long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
unsigned char _bittestandcomplement(long *a, long b);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
unsigned char _bittestandcomplement(long *Base, long Offset) { unsigned char old; /*__asm__*/ return old; }
|
|
void __movsb(unsigned char *Destination, unsigned char const *Source, size_t Count);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __movsb(unsigned char *Destination, unsigned char const *Source, size_t Count) { /*__asm__*/ }
|
|
void __movsw(unsigned short *Dest, unsigned short const *Source, size_t Count);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __movsw(unsigned short *Destination, unsigned short const *Source, size_t Count) { /*__asm__*/ }
|
|
void __movsd(unsigned long *Dest, unsigned long const *Source, size_t Count);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
|
|
void __movsd(unsigned long *Destination, unsigned long const *Source, size_t Count) { /*__asm__*/ }
|
|
|
|
__extension__ typedef unsigned long long POINTER_64_INT;
|
|
typedef signed char INT8,*PINT8;
|
|
typedef signed short INT16,*PINT16;
|
|
typedef signed int INT32,*PINT32;
|
|
__extension__ typedef signed long long INT64,*PINT64;
|
|
typedef unsigned char UINT8,*PUINT8;
|
|
typedef unsigned short UINT16,*PUINT16;
|
|
typedef unsigned int UINT32,*PUINT32;
|
|
__extension__ typedef unsigned long long UINT64,*PUINT64;
|
|
typedef signed int LONG32,*PLONG32;
|
|
typedef unsigned int ULONG32,*PULONG32;
|
|
typedef unsigned int DWORD32,*PDWORD32;
|
|
__extension__ typedef long long INT_PTR,*PINT_PTR;
|
|
__extension__ typedef unsigned long long UINT_PTR,*PUINT_PTR;
|
|
__extension__ typedef long long LONG_PTR,*PLONG_PTR;
|
|
__extension__ typedef unsigned long long ULONG_PTR,*PULONG_PTR;
|
|
__extension__ typedef long long SHANDLE_PTR;
|
|
__extension__ typedef unsigned long long HANDLE_PTR;
|
|
typedef unsigned int UHALF_PTR,*PUHALF_PTR;
|
|
typedef int HALF_PTR,*PHALF_PTR;
|
|
static __inline unsigned long HandleToULong (const void *h) { return ((unsigned long) (ULONG_PTR) h); }
|
|
static __inline long HandleToLong (const void *h) { return ((long) (LONG_PTR) h); }
|
|
static __inline void *ULongToHandle (const unsigned long h) { return ((void *) (UINT_PTR) h); }
|
|
static __inline void *LongToHandle (const long h) { return ((void *) (INT_PTR) h); }
|
|
static __inline unsigned long PtrToUlong (const void *p) { return ((unsigned long) (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 long) (ULONG_PTR) p); }
|
|
static __inline long PtrToLong (const void *p) { return ((long) (LONG_PTR) p); }
|
|
static __inline int PtrToInt (const void *p) { return ((int) (INT_PTR) p); }
|
|
static __inline short PtrToShort (const void *p) { return ((short) (long) (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 long l) { return ((void *) (LONG_PTR)l); }
|
|
static __inline void *ULongToPtr (const unsigned long ul) { return ((void *) (ULONG_PTR)ul); }
|
|
static __inline void *Ptr32ToPtr (const void * p) { return ((void *) (ULONG_PTR) (unsigned long) (ULONG_PTR) p); }
|
|
static __inline void *Handle32ToHandle (const void * h) { return ((void *) (LONG_PTR) (long) (ULONG_PTR) h); }
|
|
static __inline void * PtrToPtr32 (const void *p) { return ((void *) (ULONG_PTR) (unsigned long) (ULONG_PTR) p); }
|
|
__extension__ typedef ULONG_PTR SIZE_T,*PSIZE_T;
|
|
__extension__ typedef LONG_PTR SSIZE_T,*PSSIZE_T;
|
|
__extension__ typedef ULONG_PTR DWORD_PTR,*PDWORD_PTR;
|
|
__extension__ typedef long long LONG64,*PLONG64;
|
|
__extension__ typedef unsigned long long ULONG64,*PULONG64;
|
|
__extension__ typedef unsigned long long DWORD64,*PDWORD64;
|
|
__extension__ typedef ULONG_PTR KAFFINITY;
|
|
__extension__ typedef KAFFINITY *PKAFFINITY;
|
|
typedef void *PVOID;
|
|
typedef void *PVOID64;
|
|
typedef char CHAR;
|
|
typedef short SHORT;
|
|
typedef long LONG;
|
|
typedef int INT;
|
|
typedef wchar_t WCHAR;
|
|
typedef WCHAR *PWCHAR,*LPWCH,*PWCH;
|
|
typedef const WCHAR *LPCWCH,*PCWCH;
|
|
typedef WCHAR *NWPSTR,*LPWSTR,*PWSTR;
|
|
typedef PWSTR *PZPWSTR;
|
|
typedef const PWSTR *PCZPWSTR;
|
|
typedef WCHAR *LPUWSTR,*PUWSTR;
|
|
typedef const WCHAR *LPCWSTR,*PCWSTR;
|
|
typedef PCWSTR *PZPCWSTR;
|
|
typedef const WCHAR *LPCUWSTR,*PCUWSTR;
|
|
typedef WCHAR *PZZWSTR;
|
|
typedef const WCHAR *PCZZWSTR;
|
|
typedef WCHAR *PUZZWSTR;
|
|
typedef const WCHAR *PCUZZWSTR;
|
|
typedef WCHAR *PNZWCH;
|
|
typedef const WCHAR *PCNZWCH;
|
|
typedef WCHAR *PUNZWCH;
|
|
typedef const WCHAR *PCUNZWCH;
|
|
typedef CHAR *PCHAR,*LPCH,*PCH;
|
|
typedef const CHAR *LPCCH,*PCCH;
|
|
typedef CHAR *NPSTR,*LPSTR,*PSTR;
|
|
typedef PSTR *PZPSTR;
|
|
typedef const PSTR *PCZPSTR;
|
|
typedef const CHAR *LPCSTR,*PCSTR;
|
|
typedef PCSTR *PZPCSTR;
|
|
typedef CHAR *PZZSTR;
|
|
typedef const CHAR *PCZZSTR;
|
|
typedef CHAR *PNZCH;
|
|
typedef const CHAR *PCNZCH;
|
|
typedef char TCHAR, *PTCHAR;
|
|
typedef unsigned char TBYTE, *PTBYTE;
|
|
typedef LPSTR LPTCH,PTCH;
|
|
typedef LPCCH LPCTCH,PCTCH;
|
|
typedef LPSTR PTSTR,LPTSTR,PUTSTR,LPUTSTR;
|
|
typedef LPCSTR PCTSTR,LPCTSTR,PCUTSTR,LPCUTSTR;
|
|
typedef PZZSTR PZZTSTR, PUZZTSTR;
|
|
typedef PCZZSTR PCZZTSTR, PCUZZTSTR;
|
|
typedef PZPSTR PZPTSTR;
|
|
typedef PNZCH PNZTCH, PUNZTCH;
|
|
typedef PCNZCH PCNZTCH, PCUNZTCH;
|
|
typedef SHORT *PSHORT;
|
|
typedef LONG *PLONG;
|
|
typedef struct _GROUP_AFFINITY {
|
|
KAFFINITY Mask;
|
|
WORD Group;
|
|
WORD Reserved[3];
|
|
} GROUP_AFFINITY, *PGROUP_AFFINITY;
|
|
typedef void *HANDLE;
|
|
typedef HANDLE *PHANDLE;
|
|
typedef BYTE FCHAR;
|
|
typedef WORD FSHORT;
|
|
typedef DWORD FLONG;
|
|
typedef LONG HRESULT;
|
|
typedef char CCHAR;
|
|
typedef DWORD LCID;
|
|
typedef PDWORD PLCID;
|
|
typedef WORD LANGID;
|
|
typedef enum {
|
|
UNSPECIFIED_COMPARTMENT_ID = 0,
|
|
DEFAULT_COMPARTMENT_ID
|
|
} COMPARTMENT_ID,*PCOMPARTMENT_ID;
|
|
typedef struct _FLOAT128 {
|
|
__extension__ long long LowPart;
|
|
__extension__ long long HighPart;
|
|
} FLOAT128;
|
|
typedef FLOAT128 *PFLOAT128;
|
|
__extension__ typedef long long LONGLONG;
|
|
__extension__ typedef unsigned long long ULONGLONG;
|
|
typedef LONGLONG *PLONGLONG;
|
|
typedef ULONGLONG *PULONGLONG;
|
|
typedef LONGLONG USN;
|
|
typedef union _LARGE_INTEGER {
|
|
__extension__ struct {
|
|
DWORD LowPart;
|
|
LONG HighPart;
|
|
} ;
|
|
struct {
|
|
DWORD LowPart;
|
|
LONG HighPart;
|
|
} u;
|
|
LONGLONG QuadPart;
|
|
} LARGE_INTEGER;
|
|
typedef LARGE_INTEGER *PLARGE_INTEGER;
|
|
typedef union _ULARGE_INTEGER {
|
|
__extension__ struct {
|
|
DWORD LowPart;
|
|
DWORD HighPart;
|
|
} ;
|
|
struct {
|
|
DWORD LowPart;
|
|
DWORD HighPart;
|
|
} u;
|
|
ULONGLONG QuadPart;
|
|
} ULARGE_INTEGER;
|
|
typedef ULARGE_INTEGER *PULARGE_INTEGER;
|
|
typedef struct _LUID {
|
|
DWORD LowPart;
|
|
LONG HighPart;
|
|
} LUID,*PLUID;
|
|
typedef ULONGLONG DWORDLONG;
|
|
typedef DWORDLONG *PDWORDLONG;
|
|
unsigned char __attribute__((__cdecl__)) _rotl8(unsigned char Value,unsigned char Shift);
|
|
unsigned short __attribute__((__cdecl__)) _rotl16(unsigned short Value,unsigned char Shift);
|
|
unsigned char __attribute__((__cdecl__)) _rotr8(unsigned char Value,unsigned char Shift);
|
|
unsigned short __attribute__((__cdecl__)) _rotr16(unsigned short Value,unsigned char Shift);
|
|
|
|
|
|
unsigned int __attribute__((__cdecl__)) _rotl(unsigned int Value,int Shift);
|
|
unsigned int __attribute__((__cdecl__)) _rotr(unsigned int Value,int Shift);
|
|
|
|
|
|
|
|
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) _rotl64(unsigned long long Value,int Shift);
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) _rotr64(unsigned long long Value,int Shift);
|
|
|
|
|
|
typedef BYTE BOOLEAN;
|
|
typedef BOOLEAN *PBOOLEAN;
|
|
typedef struct _LIST_ENTRY {
|
|
struct _LIST_ENTRY *Flink;
|
|
struct _LIST_ENTRY *Blink;
|
|
} LIST_ENTRY,*PLIST_ENTRY,* PRLIST_ENTRY;
|
|
typedef struct _SINGLE_LIST_ENTRY {
|
|
struct _SINGLE_LIST_ENTRY *Next;
|
|
} SINGLE_LIST_ENTRY,*PSINGLE_LIST_ENTRY;
|
|
typedef struct LIST_ENTRY32 {
|
|
DWORD Flink;
|
|
DWORD Blink;
|
|
} LIST_ENTRY32;
|
|
typedef LIST_ENTRY32 *PLIST_ENTRY32;
|
|
typedef struct LIST_ENTRY64 {
|
|
ULONGLONG Flink;
|
|
ULONGLONG Blink;
|
|
} LIST_ENTRY64;
|
|
typedef LIST_ENTRY64 *PLIST_ENTRY64;
|
|
typedef struct _GUID {
|
|
unsigned long Data1;
|
|
unsigned short Data2;
|
|
unsigned short Data3;
|
|
unsigned char Data4[8];
|
|
} GUID;
|
|
typedef GUID *LPGUID;
|
|
typedef const GUID *LPCGUID;
|
|
typedef GUID IID;
|
|
typedef IID *LPIID;
|
|
typedef GUID CLSID;
|
|
typedef CLSID *LPCLSID;
|
|
typedef GUID FMTID;
|
|
typedef FMTID *LPFMTID;
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _memccpy(void *_Dst,const void *_Src,int _Val,size_t _MaxCount);
|
|
void *__attribute__((__cdecl__)) memchr(const void *_Buf ,int _Val,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _memicmp(const void *_Buf1,const void *_Buf2,size_t _Size);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _memicmp_l(const void *_Buf1,const void *_Buf2,size_t _Size,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) memcmp(const void *_Buf1,const void *_Buf2,size_t _Size);
|
|
void * __attribute__((__cdecl__)) memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _Size) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) memcpy_s (void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
|
|
void * __attribute__((__cdecl__)) mempcpy (void *_Dst, const void *_Src, size_t _Size);
|
|
void * __attribute__((__cdecl__)) memset(void *_Dst,int _Val,size_t _Size);
|
|
void * __attribute__((__cdecl__)) memccpy(void *_Dst,const void *_Src,int _Val,size_t _Size) ;
|
|
int __attribute__((__cdecl__)) memicmp(const void *_Buf1,const void *_Buf2,size_t _Size) ;
|
|
char * __attribute__((__cdecl__)) _strset(char *_Str,int _Val) ;
|
|
char * __attribute__((__cdecl__)) _strset_l(char *_Str,int _Val,_locale_t _Locale) ;
|
|
char * __attribute__((__cdecl__)) strcpy(char * __restrict__ _Dest,const char * __restrict__ _Source);
|
|
char * __attribute__((__cdecl__)) strcat(char * __restrict__ _Dest,const char * __restrict__ _Source);
|
|
int __attribute__((__cdecl__)) strcmp(const char *_Str1,const char *_Str2);
|
|
size_t __attribute__((__cdecl__)) strlen(const char *_Str);
|
|
size_t __attribute__((__cdecl__)) strnlen(const char *_Str,size_t _MaxCount);
|
|
void *__attribute__((__cdecl__)) memmove(void *_Dst,const void *_Src,size_t _Size) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strdup(const char *_Src);
|
|
char *__attribute__((__cdecl__)) strchr(const char *_Str,int _Val);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricmp(const char *_Str1,const char *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strcmpi(const char *_Str1,const char *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricmp_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) strcoll(const char *_Str1,const char *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strcoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricoll(const char *_Str1,const char *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _stricoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strncoll (const char *_Str1,const char *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strncoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicoll (const char *_Str1,const char *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
|
|
size_t __attribute__((__cdecl__)) strcspn(const char *_Str,const char *_Control);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strerror(const char *_ErrMsg) ;
|
|
char *__attribute__((__cdecl__)) strerror(int) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strlwr(char *_String) ;
|
|
char *strlwr_l(char *_String,_locale_t _Locale) ;
|
|
char *__attribute__((__cdecl__)) strncat(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) ;
|
|
int __attribute__((__cdecl__)) strncmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _strnicmp_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
|
|
char *strncpy(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strnset(char *_Str,int _Val,size_t _MaxCount) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strnset_l(char *str,int c,size_t count,_locale_t _Locale) ;
|
|
char *__attribute__((__cdecl__)) strpbrk(const char *_Str,const char *_Control);
|
|
char *__attribute__((__cdecl__)) strrchr(const char *_Str,int _Ch);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strrev(char *_Str);
|
|
size_t __attribute__((__cdecl__)) strspn(const char *_Str,const char *_Control);
|
|
char *__attribute__((__cdecl__)) strstr(const char *_Str,const char *_SubStr);
|
|
char *__attribute__((__cdecl__)) strtok(char * __restrict__ _Str,const char * __restrict__ _Delim) ;
|
|
|
|
char *strtok_r(char * __restrict__ _Str, const char * __restrict__ _Delim, char ** __restrict__ __last);
|
|
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strupr(char *_String) ;
|
|
__attribute__ ((__dllimport__)) char *_strupr_l(char *_String,_locale_t _Locale) ;
|
|
size_t __attribute__((__cdecl__)) strxfrm(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _strxfrm_l(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
|
|
char *__attribute__((__cdecl__)) strdup(const char *_Src) ;
|
|
int __attribute__((__cdecl__)) strcmpi(const char *_Str1,const char *_Str2) ;
|
|
int __attribute__((__cdecl__)) stricmp(const char *_Str1,const char *_Str2) ;
|
|
char *__attribute__((__cdecl__)) strlwr(char *_Str) ;
|
|
int __attribute__((__cdecl__)) strnicmp(const char *_Str1,const char *_Str,size_t _MaxCount) ;
|
|
int __attribute__((__cdecl__)) strncasecmp (const char *, const char *, size_t);
|
|
int __attribute__((__cdecl__)) strcasecmp (const char *, const char *);
|
|
char *__attribute__((__cdecl__)) strnset(char *_Str,int _Val,size_t _MaxCount) ;
|
|
char *__attribute__((__cdecl__)) strrev(char *_Str) ;
|
|
char *__attribute__((__cdecl__)) strset(char *_Str,int _Val) ;
|
|
char *__attribute__((__cdecl__)) strupr(char *_Str) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsdup(const wchar_t *_Str);
|
|
wchar_t *__attribute__((__cdecl__)) wcscat(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcschr(const wchar_t *_Str,wchar_t _Ch);
|
|
int __attribute__((__cdecl__)) wcscmp(const wchar_t *_Str1,const wchar_t *_Str2);
|
|
wchar_t *__attribute__((__cdecl__)) wcscpy(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source) ;
|
|
size_t __attribute__((__cdecl__)) wcscspn(const wchar_t *_Str,const wchar_t *_Control);
|
|
size_t __attribute__((__cdecl__)) wcslen(const wchar_t *_Str);
|
|
size_t __attribute__((__cdecl__)) wcsnlen(const wchar_t *_Src,size_t _MaxCount);
|
|
wchar_t *wcsncat(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _Count) ;
|
|
int __attribute__((__cdecl__)) wcsncmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
|
|
wchar_t *wcsncpy(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _Count) ;
|
|
wchar_t *__attribute__((__cdecl__)) _wcsncpy_l(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _Count,_locale_t _Locale) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcspbrk(const wchar_t *_Str,const wchar_t *_Control);
|
|
wchar_t *__attribute__((__cdecl__)) wcsrchr(const wchar_t *_Str,wchar_t _Ch);
|
|
size_t __attribute__((__cdecl__)) wcsspn(const wchar_t *_Str,const wchar_t *_Control);
|
|
wchar_t *__attribute__((__cdecl__)) wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);
|
|
wchar_t *__attribute__((__cdecl__)) wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcserror(int _ErrNum) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) __wcserror(const wchar_t *_Str) ;
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicmp(const wchar_t *_Str1,const wchar_t *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicmp_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicmp_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsnset(wchar_t *_Str,wchar_t _Val,size_t _MaxCount) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsrev(wchar_t *_Str);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsset(wchar_t *_Str,wchar_t _Val) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcslwr(wchar_t *_String) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcsupr(wchar_t *_String) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale) ;
|
|
size_t __attribute__((__cdecl__)) wcsxfrm(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _wcsxfrm_l(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsncoll(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsncoll_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicoll(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wcsnicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
|
|
wchar_t *__attribute__((__cdecl__)) wcsdup(const wchar_t *_Str) ;
|
|
int __attribute__((__cdecl__)) wcsicmp(const wchar_t *_Str1,const wchar_t *_Str2) ;
|
|
int __attribute__((__cdecl__)) wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcsnset(wchar_t *_Str,wchar_t _Val,size_t _MaxCount) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcsrev(wchar_t *_Str) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcsset(wchar_t *_Str,wchar_t _Val) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcslwr(wchar_t *_Str) ;
|
|
wchar_t *__attribute__((__cdecl__)) wcsupr(wchar_t *_Str) ;
|
|
int __attribute__((__cdecl__)) wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2) ;
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strset_s(char *_Dst,size_t _DstSize,int _Value);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strerror_s(char *_Buf,size_t _SizeInBytes,const char *_ErrMsg);
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) strerror_s(char *_Buf,size_t _SizeInBytes,int _ErrNum);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strlwr_s(char *_Str,size_t _Size);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strlwr_s_l(char *_Str,size_t _Size,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strnset_s(char *_Str,size_t _Size,int _Val,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strupr_s(char *_Str,size_t _Size);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strupr_s_l(char *_Str,size_t _Size,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strncat_s(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strncat_s_l(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strcpy_s(char *_Dst, rsize_t _SizeInBytes, const char *_Src);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strncpy_s(char *_Dst, size_t _DstSizeInChars, const char *_Src, size_t _MaxCount);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _strncpy_s_l(char *_Dst, size_t _DstSizeInChars, const char *_Src, size_t _MaxCount, _locale_t _Locale);
|
|
;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) strtok_s(char *_Str,const char *_Delim,char **_Context);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strtok_s_l(char *_Str,const char *_Delim,char **_Context,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) strcat_s(char *_Dst, rsize_t _SizeInBytes, const char * _Src);
|
|
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) memmove_s(void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) wcstok_s(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcserror_s(wchar_t *_Buf,size_t _SizeInWords,int _ErrNum);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) __wcserror_s(wchar_t *_Buffer,size_t _SizeInWords,const wchar_t *_ErrMsg);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsnset_s(wchar_t *_Dst,size_t _DstSizeInWords,wchar_t _Val,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsset_s(wchar_t *_Str,size_t _SizeInWords,wchar_t _Val);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcslwr_s(wchar_t *_Str,size_t _SizeInWords);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcslwr_s_l(wchar_t *_Str,size_t _SizeInWords,_locale_t _Locale);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsupr_s(wchar_t *_Str,size_t _Size);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsupr_s_l(wchar_t *_Str,size_t _Size,_locale_t _Locale);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcscpy_s(wchar_t *_Dst, rsize_t _SizeInWords, const wchar_t *_Src);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcscat_s(wchar_t * _Dst, rsize_t _SizeInWords, const wchar_t *_Src);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcsncat_s(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsncat_s_l(wchar_t *_Dst,size_t _DstSizeInChars,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcsncpy_s(wchar_t *_Dst, size_t _DstSizeInChars, const wchar_t *_Src, size_t _MaxCount);
|
|
;
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsncpy_s_l(wchar_t *_Dst, size_t _DstSizeInChars, const wchar_t *_Src, size_t _MaxCount, _locale_t _Locale);
|
|
;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wcstok_s_l(wchar_t *_Str,const wchar_t *_Delim,wchar_t **_Context,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsset_s_l(wchar_t *_Str,size_t _SizeInChars,unsigned int _Val,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcsnset_s_l(wchar_t *_Str,size_t _SizeInChars,unsigned int _Val, size_t _Count,_locale_t _Locale);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) size_t __attribute__((__cdecl__)) wcsnlen_s(const wchar_t * _src, size_t _count) {
|
|
return _src ? wcsnlen(_src, _count) : 0;
|
|
}
|
|
typedef struct _OBJECTID {
|
|
GUID Lineage;
|
|
DWORD Uniquifier;
|
|
} OBJECTID;
|
|
typedef int EXCEPTION_ROUTINE (struct _EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, struct _CONTEXT *ContextRecord, PVOID DispatcherContext);
|
|
typedef EXCEPTION_ROUTINE *PEXCEPTION_ROUTINE;
|
|
typedef ULONG_PTR KSPIN_LOCK;
|
|
typedef KSPIN_LOCK *PKSPIN_LOCK;
|
|
typedef struct __attribute__ ((__aligned__ (16))) _M128A {
|
|
ULONGLONG Low;
|
|
LONGLONG High;
|
|
} M128A,*PM128A;
|
|
typedef struct __attribute__ ((__aligned__ (16))) _XSAVE_FORMAT {
|
|
WORD ControlWord;
|
|
WORD StatusWord;
|
|
BYTE TagWord;
|
|
BYTE Reserved1;
|
|
WORD ErrorOpcode;
|
|
DWORD ErrorOffset;
|
|
WORD ErrorSelector;
|
|
WORD Reserved2;
|
|
DWORD DataOffset;
|
|
WORD DataSelector;
|
|
WORD Reserved3;
|
|
DWORD MxCsr;
|
|
DWORD MxCsr_Mask;
|
|
M128A FloatRegisters[8];
|
|
M128A XmmRegisters[16];
|
|
BYTE Reserved4[96];
|
|
} XSAVE_FORMAT,*PXSAVE_FORMAT;
|
|
typedef struct __attribute__ ((__aligned__ (8))) _XSAVE_AREA_HEADER {
|
|
DWORD64 Mask;
|
|
DWORD64 Reserved[7];
|
|
} XSAVE_AREA_HEADER,*PXSAVE_AREA_HEADER;
|
|
typedef struct __attribute__ ((__aligned__ (16))) _XSAVE_AREA {
|
|
XSAVE_FORMAT LegacyState;
|
|
XSAVE_AREA_HEADER Header;
|
|
} XSAVE_AREA,*PXSAVE_AREA;
|
|
typedef struct _XSTATE_CONTEXT {
|
|
DWORD64 Mask;
|
|
DWORD Length;
|
|
DWORD Reserved1;
|
|
PXSAVE_AREA Area;
|
|
PVOID Buffer;
|
|
} XSTATE_CONTEXT,*PXSTATE_CONTEXT;
|
|
typedef struct _SCOPE_TABLE_AMD64 {
|
|
DWORD Count;
|
|
struct {
|
|
DWORD BeginAddress;
|
|
DWORD EndAddress;
|
|
DWORD HandlerAddress;
|
|
DWORD JumpTarget;
|
|
} ScopeRecord[1];
|
|
} SCOPE_TABLE_AMD64,*PSCOPE_TABLE_AMD64;
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bsfd (int __X)
|
|
{
|
|
return __builtin_ctz (__X);
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bsrd (int __X)
|
|
{
|
|
return __builtin_ia32_bsrsi (__X);
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bswapd (int __X)
|
|
{
|
|
return __builtin_bswap32 (__X);
|
|
}
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4.2")
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__crc32b (unsigned int __C, unsigned char __V)
|
|
{
|
|
return __builtin_ia32_crc32qi (__C, __V);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__crc32w (unsigned int __C, unsigned short __V)
|
|
{
|
|
return __builtin_ia32_crc32hi (__C, __V);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__crc32d (unsigned int __C, unsigned int __V)
|
|
{
|
|
return __builtin_ia32_crc32si (__C, __V);
|
|
}
|
|
#pragma GCC pop_options
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__popcntd (unsigned int __X)
|
|
{
|
|
return __builtin_popcount (__X);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rdpmc (int __S)
|
|
{
|
|
return __builtin_ia32_rdpmc (__S);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rdtsc (void)
|
|
{
|
|
return __builtin_ia32_rdtsc ();
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rdtscp (unsigned int *__A)
|
|
{
|
|
return __builtin_ia32_rdtscp (__A);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rolb (unsigned char __X, int __C)
|
|
{
|
|
return __builtin_ia32_rolqi (__X, __C);
|
|
}
|
|
extern __inline unsigned short
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rolw (unsigned short __X, int __C)
|
|
{
|
|
return __builtin_ia32_rolhi (__X, __C);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rold (unsigned int __X, int __C)
|
|
{
|
|
__C &= 31;
|
|
return (__X << __C) | (__X >> (-__C & 31));
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rorb (unsigned char __X, int __C)
|
|
{
|
|
return __builtin_ia32_rorqi (__X, __C);
|
|
}
|
|
extern __inline unsigned short
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rorw (unsigned short __X, int __C)
|
|
{
|
|
return __builtin_ia32_rorhi (__X, __C);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rord (unsigned int __X, int __C)
|
|
{
|
|
__C &= 31;
|
|
return (__X >> __C) | (__X << (-__C & 31));
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__pause (void)
|
|
{
|
|
__builtin_ia32_pause ();
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bsfq (long long __X)
|
|
{
|
|
return __builtin_ctzll (__X);
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bsrq (long long __X)
|
|
{
|
|
return __builtin_ia32_bsrdi (__X);
|
|
}
|
|
extern __inline long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bswapq (long long __X)
|
|
{
|
|
return __builtin_bswap64 (__X);
|
|
}
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4.2")
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__crc32q (unsigned long long __C, unsigned long long __V)
|
|
{
|
|
return __builtin_ia32_crc32di (__C, __V);
|
|
}
|
|
#pragma GCC pop_options
|
|
extern __inline long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__popcntq (unsigned long long __X)
|
|
{
|
|
return __builtin_popcountll (__X);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rolq (unsigned long long __X, int __C)
|
|
{
|
|
__C &= 63;
|
|
return (__X << __C) | (__X >> (-__C & 63));
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__rorq (unsigned long long __X, int __C)
|
|
{
|
|
__C &= 63;
|
|
return (__X >> __C) | (__X << (-__C & 63));
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__readeflags (void)
|
|
{
|
|
return __builtin_ia32_readeflags_u64 ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__writeeflags (unsigned long long __X)
|
|
{
|
|
__builtin_ia32_writeeflags_u64 (__X);
|
|
}
|
|
typedef int __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
|
|
typedef int __m64_u __attribute__ ((__vector_size__ (8), __may_alias__, __aligned__ (1)));
|
|
typedef int __v2si __attribute__ ((__vector_size__ (8)));
|
|
typedef short __v4hi __attribute__ ((__vector_size__ (8)));
|
|
typedef char __v8qi __attribute__ ((__vector_size__ (8)));
|
|
typedef long long __v1di __attribute__ ((__vector_size__ (8)));
|
|
typedef float __v2sf __attribute__ ((__vector_size__ (8)));
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_empty (void)
|
|
{
|
|
__builtin_ia32_emms ();
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_empty (void)
|
|
{
|
|
_mm_empty ();
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi32_si64 (int __i)
|
|
{
|
|
return (__m64) __builtin_ia32_vec_init_v2si (__i, 0);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_from_int (int __i)
|
|
{
|
|
return _mm_cvtsi32_si64 (__i);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_from_int64 (long long __i)
|
|
{
|
|
return (__m64) __i;
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64_m64 (long long __i)
|
|
{
|
|
return (__m64) __i;
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64x_si64 (long long __i)
|
|
{
|
|
return (__m64) __i;
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_pi64x (long long __i)
|
|
{
|
|
return (__m64) __i;
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64_si32 (__m64 __i)
|
|
{
|
|
return __builtin_ia32_vec_ext_v2si ((__v2si)__i, 0);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_to_int (__m64 __i)
|
|
{
|
|
return _mm_cvtsi64_si32 (__i);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_to_int64 (__m64 __i)
|
|
{
|
|
return (long long)__i;
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtm64_si64 (__m64 __i)
|
|
{
|
|
return (long long)__i;
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64_si64x (__m64 __i)
|
|
{
|
|
return (long long)__i;
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packs_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_packsswb ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_packsswb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_packs_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packs_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_packssdw ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_packssdw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_packs_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packs_pu16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_packuswb ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_packuswb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_packs_pu16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_punpckhbw ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_punpckhbw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_unpackhi_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_punpckhwd ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_punpckhwd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_unpackhi_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_punpckhdq ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_punpckhdq (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_unpackhi_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_punpcklbw ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_punpcklbw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_unpacklo_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_punpcklwd ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_punpcklwd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_unpacklo_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_punpckldq ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_punpckldq (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_unpacklo_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_add_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_add_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddd ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_add_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_si64 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddq ((__v1di)__m1, (__v1di)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddsb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddsb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_adds_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddsw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddsw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_adds_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_pu8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddusb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddusb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_adds_pu8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_pu16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_paddusw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_paddusw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_adds_pu16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_sub_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_sub_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubd ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_sub_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_si64 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubq ((__v1di)__m1, (__v1di)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubsb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubsb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_subs_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubsw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubsw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_subs_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_pu8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubusb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubusb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_subs_pu8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_pu16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_psubusw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psubusw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_subs_pu16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_madd_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pmaddwd ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmaddwd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_madd_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mulhi_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pmulhw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmulhw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_mulhi_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mullo_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pmullw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmullw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_mullo_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sll_pi16 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psllw ((__v4hi)__m, (__v4hi)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psllw (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_sll_pi16 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_slli_pi16 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psllwi ((__v4hi)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psllwi (__m64 __m, int __count)
|
|
{
|
|
return _mm_slli_pi16 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sll_pi32 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_pslld ((__v2si)__m, (__v2si)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pslld (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_sll_pi32 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_slli_pi32 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_pslldi ((__v2si)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pslldi (__m64 __m, int __count)
|
|
{
|
|
return _mm_slli_pi32 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sll_si64 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psllq ((__v1di)__m, (__v1di)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psllq (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_sll_si64 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_slli_si64 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psllqi ((__v1di)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psllqi (__m64 __m, int __count)
|
|
{
|
|
return _mm_slli_si64 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sra_pi16 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psraw ((__v4hi)__m, (__v4hi)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psraw (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_sra_pi16 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srai_pi16 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrawi ((__v4hi)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrawi (__m64 __m, int __count)
|
|
{
|
|
return _mm_srai_pi16 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sra_pi32 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrad ((__v2si)__m, (__v2si)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrad (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_sra_pi32 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srai_pi32 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psradi ((__v2si)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psradi (__m64 __m, int __count)
|
|
{
|
|
return _mm_srai_pi32 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srl_pi16 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrlw ((__v4hi)__m, (__v4hi)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrlw (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_srl_pi16 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srli_pi16 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrlwi ((__v4hi)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrlwi (__m64 __m, int __count)
|
|
{
|
|
return _mm_srli_pi16 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srl_pi32 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrld ((__v2si)__m, (__v2si)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrld (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_srl_pi32 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srli_pi32 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrldi ((__v2si)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrldi (__m64 __m, int __count)
|
|
{
|
|
return _mm_srli_pi32 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srl_si64 (__m64 __m, __m64 __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrlq ((__v1di)__m, (__v1di)__count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrlq (__m64 __m, __m64 __count)
|
|
{
|
|
return _mm_srl_si64 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srli_si64 (__m64 __m, int __count)
|
|
{
|
|
return (__m64) __builtin_ia32_psrlqi ((__v1di)__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psrlqi (__m64 __m, int __count)
|
|
{
|
|
return _mm_srli_si64 (__m, __count);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_and_si64 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return __builtin_ia32_pand (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pand (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_and_si64 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_andnot_si64 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return __builtin_ia32_pandn (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pandn (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_andnot_si64 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_or_si64 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return __builtin_ia32_por (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_por (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_or_si64 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_xor_si64 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return __builtin_ia32_pxor (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pxor (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_xor_si64 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pcmpeqb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pcmpeqb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_cmpeq_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_pi8 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pcmpgtb ((__v8qi)__m1, (__v8qi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pcmpgtb (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_cmpgt_pi8 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pcmpeqw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pcmpeqw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_cmpeq_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_pi16 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pcmpgtw ((__v4hi)__m1, (__v4hi)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pcmpgtw (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_cmpgt_pi16 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pcmpeqd ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pcmpeqd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_cmpeq_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_pi32 (__m64 __m1, __m64 __m2)
|
|
{
|
|
return (__m64) __builtin_ia32_pcmpgtd ((__v2si)__m1, (__v2si)__m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pcmpgtd (__m64 __m1, __m64 __m2)
|
|
{
|
|
return _mm_cmpgt_pi32 (__m1, __m2);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setzero_si64 (void)
|
|
{
|
|
return (__m64)0LL;
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_pi32 (int __i1, int __i0)
|
|
{
|
|
return (__m64) __builtin_ia32_vec_init_v2si (__i0, __i1);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_pi16 (short __w3, short __w2, short __w1, short __w0)
|
|
{
|
|
return (__m64) __builtin_ia32_vec_init_v4hi (__w0, __w1, __w2, __w3);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_pi8 (char __b7, char __b6, char __b5, char __b4,
|
|
char __b3, char __b2, char __b1, char __b0)
|
|
{
|
|
return (__m64) __builtin_ia32_vec_init_v8qi (__b0, __b1, __b2, __b3,
|
|
__b4, __b5, __b6, __b7);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_pi32 (int __i0, int __i1)
|
|
{
|
|
return _mm_set_pi32 (__i1, __i0);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_pi16 (short __w0, short __w1, short __w2, short __w3)
|
|
{
|
|
return _mm_set_pi16 (__w3, __w2, __w1, __w0);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_pi8 (char __b0, char __b1, char __b2, char __b3,
|
|
char __b4, char __b5, char __b6, char __b7)
|
|
{
|
|
return _mm_set_pi8 (__b7, __b6, __b5, __b4, __b3, __b2, __b1, __b0);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_pi32 (int __i)
|
|
{
|
|
return _mm_set_pi32 (__i, __i);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_pi16 (short __w)
|
|
{
|
|
return _mm_set_pi16 (__w, __w, __w, __w);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_pi8 (char __b)
|
|
{
|
|
return _mm_set_pi8 (__b, __b, __b, __b, __b, __b, __b, __b);
|
|
}*/
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _itow_s (int _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ltow_s (long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ultow_s (unsigned long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wgetenv_s(size_t *_ReturnSize,wchar_t *_DstBuf,size_t _DstSizeInWords,const wchar_t *_VarName);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wdupenv_s(wchar_t **_Buffer,size_t *_BufferSizeInWords,const wchar_t *_VarName);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _i64tow_s(long long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ui64tow_s(unsigned long long _Val,wchar_t *_DstBuf,size_t _SizeInWords,int _Radix);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wmakepath_s(wchar_t *_PathResult,size_t _SizeInWords,const wchar_t *_Drive,const wchar_t *_Dir,const wchar_t *_Filename,const wchar_t *_Ext);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wputenv_s(const wchar_t *_Name,const wchar_t *_Value);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wsearchenv_s(const wchar_t *_Filename,const wchar_t *_EnvVar,wchar_t *_ResultPath,size_t _SizeInWords);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wsplitpath_s(const wchar_t *_FullPath,wchar_t *_Drive,size_t _DriveSizeInWords,wchar_t *_Dir,size_t _DirSizeInWords,wchar_t *_Filename,size_t _FilenameSizeInWords,wchar_t *_Ext,size_t _ExtSizeInWords);
|
|
|
|
#pragma pack(push,_CRT_PACKING)
|
|
typedef int (__attribute__((__cdecl__)) *_onexit_t)(void);
|
|
typedef struct _div_t {
|
|
int quot;
|
|
int rem;
|
|
} div_t;
|
|
typedef struct _ldiv_t {
|
|
long quot;
|
|
long rem;
|
|
} ldiv_t;
|
|
#pragma pack(4)
|
|
typedef struct {
|
|
unsigned char ld[10];
|
|
} _LDOUBLE;
|
|
#pragma pack()
|
|
typedef struct {
|
|
double x;
|
|
} _CRT_DOUBLE;
|
|
typedef struct {
|
|
float f;
|
|
} _CRT_FLOAT;
|
|
|
|
typedef struct {
|
|
long double x;
|
|
} _LONGDOUBLE;
|
|
|
|
#pragma pack(4)
|
|
typedef struct {
|
|
unsigned char ld12[12];
|
|
} _LDBL12;
|
|
#pragma pack()
|
|
typedef void (__attribute__((__cdecl__)) *_purecall_handler)(void);
|
|
__attribute__ ((__dllimport__)) _purecall_handler __attribute__((__cdecl__)) _set_purecall_handler(_purecall_handler _Handler);
|
|
__attribute__ ((__dllimport__)) _purecall_handler __attribute__((__cdecl__)) _get_purecall_handler(void);
|
|
typedef void (__attribute__((__cdecl__)) *_invalid_parameter_handler)(const wchar_t *,const wchar_t *,const wchar_t *,unsigned int,uintptr_t);
|
|
__attribute__ ((__dllimport__)) _invalid_parameter_handler __attribute__((__cdecl__)) _set_invalid_parameter_handler(_invalid_parameter_handler _Handler);
|
|
__attribute__ ((__dllimport__)) _invalid_parameter_handler __attribute__((__cdecl__)) _get_invalid_parameter_handler(void);
|
|
__attribute__ ((__dllimport__)) extern int *__attribute__((__cdecl__)) _errno(void);
|
|
errno_t __attribute__((__cdecl__)) _set_errno(int _Value);
|
|
errno_t __attribute__((__cdecl__)) _get_errno(int *_Value);
|
|
__attribute__ ((__dllimport__)) unsigned long *__attribute__((__cdecl__)) __doserrno(void);
|
|
errno_t __attribute__((__cdecl__)) _set_doserrno(unsigned long _Value);
|
|
errno_t __attribute__((__cdecl__)) _get_doserrno(unsigned long *_Value);
|
|
extern __attribute__((dllimport)) char *_sys_errlist[1];
|
|
extern __attribute__((dllimport)) int _sys_nerr;
|
|
__attribute__ ((__dllimport__)) char ***__attribute__((__cdecl__)) __p___argv(void);
|
|
__attribute__ ((__dllimport__)) int *__attribute__((__cdecl__)) __p__fmode(void);
|
|
errno_t __attribute__((__cdecl__)) _get_pgmptr(char **_Value);
|
|
errno_t __attribute__((__cdecl__)) _get_wpgmptr(wchar_t **_Value);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _set_fmode(int _Mode);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_fmode(int *_PMode);
|
|
extern int * __imp___argc;
|
|
extern char *** __imp___argv;
|
|
extern wchar_t *** __imp___wargv;
|
|
extern char *** __imp__environ;
|
|
extern wchar_t *** __imp__wenviron;
|
|
extern char ** __imp__pgmptr;
|
|
extern wchar_t ** __imp__wpgmptr;
|
|
extern unsigned int * __imp__osplatform;
|
|
extern unsigned int * __imp__osver;
|
|
extern unsigned int * __imp__winver;
|
|
extern unsigned int * __imp__winmajor;
|
|
extern unsigned int * __imp__winminor;
|
|
errno_t __attribute__((__cdecl__)) _get_osplatform(unsigned int *_Value);
|
|
errno_t __attribute__((__cdecl__)) _get_osver(unsigned int *_Value);
|
|
errno_t __attribute__((__cdecl__)) _get_winver(unsigned int *_Value);
|
|
errno_t __attribute__((__cdecl__)) _get_winmajor(unsigned int *_Value);
|
|
errno_t __attribute__((__cdecl__)) _get_winminor(unsigned int *_Value);
|
|
void __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) exit(int _Code) __attribute__ ((__noreturn__));
|
|
void __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) _exit(int _Code) __attribute__ ((__noreturn__));
|
|
void __attribute__((__cdecl__)) _Exit(int) __attribute__ ((__noreturn__));
|
|
|
|
void __attribute__((__cdecl__)) __attribute__ ((__noreturn__)) abort(void);
|
|
|
|
__attribute__ ((__dllimport__)) unsigned int __attribute__((__cdecl__)) _set_abort_behavior(unsigned int _Flags,unsigned int _Mask);
|
|
int __attribute__((__cdecl__)) abs(int _X);
|
|
long __attribute__((__cdecl__)) labs(long _X);
|
|
__extension__ long long __attribute__((__cdecl__)) _abs64(long long);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) long long __attribute__((__cdecl__)) _abs64(long long x) {
|
|
return __builtin_llabs(x);
|
|
}
|
|
int __attribute__((__cdecl__)) atexit(void (__attribute__((__cdecl__)) *)(void));
|
|
double __attribute__((__cdecl__)) atof(const char *_String);
|
|
double __attribute__((__cdecl__)) _atof_l(const char *_String,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) atoi(const char *_Str);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoi_l(const char *_Str,_locale_t _Locale);
|
|
long __attribute__((__cdecl__)) atol(const char *_Str);
|
|
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _atol_l(const char *_Str,_locale_t _Locale);
|
|
void *__attribute__((__cdecl__)) bsearch(const void *_Key,const void *_Base,size_t _NumOfElements,size_t _SizeOfElements,int (__attribute__((__cdecl__)) *_PtFuncCompare)(const void *,const void *));
|
|
void __attribute__((__cdecl__)) qsort(void *_Base,size_t _NumOfElements,size_t _SizeOfElements,int (__attribute__((__cdecl__)) *_PtFuncCompare)(const void *,const void *));
|
|
unsigned short __attribute__((__cdecl__)) _byteswap_ushort(unsigned short _Short);
|
|
unsigned long __attribute__((__cdecl__)) _byteswap_ulong (unsigned long _Long);
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) _byteswap_uint64(unsigned long long _Int64);
|
|
div_t __attribute__((__cdecl__)) div(int _Numerator,int _Denominator);
|
|
char *__attribute__((__cdecl__)) getenv(const char *_VarName) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _itoa(int _Value,char *_Dest,int _Radix);
|
|
__extension__ __attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _i64toa(long long _Val,char *_DstBuf,int _Radix) ;
|
|
__extension__ __attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ui64toa(unsigned long long _Val,char *_DstBuf,int _Radix) ;
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _atoi64(const char *_String);
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _atoi64_l(const char *_String,_locale_t _Locale);
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _strtoi64(const char *_String,char **_EndPtr,int _Radix);
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _strtoi64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);
|
|
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _strtoui64(const char *_String,char **_EndPtr,int _Radix);
|
|
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _strtoui64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);
|
|
ldiv_t __attribute__((__cdecl__)) ldiv(long _Numerator,long _Denominator);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ltoa(long _Value,char *_Dest,int _Radix) ;
|
|
int __attribute__((__cdecl__)) mblen(const char *_Ch,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _mblen_l(const char *_Ch,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrlen(const char *_Str);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrlen_l(const char *_Str,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrnlen(const char *_Str,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstrnlen_l(const char *_Str,size_t _MaxCount,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) mbtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _mbtowc_l(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes,_locale_t _Locale);
|
|
size_t __attribute__((__cdecl__)) mbstowcs(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _mbstowcs_l(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) mkstemp(char *template_name);
|
|
int __attribute__((__cdecl__)) rand(void);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _set_error_mode(int _Mode);
|
|
void __attribute__((__cdecl__)) srand(unsigned int _Seed);
|
|
double __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) strtod(const char * __restrict__ _Str,char ** __restrict__ _EndPtr);
|
|
float __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) strtof(const char * __restrict__ nptr, char ** __restrict__ endptr);
|
|
long double __attribute__((__cdecl__)) __attribute__ ((__nothrow__)) strtold(const char * __restrict__ , char ** __restrict__ );
|
|
extern double __attribute__((__cdecl__)) __attribute__ ((__nothrow__))
|
|
__strtod (const char * __restrict__ , char ** __restrict__);
|
|
float __attribute__((__cdecl__)) __mingw_strtof (const char * __restrict__, char ** __restrict__);
|
|
double __attribute__((__cdecl__)) __mingw_strtod (const char * __restrict__, char ** __restrict__);
|
|
long double __attribute__((__cdecl__)) __mingw_strtold(const char * __restrict__, char ** __restrict__);
|
|
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _strtod_l(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,_locale_t _Locale);
|
|
long __attribute__((__cdecl__)) strtol(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix);
|
|
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _strtol_l(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
|
|
unsigned long __attribute__((__cdecl__)) strtoul(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix);
|
|
__attribute__ ((__dllimport__)) unsigned long __attribute__((__cdecl__)) _strtoul_l(const char * __restrict__ _Str,char ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
|
|
int __attribute__((__cdecl__)) system(const char *_Command);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ultoa(unsigned long _Value,char *_Dest,int _Radix) ;
|
|
int __attribute__((__cdecl__)) wctomb(char *_MbCh,wchar_t _WCh) ;
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wctomb_l(char *_MbCh,wchar_t _WCh,_locale_t _Locale) ;
|
|
size_t __attribute__((__cdecl__)) wcstombs(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount) ;
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _wcstombs_l(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale) ;
|
|
void *__attribute__((__cdecl__)) calloc(size_t _NumOfElements,size_t _SizeOfElements);
|
|
void __attribute__((__cdecl__)) free(void *_Memory);
|
|
void *__attribute__((__cdecl__)) malloc(size_t _Size);
|
|
void *__attribute__((__cdecl__)) realloc(void *_Memory,size_t _NewSize);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _recalloc(void *_Memory,size_t _Count,size_t _Size);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_offset_malloc(size_t _Size,size_t _Alignment,size_t _Offset);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_realloc(void *_Memory,size_t _Size,size_t _Alignment);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_offset_realloc(void *_Memory,size_t _Size,size_t _Alignment,size_t _Offset);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _aligned_offset_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment,size_t _Offset);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _itow(int _Value,wchar_t *_Dest,int _Radix) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _ltow(long _Value,wchar_t *_Dest,int _Radix) ;
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _ultow(unsigned long _Value,wchar_t *_Dest,int _Radix) ;
|
|
double __attribute__((__cdecl__)) __mingw_wcstod(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr);
|
|
float __attribute__((__cdecl__)) __mingw_wcstof(const wchar_t * __restrict__ nptr, wchar_t ** __restrict__ endptr);
|
|
long double __attribute__((__cdecl__)) __mingw_wcstold(const wchar_t * __restrict__, wchar_t ** __restrict__);
|
|
double __attribute__((__cdecl__)) wcstod(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr);
|
|
float __attribute__((__cdecl__)) wcstof(const wchar_t * __restrict__ nptr, wchar_t ** __restrict__ endptr);
|
|
long double __attribute__((__cdecl__)) wcstold(const wchar_t * __restrict__, wchar_t ** __restrict__);
|
|
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _wcstod_l(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,_locale_t _Locale);
|
|
long __attribute__((__cdecl__)) wcstol(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix);
|
|
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _wcstol_l(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
|
|
unsigned long __attribute__((__cdecl__)) wcstoul(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix);
|
|
__attribute__ ((__dllimport__)) unsigned long __attribute__((__cdecl__)) _wcstoul_l(const wchar_t * __restrict__ _Str,wchar_t ** __restrict__ _EndPtr,int _Radix,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wgetenv(const wchar_t *_VarName) ;
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wsystem(const wchar_t *_Command);
|
|
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _wtof(const wchar_t *_Str);
|
|
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _wtof_l(const wchar_t *_Str,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wtoi(const wchar_t *_Str);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wtoi_l(const wchar_t *_Str,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _wtol(const wchar_t *_Str);
|
|
__attribute__ ((__dllimport__)) long __attribute__((__cdecl__)) _wtol_l(const wchar_t *_Str,_locale_t _Locale);
|
|
__extension__ __attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _i64tow(long long _Val,wchar_t *_DstBuf,int _Radix) ;
|
|
__extension__ __attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _ui64tow(unsigned long long _Val,wchar_t *_DstBuf,int _Radix) ;
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wtoi64(const wchar_t *_Str);
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wtoi64_l(const wchar_t *_Str,_locale_t _Locale);
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wcstoi64(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
|
|
__extension__ __attribute__ ((__dllimport__)) long long __attribute__((__cdecl__)) _wcstoi64_l(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
|
|
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _wcstoui64(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
|
|
__extension__ __attribute__ ((__dllimport__)) unsigned long long __attribute__((__cdecl__)) _wcstoui64_l(const wchar_t *_Str ,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _putenv(const char *_EnvString);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _wputenv(const wchar_t *_EnvString);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _fullpath(char *_FullPath,const char *_Path,size_t _SizeInBytes);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ecvt(double _Val,int _NumOfDigits,int *_PtDec,int *_PtSign) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _fcvt(double _Val,int _NumOfDec,int *_PtDec,int *_PtSign) ;
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _gcvt(double _Val,int _NumOfDigits,char *_DstBuf) ;
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atodbl(_CRT_DOUBLE *_Result,char *_Str);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoldbl(_LDOUBLE *_Result,char *_Str);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoflt(_CRT_FLOAT *_Result,char *_Str);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atodbl_l(_CRT_DOUBLE *_Result,char *_Str,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoldbl_l(_LDOUBLE *_Result,char *_Str,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _atoflt_l(_CRT_FLOAT *_Result,char *_Str,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _makepath(char *_Path,const char *_Drive,const char *_Dir,const char *_Filename,const char *_Ext);
|
|
_onexit_t __attribute__((__cdecl__)) _onexit(_onexit_t _Func);
|
|
void __attribute__((__cdecl__)) perror(const char *_ErrMsg);
|
|
|
|
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) _rotl64(unsigned long long _Val,int _Shift);
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) _rotr64(unsigned long long Value,int Shift);
|
|
|
|
|
|
|
|
|
|
unsigned int __attribute__((__cdecl__)) _rotr(unsigned int _Val,int _Shift);
|
|
unsigned int __attribute__((__cdecl__)) _rotl(unsigned int _Val,int _Shift);
|
|
|
|
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) _rotr64(unsigned long long _Val,int _Shift);
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _searchenv(const char *_Filename,const char *_EnvVar,char *_ResultPath) ;
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _splitpath(const char *_FullPath,char *_Drive,char *_Dir,char *_Filename,char *_Ext) ;
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _swab(char *_Buf1,char *_Buf2,int _SizeInBytes);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wfullpath(wchar_t *_FullPath,const wchar_t *_Path,size_t _SizeInWords);
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wmakepath(wchar_t *_ResultPath,const wchar_t *_Drive,const wchar_t *_Dir,const wchar_t *_Filename,const wchar_t *_Ext);
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wperror(const wchar_t *_ErrMsg);
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wsearchenv(const wchar_t *_Filename,const wchar_t *_EnvVar,wchar_t *_ResultPath) ;
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _wsplitpath(const wchar_t *_FullPath,wchar_t *_Drive,wchar_t *_Dir,wchar_t *_Filename,wchar_t *_Ext) ;
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _beep(unsigned _Frequency,unsigned _Duration) __attribute__ ((__deprecated__));
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _seterrormode(int _Mode) __attribute__ ((__deprecated__));
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _sleep(unsigned long _Duration) __attribute__ ((__deprecated__));
|
|
char *__attribute__((__cdecl__)) ecvt(double _Val,int _NumOfDigits,int *_PtDec,int *_PtSign) ;
|
|
char *__attribute__((__cdecl__)) fcvt(double _Val,int _NumOfDec,int *_PtDec,int *_PtSign) ;
|
|
char *__attribute__((__cdecl__)) gcvt(double _Val,int _NumOfDigits,char *_DstBuf) ;
|
|
char *__attribute__((__cdecl__)) itoa(int _Val,char *_DstBuf,int _Radix) ;
|
|
char *__attribute__((__cdecl__)) ltoa(long _Val,char *_DstBuf,int _Radix) ;
|
|
int __attribute__((__cdecl__)) putenv(const char *_EnvString) ;
|
|
void __attribute__((__cdecl__)) swab(char *_Buf1,char *_Buf2,int _SizeInBytes) ;
|
|
char *__attribute__((__cdecl__)) ultoa(unsigned long _Val,char *_Dstbuf,int _Radix) ;
|
|
_onexit_t __attribute__((__cdecl__)) onexit(_onexit_t _Func);
|
|
typedef struct { __extension__ long long quot, rem; } lldiv_t;
|
|
__extension__ lldiv_t __attribute__((__cdecl__)) lldiv(long long, long long);
|
|
__extension__ long long __attribute__((__cdecl__)) llabs(long long);
|
|
__extension__ long long __attribute__((__cdecl__)) strtoll(const char * __restrict__, char ** __restrict, int);
|
|
__extension__ unsigned long long __attribute__((__cdecl__)) strtoull(const char * __restrict__, char ** __restrict__, int);
|
|
__extension__ long long __attribute__((__cdecl__)) atoll (const char *);
|
|
#pragma pack(pop)
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _dupenv_s(char **_PBuffer,size_t *_PBufferSizeInBytes,const char *_VarName);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _itoa_s(int _Value,char *_DstBuf,size_t _Size,int _Radix);
|
|
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _i64toa_s(long long _Val,char *_DstBuf,size_t _Size,int _Radix);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ui64toa_s(unsigned long long _Val,char *_DstBuf,size_t _Size,int _Radix);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ltoa_s(long _Val,char *_DstBuf,size_t _Size,int _Radix);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) mbstowcs_s(size_t *_PtNumOfCharConverted,wchar_t *_DstBuf,size_t _SizeInWords,const char *_SrcBuf,size_t _MaxCount);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _mbstowcs_s_l(size_t *_PtNumOfCharConverted,wchar_t *_DstBuf,size_t _SizeInWords,const char *_SrcBuf,size_t _MaxCount,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ultoa_s(unsigned long _Val,char *_DstBuf,size_t _Size,int _Radix);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wctomb_s_l(int *_SizeConverted,char *_MbCh,size_t _SizeInBytes,wchar_t _WCh,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) wcstombs_s(size_t *_PtNumOfCharConverted,char *_Dst,size_t _DstSizeInBytes,const wchar_t *_Src,size_t _MaxCountInBytes);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _wcstombs_s_l(size_t *_PtNumOfCharConverted,char *_Dst,size_t _DstSizeInBytes,const wchar_t *_Src,size_t _MaxCountInBytes,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ecvt_s(char *_DstBuf,size_t _Size,double _Val,int _NumOfDights,int *_PtDec,int *_PtSign);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _fcvt_s(char *_DstBuf,size_t _Size,double _Val,int _NumOfDec,int *_PtDec,int *_PtSign);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _gcvt_s(char *_DstBuf,size_t _Size,double _Val,int _NumOfDigits);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _makepath_s(char *_PathResult,size_t _Size,const char *_Drive,const char *_Dir,const char *_Filename,const char *_Ext);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _putenv_s(const char *_Name,const char *_Value);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _searchenv_s(const char *_Filename,const char *_EnvVar,char *_ResultPath,size_t _SizeInBytes);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _splitpath_s(const char *_FullPath,char *_Drive,size_t _DriveSize,char *_Dir,size_t _DirSize,char *_Filename,size_t _FilenameSize,char *_Ext,size_t _ExtSize);
|
|
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) qsort_s(void *_Base,size_t _NumOfElements,size_t _SizeOfElements,int (__attribute__((__cdecl__)) *_PtFuncCompare)(void *,const void *,const void *),void *_Context);
|
|
#pragma pack(push,_CRT_PACKING)
|
|
typedef struct _heapinfo {
|
|
int *_pentry;
|
|
size_t _size;
|
|
int _useflag;
|
|
} _HEAPINFO;
|
|
extern unsigned int _amblksiz;
|
|
void * __mingw_aligned_malloc (size_t _Size, size_t _Alignment);
|
|
void __mingw_aligned_free (void *_Memory);
|
|
void * __mingw_aligned_offset_realloc (void *_Memory, size_t _Size, size_t _Alignment, size_t _Offset);
|
|
void * __mingw_aligned_realloc (void *_Memory, size_t _Size, size_t _Offset);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _resetstkoflw (void);
|
|
__attribute__ ((__dllimport__)) unsigned long __attribute__((__cdecl__)) _set_malloc_crt_max_wait(unsigned long _NewValue);
|
|
__attribute__ ((__dllimport__)) void *__attribute__((__cdecl__)) _expand(void *_Memory,size_t _NewSize);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _msize(void *_Memory);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _get_sbh_threshold(void);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _set_sbh_threshold(size_t _NewValue);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _set_amblksiz(size_t _Value);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_amblksiz(size_t *_Value);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapadd(void *_Memory,size_t _Size);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapchk(void);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapmin(void);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapset(unsigned int _Fill);
|
|
__attribute__ ((__dllimport__)) int __attribute__((__cdecl__)) _heapwalk(_HEAPINFO *_EntryInfo);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _heapused(size_t *_Used,size_t *_Commit);
|
|
__attribute__ ((__dllimport__)) intptr_t __attribute__((__cdecl__)) _get_heap_handle(void);
|
|
static __inline void *_MarkAllocaS(void *_Ptr,unsigned int _Marker) {
|
|
if(_Ptr) {
|
|
*((unsigned int*)_Ptr) = _Marker;
|
|
_Ptr = (char*)_Ptr + 16;
|
|
}
|
|
return _Ptr;
|
|
}
|
|
static __inline void __attribute__((__cdecl__)) _freea(void *_Memory) {
|
|
unsigned int _Marker;
|
|
if(_Memory) {
|
|
_Memory = (char*)_Memory - 16;
|
|
_Marker = *(unsigned int *)_Memory;
|
|
if(_Marker==0xDDDD) {
|
|
free(_Memory);
|
|
}
|
|
}
|
|
}
|
|
#pragma pack(pop)
|
|
static __inline__ void *
|
|
_aligned_malloc(size_t __size,size_t __align)
|
|
{
|
|
void * __malloc_ptr;
|
|
void * __aligned_ptr;
|
|
if (__align & (__align - 1))
|
|
{
|
|
(*_errno()) = 22;
|
|
return ((void *) 0);
|
|
}
|
|
if (__size == 0)
|
|
return ((void *) 0);
|
|
if (__align < 2 * sizeof (void *))
|
|
__align = 2 * sizeof (void *);
|
|
__malloc_ptr = malloc (__size + __align);
|
|
if (!__malloc_ptr)
|
|
return ((void *) 0);
|
|
__aligned_ptr = (void *) (((size_t) __malloc_ptr + __align)
|
|
& ~((size_t) (__align) - 1));
|
|
((void **) __aligned_ptr)[-1] = __malloc_ptr;
|
|
return __aligned_ptr;
|
|
}
|
|
static __inline__ void
|
|
_aligned_free(void *__aligned_ptr)
|
|
{
|
|
if (__aligned_ptr)
|
|
free (((void **) __aligned_ptr)[-1]);
|
|
}
|
|
enum _mm_hint
|
|
{
|
|
_MM_HINT_ET0 = 7,
|
|
_MM_HINT_ET1 = 6,
|
|
_MM_HINT_T0 = 3,
|
|
_MM_HINT_T1 = 2,
|
|
_MM_HINT_T2 = 1,
|
|
_MM_HINT_NTA = 0
|
|
};
|
|
typedef float __m128 __attribute__ ((__vector_size__ (16), __may_alias__));
|
|
typedef float __m128_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1)));
|
|
typedef float __v4sf __attribute__ ((__vector_size__ (16)));
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_undefined_ps (void)
|
|
{
|
|
__m128 __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setzero_ps (void)
|
|
{
|
|
return __extension__ (__m128){ 0.0f, 0.0f, 0.0f, 0.0f };
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_addss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_subss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_mulss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_div_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_divss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sqrt_ss (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_sqrtss ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rcp_ss (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rcpss ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rsqrt_ss (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrtss ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_minss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_maxss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) ((__v4sf)__A + (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) ((__v4sf)__A - (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) ((__v4sf)__A * (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_div_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) ((__v4sf)__A / (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sqrt_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_sqrtps ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rcp_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rcpps ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rsqrt_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrtps ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_minps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_maxps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_and_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_andps (__A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_andnot_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_andnps (__A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_or_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_orps (__A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_xor_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_xorps (__A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpeqss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpltss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpless ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movss ((__v4sf) __A,
|
|
(__v4sf)
|
|
__builtin_ia32_cmpltss ((__v4sf) __B,
|
|
(__v4sf)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movss ((__v4sf) __A,
|
|
(__v4sf)
|
|
__builtin_ia32_cmpless ((__v4sf) __B,
|
|
(__v4sf)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpneqss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnlt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpnltss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnle_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpnless ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpngt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movss ((__v4sf) __A,
|
|
(__v4sf)
|
|
__builtin_ia32_cmpnltss ((__v4sf) __B,
|
|
(__v4sf)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnge_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movss ((__v4sf) __A,
|
|
(__v4sf)
|
|
__builtin_ia32_cmpnless ((__v4sf) __B,
|
|
(__v4sf)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpord_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpordss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpunord_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpunordss ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpeqps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpltps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpleps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpgtps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpgeps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpneqps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnlt_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpnltps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnle_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpnleps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpngt_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpngtps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnge_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpngeps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpord_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpordps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpunord_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cmpunordps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comieq_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_comieq ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comilt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_comilt ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comile_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_comile ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comigt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_comigt ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comige_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_comige ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comineq_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_comineq ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomieq_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_ucomieq ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomilt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_ucomilt ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomile_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_ucomile ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomigt_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_ucomigt ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomige_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_ucomige ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomineq_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return __builtin_ia32_ucomineq ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_si32 (__m128 __A)
|
|
{
|
|
return __builtin_ia32_cvtss2si ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvt_ss2si (__m128 __A)
|
|
{
|
|
return _mm_cvtss_si32 (__A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_si64 (__m128 __A)
|
|
{
|
|
return __builtin_ia32_cvtss2si64 ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_si64x (__m128 __A)
|
|
{
|
|
return __builtin_ia32_cvtss2si64 ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_pi32 (__m128 __A)
|
|
{
|
|
return (__m64) __builtin_ia32_cvtps2pi ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvt_ps2pi (__m128 __A)
|
|
{
|
|
return _mm_cvtps_pi32 (__A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_si32 (__m128 __A)
|
|
{
|
|
return __builtin_ia32_cvttss2si ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtt_ss2si (__m128 __A)
|
|
{
|
|
return _mm_cvttss_si32 (__A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_si64 (__m128 __A)
|
|
{
|
|
return __builtin_ia32_cvttss2si64 ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_si64x (__m128 __A)
|
|
{
|
|
return __builtin_ia32_cvttss2si64 ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttps_pi32 (__m128 __A)
|
|
{
|
|
return (__m64) __builtin_ia32_cvttps2pi ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtt_ps2pi (__m128 __A)
|
|
{
|
|
return _mm_cvttps_pi32 (__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi32_ss (__m128 __A, int __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtsi2ss ((__v4sf) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvt_si2ss (__m128 __A, int __B)
|
|
{
|
|
return _mm_cvtsi32_ss (__A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64_ss (__m128 __A, long long __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtsi642ss ((__v4sf) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64x_ss (__m128 __A, long long __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtsi642ss ((__v4sf) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpi32_ps (__m128 __A, __m64 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtpi2ps ((__v4sf) __A, (__v2si)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvt_pi2ps (__m128 __A, __m64 __B)
|
|
{
|
|
return _mm_cvtpi32_ps (__A, __B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpi16_ps (__m64 __A)
|
|
{
|
|
__v4hi __sign;
|
|
__v2si __hisi, __losi;
|
|
__v4sf __zero, __ra, __rb;
|
|
__sign = __builtin_ia32_pcmpgtw ((__v4hi)0LL, (__v4hi)__A);
|
|
__losi = (__v2si) __builtin_ia32_punpcklwd ((__v4hi)__A, __sign);
|
|
__hisi = (__v2si) __builtin_ia32_punpckhwd ((__v4hi)__A, __sign);
|
|
__zero = (__v4sf) _mm_setzero_ps ();
|
|
__ra = __builtin_ia32_cvtpi2ps (__zero, __losi);
|
|
__rb = __builtin_ia32_cvtpi2ps (__ra, __hisi);
|
|
return (__m128) __builtin_ia32_movlhps (__ra, __rb);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpu16_ps (__m64 __A)
|
|
{
|
|
__v2si __hisi, __losi;
|
|
__v4sf __zero, __ra, __rb;
|
|
__losi = (__v2si) __builtin_ia32_punpcklwd ((__v4hi)__A, (__v4hi)0LL);
|
|
__hisi = (__v2si) __builtin_ia32_punpckhwd ((__v4hi)__A, (__v4hi)0LL);
|
|
__zero = (__v4sf) _mm_setzero_ps ();
|
|
__ra = __builtin_ia32_cvtpi2ps (__zero, __losi);
|
|
__rb = __builtin_ia32_cvtpi2ps (__ra, __hisi);
|
|
return (__m128) __builtin_ia32_movlhps (__ra, __rb);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpi8_ps (__m64 __A)
|
|
{
|
|
__v8qi __sign;
|
|
__sign = __builtin_ia32_pcmpgtb ((__v8qi)0LL, (__v8qi)__A);
|
|
__A = (__m64) __builtin_ia32_punpcklbw ((__v8qi)__A, __sign);
|
|
return _mm_cvtpi16_ps(__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpu8_ps(__m64 __A)
|
|
{
|
|
__A = (__m64) __builtin_ia32_punpcklbw ((__v8qi)__A, (__v8qi)0LL);
|
|
return _mm_cvtpu16_ps(__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpi32x2_ps(__m64 __A, __m64 __B)
|
|
{
|
|
__v4sf __zero = (__v4sf) _mm_setzero_ps ();
|
|
__v4sf __sfa = __builtin_ia32_cvtpi2ps (__zero, (__v2si)__A);
|
|
__v4sf __sfb = __builtin_ia32_cvtpi2ps (__sfa, (__v2si)__B);
|
|
return (__m128) __builtin_ia32_movlhps (__sfa, __sfb);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_pi16(__m128 __A)
|
|
{
|
|
__v4sf __hisf = (__v4sf)__A;
|
|
__v4sf __losf = __builtin_ia32_movhlps (__hisf, __hisf);
|
|
__v2si __hisi = __builtin_ia32_cvtps2pi (__hisf);
|
|
__v2si __losi = __builtin_ia32_cvtps2pi (__losf);
|
|
return (__m64) __builtin_ia32_packssdw (__hisi, __losi);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_pi8(__m128 __A)
|
|
{
|
|
__v4hi __tmp = (__v4hi) _mm_cvtps_pi16 (__A);
|
|
return (__m64) __builtin_ia32_packsswb (__tmp, (__v4hi)0LL);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_unpckhps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_unpcklps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadh_pi (__m128 __A, __m64 const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadhps ((__v4sf)__A, (const __v2sf *)__P);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storeh_pi (__m64 *__P, __m128 __A)
|
|
{
|
|
__builtin_ia32_storehps ((__v2sf *)__P, (__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movehl_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movhlps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movelh_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movlhps ((__v4sf)__A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadl_pi (__m128 __A, __m64 const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadlps ((__v4sf)__A, (const __v2sf *)__P);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storel_pi (__m64 *__P, __m128 __A)
|
|
{
|
|
__builtin_ia32_storelps ((__v2sf *)__P, (__v4sf)__A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movemask_ps (__m128 __A)
|
|
{
|
|
return __builtin_ia32_movmskps ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_getcsr (void)
|
|
{
|
|
return __builtin_ia32_stmxcsr ();
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_GET_EXCEPTION_STATE (void)
|
|
{
|
|
return _mm_getcsr() & 0x003f;
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_GET_EXCEPTION_MASK (void)
|
|
{
|
|
return _mm_getcsr() & 0x1f80;
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_GET_ROUNDING_MODE (void)
|
|
{
|
|
return _mm_getcsr() & 0x6000;
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_GET_FLUSH_ZERO_MODE (void)
|
|
{
|
|
return _mm_getcsr() & 0x8000;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setcsr (unsigned int __I)
|
|
{
|
|
__builtin_ia32_ldmxcsr (__I);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_SET_EXCEPTION_STATE(unsigned int __mask)
|
|
{
|
|
_mm_setcsr((_mm_getcsr() & ~0x003f) | __mask);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_SET_EXCEPTION_MASK (unsigned int __mask)
|
|
{
|
|
_mm_setcsr((_mm_getcsr() & ~0x1f80) | __mask);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_SET_ROUNDING_MODE (unsigned int __mode)
|
|
{
|
|
_mm_setcsr((_mm_getcsr() & ~0x6000) | __mode);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_MM_SET_FLUSH_ZERO_MODE (unsigned int __mode)
|
|
{
|
|
_mm_setcsr((_mm_getcsr() & ~0x8000) | __mode);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_ss (float __F)
|
|
{
|
|
return __extension__ (__m128)(__v4sf){ __F, 0.0f, 0.0f, 0.0f };
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_ps (float __F)
|
|
{
|
|
return __extension__ (__m128)(__v4sf){ __F, __F, __F, __F };
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_ps1 (float __F)
|
|
{
|
|
return _mm_set1_ps (__F);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_ss (float const *__P)
|
|
{
|
|
return _mm_set_ss (*__P);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load1_ps (float const *__P)
|
|
{
|
|
return _mm_set1_ps (*__P);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_ps1 (float const *__P)
|
|
{
|
|
return _mm_load1_ps (__P);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_ps (float const *__P)
|
|
{
|
|
return *(__m128 *)__P;
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadu_ps (float const *__P)
|
|
{
|
|
return *(__m128_u *)__P;
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadr_ps (float const *__P)
|
|
{
|
|
__v4sf __tmp = *(__v4sf *)__P;
|
|
return (__m128) __builtin_ia32_shufps (__tmp, __tmp, (((0) << 6) | ((1) << 4) | ((2) << 2) | (3)));
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_ps (const float __Z, const float __Y, const float __X, const float __W)
|
|
{
|
|
return __extension__ (__m128)(__v4sf){ __W, __X, __Y, __Z };
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_ps (float __Z, float __Y, float __X, float __W)
|
|
{
|
|
return __extension__ (__m128)(__v4sf){ __Z, __Y, __X, __W };
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_ss (float *__P, __m128 __A)
|
|
{
|
|
*__P = ((__v4sf)__A)[0];
|
|
}*/
|
|
/*extern __inline float __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_f32 (__m128 __A)
|
|
{
|
|
return ((__v4sf)__A)[0];
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_ps (float *__P, __m128 __A)
|
|
{
|
|
*(__m128 *)__P = __A;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storeu_ps (float *__P, __m128 __A)
|
|
{
|
|
*(__m128_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store1_ps (float *__P, __m128 __A)
|
|
{
|
|
__v4sf __va = (__v4sf)__A;
|
|
__v4sf __tmp = __builtin_ia32_shufps (__va, __va, (((0) << 6) | ((0) << 4) | ((0) << 2) | (0)));
|
|
_mm_storeu_ps (__P, __tmp);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_ps1 (float *__P, __m128 __A)
|
|
{
|
|
_mm_store1_ps (__P, __A);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storer_ps (float *__P, __m128 __A)
|
|
{
|
|
__v4sf __va = (__v4sf)__A;
|
|
__v4sf __tmp = __builtin_ia32_shufps (__va, __va, (((0) << 6) | ((1) << 4) | ((2) << 2) | (3)));
|
|
_mm_store_ps (__P, __tmp);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_move_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_shuffle ((__v4sf)__A, (__v4sf)__B,
|
|
__extension__
|
|
(__attribute__((__vector_size__ (16))) int)
|
|
{4,1,2,3});
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_pi16 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pmaxsw ((__v4hi)__A, (__v4hi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmaxsw (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_max_pi16 (__A, __B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_pu8 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pmaxub ((__v8qi)__A, (__v8qi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmaxub (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_max_pu8 (__A, __B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_pi16 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pminsw ((__v4hi)__A, (__v4hi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pminsw (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_min_pi16 (__A, __B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_pu8 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pminub ((__v8qi)__A, (__v8qi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pminub (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_min_pu8 (__A, __B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movemask_pi8 (__m64 __A)
|
|
{
|
|
return __builtin_ia32_pmovmskb ((__v8qi)__A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmovmskb (__m64 __A)
|
|
{
|
|
return _mm_movemask_pi8 (__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mulhi_pu16 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pmulhuw ((__v4hi)__A, (__v4hi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmulhuw (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_mulhi_pu16 (__A, __B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskmove_si64 (__m64 __A, __m64 __N, char *__P)
|
|
{
|
|
__builtin_ia32_maskmovq ((__v8qi)__A, (__v8qi)__N, __P);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_maskmovq (__m64 __A, __m64 __N, char *__P)
|
|
{
|
|
_mm_maskmove_si64 (__A, __N, __P);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_avg_pu8 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pavgb ((__v8qi)__A, (__v8qi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pavgb (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_avg_pu8 (__A, __B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_avg_pu16 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_pavgw ((__v4hi)__A, (__v4hi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pavgw (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_avg_pu16 (__A, __B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sad_pu8 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64) __builtin_ia32_psadbw ((__v8qi)__A, (__v8qi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_psadbw (__m64 __A, __m64 __B)
|
|
{
|
|
return _mm_sad_pu8 (__A, __B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_pi (__m64 *__P, __m64 __A)
|
|
{
|
|
__builtin_ia32_movntq ((unsigned long long *)__P, (unsigned long long)__A);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_ps (float *__P, __m128 __A)
|
|
{
|
|
__builtin_ia32_movntps (__P, (__v4sf)__A);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sfence (void)
|
|
{
|
|
__builtin_ia32_sfence ();
|
|
}*/
|
|
typedef double __v2df __attribute__ ((__vector_size__ (16)));
|
|
typedef long long __v2di __attribute__ ((__vector_size__ (16)));
|
|
typedef unsigned long long __v2du __attribute__ ((__vector_size__ (16)));
|
|
typedef int __v4si __attribute__ ((__vector_size__ (16)));
|
|
typedef unsigned int __v4su __attribute__ ((__vector_size__ (16)));
|
|
typedef short __v8hi __attribute__ ((__vector_size__ (16)));
|
|
typedef unsigned short __v8hu __attribute__ ((__vector_size__ (16)));
|
|
typedef char __v16qi __attribute__ ((__vector_size__ (16)));
|
|
typedef signed char __v16qs __attribute__ ((__vector_size__ (16)));
|
|
typedef unsigned char __v16qu __attribute__ ((__vector_size__ (16)));
|
|
typedef long long __m128i __attribute__ ((__vector_size__ (16), __may_alias__));
|
|
typedef double __m128d __attribute__ ((__vector_size__ (16), __may_alias__));
|
|
typedef long long __m128i_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1)));
|
|
typedef double __m128d_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1)));
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_sd (double __F)
|
|
{
|
|
return __extension__ (__m128d){ __F, 0.0 };
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_pd (double __F)
|
|
{
|
|
return __extension__ (__m128d){ __F, __F };
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_pd1 (double __F)
|
|
{
|
|
return _mm_set1_pd (__F);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_pd (double __W, double __X)
|
|
{
|
|
return __extension__ (__m128d){ __X, __W };
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_pd (double __W, double __X)
|
|
{
|
|
return __extension__ (__m128d){ __W, __X };
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_undefined_pd (void)
|
|
{
|
|
__m128d __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setzero_pd (void)
|
|
{
|
|
return __extension__ (__m128d){ 0.0, 0.0 };
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_move_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __extension__ (__m128d) __builtin_shuffle ((__v2df)__A, (__v2df)__B, (__v2di){2, 1});
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_pd (double const *__P)
|
|
{
|
|
return *(__m128d *)__P;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadu_pd (double const *__P)
|
|
{
|
|
return *(__m128d_u *)__P;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load1_pd (double const *__P)
|
|
{
|
|
return _mm_set1_pd (*__P);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_sd (double const *__P)
|
|
{
|
|
return _mm_set_sd (*__P);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_pd1 (double const *__P)
|
|
{
|
|
return _mm_load1_pd (__P);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadr_pd (double const *__P)
|
|
{
|
|
__m128d __tmp = _mm_load_pd (__P);
|
|
return __builtin_ia32_shufpd (__tmp, __tmp, (((0) << 1) | (1)));
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_pd (double *__P, __m128d __A)
|
|
{
|
|
*(__m128d *)__P = __A;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storeu_pd (double *__P, __m128d __A)
|
|
{
|
|
*(__m128d_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_sd (double *__P, __m128d __A)
|
|
{
|
|
*__P = ((__v2df)__A)[0];
|
|
}*/
|
|
/*extern __inline double __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_f64 (__m128d __A)
|
|
{
|
|
return ((__v2df)__A)[0];
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storel_pd (double *__P, __m128d __A)
|
|
{
|
|
_mm_store_sd (__P, __A);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storeh_pd (double *__P, __m128d __A)
|
|
{
|
|
*__P = ((__v2df)__A)[1];
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store1_pd (double *__P, __m128d __A)
|
|
{
|
|
_mm_store_pd (__P, __builtin_ia32_shufpd (__A, __A, (((0) << 1) | (0))));
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_pd1 (double *__P, __m128d __A)
|
|
{
|
|
_mm_store1_pd (__P, __A);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storer_pd (double *__P, __m128d __A)
|
|
{
|
|
_mm_store_pd (__P, __builtin_ia32_shufpd (__A, __A, (((0) << 1) | (1))));
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi128_si32 (__m128i __A)
|
|
{
|
|
return __builtin_ia32_vec_ext_v4si ((__v4si)__A, 0);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi128_si64 (__m128i __A)
|
|
{
|
|
return ((__v2di)__A)[0];
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi128_si64x (__m128i __A)
|
|
{
|
|
return ((__v2di)__A)[0];
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) ((__v2df)__A + (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_addsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) ((__v2df)__A - (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_subsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) ((__v2df)__A * (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_mulsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_div_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) ((__v2df)__A / (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_div_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_divsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sqrt_pd (__m128d __A)
|
|
{
|
|
return (__m128d)__builtin_ia32_sqrtpd ((__v2df)__A);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sqrt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
__v2df __tmp = __builtin_ia32_movsd ((__v2df)__A, (__v2df)__B);
|
|
return (__m128d)__builtin_ia32_sqrtsd ((__v2df)__tmp);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_minpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_minsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_maxpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_maxsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_and_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_andpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_andnot_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_andnpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_or_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_orpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_xor_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_xorpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpeqpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpltpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmplepd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpgtpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpgepd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpneqpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnlt_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpnltpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnle_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpnlepd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpngt_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpngtpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnge_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpngepd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpord_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpordpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpunord_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpunordpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpeqsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpltsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmplesd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movsd ((__v2df) __A,
|
|
(__v2df)
|
|
__builtin_ia32_cmpltsd ((__v2df) __B,
|
|
(__v2df)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movsd ((__v2df) __A,
|
|
(__v2df)
|
|
__builtin_ia32_cmplesd ((__v2df) __B,
|
|
(__v2df)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpneqsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnlt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpnltsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnle_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpnlesd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpngt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movsd ((__v2df) __A,
|
|
(__v2df)
|
|
__builtin_ia32_cmpnltsd ((__v2df) __B,
|
|
(__v2df)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpnge_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movsd ((__v2df) __A,
|
|
(__v2df)
|
|
__builtin_ia32_cmpnlesd ((__v2df) __B,
|
|
(__v2df)
|
|
__A));
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpord_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpordsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpunord_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cmpunordsd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comieq_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_comisdeq ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comilt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_comisdlt ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comile_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_comisdle ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comigt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_comisdgt ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comige_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_comisdge ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comineq_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_comisdneq ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomieq_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_ucomisdeq ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomilt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_ucomisdlt ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomile_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_ucomisdle ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomigt_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_ucomisdgt ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomige_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_ucomisdge ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_ucomineq_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return __builtin_ia32_ucomisdneq ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_epi64x (long long __q1, long long __q0)
|
|
{
|
|
return __extension__ (__m128i)(__v2di){ __q0, __q1 };
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_epi64 (__m64 __q1, __m64 __q0)
|
|
{
|
|
return _mm_set_epi64x ((long long)__q1, (long long)__q0);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_epi32 (int __q3, int __q2, int __q1, int __q0)
|
|
{
|
|
return __extension__ (__m128i)(__v4si){ __q0, __q1, __q2, __q3 };
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_epi16 (short __q7, short __q6, short __q5, short __q4,
|
|
short __q3, short __q2, short __q1, short __q0)
|
|
{
|
|
return __extension__ (__m128i)(__v8hi){
|
|
__q0, __q1, __q2, __q3, __q4, __q5, __q6, __q7 };
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set_epi8 (char __q15, char __q14, char __q13, char __q12,
|
|
char __q11, char __q10, char __q09, char __q08,
|
|
char __q07, char __q06, char __q05, char __q04,
|
|
char __q03, char __q02, char __q01, char __q00)
|
|
{
|
|
return __extension__ (__m128i)(__v16qi){
|
|
__q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15
|
|
};
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_epi64x (long long __A)
|
|
{
|
|
return _mm_set_epi64x (__A, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_epi64 (__m64 __A)
|
|
{
|
|
return _mm_set_epi64 (__A, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_epi32 (int __A)
|
|
{
|
|
return _mm_set_epi32 (__A, __A, __A, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_epi16 (short __A)
|
|
{
|
|
return _mm_set_epi16 (__A, __A, __A, __A, __A, __A, __A, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_set1_epi8 (char __A)
|
|
{
|
|
return _mm_set_epi8 (__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_epi64 (__m64 __q0, __m64 __q1)
|
|
{
|
|
return _mm_set_epi64 (__q1, __q0);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_epi32 (int __q0, int __q1, int __q2, int __q3)
|
|
{
|
|
return _mm_set_epi32 (__q3, __q2, __q1, __q0);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_epi16 (short __q0, short __q1, short __q2, short __q3,
|
|
short __q4, short __q5, short __q6, short __q7)
|
|
{
|
|
return _mm_set_epi16 (__q7, __q6, __q5, __q4, __q3, __q2, __q1, __q0);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setr_epi8 (char __q00, char __q01, char __q02, char __q03,
|
|
char __q04, char __q05, char __q06, char __q07,
|
|
char __q08, char __q09, char __q10, char __q11,
|
|
char __q12, char __q13, char __q14, char __q15)
|
|
{
|
|
return _mm_set_epi8 (__q15, __q14, __q13, __q12, __q11, __q10, __q09, __q08,
|
|
__q07, __q06, __q05, __q04, __q03, __q02, __q01, __q00);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_load_si128 (__m128i const *__P)
|
|
{
|
|
return *__P;
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadu_si128 (__m128i_u const *__P)
|
|
{
|
|
return *__P;
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadl_epi64 (__m128i_u const *__P)
|
|
{
|
|
return _mm_set_epi64 ((__m64)0LL, *(__m64_u *)__P);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadu_si64 (void const *__P)
|
|
{
|
|
return _mm_loadl_epi64 ((__m128i_u *)__P);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_si128 (__m128i *__P, __m128i __B)
|
|
{
|
|
*__P = __B;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storeu_si128 (__m128i_u *__P, __m128i __B)
|
|
{
|
|
*__P = __B;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storel_epi64 (__m128i_u *__P, __m128i __B)
|
|
{
|
|
*(__m64_u *)__P = (__m64) ((__v2di)__B)[0];
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_storeu_si64 (void *__P, __m128i __B)
|
|
{
|
|
_mm_storel_epi64 ((__m128i_u *)__P, __B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movepi64_pi64 (__m128i __B)
|
|
{
|
|
return (__m64) ((__v2di)__B)[0];
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movpi64_epi64 (__m64 __A)
|
|
{
|
|
return _mm_set_epi64 ((__m64)0LL, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_move_epi64 (__m128i __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_movq128 ((__v2di) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_undefined_si128 (void)
|
|
{
|
|
__m128i __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_setzero_si128 (void)
|
|
{
|
|
return __extension__ (__m128i)(__v4si){ 0, 0, 0, 0 };
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi32_pd (__m128i __A)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtdq2pd ((__v4si) __A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi32_ps (__m128i __A)
|
|
{
|
|
return (__m128)__builtin_ia32_cvtdq2ps ((__v4si) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpd_epi32 (__m128d __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_cvtpd2dq ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpd_pi32 (__m128d __A)
|
|
{
|
|
return (__m64)__builtin_ia32_cvtpd2pi ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpd_ps (__m128d __A)
|
|
{
|
|
return (__m128)__builtin_ia32_cvtpd2ps ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttpd_epi32 (__m128d __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_cvttpd2dq ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttpd_pi32 (__m128d __A)
|
|
{
|
|
return (__m64)__builtin_ia32_cvttpd2pi ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpi32_pd (__m64 __A)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtpi2pd ((__v2si) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_epi32 (__m128 __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_cvtps2dq ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttps_epi32 (__m128 __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_cvttps2dq ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_pd (__m128 __A)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtps2pd ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_si32 (__m128d __A)
|
|
{
|
|
return __builtin_ia32_cvtsd2si ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_si64 (__m128d __A)
|
|
{
|
|
return __builtin_ia32_cvtsd2si64 ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_si64x (__m128d __A)
|
|
{
|
|
return __builtin_ia32_cvtsd2si64 ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_si32 (__m128d __A)
|
|
{
|
|
return __builtin_ia32_cvttsd2si ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_si64 (__m128d __A)
|
|
{
|
|
return __builtin_ia32_cvttsd2si64 ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_si64x (__m128d __A)
|
|
{
|
|
return __builtin_ia32_cvttsd2si64 ((__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_ss (__m128 __A, __m128d __B)
|
|
{
|
|
return (__m128)__builtin_ia32_cvtsd2ss ((__v4sf) __A, (__v2df) __B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi32_sd (__m128d __A, int __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtsi2sd ((__v2df) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64_sd (__m128d __A, long long __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtsi642sd ((__v2df) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64x_sd (__m128d __A, long long __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtsi642sd ((__v2df) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_sd (__m128d __A, __m128 __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_cvtss2sd ((__v2df) __A, (__v4sf)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_unpckhpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d)__builtin_ia32_unpcklpd ((__v2df)__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadh_pd (__m128d __A, double const *__B)
|
|
{
|
|
return (__m128d)__builtin_ia32_loadhpd ((__v2df)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loadl_pd (__m128d __A, double const *__B)
|
|
{
|
|
return (__m128d)__builtin_ia32_loadlpd ((__v2df)__A, __B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movemask_pd (__m128d __A)
|
|
{
|
|
return __builtin_ia32_movmskpd ((__v2df)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packs_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_packsswb128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packs_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_packssdw128 ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packus_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_packuswb128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpckhbw128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpckhwd128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpckhdq128 ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpackhi_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpckhqdq128 ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpcklbw128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpcklwd128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpckldq128 ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_unpacklo_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_punpcklqdq128 ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v16qu)__A + (__v16qu)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v8hu)__A + (__v8hu)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4su)__A + (__v4su)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_add_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A + (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_paddsb128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_paddsw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_epu8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_paddusb128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_adds_epu16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_paddusw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v16qu)__A - (__v16qu)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v8hu)__A - (__v8hu)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4su)__A - (__v4su)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sub_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A - (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psubsb128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psubsw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_epu8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psubusb128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_subs_epu16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psubusw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_madd_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pmaddwd128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mulhi_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pmulhw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mullo_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v8hu)__A * (__v8hu)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_su32 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pmuludq ((__v2si)__A, (__v2si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_epu32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pmuludq128 ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_slli_epi16 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psllwi128 ((__v8hi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_slli_epi32 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pslldi128 ((__v4si)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_slli_epi64 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psllqi128 ((__v2di)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srai_epi16 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrawi128 ((__v8hi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srai_epi32 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psradi128 ((__v4si)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srli_epi16 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrlwi128 ((__v8hi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srli_epi32 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrldi128 ((__v4si)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srli_epi64 (__m128i __A, int __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrlqi128 ((__v2di)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sll_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psllw128((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sll_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pslld128((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sll_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psllq128((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sra_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psraw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sra_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrad128 ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srl_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrlw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srl_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrld128 ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srl_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psrlq128 ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_and_si128 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A & (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_andnot_si128 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pandn128 ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_or_si128 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A | (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_xor_si128 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A ^ (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v16qi)__A == (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v8hi)__A == (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4si)__A == (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v16qs)__A < (__v16qs)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v8hi)__A < (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4si)__A < (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v16qs)__A > (__v16qs)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v8hi)__A > (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4si)__A > (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pmaxsw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epu8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pmaxub128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pminsw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epu8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pminub128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movemask_epi8 (__m128i __A)
|
|
{
|
|
return __builtin_ia32_pmovmskb128 ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mulhi_epu16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pmulhuw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskmoveu_si128 (__m128i __A, __m128i __B, char *__C)
|
|
{
|
|
__builtin_ia32_maskmovdqu ((__v16qi)__A, (__v16qi)__B, __C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_avg_epu8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pavgb128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_avg_epu16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_pavgw128 ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sad_epu8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i)__builtin_ia32_psadbw128 ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_si32 (int *__A, int __B)
|
|
{
|
|
__builtin_ia32_movnti (__A, __B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_si64 (long long int *__A, long long int __B)
|
|
{
|
|
__builtin_ia32_movnti64 (__A, __B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_si128 (__m128i *__A, __m128i __B)
|
|
{
|
|
__builtin_ia32_movntdq ((__v2di *)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_pd (double *__A, __m128d __B)
|
|
{
|
|
__builtin_ia32_movntpd (__A, (__v2df)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_clflush (void const *__A)
|
|
{
|
|
__builtin_ia32_clflush (__A);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_lfence (void)
|
|
{
|
|
__builtin_ia32_lfence ();
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mfence (void)
|
|
{
|
|
__builtin_ia32_mfence ();
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi32_si128 (int __A)
|
|
{
|
|
return _mm_set_epi32 (0, 0, 0, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64_si128 (long long __A)
|
|
{
|
|
return _mm_set_epi64x (0, __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsi64x_si128 (long long __A)
|
|
{
|
|
return _mm_set_epi64x (0, __A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_castpd_ps(__m128d __A)
|
|
{
|
|
return (__m128) __A;
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_castpd_si128(__m128d __A)
|
|
{
|
|
return (__m128i) __A;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_castps_pd(__m128 __A)
|
|
{
|
|
return (__m128d) __A;
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_castps_si128(__m128 __A)
|
|
{
|
|
return (__m128i) __A;
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_castsi128_ps(__m128i __A)
|
|
{
|
|
return (__m128) __A;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_castsi128_pd(__m128i __A)
|
|
{
|
|
return (__m128d) __A;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_pause (void)
|
|
{
|
|
__builtin_ia32_pause ();
|
|
}*/
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse3")
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_addsub_ps (__m128 __X, __m128 __Y)
|
|
{
|
|
return (__m128) __builtin_ia32_addsubps ((__v4sf)__X, (__v4sf)__Y);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadd_ps (__m128 __X, __m128 __Y)
|
|
{
|
|
return (__m128) __builtin_ia32_haddps ((__v4sf)__X, (__v4sf)__Y);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsub_ps (__m128 __X, __m128 __Y)
|
|
{
|
|
return (__m128) __builtin_ia32_hsubps ((__v4sf)__X, (__v4sf)__Y);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movehdup_ps (__m128 __X)
|
|
{
|
|
return (__m128) __builtin_ia32_movshdup ((__v4sf)__X);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_moveldup_ps (__m128 __X)
|
|
{
|
|
return (__m128) __builtin_ia32_movsldup ((__v4sf)__X);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_addsub_pd (__m128d __X, __m128d __Y)
|
|
{
|
|
return (__m128d) __builtin_ia32_addsubpd ((__v2df)__X, (__v2df)__Y);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadd_pd (__m128d __X, __m128d __Y)
|
|
{
|
|
return (__m128d) __builtin_ia32_haddpd ((__v2df)__X, (__v2df)__Y);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsub_pd (__m128d __X, __m128d __Y)
|
|
{
|
|
return (__m128d) __builtin_ia32_hsubpd ((__v2df)__X, (__v2df)__Y);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_loaddup_pd (double const *__P)
|
|
{
|
|
return _mm_load1_pd (__P);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movedup_pd (__m128d __X)
|
|
{
|
|
return ((__m128d)__builtin_ia32_shufpd ((__v2df)(__m128d)(__X), (__v2df)(__m128d)(__X), (int)((((0) << 1) | (0)))));
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_lddqu_si128 (__m128i const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_lddqu ((char const *)__P);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_monitor (void const * __P, unsigned int __E, unsigned int __H)
|
|
{
|
|
__builtin_ia32_monitor (__P, __E, __H);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mwait (unsigned int __E, unsigned int __H)
|
|
{
|
|
__builtin_ia32_mwait (__E, __H);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("ssse3")
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadd_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_phaddw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadd_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_phaddd128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadds_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_phaddsw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadd_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_phaddw ((__v4hi)__X, (__v4hi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadd_pi32 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_phaddd ((__v2si)__X, (__v2si)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hadds_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_phaddsw ((__v4hi)__X, (__v4hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsub_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_phsubw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsub_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_phsubd128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsubs_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_phsubsw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsub_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_phsubw ((__v4hi)__X, (__v4hi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsub_pi32 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_phsubd ((__v2si)__X, (__v2si)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsubs_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_phsubsw ((__v4hi)__X, (__v4hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maddubs_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaddubsw128 ((__v16qi)__X, (__v16qi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maddubs_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_pmaddubsw ((__v8qi)__X, (__v8qi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mulhrs_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhrsw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mulhrs_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_pmulhrsw ((__v4hi)__X, (__v4hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shuffle_epi8 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pshufb128 ((__v16qi)__X, (__v16qi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shuffle_pi8 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_pshufb ((__v8qi)__X, (__v8qi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sign_epi8 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psignb128 ((__v16qi)__X, (__v16qi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sign_epi16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psignw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sign_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psignd128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sign_pi8 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_psignb ((__v8qi)__X, (__v8qi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sign_pi16 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_psignw ((__v4hi)__X, (__v4hi)__Y);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sign_pi32 (__m64 __X, __m64 __Y)
|
|
{
|
|
return (__m64) __builtin_ia32_psignd ((__v2si)__X, (__v2si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_epi8 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsb128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_epi16 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsw128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_epi32 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsd128 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_pi8 (__m64 __X)
|
|
{
|
|
return (__m64) __builtin_ia32_pabsb ((__v8qi)__X);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_pi16 (__m64 __X)
|
|
{
|
|
return (__m64) __builtin_ia32_pabsw ((__v4hi)__X);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_pi32 (__m64 __X)
|
|
{
|
|
return (__m64) __builtin_ia32_pabsd ((__v2si)__X);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4.1")
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testz_si128 (__m128i __M, __m128i __V)
|
|
{
|
|
return __builtin_ia32_ptestz128 ((__v2di)__M, (__v2di)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testc_si128 (__m128i __M, __m128i __V)
|
|
{
|
|
return __builtin_ia32_ptestc128 ((__v2di)__M, (__v2di)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testnzc_si128 (__m128i __M, __m128i __V)
|
|
{
|
|
return __builtin_ia32_ptestnzc128 ((__v2di)__M, (__v2di)__V);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_blendv_epi8 (__m128i __X, __m128i __Y, __m128i __M)
|
|
{
|
|
return (__m128i) __builtin_ia32_pblendvb128 ((__v16qi)__X,
|
|
(__v16qi)__Y,
|
|
(__v16qi)__M);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_blendv_ps (__m128 __X, __m128 __Y, __m128 __M)
|
|
{
|
|
return (__m128) __builtin_ia32_blendvps ((__v4sf)__X,
|
|
(__v4sf)__Y,
|
|
(__v4sf)__M);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_blendv_pd (__m128d __X, __m128d __Y, __m128d __M)
|
|
{
|
|
return (__m128d) __builtin_ia32_blendvpd ((__v2df)__X,
|
|
(__v2df)__Y,
|
|
(__v2df)__M);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi64 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) ((__v2di)__X == (__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epi8 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsb128 ((__v16qi)__X, (__v16qi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epi8 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsb128 ((__v16qi)__X, (__v16qi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epu16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminuw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epu16 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxuw128 ((__v8hi)__X, (__v8hi)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsd128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsd128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epu32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminud128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epu32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxud128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mullo_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) ((__v4su)__X * (__v4su)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mul_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmuldq128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_minpos_epu16 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_phminposuw128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi8_epi32 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbd128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi16_epi32 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxwd128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi8_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbq128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi32_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxdq128 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi16_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxwq128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi8_epi16 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbw128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu8_epi32 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbd128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu16_epi32 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxwd128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu8_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbq128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu32_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxdq128 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu16_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxwq128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu8_epi16 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbw128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_packus_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_packusdw128 ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_load_si128 (__m128i *__X)
|
|
{
|
|
return (__m128i) __builtin_ia32_movntdqa ((__v2di *) __X);
|
|
}*/
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4.2")
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi64 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) ((__v2di)__X > (__v2di)__Y);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("popcnt")
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_popcnt_u32 (unsigned int __X)
|
|
{
|
|
return __builtin_popcount (__X);
|
|
}*/
|
|
/*extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_popcnt_u64 (unsigned long long __X)
|
|
{
|
|
return __builtin_popcountll (__X);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4.1")
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4.2")
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_crc32_u8 (unsigned int __C, unsigned char __V)
|
|
{
|
|
return __builtin_ia32_crc32qi (__C, __V);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_crc32_u16 (unsigned int __C, unsigned short __V)
|
|
{
|
|
return __builtin_ia32_crc32hi (__C, __V);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_crc32_u32 (unsigned int __C, unsigned int __V)
|
|
{
|
|
return __builtin_ia32_crc32si (__C, __V);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_crc32_u64 (unsigned long long __C, unsigned long long __V)
|
|
{
|
|
return __builtin_ia32_crc32di (__C, __V);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("aes,sse2")
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_aesdec_si128 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_aesdec128 ((__v2di)__X, (__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_aesdeclast_si128 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_aesdeclast128 ((__v2di)__X,
|
|
(__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_aesenc_si128 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_aesenc128 ((__v2di)__X, (__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_aesenclast_si128 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_aesenclast128 ((__v2di)__X, (__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_aesimc_si128 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_aesimc128 ((__v2di)__X);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("pclmul,sse2")
|
|
#pragma GCC pop_options
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_fxsave (void *__P)
|
|
{
|
|
__builtin_ia32_fxsave (__P);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_fxrstor (void *__P)
|
|
{
|
|
__builtin_ia32_fxrstor (__P);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_fxsave64 (void *__P)
|
|
{
|
|
__builtin_ia32_fxsave64 (__P);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_fxrstor64 (void *__P)
|
|
{
|
|
__builtin_ia32_fxrstor64 (__P);
|
|
}
|
|
#pragma GCC push_options
|
|
#pragma GCC target("xsave")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsave (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsave (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xrstor (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xrstor (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsetbv (unsigned int __A, long long __V)
|
|
{
|
|
__builtin_ia32_xsetbv (__A, __V);
|
|
}
|
|
extern __inline long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xgetbv (unsigned int __A)
|
|
{
|
|
return __builtin_ia32_xgetbv (__A);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsave64 (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsave64 (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xrstor64 (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xrstor64 (__P, __M);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("xsaveopt")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsaveopt (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsaveopt (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsaveopt64 (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsaveopt64 (__P, __M);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("xsaves")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsaves (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsaves (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xrstors (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xrstors (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xrstors64 (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xrstors64 (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsaves64 (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsaves64 (__P, __M);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("xsavec")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsavec (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsavec (__P, __M);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xsavec64 (void *__P, long long __M)
|
|
{
|
|
__builtin_ia32_xsavec64 (__P, __M);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx")
|
|
typedef double __v4df __attribute__ ((__vector_size__ (32)));
|
|
typedef float __v8sf __attribute__ ((__vector_size__ (32)));
|
|
typedef long long __v4di __attribute__ ((__vector_size__ (32)));
|
|
typedef unsigned long long __v4du __attribute__ ((__vector_size__ (32)));
|
|
typedef int __v8si __attribute__ ((__vector_size__ (32)));
|
|
typedef unsigned int __v8su __attribute__ ((__vector_size__ (32)));
|
|
typedef short __v16hi __attribute__ ((__vector_size__ (32)));
|
|
typedef unsigned short __v16hu __attribute__ ((__vector_size__ (32)));
|
|
typedef char __v32qi __attribute__ ((__vector_size__ (32)));
|
|
typedef signed char __v32qs __attribute__ ((__vector_size__ (32)));
|
|
typedef unsigned char __v32qu __attribute__ ((__vector_size__ (32)));
|
|
typedef float __m256 __attribute__ ((__vector_size__ (32),
|
|
__may_alias__));
|
|
typedef long long __m256i __attribute__ ((__vector_size__ (32),
|
|
__may_alias__));
|
|
typedef double __m256d __attribute__ ((__vector_size__ (32),
|
|
__may_alias__));
|
|
typedef float __m256_u __attribute__ ((__vector_size__ (32),
|
|
__may_alias__,
|
|
__aligned__ (1)));
|
|
typedef long long __m256i_u __attribute__ ((__vector_size__ (32),
|
|
__may_alias__,
|
|
__aligned__ (1)));
|
|
typedef double __m256d_u __attribute__ ((__vector_size__ (32),
|
|
__may_alias__,
|
|
__aligned__ (1)));
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_add_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) ((__v4df)__A + (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_add_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) ((__v8sf)__A + (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_addsub_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_addsubpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_addsub_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_addsubps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_and_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_andpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_and_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_andps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_andnot_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_andnpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_andnot_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_andnps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_blendv_pd (__m256d __X, __m256d __Y, __m256d __M)
|
|
{
|
|
return (__m256d) __builtin_ia32_blendvpd256 ((__v4df)__X,
|
|
(__v4df)__Y,
|
|
(__v4df)__M);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_blendv_ps (__m256 __X, __m256 __Y, __m256 __M)
|
|
{
|
|
return (__m256) __builtin_ia32_blendvps256 ((__v8sf)__X,
|
|
(__v8sf)__Y,
|
|
(__v8sf)__M);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_div_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) ((__v4df)__A / (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_div_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) ((__v8sf)__A / (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hadd_pd (__m256d __X, __m256d __Y)
|
|
{
|
|
return (__m256d) __builtin_ia32_haddpd256 ((__v4df)__X, (__v4df)__Y);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hadd_ps (__m256 __X, __m256 __Y)
|
|
{
|
|
return (__m256) __builtin_ia32_haddps256 ((__v8sf)__X, (__v8sf)__Y);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hsub_pd (__m256d __X, __m256d __Y)
|
|
{
|
|
return (__m256d) __builtin_ia32_hsubpd256 ((__v4df)__X, (__v4df)__Y);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hsub_ps (__m256 __X, __m256 __Y)
|
|
{
|
|
return (__m256) __builtin_ia32_hsubps256 ((__v8sf)__X, (__v8sf)__Y);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_maxpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_maxps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_minpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_minps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mul_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) ((__v4df)__A * (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mul_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) ((__v8sf)__A * (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_or_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_orpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_or_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_orps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sub_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) ((__v4df)__A - (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sub_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) ((__v8sf)__A - (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_xor_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_xorpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_xor_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_xorps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi32_pd (__m128i __A)
|
|
{
|
|
return (__m256d)__builtin_ia32_cvtdq2pd256 ((__v4si) __A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi32_ps (__m256i __A)
|
|
{
|
|
return (__m256)__builtin_ia32_cvtdq2ps256 ((__v8si) __A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtpd_ps (__m256d __A)
|
|
{
|
|
return (__m128)__builtin_ia32_cvtpd2ps256 ((__v4df) __A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtps_epi32 (__m256 __A)
|
|
{
|
|
return (__m256i)__builtin_ia32_cvtps2dq256 ((__v8sf) __A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtps_pd (__m128 __A)
|
|
{
|
|
return (__m256d)__builtin_ia32_cvtps2pd256 ((__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttpd_epi32 (__m256d __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_cvttpd2dq256 ((__v4df) __A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtpd_epi32 (__m256d __A)
|
|
{
|
|
return (__m128i)__builtin_ia32_cvtpd2dq256 ((__v4df) __A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttps_epi32 (__m256 __A)
|
|
{
|
|
return (__m256i)__builtin_ia32_cvttps2dq256 ((__v8sf) __A);
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsd_f64 (__m256d __A)
|
|
{
|
|
return __A[0];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtss_f32 (__m256 __A)
|
|
{
|
|
return __A[0];
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_zeroall (void)
|
|
{
|
|
__builtin_ia32_vzeroall ();
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_zeroupper (void)
|
|
{
|
|
__builtin_ia32_vzeroupper ();
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutevar_pd (__m128d __A, __m128i __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermilvarpd ((__v2df)__A,
|
|
(__v2di)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutevar_pd (__m256d __A, __m256i __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermilvarpd256 ((__v4df)__A,
|
|
(__v4di)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutevar_ps (__m128 __A, __m128i __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermilvarps ((__v4sf)__A,
|
|
(__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutevar_ps (__m256 __A, __m256i __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermilvarps256 ((__v8sf)__A,
|
|
(__v8si)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcast_ss (float const *__X)
|
|
{
|
|
return (__m128) __builtin_ia32_vbroadcastss (__X);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_sd (double const *__X)
|
|
{
|
|
return (__m256d) __builtin_ia32_vbroadcastsd256 (__X);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_ss (float const *__X)
|
|
{
|
|
return (__m256) __builtin_ia32_vbroadcastss256 (__X);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_pd (__m128d const *__X)
|
|
{
|
|
return (__m256d) __builtin_ia32_vbroadcastf128_pd256 (__X);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_ps (__m128 const *__X)
|
|
{
|
|
return (__m256) __builtin_ia32_vbroadcastf128_ps256 (__X);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_load_pd (double const *__P)
|
|
{
|
|
return *(__m256d *)__P;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_store_pd (double *__P, __m256d __A)
|
|
{
|
|
*(__m256d *)__P = __A;
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_load_ps (float const *__P)
|
|
{
|
|
return *(__m256 *)__P;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_store_ps (float *__P, __m256 __A)
|
|
{
|
|
*(__m256 *)__P = __A;
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_loadu_pd (double const *__P)
|
|
{
|
|
return *(__m256d_u *)__P;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_storeu_pd (double *__P, __m256d __A)
|
|
{
|
|
*(__m256d_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_loadu_ps (float const *__P)
|
|
{
|
|
return *(__m256_u *)__P;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_storeu_ps (float *__P, __m256 __A)
|
|
{
|
|
*(__m256_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_load_si256 (__m256i const *__P)
|
|
{
|
|
return *__P;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_store_si256 (__m256i *__P, __m256i __A)
|
|
{
|
|
*__P = __A;
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_loadu_si256 (__m256i_u const *__P)
|
|
{
|
|
return *__P;
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
|
|
{
|
|
*__P = __A;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskload_pd (double const *__P, __m128i __M)
|
|
{
|
|
return (__m128d) __builtin_ia32_maskloadpd ((const __v2df *)__P,
|
|
(__v2di)__M);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskstore_pd (double *__P, __m128i __M, __m128d __A)
|
|
{
|
|
__builtin_ia32_maskstorepd ((__v2df *)__P, (__v2di)__M, (__v2df)__A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskload_pd (double const *__P, __m256i __M)
|
|
{
|
|
return (__m256d) __builtin_ia32_maskloadpd256 ((const __v4df *)__P,
|
|
(__v4di)__M);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskstore_pd (double *__P, __m256i __M, __m256d __A)
|
|
{
|
|
__builtin_ia32_maskstorepd256 ((__v4df *)__P, (__v4di)__M, (__v4df)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskload_ps (float const *__P, __m128i __M)
|
|
{
|
|
return (__m128) __builtin_ia32_maskloadps ((const __v4sf *)__P,
|
|
(__v4si)__M);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskstore_ps (float *__P, __m128i __M, __m128 __A)
|
|
{
|
|
__builtin_ia32_maskstoreps ((__v4sf *)__P, (__v4si)__M, (__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskload_ps (float const *__P, __m256i __M)
|
|
{
|
|
return (__m256) __builtin_ia32_maskloadps256 ((const __v8sf *)__P,
|
|
(__v8si)__M);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskstore_ps (float *__P, __m256i __M, __m256 __A)
|
|
{
|
|
__builtin_ia32_maskstoreps256 ((__v8sf *)__P, (__v8si)__M, (__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movehdup_ps (__m256 __X)
|
|
{
|
|
return (__m256) __builtin_ia32_movshdup256 ((__v8sf)__X);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_moveldup_ps (__m256 __X)
|
|
{
|
|
return (__m256) __builtin_ia32_movsldup256 ((__v8sf)__X);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movedup_pd (__m256d __X)
|
|
{
|
|
return (__m256d) __builtin_ia32_movddup256 ((__v4df)__X);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_lddqu_si256 (__m256i const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_lddqu256 ((char const *)__P);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_stream_si256 (__m256i *__A, __m256i __B)
|
|
{
|
|
__builtin_ia32_movntdq256 ((__v4di *)__A, (__v4di)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_stream_pd (double *__A, __m256d __B)
|
|
{
|
|
__builtin_ia32_movntpd256 (__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_stream_ps (float *__P, __m256 __A)
|
|
{
|
|
__builtin_ia32_movntps256 (__P, (__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rcp_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rcpps256 ((__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rsqrt_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rsqrtps256 ((__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sqrt_pd (__m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_sqrtpd256 ((__v4df)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sqrt_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_sqrtps256 ((__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpackhi_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_unpckhpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpacklo_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_unpcklpd256 ((__v4df)__A, (__v4df)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpackhi_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_unpckhps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpacklo_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_unpcklps256 ((__v8sf)__A, (__v8sf)__B);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testz_pd (__m128d __M, __m128d __V)
|
|
{
|
|
return __builtin_ia32_vtestzpd ((__v2df)__M, (__v2df)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testc_pd (__m128d __M, __m128d __V)
|
|
{
|
|
return __builtin_ia32_vtestcpd ((__v2df)__M, (__v2df)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testnzc_pd (__m128d __M, __m128d __V)
|
|
{
|
|
return __builtin_ia32_vtestnzcpd ((__v2df)__M, (__v2df)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testz_ps (__m128 __M, __m128 __V)
|
|
{
|
|
return __builtin_ia32_vtestzps ((__v4sf)__M, (__v4sf)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testc_ps (__m128 __M, __m128 __V)
|
|
{
|
|
return __builtin_ia32_vtestcps ((__v4sf)__M, (__v4sf)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testnzc_ps (__m128 __M, __m128 __V)
|
|
{
|
|
return __builtin_ia32_vtestnzcps ((__v4sf)__M, (__v4sf)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testz_pd (__m256d __M, __m256d __V)
|
|
{
|
|
return __builtin_ia32_vtestzpd256 ((__v4df)__M, (__v4df)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testc_pd (__m256d __M, __m256d __V)
|
|
{
|
|
return __builtin_ia32_vtestcpd256 ((__v4df)__M, (__v4df)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testnzc_pd (__m256d __M, __m256d __V)
|
|
{
|
|
return __builtin_ia32_vtestnzcpd256 ((__v4df)__M, (__v4df)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testz_ps (__m256 __M, __m256 __V)
|
|
{
|
|
return __builtin_ia32_vtestzps256 ((__v8sf)__M, (__v8sf)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testc_ps (__m256 __M, __m256 __V)
|
|
{
|
|
return __builtin_ia32_vtestcps256 ((__v8sf)__M, (__v8sf)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testnzc_ps (__m256 __M, __m256 __V)
|
|
{
|
|
return __builtin_ia32_vtestnzcps256 ((__v8sf)__M, (__v8sf)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testz_si256 (__m256i __M, __m256i __V)
|
|
{
|
|
return __builtin_ia32_ptestz256 ((__v4di)__M, (__v4di)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testc_si256 (__m256i __M, __m256i __V)
|
|
{
|
|
return __builtin_ia32_ptestc256 ((__v4di)__M, (__v4di)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testnzc_si256 (__m256i __M, __m256i __V)
|
|
{
|
|
return __builtin_ia32_ptestnzc256 ((__v4di)__M, (__v4di)__V);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movemask_pd (__m256d __A)
|
|
{
|
|
return __builtin_ia32_movmskpd256 ((__v4df)__A);
|
|
}*/
|
|
/*extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movemask_ps (__m256 __A)
|
|
{
|
|
return __builtin_ia32_movmskps256 ((__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_undefined_pd (void)
|
|
{
|
|
__m256d __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_undefined_ps (void)
|
|
{
|
|
__m256 __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_undefined_si256 (void)
|
|
{
|
|
__m256i __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setzero_pd (void)
|
|
{
|
|
return __extension__ (__m256d){ 0.0, 0.0, 0.0, 0.0 };
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setzero_ps (void)
|
|
{
|
|
return __extension__ (__m256){ 0.0, 0.0, 0.0, 0.0,
|
|
0.0, 0.0, 0.0, 0.0 };
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setzero_si256 (void)
|
|
{
|
|
return __extension__ (__m256i)(__v4di){ 0, 0, 0, 0 };
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_pd (double __A, double __B, double __C, double __D)
|
|
{
|
|
return __extension__ (__m256d){ __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_ps (float __A, float __B, float __C, float __D,
|
|
float __E, float __F, float __G, float __H)
|
|
{
|
|
return __extension__ (__m256){ __H, __G, __F, __E,
|
|
__D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_epi32 (int __A, int __B, int __C, int __D,
|
|
int __E, int __F, int __G, int __H)
|
|
{
|
|
return __extension__ (__m256i)(__v8si){ __H, __G, __F, __E,
|
|
__D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_epi16 (short __q15, short __q14, short __q13, short __q12,
|
|
short __q11, short __q10, short __q09, short __q08,
|
|
short __q07, short __q06, short __q05, short __q04,
|
|
short __q03, short __q02, short __q01, short __q00)
|
|
{
|
|
return __extension__ (__m256i)(__v16hi){
|
|
__q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15
|
|
};
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
|
|
char __q27, char __q26, char __q25, char __q24,
|
|
char __q23, char __q22, char __q21, char __q20,
|
|
char __q19, char __q18, char __q17, char __q16,
|
|
char __q15, char __q14, char __q13, char __q12,
|
|
char __q11, char __q10, char __q09, char __q08,
|
|
char __q07, char __q06, char __q05, char __q04,
|
|
char __q03, char __q02, char __q01, char __q00)
|
|
{
|
|
return __extension__ (__m256i)(__v32qi){
|
|
__q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15,
|
|
__q16, __q17, __q18, __q19, __q20, __q21, __q22, __q23,
|
|
__q24, __q25, __q26, __q27, __q28, __q29, __q30, __q31
|
|
};
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_epi64x (long long __A, long long __B, long long __C,
|
|
long long __D)
|
|
{
|
|
return __extension__ (__m256i)(__v4di){ __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set1_pd (double __A)
|
|
{
|
|
return __extension__ (__m256d){ __A, __A, __A, __A };
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set1_ps (float __A)
|
|
{
|
|
return __extension__ (__m256){ __A, __A, __A, __A,
|
|
__A, __A, __A, __A };
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set1_epi32 (int __A)
|
|
{
|
|
return __extension__ (__m256i)(__v8si){ __A, __A, __A, __A,
|
|
__A, __A, __A, __A };
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set1_epi16 (short __A)
|
|
{
|
|
return _mm256_set_epi16 (__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set1_epi8 (char __A)
|
|
{
|
|
return _mm256_set_epi8 (__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set1_epi64x (long long __A)
|
|
{
|
|
return __extension__ (__m256i)(__v4di){ __A, __A, __A, __A };
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_pd (double __A, double __B, double __C, double __D)
|
|
{
|
|
return _mm256_set_pd (__D, __C, __B, __A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_ps (float __A, float __B, float __C, float __D,
|
|
float __E, float __F, float __G, float __H)
|
|
{
|
|
return _mm256_set_ps (__H, __G, __F, __E, __D, __C, __B, __A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_epi32 (int __A, int __B, int __C, int __D,
|
|
int __E, int __F, int __G, int __H)
|
|
{
|
|
return _mm256_set_epi32 (__H, __G, __F, __E, __D, __C, __B, __A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_epi16 (short __q15, short __q14, short __q13, short __q12,
|
|
short __q11, short __q10, short __q09, short __q08,
|
|
short __q07, short __q06, short __q05, short __q04,
|
|
short __q03, short __q02, short __q01, short __q00)
|
|
{
|
|
return _mm256_set_epi16 (__q00, __q01, __q02, __q03,
|
|
__q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11,
|
|
__q12, __q13, __q14, __q15);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_epi8 (char __q31, char __q30, char __q29, char __q28,
|
|
char __q27, char __q26, char __q25, char __q24,
|
|
char __q23, char __q22, char __q21, char __q20,
|
|
char __q19, char __q18, char __q17, char __q16,
|
|
char __q15, char __q14, char __q13, char __q12,
|
|
char __q11, char __q10, char __q09, char __q08,
|
|
char __q07, char __q06, char __q05, char __q04,
|
|
char __q03, char __q02, char __q01, char __q00)
|
|
{
|
|
return _mm256_set_epi8 (__q00, __q01, __q02, __q03,
|
|
__q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11,
|
|
__q12, __q13, __q14, __q15,
|
|
__q16, __q17, __q18, __q19,
|
|
__q20, __q21, __q22, __q23,
|
|
__q24, __q25, __q26, __q27,
|
|
__q28, __q29, __q30, __q31);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_epi64x (long long __A, long long __B, long long __C,
|
|
long long __D)
|
|
{
|
|
return _mm256_set_epi64x (__D, __C, __B, __A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castpd_ps (__m256d __A)
|
|
{
|
|
return (__m256) __A;
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castpd_si256 (__m256d __A)
|
|
{
|
|
return (__m256i) __A;
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castps_pd (__m256 __A)
|
|
{
|
|
return (__m256d) __A;
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castps_si256(__m256 __A)
|
|
{
|
|
return (__m256i) __A;
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castsi256_ps (__m256i __A)
|
|
{
|
|
return (__m256) __A;
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castsi256_pd (__m256i __A)
|
|
{
|
|
return (__m256d) __A;
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castpd256_pd128 (__m256d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_pd_pd256 ((__v4df)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castps256_ps128 (__m256 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_ps_ps256 ((__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castsi256_si128 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_si_si256 ((__v8si)__A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castpd128_pd256 (__m128d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_pd256_pd ((__v2df)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castps128_ps256 (__m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_ps256_ps ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_castsi128_si256 (__m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_si256_si ((__v4si)__A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_m128 ( __m128 __H, __m128 __L)
|
|
{
|
|
return ((__m256) __builtin_ia32_vinsertf128_ps256 ((__v8sf)(__m256)(_mm256_castps128_ps256 (__L)), (__v4sf)(__m128)(__H), (int)(1)));
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_m128d (__m128d __H, __m128d __L)
|
|
{
|
|
return ((__m256d) __builtin_ia32_vinsertf128_pd256 ((__v4df)(__m256d)(_mm256_castpd128_pd256 (__L)), (__v2df)(__m128d)(__H), (int)(1)));
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_set_m128i (__m128i __H, __m128i __L)
|
|
{
|
|
return ((__m256i) __builtin_ia32_vinsertf128_si256 ((__v8si)(__m256i)(_mm256_castsi128_si256 (__L)), (__v4si)(__m128i)(__H), (int)(1)));
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_m128 (__m128 __L, __m128 __H)
|
|
{
|
|
return _mm256_set_m128 (__H, __L);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_m128d (__m128d __L, __m128d __H)
|
|
{
|
|
return _mm256_set_m128d (__H, __L);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_setr_m128i (__m128i __L, __m128i __H)
|
|
{
|
|
return _mm256_set_m128i (__H, __L);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx2")
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_abs_epi8 (__m256i __A)
|
|
{
|
|
return (__m256i)__builtin_ia32_pabsb256 ((__v32qi)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_abs_epi16 (__m256i __A)
|
|
{
|
|
return (__m256i)__builtin_ia32_pabsw256 ((__v16hi)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_abs_epi32 (__m256i __A)
|
|
{
|
|
return (__m256i)__builtin_ia32_pabsd256 ((__v8si)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_packs_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_packssdw256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_packs_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_packsswb256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_packus_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_packusdw256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_packus_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_packuswb256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_add_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v32qu)__A + (__v32qu)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_add_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v16hu)__A + (__v16hu)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_add_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8su)__A + (__v8su)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_add_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A + (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_adds_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_paddsb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_adds_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_paddsw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_adds_epu8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_paddusb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_adds_epu16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_paddusw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_and_si256 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A & (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_andnot_si256 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_andnotsi256 ((__v4di)__A, (__v4di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_avg_epu8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pavgb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_avg_epu16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pavgw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_blendv_epi8 (__m256i __X, __m256i __Y, __m256i __M)
|
|
{
|
|
return (__m256i) __builtin_ia32_pblendvb256 ((__v32qi)__X,
|
|
(__v32qi)__Y,
|
|
(__v32qi)__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v32qi)__A == (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v16hi)__A == (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8si)__A == (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4di)__A == (__v4di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v32qs)__A > (__v32qs)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v16hi)__A > (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8si)__A > (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4di)__A > (__v4di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hadd_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_phaddw256 ((__v16hi)__X,
|
|
(__v16hi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hadd_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_phaddd256 ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hadds_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_phaddsw256 ((__v16hi)__X,
|
|
(__v16hi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hsub_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_phsubw256 ((__v16hi)__X,
|
|
(__v16hi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hsub_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_phsubd256 ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_hsubs_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_phsubsw256 ((__v16hi)__X,
|
|
(__v16hi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maddubs_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaddubsw256 ((__v32qi)__X,
|
|
(__v32qi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_madd_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaddwd256 ((__v16hi)__A,
|
|
(__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaxsb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaxsw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaxsd256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epu8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaxub256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epu16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaxuw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epu32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmaxud256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pminsb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pminsw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pminsd256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epu8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pminub256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epu16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pminuw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epu32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pminud256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movemask_epi8 (__m256i __A)
|
|
{
|
|
return __builtin_ia32_pmovmskb256 ((__v32qi)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi8_epi16 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbw256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi8_epi32 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbd256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi8_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbq256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi16_epi32 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxwd256 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi16_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxwq256 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi32_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxdq256 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu8_epi16 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbw256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu8_epi32 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbd256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu8_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbq256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu16_epi32 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxwd256 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu16_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxwq256 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu32_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxdq256 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mul_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmuldq256 ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mulhrs_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhrsw256 ((__v16hi)__X,
|
|
(__v16hi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mulhi_epu16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmulhuw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mulhi_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmulhw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mullo_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v16hu)__A * (__v16hu)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mullo_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8su)__A * (__v8su)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mul_epu32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pmuludq256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_or_si256 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A | (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sad_epu8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psadbw256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shuffle_epi8 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pshufb256 ((__v32qi)__X,
|
|
(__v32qi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sign_epi8 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psignb256 ((__v32qi)__X, (__v32qi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sign_epi16 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psignw256 ((__v16hi)__X, (__v16hi)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sign_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psignd256 ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_slli_epi16 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psllwi256 ((__v16hi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sll_epi16 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psllw256((__v16hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_slli_epi32 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pslldi256 ((__v8si)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sll_epi32 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_pslld256((__v8si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_slli_epi64 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psllqi256 ((__v4di)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sll_epi64 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psllq256((__v4di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srai_epi16 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrawi256 ((__v16hi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sra_epi16 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psraw256 ((__v16hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srai_epi32 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psradi256 ((__v8si)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sra_epi32 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrad256 ((__v8si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srli_epi16 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrlwi256 ((__v16hi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srl_epi16 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrlw256((__v16hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srli_epi32 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrldi256 ((__v8si)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srl_epi32 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrld256((__v8si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srli_epi64 (__m256i __A, int __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrlqi256 ((__v4di)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srl_epi64 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psrlq256((__v4di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sub_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v32qu)__A - (__v32qu)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sub_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v16hu)__A - (__v16hu)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sub_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8su)__A - (__v8su)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sub_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A - (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_subs_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psubsb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_subs_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psubsw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_subs_epu8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psubusb256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_subs_epu16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_psubusw256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpackhi_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpckhbw256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpackhi_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpckhwd256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpackhi_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpckhdq256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpckhqdq256 ((__v4di)__A, (__v4di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpacklo_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpcklbw256 ((__v32qi)__A, (__v32qi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpacklo_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpcklwd256 ((__v16hi)__A, (__v16hi)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpacklo_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpckldq256 ((__v8si)__A, (__v8si)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_unpacklo_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_punpcklqdq256 ((__v4di)__A, (__v4di)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_xor_si256 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A ^ (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_stream_load_si256 (__m256i const *__X)
|
|
{
|
|
return (__m256i) __builtin_ia32_movntdqa256 ((__v4di *) __X);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastss_ps (__m128 __X)
|
|
{
|
|
return (__m128) __builtin_ia32_vbroadcastss_ps ((__v4sf)__X);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastss_ps (__m128 __X)
|
|
{
|
|
return (__m256) __builtin_ia32_vbroadcastss_ps256 ((__v4sf)__X);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastsd_pd (__m128d __X)
|
|
{
|
|
return (__m256d) __builtin_ia32_vbroadcastsd_pd256 ((__v2df)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastsi128_si256 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_vbroadcastsi256 ((__v2di)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastb_epi8 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastb256 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastw_epi16 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastw256 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastd_epi32 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastd256 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastq_epi64 (__m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastq256 ((__v2di)__X);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastb_epi8 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastb128 ((__v16qi)__X);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastw_epi16 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastw128 ((__v8hi)__X);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastd_epi32 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastd128 ((__v4si)__X);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastq_epi64 (__m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastq128 ((__v2di)__X);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutevar8x32_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarsi256 ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutevar8x32_ps (__m256 __X, __m256i __Y)
|
|
{
|
|
return (__m256) __builtin_ia32_permvarsf256 ((__v8sf)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskload_epi32 (int const *__X, __m256i __M )
|
|
{
|
|
return (__m256i) __builtin_ia32_maskloadd256 ((const __v8si *)__X,
|
|
(__v8si)__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskload_epi64 (long long const *__X, __m256i __M )
|
|
{
|
|
return (__m256i) __builtin_ia32_maskloadq256 ((const __v4di *)__X,
|
|
(__v4di)__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskload_epi32 (int const *__X, __m128i __M )
|
|
{
|
|
return (__m128i) __builtin_ia32_maskloadd ((const __v4si *)__X,
|
|
(__v4si)__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskload_epi64 (long long const *__X, __m128i __M )
|
|
{
|
|
return (__m128i) __builtin_ia32_maskloadq ((const __v2di *)__X,
|
|
(__v2di)__M);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskstore_epi32 (int *__X, __m256i __M, __m256i __Y )
|
|
{
|
|
__builtin_ia32_maskstored256 ((__v8si *)__X, (__v8si)__M, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskstore_epi64 (long long *__X, __m256i __M, __m256i __Y )
|
|
{
|
|
__builtin_ia32_maskstoreq256 ((__v4di *)__X, (__v4di)__M, (__v4di)__Y);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskstore_epi32 (int *__X, __m128i __M, __m128i __Y )
|
|
{
|
|
__builtin_ia32_maskstored ((__v4si *)__X, (__v4si)__M, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskstore_epi64 (long long *__X, __m128i __M, __m128i __Y )
|
|
{
|
|
__builtin_ia32_maskstoreq (( __v2di *)__X, (__v2di)__M, (__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sllv_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv8si ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sllv_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv4si ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sllv_epi64 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv4di ((__v4di)__X, (__v4di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sllv_epi64 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv2di ((__v2di)__X, (__v2di)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srav_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrav8si ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srav_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrav4si ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srlv_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv8si ((__v8si)__X, (__v8si)__Y);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srlv_epi32 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv4si ((__v4si)__X, (__v4si)__Y);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srlv_epi64 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv4di ((__v4di)__X, (__v4di)__Y);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srlv_epi64 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv2di ((__v2di)__X, (__v2di)__Y);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512f")
|
|
typedef double __v8df __attribute__ ((__vector_size__ (64)));
|
|
typedef float __v16sf __attribute__ ((__vector_size__ (64)));
|
|
typedef long long __v8di __attribute__ ((__vector_size__ (64)));
|
|
typedef unsigned long long __v8du __attribute__ ((__vector_size__ (64)));
|
|
typedef int __v16si __attribute__ ((__vector_size__ (64)));
|
|
typedef unsigned int __v16su __attribute__ ((__vector_size__ (64)));
|
|
typedef short __v32hi __attribute__ ((__vector_size__ (64)));
|
|
typedef unsigned short __v32hu __attribute__ ((__vector_size__ (64)));
|
|
typedef char __v64qi __attribute__ ((__vector_size__ (64)));
|
|
typedef unsigned char __v64qu __attribute__ ((__vector_size__ (64)));
|
|
typedef float __m512 __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef long long __m512i __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef double __m512d __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef float __m512_u __attribute__ ((__vector_size__ (64), __may_alias__, __aligned__ (1)));
|
|
typedef long long __m512i_u __attribute__ ((__vector_size__ (64), __may_alias__, __aligned__ (1)));
|
|
typedef double __m512d_u __attribute__ ((__vector_size__ (64), __may_alias__, __aligned__ (1)));
|
|
typedef unsigned char __mmask8;
|
|
typedef unsigned short __mmask16;
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_int2mask (int __M)
|
|
{
|
|
return (__mmask16) __M;
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2int (__mmask16 __M)
|
|
{
|
|
return (int) __M;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set_epi64 (long long __A, long long __B, long long __C,
|
|
long long __D, long long __E, long long __F,
|
|
long long __G, long long __H)
|
|
{
|
|
return __extension__ (__m512i) (__v8di)
|
|
{ __H, __G, __F, __E, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set_epi32 (int __A, int __B, int __C, int __D,
|
|
int __E, int __F, int __G, int __H,
|
|
int __I, int __J, int __K, int __L,
|
|
int __M, int __N, int __O, int __P)
|
|
{
|
|
return __extension__ (__m512i)(__v16si)
|
|
{ __P, __O, __N, __M, __L, __K, __J, __I,
|
|
__H, __G, __F, __E, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set_epi16 (short __q31, short __q30, short __q29, short __q28,
|
|
short __q27, short __q26, short __q25, short __q24,
|
|
short __q23, short __q22, short __q21, short __q20,
|
|
short __q19, short __q18, short __q17, short __q16,
|
|
short __q15, short __q14, short __q13, short __q12,
|
|
short __q11, short __q10, short __q09, short __q08,
|
|
short __q07, short __q06, short __q05, short __q04,
|
|
short __q03, short __q02, short __q01, short __q00)
|
|
{
|
|
return __extension__ (__m512i)(__v32hi){
|
|
__q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15,
|
|
__q16, __q17, __q18, __q19, __q20, __q21, __q22, __q23,
|
|
__q24, __q25, __q26, __q27, __q28, __q29, __q30, __q31
|
|
};
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set_epi8 (char __q63, char __q62, char __q61, char __q60,
|
|
char __q59, char __q58, char __q57, char __q56,
|
|
char __q55, char __q54, char __q53, char __q52,
|
|
char __q51, char __q50, char __q49, char __q48,
|
|
char __q47, char __q46, char __q45, char __q44,
|
|
char __q43, char __q42, char __q41, char __q40,
|
|
char __q39, char __q38, char __q37, char __q36,
|
|
char __q35, char __q34, char __q33, char __q32,
|
|
char __q31, char __q30, char __q29, char __q28,
|
|
char __q27, char __q26, char __q25, char __q24,
|
|
char __q23, char __q22, char __q21, char __q20,
|
|
char __q19, char __q18, char __q17, char __q16,
|
|
char __q15, char __q14, char __q13, char __q12,
|
|
char __q11, char __q10, char __q09, char __q08,
|
|
char __q07, char __q06, char __q05, char __q04,
|
|
char __q03, char __q02, char __q01, char __q00)
|
|
{
|
|
return __extension__ (__m512i)(__v64qi){
|
|
__q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
|
|
__q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15,
|
|
__q16, __q17, __q18, __q19, __q20, __q21, __q22, __q23,
|
|
__q24, __q25, __q26, __q27, __q28, __q29, __q30, __q31,
|
|
__q32, __q33, __q34, __q35, __q36, __q37, __q38, __q39,
|
|
__q40, __q41, __q42, __q43, __q44, __q45, __q46, __q47,
|
|
__q48, __q49, __q50, __q51, __q52, __q53, __q54, __q55,
|
|
__q56, __q57, __q58, __q59, __q60, __q61, __q62, __q63
|
|
};
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set_pd (double __A, double __B, double __C, double __D,
|
|
double __E, double __F, double __G, double __H)
|
|
{
|
|
return __extension__ (__m512d)
|
|
{ __H, __G, __F, __E, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set_ps (float __A, float __B, float __C, float __D,
|
|
float __E, float __F, float __G, float __H,
|
|
float __I, float __J, float __K, float __L,
|
|
float __M, float __N, float __O, float __P)
|
|
{
|
|
return __extension__ (__m512)
|
|
{ __P, __O, __N, __M, __L, __K, __J, __I,
|
|
__H, __G, __F, __E, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_undefined_ps (void)
|
|
{
|
|
__m512 __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_undefined_pd (void)
|
|
{
|
|
__m512d __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_undefined_epi32 (void)
|
|
{
|
|
__m512i __Y = __Y;
|
|
return __Y;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set1_epi8 (char __A)
|
|
{
|
|
return __extension__ (__m512i)(__v64qi)
|
|
{ __A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A };
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set1_epi16 (short __A)
|
|
{
|
|
return __extension__ (__m512i)(__v32hi)
|
|
{ __A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A,
|
|
__A, __A, __A, __A, __A, __A, __A, __A };
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set1_pd (double __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastsd512 (__extension__
|
|
(__v2df) { __A, },
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set1_ps (float __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastss512 (__extension__
|
|
(__v4sf) { __A, },
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set4_epi32 (int __A, int __B, int __C, int __D)
|
|
{
|
|
return __extension__ (__m512i)(__v16si)
|
|
{ __D, __C, __B, __A, __D, __C, __B, __A,
|
|
__D, __C, __B, __A, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set4_epi64 (long long __A, long long __B, long long __C,
|
|
long long __D)
|
|
{
|
|
return __extension__ (__m512i) (__v8di)
|
|
{ __D, __C, __B, __A, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set4_pd (double __A, double __B, double __C, double __D)
|
|
{
|
|
return __extension__ (__m512d)
|
|
{ __D, __C, __B, __A, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set4_ps (float __A, float __B, float __C, float __D)
|
|
{
|
|
return __extension__ (__m512)
|
|
{ __D, __C, __B, __A, __D, __C, __B, __A,
|
|
__D, __C, __B, __A, __D, __C, __B, __A };
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_setzero_ps (void)
|
|
{
|
|
return __extension__ (__m512){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
|
|
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_setzero (void)
|
|
{
|
|
return _mm512_setzero_ps ();
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_setzero_pd (void)
|
|
{
|
|
return __extension__ (__m512d) { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_setzero_epi32 (void)
|
|
{
|
|
return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 };
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_setzero_si512 (void)
|
|
{
|
|
return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 };
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mov_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_movapd512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mov_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_movapd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mov_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movaps512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mov_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movaps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_load_pd (void const *__P)
|
|
{
|
|
return *(__m512d *) __P;
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_load_pd (__m512d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_load_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_store_pd (void *__P, __m512d __A)
|
|
{
|
|
*(__m512d *) __P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_store_pd (void *__P, __mmask8 __U, __m512d __A)
|
|
{
|
|
__builtin_ia32_storeapd512_mask ((__v8df *) __P, (__v8df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_load_ps (void const *__P)
|
|
{
|
|
return *(__m512 *) __P;
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_load_ps (__m512 __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_load_ps (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_store_ps (void *__P, __m512 __A)
|
|
{
|
|
*(__m512 *) __P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_store_ps (void *__P, __mmask16 __U, __m512 __A)
|
|
{
|
|
__builtin_ia32_storeaps512_mask ((__v16sf *) __P, (__v16sf) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mov_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa64_512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mov_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa64_512_mask ((__v8di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_load_epi64 (void const *__P)
|
|
{
|
|
return *(__m512i *) __P;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_load_epi64 (__m512i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_load_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_store_epi64 (void *__P, __m512i __A)
|
|
{
|
|
*(__m512i *) __P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_movdqa64store512_mask ((__v8di *) __P, (__v8di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mov_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa32_512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mov_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa32_512_mask ((__v16si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_load_si512 (void const *__P)
|
|
{
|
|
return *(__m512i *) __P;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_load_epi32 (void const *__P)
|
|
{
|
|
return *(__m512i *) __P;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_load_epi32 (__m512i __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_load_epi32 (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_store_si512 (void *__P, __m512i __A)
|
|
{
|
|
*(__m512i *) __P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_store_epi32 (void *__P, __m512i __A)
|
|
{
|
|
*(__m512i *) __P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_store_epi32 (void *__P, __mmask16 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_movdqa32store512_mask ((__v16si *) __P, (__v16si) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mullo_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A * (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mullo_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulld512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mullo_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulld512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mullox_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A * (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mullox_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return _mm512_mask_mov_epi64 (__W, __M, _mm512_mullox_epi64 (__A, __B));
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sllv_epi32 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sllv_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sllv_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srav_epi32 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srav_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srav_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srlv_epi32 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srlv_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srlv_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_add_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A + (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_add_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_add_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sub_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A - (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sub_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sub_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sllv_epi64 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sllv_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sllv_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srav_epi64 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srav_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srav_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srlv_epi64 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srlv_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srlv_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_add_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A + (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_add_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_add_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mul_epi32 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mul_epi32 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v8di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mul_epi32 (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sub_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A - (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sub_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sub_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mul_epu32 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mul_epu32 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v8di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mul_epu32 (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
|
|
(__v16si) __Y,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sll_epi64 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sll_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sll_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srl_epi64 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srl_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srl_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sra_epi64 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sra_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sra_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
|
|
(__v2di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sll_epi32 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sll_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sll_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srl_epi32 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srl_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srl_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sra_epi32 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sra_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sra_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
|
|
(__v4si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rcp14_pd (__m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rcp14_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rcp14_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rcp14_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rcp14_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rcp14_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rcp14_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_rcp14sd ((__v2df) __B,
|
|
(__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rcp14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_rcp14sd_mask ((__v2df) __B,
|
|
(__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rcp14_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_rcp14sd_mask ((__v2df) __B,
|
|
(__v2df) __A,
|
|
(__v2df) _mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rcp14_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_rcp14ss ((__v4sf) __B,
|
|
(__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rcp14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __B,
|
|
(__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rcp14_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __B,
|
|
(__v4sf) __A,
|
|
(__v4sf) _mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rsqrt14_pd (__m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rsqrt14_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rsqrt14_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rsqrt14_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rsqrt14_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rsqrt14_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rsqrt14_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_rsqrt14sd ((__v2df) __B,
|
|
(__v2df) __A);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rsqrt14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_rsqrt14sd_mask ((__v2df) __B,
|
|
(__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rsqrt14_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_rsqrt14sd_mask ((__v2df) __B,
|
|
(__v2df) __A,
|
|
(__v2df) _mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rsqrt14_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrt14ss ((__v4sf) __B,
|
|
(__v4sf) __A);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rsqrt14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __B,
|
|
(__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rsqrt14_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __B,
|
|
(__v4sf) __A,
|
|
(__v4sf) _mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi8_epi32 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbd512_mask ((__v16qi) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi8_epi32 (__m512i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbd512_mask ((__v16qi) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi8_epi32 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbd512_mask ((__v16qi) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi8_epi64 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbq512_mask ((__v16qi) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi8_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbq512_mask ((__v16qi) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbq512_mask ((__v16qi) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi16_epi32 (__m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxwd512_mask ((__v16hi) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi16_epi32 (__m512i __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxwd512_mask ((__v16hi) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi16_epi32 (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxwd512_mask ((__v16hi) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi16_epi64 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxwq512_mask ((__v8hi) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi16_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxwq512_mask ((__v8hi) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxwq512_mask ((__v8hi) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi32_epi64 (__m256i __X)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxdq512_mask ((__v8si) __X,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_epi64 (__m512i __W, __mmask8 __U, __m256i __X)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxdq512_mask ((__v8si) __X,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi32_epi64 (__mmask8 __U, __m256i __X)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxdq512_mask ((__v8si) __X,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu8_epi32 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbd512_mask ((__v16qi) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu8_epi32 (__m512i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbd512_mask ((__v16qi) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu8_epi32 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbd512_mask ((__v16qi) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu8_epi64 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbq512_mask ((__v16qi) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu8_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbq512_mask ((__v16qi) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbq512_mask ((__v16qi) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu16_epi32 (__m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxwd512_mask ((__v16hi) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu16_epi32 (__m512i __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxwd512_mask ((__v16hi) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu16_epi32 (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxwd512_mask ((__v16hi) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu16_epi64 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxwq512_mask ((__v8hi) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu16_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxwq512_mask ((__v8hi) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxwq512_mask ((__v8hi) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu32_epi64 (__m256i __X)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxdq512_mask ((__v8si) __X,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu32_epi64 (__m512i __W, __mmask8 __U, __m256i __X)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxdq512_mask ((__v8si) __X,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu32_epi64 (__mmask8 __U, __m256i __X)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxdq512_mask ((__v8si) __X,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_abs_epi64 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_abs_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_abs_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_abs_epi32 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_abs_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_abs_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastss_ps (__m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastss512 ((__v4sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcastss_ps (__m512 __O, __mmask16 __M, __m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastss512 ((__v4sf) __A,
|
|
(__v16sf) __O, __M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcastss_ps (__mmask16 __M, __m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastss512 ((__v4sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastsd_pd (__m128d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastsd512 ((__v2df) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcastsd_pd (__m512d __O, __mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastsd512 ((__v2df) __A,
|
|
(__v8df) __O, __M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastsd512 ((__v2df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastd_epi32 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastd512 ((__v4si) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcastd_epi32 (__m512i __O, __mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastd512 ((__v4si) __A,
|
|
(__v16si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcastd_epi32 (__mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastd512 ((__v4si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set1_epi32 (int __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastd512_gpr_mask (__A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16)(-1));
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_set1_epi32 (__m512i __O, __mmask16 __M, int __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastd512_gpr_mask (__A, (__v16si) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_set1_epi32 (__mmask16 __M, int __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_pbroadcastd512_gpr_mask (__A,
|
|
(__v16si) _mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastq_epi64 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastq512 ((__v2di) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcastq_epi64 (__m512i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastq512 ((__v2di) __A,
|
|
(__v8di) __O, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastq512 ((__v2di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_set1_epi64 (long long __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastq512_gpr_mask (__A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8)(-1));
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_set1_epi64 (__m512i __O, __mmask8 __M, long long __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastq512_gpr_mask (__A, (__v8di) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_set1_epi64 (__mmask8 __M, long long __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_pbroadcastq512_gpr_mask (__A,
|
|
(__v8di) _mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_f32x4 (__m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_f32x4 (__m512 __O, __mmask16 __M, __m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
|
|
(__v16sf) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_f32x4 (__mmask16 __M, __m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_i32x4 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_i32x4 (__m512i __O, __mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
|
|
(__v16si) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_i32x4 (__mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_f64x4 (__m256d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_f64x4 (__m512d __O, __mmask8 __M, __m256d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
|
|
(__v8df) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_f64x4 (__mmask8 __M, __m256d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_i64x4 (__m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_i64x4 (__m512i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
|
|
(__v8di) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_i64x4 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
typedef enum
|
|
{
|
|
_MM_PERM_AAAA = 0x00, _MM_PERM_AAAB = 0x01, _MM_PERM_AAAC = 0x02,
|
|
_MM_PERM_AAAD = 0x03, _MM_PERM_AABA = 0x04, _MM_PERM_AABB = 0x05,
|
|
_MM_PERM_AABC = 0x06, _MM_PERM_AABD = 0x07, _MM_PERM_AACA = 0x08,
|
|
_MM_PERM_AACB = 0x09, _MM_PERM_AACC = 0x0A, _MM_PERM_AACD = 0x0B,
|
|
_MM_PERM_AADA = 0x0C, _MM_PERM_AADB = 0x0D, _MM_PERM_AADC = 0x0E,
|
|
_MM_PERM_AADD = 0x0F, _MM_PERM_ABAA = 0x10, _MM_PERM_ABAB = 0x11,
|
|
_MM_PERM_ABAC = 0x12, _MM_PERM_ABAD = 0x13, _MM_PERM_ABBA = 0x14,
|
|
_MM_PERM_ABBB = 0x15, _MM_PERM_ABBC = 0x16, _MM_PERM_ABBD = 0x17,
|
|
_MM_PERM_ABCA = 0x18, _MM_PERM_ABCB = 0x19, _MM_PERM_ABCC = 0x1A,
|
|
_MM_PERM_ABCD = 0x1B, _MM_PERM_ABDA = 0x1C, _MM_PERM_ABDB = 0x1D,
|
|
_MM_PERM_ABDC = 0x1E, _MM_PERM_ABDD = 0x1F, _MM_PERM_ACAA = 0x20,
|
|
_MM_PERM_ACAB = 0x21, _MM_PERM_ACAC = 0x22, _MM_PERM_ACAD = 0x23,
|
|
_MM_PERM_ACBA = 0x24, _MM_PERM_ACBB = 0x25, _MM_PERM_ACBC = 0x26,
|
|
_MM_PERM_ACBD = 0x27, _MM_PERM_ACCA = 0x28, _MM_PERM_ACCB = 0x29,
|
|
_MM_PERM_ACCC = 0x2A, _MM_PERM_ACCD = 0x2B, _MM_PERM_ACDA = 0x2C,
|
|
_MM_PERM_ACDB = 0x2D, _MM_PERM_ACDC = 0x2E, _MM_PERM_ACDD = 0x2F,
|
|
_MM_PERM_ADAA = 0x30, _MM_PERM_ADAB = 0x31, _MM_PERM_ADAC = 0x32,
|
|
_MM_PERM_ADAD = 0x33, _MM_PERM_ADBA = 0x34, _MM_PERM_ADBB = 0x35,
|
|
_MM_PERM_ADBC = 0x36, _MM_PERM_ADBD = 0x37, _MM_PERM_ADCA = 0x38,
|
|
_MM_PERM_ADCB = 0x39, _MM_PERM_ADCC = 0x3A, _MM_PERM_ADCD = 0x3B,
|
|
_MM_PERM_ADDA = 0x3C, _MM_PERM_ADDB = 0x3D, _MM_PERM_ADDC = 0x3E,
|
|
_MM_PERM_ADDD = 0x3F, _MM_PERM_BAAA = 0x40, _MM_PERM_BAAB = 0x41,
|
|
_MM_PERM_BAAC = 0x42, _MM_PERM_BAAD = 0x43, _MM_PERM_BABA = 0x44,
|
|
_MM_PERM_BABB = 0x45, _MM_PERM_BABC = 0x46, _MM_PERM_BABD = 0x47,
|
|
_MM_PERM_BACA = 0x48, _MM_PERM_BACB = 0x49, _MM_PERM_BACC = 0x4A,
|
|
_MM_PERM_BACD = 0x4B, _MM_PERM_BADA = 0x4C, _MM_PERM_BADB = 0x4D,
|
|
_MM_PERM_BADC = 0x4E, _MM_PERM_BADD = 0x4F, _MM_PERM_BBAA = 0x50,
|
|
_MM_PERM_BBAB = 0x51, _MM_PERM_BBAC = 0x52, _MM_PERM_BBAD = 0x53,
|
|
_MM_PERM_BBBA = 0x54, _MM_PERM_BBBB = 0x55, _MM_PERM_BBBC = 0x56,
|
|
_MM_PERM_BBBD = 0x57, _MM_PERM_BBCA = 0x58, _MM_PERM_BBCB = 0x59,
|
|
_MM_PERM_BBCC = 0x5A, _MM_PERM_BBCD = 0x5B, _MM_PERM_BBDA = 0x5C,
|
|
_MM_PERM_BBDB = 0x5D, _MM_PERM_BBDC = 0x5E, _MM_PERM_BBDD = 0x5F,
|
|
_MM_PERM_BCAA = 0x60, _MM_PERM_BCAB = 0x61, _MM_PERM_BCAC = 0x62,
|
|
_MM_PERM_BCAD = 0x63, _MM_PERM_BCBA = 0x64, _MM_PERM_BCBB = 0x65,
|
|
_MM_PERM_BCBC = 0x66, _MM_PERM_BCBD = 0x67, _MM_PERM_BCCA = 0x68,
|
|
_MM_PERM_BCCB = 0x69, _MM_PERM_BCCC = 0x6A, _MM_PERM_BCCD = 0x6B,
|
|
_MM_PERM_BCDA = 0x6C, _MM_PERM_BCDB = 0x6D, _MM_PERM_BCDC = 0x6E,
|
|
_MM_PERM_BCDD = 0x6F, _MM_PERM_BDAA = 0x70, _MM_PERM_BDAB = 0x71,
|
|
_MM_PERM_BDAC = 0x72, _MM_PERM_BDAD = 0x73, _MM_PERM_BDBA = 0x74,
|
|
_MM_PERM_BDBB = 0x75, _MM_PERM_BDBC = 0x76, _MM_PERM_BDBD = 0x77,
|
|
_MM_PERM_BDCA = 0x78, _MM_PERM_BDCB = 0x79, _MM_PERM_BDCC = 0x7A,
|
|
_MM_PERM_BDCD = 0x7B, _MM_PERM_BDDA = 0x7C, _MM_PERM_BDDB = 0x7D,
|
|
_MM_PERM_BDDC = 0x7E, _MM_PERM_BDDD = 0x7F, _MM_PERM_CAAA = 0x80,
|
|
_MM_PERM_CAAB = 0x81, _MM_PERM_CAAC = 0x82, _MM_PERM_CAAD = 0x83,
|
|
_MM_PERM_CABA = 0x84, _MM_PERM_CABB = 0x85, _MM_PERM_CABC = 0x86,
|
|
_MM_PERM_CABD = 0x87, _MM_PERM_CACA = 0x88, _MM_PERM_CACB = 0x89,
|
|
_MM_PERM_CACC = 0x8A, _MM_PERM_CACD = 0x8B, _MM_PERM_CADA = 0x8C,
|
|
_MM_PERM_CADB = 0x8D, _MM_PERM_CADC = 0x8E, _MM_PERM_CADD = 0x8F,
|
|
_MM_PERM_CBAA = 0x90, _MM_PERM_CBAB = 0x91, _MM_PERM_CBAC = 0x92,
|
|
_MM_PERM_CBAD = 0x93, _MM_PERM_CBBA = 0x94, _MM_PERM_CBBB = 0x95,
|
|
_MM_PERM_CBBC = 0x96, _MM_PERM_CBBD = 0x97, _MM_PERM_CBCA = 0x98,
|
|
_MM_PERM_CBCB = 0x99, _MM_PERM_CBCC = 0x9A, _MM_PERM_CBCD = 0x9B,
|
|
_MM_PERM_CBDA = 0x9C, _MM_PERM_CBDB = 0x9D, _MM_PERM_CBDC = 0x9E,
|
|
_MM_PERM_CBDD = 0x9F, _MM_PERM_CCAA = 0xA0, _MM_PERM_CCAB = 0xA1,
|
|
_MM_PERM_CCAC = 0xA2, _MM_PERM_CCAD = 0xA3, _MM_PERM_CCBA = 0xA4,
|
|
_MM_PERM_CCBB = 0xA5, _MM_PERM_CCBC = 0xA6, _MM_PERM_CCBD = 0xA7,
|
|
_MM_PERM_CCCA = 0xA8, _MM_PERM_CCCB = 0xA9, _MM_PERM_CCCC = 0xAA,
|
|
_MM_PERM_CCCD = 0xAB, _MM_PERM_CCDA = 0xAC, _MM_PERM_CCDB = 0xAD,
|
|
_MM_PERM_CCDC = 0xAE, _MM_PERM_CCDD = 0xAF, _MM_PERM_CDAA = 0xB0,
|
|
_MM_PERM_CDAB = 0xB1, _MM_PERM_CDAC = 0xB2, _MM_PERM_CDAD = 0xB3,
|
|
_MM_PERM_CDBA = 0xB4, _MM_PERM_CDBB = 0xB5, _MM_PERM_CDBC = 0xB6,
|
|
_MM_PERM_CDBD = 0xB7, _MM_PERM_CDCA = 0xB8, _MM_PERM_CDCB = 0xB9,
|
|
_MM_PERM_CDCC = 0xBA, _MM_PERM_CDCD = 0xBB, _MM_PERM_CDDA = 0xBC,
|
|
_MM_PERM_CDDB = 0xBD, _MM_PERM_CDDC = 0xBE, _MM_PERM_CDDD = 0xBF,
|
|
_MM_PERM_DAAA = 0xC0, _MM_PERM_DAAB = 0xC1, _MM_PERM_DAAC = 0xC2,
|
|
_MM_PERM_DAAD = 0xC3, _MM_PERM_DABA = 0xC4, _MM_PERM_DABB = 0xC5,
|
|
_MM_PERM_DABC = 0xC6, _MM_PERM_DABD = 0xC7, _MM_PERM_DACA = 0xC8,
|
|
_MM_PERM_DACB = 0xC9, _MM_PERM_DACC = 0xCA, _MM_PERM_DACD = 0xCB,
|
|
_MM_PERM_DADA = 0xCC, _MM_PERM_DADB = 0xCD, _MM_PERM_DADC = 0xCE,
|
|
_MM_PERM_DADD = 0xCF, _MM_PERM_DBAA = 0xD0, _MM_PERM_DBAB = 0xD1,
|
|
_MM_PERM_DBAC = 0xD2, _MM_PERM_DBAD = 0xD3, _MM_PERM_DBBA = 0xD4,
|
|
_MM_PERM_DBBB = 0xD5, _MM_PERM_DBBC = 0xD6, _MM_PERM_DBBD = 0xD7,
|
|
_MM_PERM_DBCA = 0xD8, _MM_PERM_DBCB = 0xD9, _MM_PERM_DBCC = 0xDA,
|
|
_MM_PERM_DBCD = 0xDB, _MM_PERM_DBDA = 0xDC, _MM_PERM_DBDB = 0xDD,
|
|
_MM_PERM_DBDC = 0xDE, _MM_PERM_DBDD = 0xDF, _MM_PERM_DCAA = 0xE0,
|
|
_MM_PERM_DCAB = 0xE1, _MM_PERM_DCAC = 0xE2, _MM_PERM_DCAD = 0xE3,
|
|
_MM_PERM_DCBA = 0xE4, _MM_PERM_DCBB = 0xE5, _MM_PERM_DCBC = 0xE6,
|
|
_MM_PERM_DCBD = 0xE7, _MM_PERM_DCCA = 0xE8, _MM_PERM_DCCB = 0xE9,
|
|
_MM_PERM_DCCC = 0xEA, _MM_PERM_DCCD = 0xEB, _MM_PERM_DCDA = 0xEC,
|
|
_MM_PERM_DCDB = 0xED, _MM_PERM_DCDC = 0xEE, _MM_PERM_DCDD = 0xEF,
|
|
_MM_PERM_DDAA = 0xF0, _MM_PERM_DDAB = 0xF1, _MM_PERM_DDAC = 0xF2,
|
|
_MM_PERM_DDAD = 0xF3, _MM_PERM_DDBA = 0xF4, _MM_PERM_DDBB = 0xF5,
|
|
_MM_PERM_DDBC = 0xF6, _MM_PERM_DDBD = 0xF7, _MM_PERM_DDCA = 0xF8,
|
|
_MM_PERM_DDCB = 0xF9, _MM_PERM_DDCC = 0xFA, _MM_PERM_DDCD = 0xFB,
|
|
_MM_PERM_DDDA = 0xFC, _MM_PERM_DDDB = 0xFD, _MM_PERM_DDDC = 0xFE,
|
|
_MM_PERM_DDDD = 0xFF
|
|
} _MM_PERM_ENUM;
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rolv_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rorv_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rolv_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_rorv_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtu32_sd (__m128d __A, unsigned __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtusi2sd32 ((__v2df) __A, __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi32_epi8 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi32_epi8 (__mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsepi32_epi8 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovsdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtsepi32_epi8 (__mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtusepi32_epi8 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovusdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtusepi32_epi8 (__mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi32_epi16 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
|
|
(__v16hi)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_storeu_epi16 (void * __P, __mmask16 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovdw512mem_mask ((__v16hi *) __P, (__v16si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
|
|
(__v16hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi32_epi16 (__mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsepi32_epi16 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
|
|
(__v16hi)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovsdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
|
|
(__v16hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtsepi32_epi16 (__mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtusepi32_epi16 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
|
|
(__v16hi)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovusdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
|
|
(__v16hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtusepi32_epi16 (__mmask16 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi64_epi32 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
|
|
(__v8si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi64_epi32 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsepi64_epi32 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi64_storeu_epi32 (void *__P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovsqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
|
|
(__v8si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtsepi64_epi32 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtusepi64_epi32 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovusqd512mem_mask ((__v8si*) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
|
|
(__v8si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtusepi64_epi32 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi64_epi16 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi64_epi16 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsepi64_epi16 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovsqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtsepi64_epi16 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtusepi64_epi16 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovusqw512mem_mask ((__v8hi*) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtusepi64_epi16 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi64_epi8 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi64_epi8 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsepi64_epi8 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovsqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtsepi64_epi8 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtusepi64_epi8 (__m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovusqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtusepi64_epi8 (__mmask8 __M, __m512i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi32_pd (__m256i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_pd (__m512d __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi32_pd (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu32_pd (__m256i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu32_pd (__m512d __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu32_pd (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_loadu_pd (void const *__P)
|
|
{
|
|
return *(__m512d_u *)__P;
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_loadu_pd (__m512d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_loadu_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_storeu_pd (void *__P, __m512d __A)
|
|
{
|
|
*(__m512d_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_storeu_pd (void *__P, __mmask8 __U, __m512d __A)
|
|
{
|
|
__builtin_ia32_storeupd512_mask ((double *) __P, (__v8df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_loadu_ps (void const *__P)
|
|
{
|
|
return *(__m512_u *)__P;
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_loadu_ps (__m512 __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_loadu_ps (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_storeu_ps (void *__P, __m512 __A)
|
|
{
|
|
*(__m512_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_storeu_ps (void *__P, __mmask16 __U, __m512 __A)
|
|
{
|
|
__builtin_ia32_storeups512_mask ((float *) __P, (__v16sf) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_load_ss (__m128 __W, __mmask8 __U, const float *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadss_mask (__P, (__v4sf) __W, __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_load_ss (__mmask8 __U, const float *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadss_mask (__P, (__v4sf) _mm_setzero_ps (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_load_sd (__m128d __W, __mmask8 __U, const double *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_loadsd_mask (__P, (__v2df) __W, __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_load_sd (__mmask8 __U, const double *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_loadsd_mask (__P, (__v2df) _mm_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_move_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movess_mask ((__v4sf) __A, (__v4sf) __B,
|
|
(__v4sf) __W, __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_move_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movess_mask ((__v4sf) __A, (__v4sf) __B,
|
|
(__v4sf) _mm_setzero_ps (), __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_move_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movesd_mask ((__v2df) __A, (__v2df) __B,
|
|
(__v2df) __W, __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_move_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movesd_mask ((__v2df) __A, (__v2df) __B,
|
|
(__v2df) _mm_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_store_ss (float *__P, __mmask8 __U, __m128 __A)
|
|
{
|
|
__builtin_ia32_storess_mask (__P, (__v4sf) __A, (__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_store_sd (double *__P, __mmask8 __U, __m128d __A)
|
|
{
|
|
__builtin_ia32_storesd_mask (__P, (__v2df) __A, (__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_loadu_epi64 (__m512i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_storeu_epi64 (void *__P, __mmask8 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_storedqudi512_mask ((long long *) __P, (__v8di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_loadu_si512 (void const *__P)
|
|
{
|
|
return *(__m512i_u *)__P;
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_loadu_epi32 (__m512i __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_loadu_epi32 (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_storeu_si512 (void *__P, __m512i __A)
|
|
{
|
|
*(__m512i_u *)__P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_storeu_epi32 (void *__P, __mmask16 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_storedqusi512_mask ((int *) __P, (__v16si) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutevar_pd (__m512d __A, __m512i __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
|
|
(__v8di) __C,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutevar_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512i __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
|
|
(__v8di) __C,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutevar_pd (__mmask8 __U, __m512d __A, __m512i __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
|
|
(__v8di) __C,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutevar_ps (__m512 __A, __m512i __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
|
|
(__v16si) __C,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutevar_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512i __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
|
|
(__v16si) __C,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutevar_ps (__mmask16 __U, __m512 __A, __m512i __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
|
|
(__v16si) __C,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutex2var_epi64 (__m512i __A, __m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varq512_mask ((__v8di) __I
|
|
,
|
|
(__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutex2var_epi64 (__m512i __A, __mmask8 __U, __m512i __I,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varq512_mask ((__v8di) __I
|
|
,
|
|
(__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2_permutex2var_epi64 (__m512i __A, __m512i __I,
|
|
__mmask8 __U, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermi2varq512_mask ((__v8di) __A,
|
|
(__v8di) __I
|
|
,
|
|
(__v8di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutex2var_epi64 (__mmask8 __U, __m512i __A,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varq512_maskz ((__v8di) __I
|
|
,
|
|
(__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutex2var_epi32 (__m512i __A, __m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2vard512_mask ((__v16si) __I
|
|
,
|
|
(__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutex2var_epi32 (__m512i __A, __mmask16 __U,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2vard512_mask ((__v16si) __I
|
|
,
|
|
(__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2_permutex2var_epi32 (__m512i __A, __m512i __I,
|
|
__mmask16 __U, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermi2vard512_mask ((__v16si) __A,
|
|
(__v16si) __I
|
|
,
|
|
(__v16si) __B,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutex2var_epi32 (__mmask16 __U, __m512i __A,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2vard512_maskz ((__v16si) __I
|
|
,
|
|
(__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutex2var_pd (__m512d __A, __m512i __I, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermt2varpd512_mask ((__v8di) __I
|
|
,
|
|
(__v8df) __A,
|
|
(__v8df) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutex2var_pd (__m512d __A, __mmask8 __U, __m512i __I,
|
|
__m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermt2varpd512_mask ((__v8di) __I
|
|
,
|
|
(__v8df) __A,
|
|
(__v8df) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2_permutex2var_pd (__m512d __A, __m512i __I, __mmask8 __U,
|
|
__m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermi2varpd512_mask ((__v8df) __A,
|
|
(__v8di) __I
|
|
,
|
|
(__v8df) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutex2var_pd (__mmask8 __U, __m512d __A, __m512i __I,
|
|
__m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_vpermt2varpd512_maskz ((__v8di) __I
|
|
,
|
|
(__v8df) __A,
|
|
(__v8df) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutex2var_ps (__m512 __A, __m512i __I, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermt2varps512_mask ((__v16si) __I
|
|
,
|
|
(__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutex2var_ps (__m512 __A, __mmask16 __U, __m512i __I, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermt2varps512_mask ((__v16si) __I
|
|
,
|
|
(__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2_permutex2var_ps (__m512 __A, __m512i __I, __mmask16 __U,
|
|
__m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermi2varps512_mask ((__v16sf) __A,
|
|
(__v16si) __I
|
|
,
|
|
(__v16sf) __B,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutex2var_ps (__mmask16 __U, __m512 __A, __m512i __I,
|
|
__m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_vpermt2varps512_maskz ((__v16si) __I
|
|
,
|
|
(__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutexvar_epi64 (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
|
|
(__v8di) __X,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutexvar_epi64 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
|
|
(__v8di) __X,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutexvar_epi64 (__m512i __W, __mmask8 __M, __m512i __X,
|
|
__m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
|
|
(__v8di) __X,
|
|
(__v8di) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutexvar_epi32 (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
|
|
(__v16si) __X,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutexvar_epi32 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
|
|
(__v16si) __X,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X,
|
|
__m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
|
|
(__v16si) __X,
|
|
(__v16si) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutexvar_pd (__m512i __X, __m512d __Y)
|
|
{
|
|
return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
|
|
(__v8di) __X,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutexvar_pd (__m512d __W, __mmask8 __U, __m512i __X, __m512d __Y)
|
|
{
|
|
return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
|
|
(__v8di) __X,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutexvar_pd (__mmask8 __U, __m512i __X, __m512d __Y)
|
|
{
|
|
return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
|
|
(__v8di) __X,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutexvar_ps (__m512i __X, __m512 __Y)
|
|
{
|
|
return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
|
|
(__v16si) __X,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutexvar_ps (__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y)
|
|
{
|
|
return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
|
|
(__v16si) __X,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutexvar_ps (__mmask16 __U, __m512i __X, __m512 __Y)
|
|
{
|
|
return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
|
|
(__v16si) __X,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movehdup_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movshdup512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_movehdup_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movshdup512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_movehdup_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movshdup512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_moveldup_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movsldup512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_moveldup_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movsldup512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_moveldup_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_movsldup512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_or_si512 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A | (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_or_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A | (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_or_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pord512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_or_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pord512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_or_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A | (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_or_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_porq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_or_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_porq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_xor_si512 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A ^ (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_xor_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A ^ (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_xor_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pxord512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_xor_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pxord512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_xor_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A ^ (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_xor_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pxorq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_xor_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pxorq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_and_si512 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A & (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_and_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v16su) __A & (__v16su) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_and_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_and_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_and_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A & (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_and_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W, __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_and_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_andnot_si512 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_andnot_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_andnot_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_andnot_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_andnot_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_andnot_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W, __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_andnot_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pandnq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_test_epi32_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestmd512 ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_test_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestmd512 ((__v16si) __A,
|
|
(__v16si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_test_epi64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmq512 ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_test_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmq512 ((__v8di) __A, (__v8di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_testn_epi32_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestnmd512 ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_testn_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestnmd512 ((__v16si) __A,
|
|
(__v16si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_testn_epi64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmq512 ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmq512 ((__v8di) __A,
|
|
(__v8di) __B, __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_abs_ps (__m512 __A)
|
|
{
|
|
return (__m512) _mm512_and_epi32 ((__m512i) __A,
|
|
_mm512_set1_epi32 (0x7fffffff));
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_abs_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) _mm512_mask_and_epi32 ((__m512i) __W, __U, (__m512i) __A,
|
|
_mm512_set1_epi32 (0x7fffffff));
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_abs_pd (__m512d __A)
|
|
{
|
|
return (__m512d) _mm512_and_epi64 ((__m512i) __A,
|
|
_mm512_set1_epi64 (0x7fffffffffffffffLL));
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_abs_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d)
|
|
_mm512_mask_and_epi64 ((__m512i) __W, __U, (__m512i) __A,
|
|
_mm512_set1_epi64 (0x7fffffffffffffffLL));
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpackhi_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhdq512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpackhi_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhdq512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpackhi_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhdq512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpackhi_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhqdq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpackhi_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhqdq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpackhi_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhqdq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpacklo_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckldq512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpacklo_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckldq512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpacklo_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckldq512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpacklo_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklqdq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpacklo_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklqdq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpacklo_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklqdq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movedup_pd (__m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_movddup512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_movedup_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_movddup512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_movedup_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_movddup512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpacklo_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_unpcklpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpacklo_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_unpcklpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_unpcklpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpackhi_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_unpckhpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpackhi_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_unpckhpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpackhi_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_unpckhpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpackhi_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_unpckhps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpackhi_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_unpckhps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_unpckhps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_stream_si512 (__m512i * __P, __m512i __A)
|
|
{
|
|
__builtin_ia32_movntdq512 ((__v8di *) __P, (__v8di) __A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_stream_ps (float *__P, __m512 __A)
|
|
{
|
|
__builtin_ia32_movntps512 (__P, (__v16sf) __A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_stream_pd (double *__P, __m512d __A)
|
|
{
|
|
__builtin_ia32_movntpd512 (__P, (__v8df) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_stream_load_si512 (void *__P)
|
|
{
|
|
return __builtin_ia32_movntdqa512 ((__v8di *)__P);
|
|
}*/
|
|
typedef enum
|
|
{
|
|
_MM_MANT_NORM_1_2,
|
|
_MM_MANT_NORM_p5_2,
|
|
_MM_MANT_NORM_p5_1,
|
|
_MM_MANT_NORM_p75_1p5
|
|
} _MM_MANTISSA_NORM_ENUM;
|
|
typedef enum
|
|
{
|
|
_MM_MANT_SIGN_src,
|
|
_MM_MANT_SIGN_zero,
|
|
_MM_MANT_SIGN_nan
|
|
} _MM_MANTISSA_SIGN_ENUM;
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_floor_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
|
|
(0x01 | 0x00),
|
|
(__v16sf) __A, -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_floor_pd (__m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
|
|
(0x01 | 0x00),
|
|
(__v8df) __A, -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_ceil_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
|
|
(0x02 | 0x00),
|
|
(__v16sf) __A, -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_ceil_pd (__m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
|
|
(0x02 | 0x00),
|
|
(__v8df) __A, -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_floor_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
|
|
(0x01 | 0x00),
|
|
(__v16sf) __W, __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_floor_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
|
|
(0x01 | 0x00),
|
|
(__v8df) __W, __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_ceil_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
|
|
(0x02 | 0x00),
|
|
(__v16sf) __W, __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
|
|
(0x02 | 0x00),
|
|
(__v8df) __W, __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epi32_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpeqd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpeqd512_mask ((__v16si) __A,
|
|
(__v16si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqq512_mask ((__v8di) __A,
|
|
(__v8di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epi64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epi32_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpgtd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpgtd512_mask ((__v16si) __A,
|
|
(__v16si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtq512_mask ((__v8di) __A,
|
|
(__v8di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epi64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epi32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 5,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 5,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 5,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epu32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 5,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epi64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epu64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 2,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epi32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 2,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 2,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epu32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 2,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epi64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epu64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 1,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epi32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 1,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 1,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epu32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 1,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epi64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epu64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epi32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 4,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 4,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 4,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epu32_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
|
|
(__v16si) __Y, 4,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epi64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epu64_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
|
|
(__v8di) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compress_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_compress_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m512d __A)
|
|
{
|
|
__builtin_ia32_compressstoredf512_mask ((__v8df *) __P, (__v8df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compress_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_compress_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compressstoreu_ps (void *__P, __mmask16 __U, __m512 __A)
|
|
{
|
|
__builtin_ia32_compressstoresf512_mask ((__v16sf *) __P, (__v16sf) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compress_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_compress_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_compressstoredi512_mask ((__v8di *) __P, (__v8di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compress_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_compressstoresi512_mask ((__v16si *) __P, (__v16si) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expand_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_expanddf512_maskz ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expandloadu_pd (__m512d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *) __P,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expandloadu_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512d) __builtin_ia32_expandloaddf512_maskz ((const __v8df *) __P,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expand_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_expandsf512_maskz ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expandloadu_ps (__m512 __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *) __P,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expandloadu_ps (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512) __builtin_ia32_expandloadsf512_maskz ((const __v16sf *) __P,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expand_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_expanddi512_maskz ((__v8di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expandloadu_epi64 (__m512i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *) __P,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_expandloaddi512_maskz ((const __v8di *) __P,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandsi512_maskz ((__v16si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expandloadu_epi32 (__m512i __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *) __P,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expandloadu_epi32 (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloadsi512_maskz ((const __v16si *) __P,
|
|
(__v16si)
|
|
_mm512_setzero_si512
|
|
(), (__mmask16) __U);
|
|
}*/
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortest_mask16_u8 (__mmask16 __A, __mmask16 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_kortestchi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_kortestzhi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestz_mask16_u8 (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestzhi ((__mmask16) __A,
|
|
(__mmask16) __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestc_mask16_u8 (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestchi ((__mmask16) __A,
|
|
(__mmask16) __B);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtmask16_u32 (__mmask16 __A)
|
|
{
|
|
return (unsigned int) __builtin_ia32_kmovw ((__mmask16 ) __A);
|
|
}
|
|
extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtu32_mask16 (unsigned int __A)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kmovw ((__mmask16 ) __A);
|
|
}
|
|
extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_load_mask16 (__mmask16 *__A)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kmovw (*(__mmask16 *) __A);
|
|
}
|
|
extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_store_mask16 (__mmask16 *__A, __mmask16 __B)
|
|
{
|
|
*(__mmask16 *) __A = __builtin_ia32_kmovw (__B);
|
|
}
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kand (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kandn (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kor (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B);
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kortestz (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kortestzhi ((__mmask16) __A,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kortestc (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kortestchi ((__mmask16) __A,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kxnor (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kxor (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_knot (__mmask16 __A)
|
|
{
|
|
return (__mmask16) __builtin_ia32_knothi ((__mmask16) __A);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kunpackb (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
|
|
}*/
|
|
extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kunpackb_mask16 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
|
|
}
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epu64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epu64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epu32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epu32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v16si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpacklo_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_unpcklps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpacklo_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_unpcklps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_unpcklps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_blend_pd (__mmask8 __U, __m512d __A, __m512d __W)
|
|
{
|
|
return (__m512d) __builtin_ia32_blendmpd_512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_blend_ps (__mmask16 __U, __m512 __A, __m512 __W)
|
|
{
|
|
return (__m512) __builtin_ia32_blendmps_512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_blend_epi64 (__mmask8 __U, __m512i __A, __m512i __W)
|
|
{
|
|
return (__m512i) __builtin_ia32_blendmq_512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_blend_epi32 (__mmask16 __U, __m512i __A, __m512i __W)
|
|
{
|
|
return (__m512i) __builtin_ia32_blendmd_512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_mask ((__v2df) __W,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmadd_sd (__m128d __W, __m128d __A, __m128d __B, __mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) __W,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmadd_ss (__m128 __W, __m128 __A, __m128 __B, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) __W,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmadd_sd (__mmask8 __U, __m128d __W, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_maskz ((__v2df) __W,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmadd_ss (__mmask8 __U, __m128 __W, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __W,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_mask ((__v2df) __W,
|
|
(__v2df) __A,
|
|
-(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
|
|
(__v4sf) __A,
|
|
-(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmsub_sd (__m128d __W, __m128d __A, __m128d __B, __mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmsubsd3_mask3 ((__v2df) __W,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmsub_ss (__m128 __W, __m128 __A, __m128 __B, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmsubss3_mask3 ((__v4sf) __W,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmsub_sd (__mmask8 __U, __m128d __W, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_maskz ((__v2df) __W,
|
|
(__v2df) __A,
|
|
-(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmsub_ss (__mmask8 __U, __m128 __W, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __W,
|
|
(__v4sf) __A,
|
|
-(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_mask ((__v2df) __W,
|
|
-(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
|
|
-(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmadd_sd (__m128d __W, __m128d __A, __m128d __B, __mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) __W,
|
|
-(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmadd_ss (__m128 __W, __m128 __A, __m128 __B, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) __W,
|
|
-(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmadd_sd (__mmask8 __U, __m128d __W, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_maskz ((__v2df) __W,
|
|
-(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmadd_ss (__mmask8 __U, __m128 __W, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __W,
|
|
-(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_mask ((__v2df) __W,
|
|
-(__v2df) __A,
|
|
-(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
|
|
-(__v4sf) __A,
|
|
-(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmsub_sd (__m128d __W, __m128d __A, __m128d __B, __mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmsubsd3_mask3 ((__v2df) __W,
|
|
-(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmsub_ss (__m128 __W, __m128 __A, __m128 __B, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmsubss3_mask3 ((__v4sf) __W,
|
|
-(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmsub_sd (__mmask8 __U, __m128d __W, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3_maskz ((__v2df) __W,
|
|
-(__v2df) __A,
|
|
-(__v2df) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmsub_ss (__mmask8 __U, __m128 __W, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __W,
|
|
-(__v4sf) __A,
|
|
-(__v4sf) __B,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sqrt_pd (__m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sqrt_pd (__m512d __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sqrt_ps (__m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sqrt_ps (__m512 __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sqrt_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_add_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) ((__v8df)__A + (__v8df)__B);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_add_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_add_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_add_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) ((__v16sf)__A + (__v16sf)__B);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_add_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_add_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_addsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_addsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_addss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_addss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sub_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) ((__v8df)__A - (__v8df)__B);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sub_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sub_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sub_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) ((__v16sf)__A - (__v16sf)__B);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sub_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sub_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_subsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_subsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_subss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_subss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mul_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) ((__v8df)__A * (__v8df)__B);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mul_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mul_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mul_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) ((__v16sf)__A * (__v16sf)__B);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mul_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mul_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mul_sd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_mulsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mul_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_mulsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mul_ss (__m128 __W, __mmask8 __U, __m128 __A,
|
|
__m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_mulss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mul_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_mulss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_div_pd (__m512d __M, __m512d __V)
|
|
{
|
|
return (__m512d) ((__v8df)__M / (__v8df)__V);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_div_pd (__m512d __W, __mmask8 __U, __m512d __M, __m512d __V)
|
|
{
|
|
return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
|
|
(__v8df) __V,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_div_pd (__mmask8 __U, __m512d __M, __m512d __V)
|
|
{
|
|
return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
|
|
(__v8df) __V,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_div_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) ((__v16sf)__A / (__v16sf)__B);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_div_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_div_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_div_sd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_divsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_div_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_divsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_div_ss (__m128 __W, __mmask8 __U, __m128 __A,
|
|
__m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_divss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_div_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_divss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_maxsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_maxsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_maxss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_maxss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_minsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_sd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_minsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_minss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_ss (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_minss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_scalef_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_scalef_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_scalef_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_scalef_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_scalef_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_scalef_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_scalef_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_scalefsd_mask_round ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_scalef_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_scalefss_mask_round ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmadd_pd (__m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmadd_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmadd_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmadd_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmadd_ps (__m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmadd_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmadd_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmadd_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmsub_pd (__m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmsub_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmsub_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmsub_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmsubpd512_maskz ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmsub_ps (__m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmsub_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmsub_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmsub_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmsubps512_maskz ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmaddsub_pd (__m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmaddsub_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmaddsub_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_mask3 ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmaddsub_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmaddsub_ps (__m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmaddsub_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmaddsub_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_mask3 ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmaddsub_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmsubadd_pd (__m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
-(__v8df) __C,
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmsubadd_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
-(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmsubadd_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmsubaddpd512_mask3 ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmsubadd_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
|
|
(__v8df) __B,
|
|
-(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fmsubadd_ps (__m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
-(__v16sf) __C,
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fmsubadd_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
-(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fmsubadd_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmsubaddps512_mask3 ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fmsubadd_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
-(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fnmadd_pd (__m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmaddpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fnmadd_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmaddpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fnmadd_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmaddpd512_mask3 ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fnmadd_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmaddpd512_maskz ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fnmadd_ps (__m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmaddps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fnmadd_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmaddps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fnmadd_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmaddps512_mask3 ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fnmadd_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmaddps512_maskz ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fnmsub_pd (__m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fnmsub_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmsubpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fnmsub_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmsubpd512_mask3 ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fnmsub_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
|
|
{
|
|
return (__m512d) __builtin_ia32_vfnmsubpd512_maskz ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __C,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_fnmsub_ps (__m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_fnmsub_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmsubps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask3_fnmsub_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmsubps512_mask3 ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_fnmsub_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
|
|
{
|
|
return (__m512) __builtin_ia32_vfnmsubps512_maskz ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttpd_epi32 (__m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttpd_epi32 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttpd_epu32 (__m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttpd_epu32 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtpd_epi32 (__m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtpd_epi32 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtpd_epu32 (__m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtpd_epu32 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttps_epi32 (__m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttps_epi32 (__m512i __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttps_epi32 (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttps_epu32 (__m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttps_epu32 (__m512i __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtps_epi32 (__m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtps_epi32 (__m512i __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtps_epi32 (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtps_epu32 (__m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtps_epu32 (__m512i __W, __mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtps_epu32 (__mmask16 __U, __m512 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsd_f64 (__m512d __A)
|
|
{
|
|
return __A[0];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtss_f32 (__m512 __A)
|
|
{
|
|
return __A[0];
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtu64_ss (__m128 __A, unsigned long long __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtusi2ss64 ((__v4sf) __A, __B,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtu64_sd (__m128d __A, unsigned long long __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtusi2sd64 ((__v2df) __A, __B,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtu32_ss (__m128 __A, unsigned __B)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtusi2ss32 ((__v4sf) __A, __B,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi32_ps (__m512i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi32_ps (__m512 __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi32_ps (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu32_ps (__m512i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu32_ps (__m512 __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu32_ps (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_u64 (__m128 __A)
|
|
{
|
|
return (unsigned long long) __builtin_ia32_vcvtss2usi64 ((__v4sf)
|
|
__A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_u64 (__m128 __A)
|
|
{
|
|
return (unsigned long long) __builtin_ia32_vcvttss2usi64 ((__v4sf)
|
|
__A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_i64 (__m128 __A)
|
|
{
|
|
return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtss_u32 (__m128 __A)
|
|
{
|
|
return (unsigned) __builtin_ia32_vcvtss2usi32 ((__v4sf) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_u32 (__m128 __A)
|
|
{
|
|
return (unsigned) __builtin_ia32_vcvttss2usi32 ((__v4sf) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttss_i32 (__m128 __A)
|
|
{
|
|
return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_u64 (__m128d __A)
|
|
{
|
|
return (unsigned long long) __builtin_ia32_vcvtsd2usi64 ((__v2df)
|
|
__A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_u64 (__m128d __A)
|
|
{
|
|
return (unsigned long long) __builtin_ia32_vcvttsd2usi64 ((__v2df)
|
|
__A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_i64 (__m128d __A)
|
|
{
|
|
return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsd_u32 (__m128d __A)
|
|
{
|
|
return (unsigned) __builtin_ia32_vcvtsd2usi32 ((__v2df) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline unsigned
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_u32 (__m128d __A)
|
|
{
|
|
return (unsigned) __builtin_ia32_vcvttsd2usi32 ((__v2df) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttsd_i32 (__m128d __A)
|
|
{
|
|
return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtps_pd (__m256 __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
|
|
(__v8df)
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtps_pd (__m512d __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtps_pd (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtph_ps (__m256i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
|
|
(__v16sf)
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtph_ps (__m512 __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtph_ps (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtpd_ps (__m512d __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
|
|
(__v8sf)
|
|
_mm256_undefined_ps (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtpd_ps (__m256 __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtpd_ps (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kmov (__mmask16 __A)
|
|
{
|
|
return __builtin_ia32_kmovw (__A);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castpd_ps (__m512d __A)
|
|
{
|
|
return (__m512) (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castpd_si512 (__m512d __A)
|
|
{
|
|
return (__m512i) (__A);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castps_pd (__m512 __A)
|
|
{
|
|
return (__m512d) (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castps_si512 (__m512 __A)
|
|
{
|
|
return (__m512i) (__A);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castsi512_ps (__m512i __A)
|
|
{
|
|
return (__m512) (__A);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castsi512_pd (__m512i __A)
|
|
{
|
|
return (__m512d) (__A);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castpd512_pd128 (__m512d __A)
|
|
{
|
|
return (__m128d)((__m128) __builtin_ia32_extractf32x4_mask ((__v16sf)(__m512) ((__m512)__A), (int) (0), (__v4sf)(__m128)_mm_undefined_ps(), (__mmask8)-1));
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castps512_ps128 (__m512 __A)
|
|
{
|
|
return ((__m128) __builtin_ia32_extractf32x4_mask ((__v16sf)(__m512) (__A), (int) (0), (__v4sf)(__m128)_mm_undefined_ps(), (__mmask8)-1));
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castsi512_si128 (__m512i __A)
|
|
{
|
|
return (__m128i)((__m128i) __builtin_ia32_extracti32x4_mask ((__v16si)(__m512i) ((__m512i)__A), (int) (0), (__v4si)(__m128i)_mm_undefined_si128 (), (__mmask8)-1));
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castpd512_pd256 (__m512d __A)
|
|
{
|
|
return ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1));
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castps512_ps256 (__m512 __A)
|
|
{
|
|
return (__m256)((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d)__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1));
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castsi512_si256 (__m512i __A)
|
|
{
|
|
return (__m256i)((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d)__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1));
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castpd128_pd512 (__m128d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_pd512_pd((__m128d)__A);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castps128_ps512 (__m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_ps512_ps((__m128)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castsi128_si512 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_si512_si((__v4si)__A);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castpd256_pd512 (__m256d __A)
|
|
{
|
|
return __builtin_ia32_pd512_256pd (__A);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castps256_ps512 (__m256 __A)
|
|
{
|
|
return __builtin_ia32_ps512_256ps (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_castsi256_si512 (__m256i __A)
|
|
{
|
|
return (__m512i)__builtin_ia32_si512_256si ((__v8si)__A);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epu32_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
|
|
(__v16si) __B, 0,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epu32_mask (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
|
|
(__v16si) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epu64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
|
|
(__v8di) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epu64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
|
|
(__v8di) __B, 0,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epu32_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
|
|
(__v16si) __B, 6,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epu32_mask (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
|
|
(__v16si) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epu64_mask (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
|
|
(__v8di) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epu64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
|
|
(__v8di) __B, 6,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_add_epi32 (__m512i __A)
|
|
{
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 + __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 + __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 + __T7; return __T8[0] + __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_mul_epi32 (__m512i __A)
|
|
{
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 * __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 * __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 * __T7; return __T8[0] * __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_and_epi32 (__m512i __A)
|
|
{
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 & __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 & __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 & __T7; return __T8[0] & __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_or_epi32 (__m512i __A)
|
|
{
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 | __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 | __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 | __T7; return __T8[0] | __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_add_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_maskz_mov_epi32 (__U, __A);
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 + __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 + __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 + __T7; return __T8[0] + __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_mul_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (1), __U, __A);
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 * __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 * __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 * __T7; return __T8[0] * __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_and_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (~0), __U, __A);
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 & __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 & __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 & __T7; return __T8[0] & __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_or_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_maskz_mov_epi32 (__U, __A);
|
|
__v8si __T1 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v8si __T2 = (__v8si) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 | __T2); __v4si __T4 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v4si __T5 = (__v4si) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v4si __T6 = __T4 | __T5; __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __v4si __T8 = __T6 | __T7; return __T8[0] | __T8[1];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_min_epi32 (__m512i __A)
|
|
{
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_min_epi32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_min_epi32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_min_epi32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_min_epi32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_max_epi32 (__m512i __A)
|
|
{
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_max_epi32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_max_epi32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_max_epi32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_max_epi32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_min_epu32 (__m512i __A)
|
|
{
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_min_epu32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_min_epu32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_min_epu32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_min_epu32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_max_epu32 (__m512i __A)
|
|
{
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_max_epu32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_max_epu32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_max_epu32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_max_epu32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_min_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (0x7fffffff), __U, __A);
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_min_epi32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_min_epi32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_min_epi32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_min_epi32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_max_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (-0x7fffffff - 1), __U, __A);
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_max_epi32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_max_epi32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_max_epi32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_max_epi32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_min_epu32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (~0), __U, __A);
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_min_epu32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_min_epu32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_min_epu32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_min_epu32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_max_epu32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_maskz_mov_epi32 (__U, __A);
|
|
__m256i __T1 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T2 = (__m256i) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = _mm256_max_epu32 (__T1, __T2); __m128i __T4 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __m128i __T5 = (__m128i) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __m128i __T6 = _mm_max_epu32 (__T4, __T5); __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, (__v4si) { 2, 3, 0, 1 }); __m128i __T8 = _mm_max_epu32 (__T6, __T7); __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, (__v4si) { 1, 0, 1, 0 }); __v4si __T10 = (__v4si) _mm_max_epu32 (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_add_ps (__m512 __A)
|
|
{
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = __T1 + __T2; __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = __T4 + __T5; __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = __T6 + __T7; return __T8[0] + __T8[1];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_mul_ps (__m512 __A)
|
|
{
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = __T1 * __T2; __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = __T4 * __T5; __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = __T6 * __T7; return __T8[0] * __T8[1];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_add_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
__A = _mm512_maskz_mov_ps (__U, __A);
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = __T1 + __T2; __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = __T4 + __T5; __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = __T6 + __T7; return __T8[0] + __T8[1];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_mul_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
__A = _mm512_mask_mov_ps (_mm512_set1_ps (1.0f), __U, __A);
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = __T1 * __T2; __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = __T4 * __T5; __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = __T6 * __T7; return __T8[0] * __T8[1];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_min_ps (__m512 __A)
|
|
{
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = _mm256_min_ps (__T1, __T2); __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = _mm_min_ps (__T4, __T5); __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = _mm_min_ps (__T6, __T7); __m128 __T9 = __builtin_shuffle (__T8, (__v4si) { 1, 0, 1, 0 }); __m128 __T10 = _mm_min_ps (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_max_ps (__m512 __A)
|
|
{
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = _mm256_max_ps (__T1, __T2); __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = _mm_max_ps (__T4, __T5); __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = _mm_max_ps (__T6, __T7); __m128 __T9 = __builtin_shuffle (__T8, (__v4si) { 1, 0, 1, 0 }); __m128 __T10 = _mm_max_ps (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_min_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
__A = _mm512_mask_mov_ps (_mm512_set1_ps (__builtin_inff ()), __U, __A);
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = _mm256_min_ps (__T1, __T2); __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = _mm_min_ps (__T4, __T5); __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = _mm_min_ps (__T6, __T7); __m128 __T9 = __builtin_shuffle (__T8, (__v4si) { 1, 0, 1, 0 }); __m128 __T10 = _mm_min_ps (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline float
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_max_ps (__mmask16 __U, __m512 __A)
|
|
{
|
|
__A = _mm512_mask_mov_ps (_mm512_set1_ps (-__builtin_inff ()), __U, __A);
|
|
__m256 __T1 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T2 = (__m256) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) ((__m512d) __A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256 __T3 = _mm256_max_ps (__T1, __T2); __m128 __T4 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(1))); __m128 __T5 = ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(__T3), (int)(0))); __m128 __T6 = _mm_max_ps (__T4, __T5); __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); __m128 __T8 = _mm_max_ps (__T6, __T7); __m128 __T9 = __builtin_shuffle (__T8, (__v4si) { 1, 0, 1, 0 }); __m128 __T10 = _mm_max_ps (__T8, __T9); return __T10[0];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_add_epi64 (__m512i __A)
|
|
{
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 + __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 + __T5; return __T6[0] + __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_mul_epi64 (__m512i __A)
|
|
{
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 * __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 * __T5; return __T6[0] * __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_and_epi64 (__m512i __A)
|
|
{
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 & __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 & __T5; return __T6[0] & __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_or_epi64 (__m512i __A)
|
|
{
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 | __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 | __T5; return __T6[0] | __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_add_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_maskz_mov_epi64 (__U, __A);
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 + __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 + __T5; return __T6[0] + __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_mul_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (1LL), __U, __A);
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 * __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 * __T5; return __T6[0] * __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_and_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (~0LL), __U, __A);
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 & __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 & __T5; return __T6[0] & __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_or_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_maskz_mov_epi64 (__U, __A);
|
|
__v4di __T1 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (1), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __v4di __T2 = (__v4di) ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (__A), (int) (0), (__v4di)(__m256i)_mm256_undefined_si256 (), (__mmask8)-1)); __m256i __T3 = (__m256i) (__T1 | __T2); __v2di __T4 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(1))); __v2di __T5 = (__v2di) ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(__T3), (int)(0))); __v2di __T6 = __T4 | __T5; return __T6[0] | __T6[1];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_min_epi64 (__m512i __A)
|
|
{
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_min_epi64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_min_epi64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_min_epi64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_max_epi64 (__m512i __A)
|
|
{
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_max_epi64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_max_epi64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_max_epi64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_min_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (0x7fffffffffffffffLL),
|
|
__U, __A);
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_min_epi64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_min_epi64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_min_epi64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_max_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (-0x7fffffffffffffffLL - 1),
|
|
__U, __A);
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_max_epi64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_max_epi64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_max_epi64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_min_epu64 (__m512i __A)
|
|
{
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_min_epu64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_min_epu64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_min_epu64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_max_epu64 (__m512i __A)
|
|
{
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_max_epu64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_max_epu64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_max_epu64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_min_epu64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (~0LL), __U, __A);
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_min_epu64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_min_epu64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_min_epu64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_max_epu64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
__A = _mm512_maskz_mov_epi64 (__U, __A);
|
|
__m512i __T1 = ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(__A), (__v8di)(__m512i)(__A), (int)(0x4e), (__v8di)(__m512i)_mm512_undefined_epi32 (), (__mmask8)-1)); __m512i __T2 = _mm512_max_epu64 (__A, __T1); __m512i __T3 = (__m512i) __builtin_shuffle ((__v8di) __T2, (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 }); __m512i __T4 = _mm512_max_epu64 (__T2, __T3); __m512i __T5 = (__m512i) __builtin_shuffle ((__v8di) __T4, (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 }); __v8di __T6 = (__v8di) _mm512_max_epu64 (__T4, __T5); return __T6[0];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_add_pd (__m512d __A)
|
|
{
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = __T1 + __T2; __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = __T4 + __T5; return __T6[0] + __T6[1];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_mul_pd (__m512d __A)
|
|
{
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = __T1 * __T2; __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = __T4 * __T5; return __T6[0] * __T6[1];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_add_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
__A = _mm512_maskz_mov_pd (__U, __A);
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = __T1 + __T2; __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = __T4 + __T5; return __T6[0] + __T6[1];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_mul_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
__A = _mm512_mask_mov_pd (_mm512_set1_pd (1.0), __U, __A);
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = __T1 * __T2; __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = __T4 * __T5; return __T6[0] * __T6[1];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_min_pd (__m512d __A)
|
|
{
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = _mm256_min_pd (__T1, __T2); __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = _mm_min_pd (__T4, __T5); __m128d __T7 = (__m128d) __builtin_shuffle (__T6, (__v2di) { 1, 0 }); __m128d __T8 = _mm_min_pd (__T6, __T7); return __T8[0];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_reduce_max_pd (__m512d __A)
|
|
{
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = _mm256_max_pd (__T1, __T2); __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = _mm_max_pd (__T4, __T5); __m128d __T7 = (__m128d) __builtin_shuffle (__T6, (__v2di) { 1, 0 }); __m128d __T8 = _mm_max_pd (__T6, __T7); return __T8[0];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_min_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
__A = _mm512_mask_mov_pd (_mm512_set1_pd (__builtin_inf ()), __U, __A);
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = _mm256_min_pd (__T1, __T2); __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = _mm_min_pd (__T4, __T5); __m128d __T7 = (__m128d) __builtin_shuffle (__T6, (__v2di) { 1, 0 }); __m128d __T8 = _mm_min_pd (__T6, __T7); return __T8[0];
|
|
}*/
|
|
/*extern __inline double
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_reduce_max_pd (__mmask8 __U, __m512d __A)
|
|
{
|
|
__A = _mm512_mask_mov_pd (_mm512_set1_pd (-__builtin_inf ()), __U, __A);
|
|
__m256d __T1 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (1), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T2 = (__m256d) ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (__A), (int) (0), (__v4df)(__m256d)_mm256_undefined_pd(), (__mmask8)-1)); __m256d __T3 = _mm256_max_pd (__T1, __T2); __m128d __T4 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(1))); __m128d __T5 = ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(__T3), (int)(0))); __m128d __T6 = _mm_max_pd (__T4, __T5); __m128d __T7 = (__m128d) __builtin_shuffle (__T6, (__v2di) { 1, 0 }); __m128d __T8 = _mm_max_pd (__T6, __T7); return __T8[0];
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512er")
|
|
typedef double __v8df __attribute__ ((__vector_size__ (64)));
|
|
typedef float __v16sf __attribute__ ((__vector_size__ (64)));
|
|
typedef float __m512 __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef double __m512d __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef unsigned char __mmask8;
|
|
typedef unsigned short __mmask16;
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512pf")
|
|
typedef long long __v8di __attribute__ ((__vector_size__ (64)));
|
|
typedef int __v16si __attribute__ ((__vector_size__ (64)));
|
|
typedef long long __m512i __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef unsigned char __mmask8;
|
|
typedef unsigned short __mmask16;
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512cd")
|
|
typedef long long __v8di __attribute__ ((__vector_size__ (64)));
|
|
typedef int __v16si __attribute__ ((__vector_size__ (64)));
|
|
typedef long long __m512i __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef double __m512d __attribute__ ((__vector_size__ (64), __may_alias__));
|
|
typedef unsigned char __mmask8;
|
|
typedef unsigned short __mmask16;
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_conflict_epi32 (__m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vpconflictsi_512_mask ((__v16si) __A,
|
|
(__v16si) _mm512_setzero_si512 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_conflict_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpconflictsi_512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_conflict_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vpconflictsi_512_mask ((__v16si) __A,
|
|
(__v16si) _mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_conflict_epi64 (__m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vpconflictdi_512_mask ((__v8di) __A,
|
|
(__v8di) _mm512_setzero_si512 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_conflict_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpconflictdi_512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_conflict_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vpconflictdi_512_mask ((__v8di) __A,
|
|
(__v8di) _mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_lzcnt_epi64 (__m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vplzcntq_512_mask ((__v8di) __A,
|
|
(__v8di) _mm512_setzero_si512 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_lzcnt_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vplzcntq_512_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_lzcnt_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vplzcntq_512_mask ((__v8di) __A,
|
|
(__v8di) _mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_lzcnt_epi32 (__m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vplzcntd_512_mask ((__v16si) __A,
|
|
(__v16si) _mm512_setzero_si512 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_lzcnt_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vplzcntd_512_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_lzcnt_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_vplzcntd_512_mask ((__v16si) __A,
|
|
(__v16si) _mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastmb_epi64 (__mmask8 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcastmb512 (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastmw_epi32 (__mmask16 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcastmw512 (__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vl")
|
|
typedef unsigned int __mmask32;
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mov_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_movapd256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mov_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_movapd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mov_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_movapd128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mov_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_movapd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_load_pd (__m256d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256d) __builtin_ia32_loadapd256_mask ((__v4df *) __P,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_load_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256d) __builtin_ia32_loadapd256_mask ((__v4df *) __P,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_load_pd (__m128d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_loadapd128_mask ((__v2df *) __P,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_load_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_loadapd128_mask ((__v2df *) __P,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_store_pd (void *__P, __mmask8 __U, __m256d __A)
|
|
{
|
|
__builtin_ia32_storeapd256_mask ((__v4df *) __P,
|
|
(__v4df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_store_pd (void *__P, __mmask8 __U, __m128d __A)
|
|
{
|
|
__builtin_ia32_storeapd128_mask ((__v2df *) __P,
|
|
(__v2df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mov_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_movaps256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mov_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_movaps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mov_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_movaps128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mov_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_movaps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_load_ps (__m256 __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256) __builtin_ia32_loadaps256_mask ((__v8sf *) __P,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_load_ps (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256) __builtin_ia32_loadaps256_mask ((__v8sf *) __P,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_load_ps (__m128 __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadaps128_mask ((__v4sf *) __P,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_load_ps (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadaps128_mask ((__v4sf *) __P,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_store_ps (void *__P, __mmask8 __U, __m256 __A)
|
|
{
|
|
__builtin_ia32_storeaps256_mask ((__v8sf *) __P,
|
|
(__v8sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_store_ps (void *__P, __mmask8 __U, __m128 __A)
|
|
{
|
|
__builtin_ia32_storeaps128_mask ((__v4sf *) __P,
|
|
(__v4sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mov_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa64_256_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mov_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa64_256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mov_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa64_128_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mov_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa64_128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_load_epi64 (__m256i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa64load256_mask ((__v4di *) __P,
|
|
(__v4di) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_load_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa64load256_mask ((__v4di *) __P,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_load_epi64 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa64load128_mask ((__v2di *) __P,
|
|
(__v2di) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_load_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa64load128_mask ((__v2di *) __P,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_store_epi64 (void *__P, __mmask8 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_movdqa64store256_mask ((__v4di *) __P,
|
|
(__v4di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_store_epi64 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_movdqa64store128_mask ((__v2di *) __P,
|
|
(__v2di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mov_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa32_256_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mov_epi32 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa32_256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mov_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa32_128_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mov_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa32_128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_load_epi32 (__m256i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa32load256_mask ((__v8si *) __P,
|
|
(__v8si) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_load_epi32 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdqa32load256_mask ((__v8si *) __P,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_load_epi32 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa32load128_mask ((__v4si *) __P,
|
|
(__v4si) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_load_epi32 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdqa32load128_mask ((__v4si *) __P,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_store_epi32 (void *__P, __mmask8 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_movdqa32store256_mask ((__v8si *) __P,
|
|
(__v8si) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_store_epi32 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_movdqa32store128_mask ((__v4si *) __P,
|
|
(__v4si) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_add_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_add_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_add_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_add_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sub_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sub_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sub_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sub_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_store_epi64 (void *__P, __m256i __A)
|
|
{
|
|
*(__m256i *) __P = __A;
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_store_epi64 (void *__P, __m128i __A)
|
|
{
|
|
*(__m128i *) __P = __A;
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_loadu_pd (__m256d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256d) __builtin_ia32_loadupd256_mask ((const double *) __P,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_loadu_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256d) __builtin_ia32_loadupd256_mask ((const double *) __P,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_loadu_pd (__m128d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_loadupd128_mask ((const double *) __P,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_loadu_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_loadupd128_mask ((const double *) __P,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_storeu_pd (void *__P, __mmask8 __U, __m256d __A)
|
|
{
|
|
__builtin_ia32_storeupd256_mask ((double *) __P,
|
|
(__v4df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_storeu_pd (void *__P, __mmask8 __U, __m128d __A)
|
|
{
|
|
__builtin_ia32_storeupd128_mask ((double *) __P,
|
|
(__v2df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_loadu_ps (__m256 __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256) __builtin_ia32_loadups256_mask ((const float *) __P,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_loadu_ps (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256) __builtin_ia32_loadups256_mask ((const float *) __P,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_loadu_ps (__m128 __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadups128_mask ((const float *) __P,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_loadu_ps (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_loadups128_mask ((const float *) __P,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_storeu_ps (void *__P, __mmask8 __U, __m256 __A)
|
|
{
|
|
__builtin_ia32_storeups256_mask ((float *) __P,
|
|
(__v8sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_storeu_ps (void *__P, __mmask8 __U, __m128 __A)
|
|
{
|
|
__builtin_ia32_storeups128_mask ((float *) __P,
|
|
(__v4sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_loadu_epi64 (__m256i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddqudi256_mask ((const long long *) __P,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddqudi256_mask ((const long long *) __P,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_loadu_epi64 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddqudi128_mask ((const long long *) __P,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddqudi128_mask ((const long long *) __P,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_storeu_epi64 (void *__P, __mmask8 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_storedqudi256_mask ((long long *) __P,
|
|
(__v4di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_storeu_epi64 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_storedqudi128_mask ((long long *) __P,
|
|
(__v2di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_loadu_epi32 (__m256i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddqusi256_mask ((const int *) __P,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_loadu_epi32 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddqusi256_mask ((const int *) __P,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_loadu_epi32 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddqusi128_mask ((const int *) __P,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_loadu_epi32 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddqusi128_mask ((const int *) __P,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_storeu_epi32 (void *__P, __mmask8 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_storedqusi256_mask ((int *) __P,
|
|
(__v8si) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_storeu_epi32 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_storedqusi128_mask ((int *) __P,
|
|
(__v4si) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_abs_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_abs_epi32 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_abs_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_abs_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_abs_epi64 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_abs_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_abs_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_abs_epi64 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_abs_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_abs_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtpd_epu32 (__m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtpd_epu32 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpd_epu32 (__m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtpd_epu32 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttps_epi32 (__m256i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttps_epi32 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttps_epi32 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttps_epi32 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttps_epu32 (__m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttps_epu32 (__m256i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttps_epu32 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttps_epu32 (__m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttps_epu32 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttps_epu32 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttpd_epi32 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttpd_epi32 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttpd_epu32 (__m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttpd_epu32 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttpd_epu32 (__m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttpd_epu32 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtpd_epi32 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtpd_epi32 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_pd (__m256d __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_pd (__m128d __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu32_pd (__m128i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu32_pd (__m256d __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu32_pd (__m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu32_pd (__m128d __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_ps (__m256 __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi32_ps (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_ps (__m128 __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi32_ps (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu32_ps (__m256i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu32_ps (__m256 __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu32_ps (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu32_ps (__m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu32_ps (__m128 __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu32_ps (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtps_pd (__m256d __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtps_pd (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtps_pd (__m128d __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtps_pd (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi32_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi32_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi32_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi32_epi8 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsepi32_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovsdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtsepi32_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsepi32_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovsdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtsepi32_epi8 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtusepi32_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovusdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtusepi32_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtusepi32_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovusdb256mem_mask ((__v16qi*) __P, (__v8si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtusepi32_epi8 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi32_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi32_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi32_epi16 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi32_epi16 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsepi32_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovsdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
|
|
(__v8hi)__O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtsepi32_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsepi32_epi16 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovsdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtsepi32_epi16 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtusepi32_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovusdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtusepi32_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtusepi32_epi16 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovusdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtusepi32_epi16 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi64_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi64_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi64_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi64_epi8 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsepi64_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovsqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtsepi64_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsepi64_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovsqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtsepi64_epi8 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtusepi64_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovusqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtusepi64_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtusepi64_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovusqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtusepi64_epi8 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi64_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
|
|
(__v8hi)__O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi64_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi64_epi16 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi64_epi16 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsepi64_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovsqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtsepi64_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsepi64_epi16 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovsqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtsepi64_epi16 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtusepi64_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovusqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtusepi64_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtusepi64_epi16 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
|
|
(__v8hi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovusqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
|
|
(__v8hi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtusepi64_epi16 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi64_epi32 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
|
|
(__v4si)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
|
|
(__v4si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi64_epi32 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi64_epi32 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
|
|
(__v4si)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
|
|
(__v4si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi64_epi32 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsepi64_epi32 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
|
|
(__v4si)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovsqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
|
|
(__v4si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtsepi64_epi32 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsepi64_epi32 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
|
|
(__v4si)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovsqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
|
|
(__v4si)__O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtsepi64_epi32 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtusepi64_epi32 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
|
|
(__v4si)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
|
|
{
|
|
__builtin_ia32_pmovusqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
|
|
(__v4si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtusepi64_epi32 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtusepi64_epi32 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
|
|
(__v4si)
|
|
_mm_undefined_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
|
|
{
|
|
__builtin_ia32_pmovusqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
|
|
(__v4si) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtusepi64_epi32 (__mmask8 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcastss_ps (__m256 __O, __mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastss256_mask ((__v4sf) __A,
|
|
(__v8sf) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcastss_ps (__mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastss256_mask ((__v4sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_broadcastss_ps (__m128 __O, __mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_broadcastss128_mask ((__v4sf) __A,
|
|
(__v4sf) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_broadcastss_ps (__mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_broadcastss128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcastsd_pd (__m256d __O, __mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_broadcastsd256_mask ((__v2df) __A,
|
|
(__v4df) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_broadcastsd256_mask ((__v2df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcastd_epi32 (__m256i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastd256_mask ((__v4si) __A,
|
|
(__v8si) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastd256_mask ((__v4si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_set1_epi32 (__m256i __O, __mmask8 __M, int __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastd256_gpr_mask (__A, (__v8si) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_set1_epi32 (__mmask8 __M, int __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastd256_gpr_mask (__A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_broadcastd_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastd128_mask ((__v4si) __A,
|
|
(__v4si) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastd128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_set1_epi32 (__m128i __O, __mmask8 __M, int __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastd128_gpr_mask (__A, (__v4si) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_set1_epi32 (__mmask8 __M, int __A)
|
|
{
|
|
return (__m128i)
|
|
__builtin_ia32_pbroadcastd128_gpr_mask (__A,
|
|
(__v4si) _mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcastq_epi64 (__m256i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastq256_mask ((__v2di) __A,
|
|
(__v4di) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastq256_mask ((__v2di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_set1_epi64 (__m256i __O, __mmask8 __M, long long __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastq256_gpr_mask (__A, (__v4di) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_set1_epi64 (__mmask8 __M, long long __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastq256_gpr_mask (__A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_broadcastq_epi64 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastq128_mask ((__v2di) __A,
|
|
(__v2di) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastq128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_set1_epi64 (__m128i __O, __mmask8 __M, long long __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastq128_gpr_mask (__A, (__v2di) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_set1_epi64 (__mmask8 __M, long long __A)
|
|
{
|
|
return (__m128i)
|
|
__builtin_ia32_pbroadcastq128_gpr_mask (__A,
|
|
(__v2di) _mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_f32x4 (__m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
|
|
(__v8sf)_mm256_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcast_f32x4 (__m256 __O, __mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
|
|
(__v8sf) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcast_f32x4 (__mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_i32x4 (__m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
|
|
__A,
|
|
(__v8si)_mm256_undefined_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcast_i32x4 (__m256i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
|
|
__A,
|
|
(__v8si)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcast_i32x4 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
|
|
__A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi8_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbd256_mask ((__v16qi) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbd256_mask ((__v16qi) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi8_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbd128_mask ((__v16qi) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbd128_mask ((__v16qi) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi8_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbq256_mask ((__v16qi) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbq256_mask ((__v16qi) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi8_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbq128_mask ((__v16qi) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbq128_mask ((__v16qi) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi16_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxwd256_mask ((__v8hi) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxwd256_mask ((__v8hi) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi16_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxwd128_mask ((__v8hi) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxwd128_mask ((__v8hi) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi16_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxwq256_mask ((__v8hi) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxwq256_mask ((__v8hi) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi16_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxwq128_mask ((__v8hi) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxwq128_mask ((__v8hi) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi32_epi64 (__m256i __W, __mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxdq256_mask ((__v4si) __X,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi32_epi64 (__mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxdq256_mask ((__v4si) __X,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi32_epi64 (__m128i __W, __mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxdq128_mask ((__v4si) __X,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi32_epi64 (__mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxdq128_mask ((__v4si) __X,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu8_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbd256_mask ((__v16qi) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu8_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbd256_mask ((__v16qi) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu8_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbd128_mask ((__v16qi) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu8_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbd128_mask ((__v16qi) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu8_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbq256_mask ((__v16qi) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbq256_mask ((__v16qi) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu8_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbq128_mask ((__v16qi) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbq128_mask ((__v16qi) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu16_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxwd256_mask ((__v8hi) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu16_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxwd256_mask ((__v8hi) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu16_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxwd128_mask ((__v8hi) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu16_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxwd128_mask ((__v8hi) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu16_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxwq256_mask ((__v8hi) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxwq256_mask ((__v8hi) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu16_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxwq128_mask ((__v8hi) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxwq128_mask ((__v8hi) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu32_epi64 (__m256i __W, __mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxdq256_mask ((__v4si) __X,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu32_epi64 (__mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxdq256_mask ((__v4si) __X,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu32_epi64 (__m128i __W, __mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxdq128_mask ((__v4si) __X,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu32_epi64 (__mmask8 __U, __m128i __X)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxdq128_mask ((__v4si) __X,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rcp14_pd (__m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rcp14_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rcp14_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rcp14_pd (__m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rcp14_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rcp14_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rcp14_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rcp14_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rcp14_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rcp14_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rcp14_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rcp14_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rsqrt14_pd (__m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rsqrt14_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rsqrt14_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rsqrt14_pd (__m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rsqrt14_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rsqrt14_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rsqrt14_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rsqrt14_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rsqrt14_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rsqrt14_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rsqrt14_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rsqrt14_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sqrt_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sqrt_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sqrt_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sqrt_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sqrt_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sqrt_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sqrt_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sqrt_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_add_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_add_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_add_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_add_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sub_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sub_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sub_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sub_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_getexp_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_getexp_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_getexp_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_getexp_pd (__m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_getexp_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_getexp_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_getexp_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_getexp_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_getexp_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_getexp_pd (__m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_getexp_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_getexp_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srl_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrld256_mask ((__v8si) __A,
|
|
(__v4si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srl_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrld256_mask ((__v8si) __A,
|
|
(__v4si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srl_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrld128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srl_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrld128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srl_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srl_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srl_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srl_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_and_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_and_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_scalef_pd (__m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_scalef_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_scalef_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_scalef_ps (__m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_scalef_ps (__m256 __W, __mmask8 __U, __m256 __A,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_scalef_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_scalef_pd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_scalef_pd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_scalef_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_scalef_ps (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_scalef_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_scalef_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmadd_pd (__m256d __A, __m256d __B, __m256d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256_mask3 ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmadd_pd (__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmadd_pd (__m128d __A, __m128d __B, __m128d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd128_mask3 ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmadd_ps (__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmadd_ps (__m256 __A, __m256 __B, __m256 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256_mask3 ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmadd_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps128_mask3 ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmadd_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmsubpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmsub_pd (__m256d __A, __m256d __B, __m256d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmsubpd256_mask3 ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmsubpd256_maskz ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmsub_pd (__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmsubpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmsub_pd (__m128d __A, __m128d __B, __m128d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmsubpd128_mask3 ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmsubpd128_maskz ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmsub_ps (__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmsubps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmsub_ps (__m256 __A, __m256 __B, __m256 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmsubps256_mask3 ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmsubps256_maskz ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmsubps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmsub_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmsubps128_mask3 ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmsub_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmsubps128_maskz ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmaddsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmaddsub_pd (__m256d __A, __m256d __B, __m256d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256_mask3 ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmaddsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmaddsub_pd (__m128d __A, __mmask8 __U, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmaddsub_pd (__m128d __A, __m128d __B, __m128d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd128_mask3 ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmaddsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmaddsub_ps (__m256 __A, __mmask8 __U, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmaddsub_ps (__m256 __A, __m256 __B, __m256 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256_mask3 ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmaddsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmaddsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmaddsub_ps (__m128 __A, __m128 __B, __m128 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps128_mask3 ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmaddsub_ps (__mmask8 __U, __m128 __A, __m128 __B,
|
|
__m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps128_maskz ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmsubadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
-(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmsubadd_pd (__m256d __A, __m256d __B, __m256d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmsubaddpd256_mask3 ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmsubadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
|
|
(__v4df) __B,
|
|
-(__v4df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmsubadd_pd (__m128d __A, __mmask8 __U, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
-(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmsubadd_pd (__m128d __A, __m128d __B, __m128d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmsubaddpd128_mask3 ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmsubadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
|
|
(__v2df) __B,
|
|
-(__v2df) __C,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fmsubadd_ps (__m256 __A, __mmask8 __U, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
-(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fmsubadd_ps (__m256 __A, __m256 __B, __m256 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmsubaddps256_mask3 ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fmsubadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
-(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fmsubadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
-(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fmsubadd_ps (__m128 __A, __m128 __B, __m128 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmsubaddps128_mask3 ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fmsubadd_ps (__mmask8 __U, __m128 __A, __m128 __B,
|
|
__m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps128_maskz ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
-(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fnmadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfnmaddpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fnmadd_pd (__m256d __A, __m256d __B, __m256d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfnmaddpd256_mask3 ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fnmadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfnmaddpd256_maskz ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmadd_pd (__m128d __A, __mmask8 __U, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfnmaddpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmadd_pd (__m128d __A, __m128d __B, __m128d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfnmaddpd128_mask3 ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfnmaddpd128_maskz ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fnmadd_ps (__m256 __A, __mmask8 __U, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfnmaddps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fnmadd_ps (__m256 __A, __m256 __B, __m256 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256) __builtin_ia32_vfnmaddps256_mask3 ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fnmadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfnmaddps256_maskz ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfnmaddps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmadd_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfnmaddps128_mask3 ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmadd_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfnmaddps128_maskz ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fnmsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfnmsubpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fnmsub_pd (__m256d __A, __m256d __B, __m256d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfnmsubpd256_mask3 ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fnmsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
|
|
__m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfnmsubpd256_maskz ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmsub_pd (__m128d __A, __mmask8 __U, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfnmsubpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmsub_pd (__m128d __A, __m128d __B, __m128d __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfnmsubpd128_mask3 ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
|
|
__m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfnmsubpd128_maskz ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_fnmsub_ps (__m256 __A, __mmask8 __U, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfnmsubps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask3_fnmsub_ps (__m256 __A, __m256 __B, __m256 __C,
|
|
__mmask8 __U)
|
|
{
|
|
return (__m256) __builtin_ia32_vfnmsubps256_mask3 ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_fnmsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
|
|
__m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfnmsubps256_maskz ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_fnmsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfnmsubps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask3_fnmsub_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
|
|
{
|
|
return (__m128) __builtin_ia32_vfnmsubps128_mask3 ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_fnmsub_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfnmsubps128_maskz ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_and_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_and_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_andnot_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandnd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_andnot_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandnd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_andnot_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandnd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_andnot_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandnd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_or_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pord256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_or_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pord256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_or_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8su)__A | (__v8su)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_or_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pord128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_or_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pord128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_or_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4su)__A | (__v4su)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_xor_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pxord256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_xor_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pxord256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_xor_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v8su)__A ^ (__v8su)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_xor_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pxord128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_xor_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pxord128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_xor_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v4su)__A ^ (__v4su)__B);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtpd_ps (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtpd2ps256_mask ((__v4df) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtpd_ps (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtpd2ps256_mask ((__v4df) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtps_epi32 (__m256i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2dq256_mask ((__v8sf) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtps_epi32 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2dq256_mask ((__v8sf) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtps_epi32 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2dq128_mask ((__v4sf) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtps_epi32 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2dq128_mask ((__v4sf) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtps_epu32 (__m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtps_epu32 (__m256i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtps_epu32 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_epu32 (__m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtps_epu32 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtps_epu32 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_movedup_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_movddup256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_movedup_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_movddup256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_movedup_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_movddup128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_movedup_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_movddup128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_movehdup_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_movshdup256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_movehdup_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_movshdup256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_movehdup_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_movshdup128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_movehdup_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_movshdup128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_moveldup_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_movsldup256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_moveldup_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_movsldup256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_moveldup_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_movsldup128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_moveldup_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_movsldup128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpackhi_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhdq128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpackhi_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhdq128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpackhi_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhdq256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpackhi_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhdq256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpackhi_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhqdq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpackhi_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhqdq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpackhi_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhqdq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpackhi_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhqdq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpacklo_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckldq128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpacklo_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckldq128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpacklo_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckldq256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpacklo_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckldq256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpacklo_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpcklqdq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpacklo_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpcklqdq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpacklo_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpcklqdq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpacklo_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpcklqdq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epu32_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
|
|
(__v4si) __B, 0,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi32_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epu32_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
|
|
(__v4si) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqd128_mask ((__v4si) __A,
|
|
(__v4si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epu32_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
|
|
(__v8si) __B, 0,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi32_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epu32_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
|
|
(__v8si) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqd256_mask ((__v8si) __A,
|
|
(__v8si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epu64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
|
|
(__v2di) __B, 0,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epu64_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
|
|
(__v2di) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqq128_mask ((__v2di) __A,
|
|
(__v2di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epu64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
|
|
(__v4di) __B, 0,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epu64_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
|
|
(__v4di) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqq256_mask ((__v4di) __A,
|
|
(__v4di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epu32_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
|
|
(__v4si) __B, 6,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi32_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epu32_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
|
|
(__v4si) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtd128_mask ((__v4si) __A,
|
|
(__v4si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epu32_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
|
|
(__v8si) __B, 6,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi32_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epu32_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
|
|
(__v8si) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtd256_mask ((__v8si) __A,
|
|
(__v8si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epu64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
|
|
(__v2di) __B, 6,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epu64_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
|
|
(__v2di) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtq128_mask ((__v2di) __A,
|
|
(__v2di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epu64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
|
|
(__v4di) __B, 6,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epu64_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
|
|
(__v4di) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtq256_mask ((__v4di) __A,
|
|
(__v4di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_test_epi32_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmd128 ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_test_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmd128 ((__v4si) __A,
|
|
(__v4si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_test_epi32_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmd256 ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_test_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmd256 ((__v8si) __A,
|
|
(__v8si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_test_epi64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmq128 ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_test_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmq128 ((__v2di) __A,
|
|
(__v2di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_test_epi64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmq256 ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_test_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmq256 ((__v4di) __A,
|
|
(__v4di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testn_epi32_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmd128 ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_testn_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmd128 ((__v4si) __A,
|
|
(__v4si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testn_epi32_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmd256 ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_testn_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmd256 ((__v8si) __A,
|
|
(__v8si) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testn_epi64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmq128 ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_testn_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmq128 ((__v2di) __A,
|
|
(__v2di) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testn_epi64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmq256 ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_testn_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmq256 ((__v4di) __A,
|
|
(__v4di) __B, __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compress_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_compress_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m256d __A)
|
|
{
|
|
__builtin_ia32_compressstoredf256_mask ((__v4df *) __P,
|
|
(__v4df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compress_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_compress_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m128d __A)
|
|
{
|
|
__builtin_ia32_compressstoredf128_mask ((__v2df *) __P,
|
|
(__v2df) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compress_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_compress_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m256 __A)
|
|
{
|
|
__builtin_ia32_compressstoresf256_mask ((__v8sf *) __P,
|
|
(__v8sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compress_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_compress_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m128 __A)
|
|
{
|
|
__builtin_ia32_compressstoresf128_mask ((__v4sf *) __P,
|
|
(__v4sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compress_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_compress_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_compressstoredi256_mask ((__v4di *) __P,
|
|
(__v4di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compress_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_compress_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_compressstoredi128_mask ((__v2di *) __P,
|
|
(__v2di) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compress_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_compress_epi32 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_compressstoresi256_mask ((__v8si *) __P,
|
|
(__v8si) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compress_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_compress_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_compressstoresi128_mask ((__v4si *) __P,
|
|
(__v4si) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expand_pd (__m256d __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expand_pd (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_expanddf256_maskz ((__v4df) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expandloadu_pd (__m256d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256d) __builtin_ia32_expandloaddf256_mask ((__v4df *) __P,
|
|
(__v4df) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expandloadu_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256d) __builtin_ia32_expandloaddf256_maskz ((__v4df *) __P,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expand_pd (__m128d __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expand_pd (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_expanddf128_maskz ((__v2df) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expandloadu_pd (__m128d __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_expandloaddf128_mask ((__v2df *) __P,
|
|
(__v2df) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expandloadu_pd (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128d) __builtin_ia32_expandloaddf128_maskz ((__v2df *) __P,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expand_ps (__m256 __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expand_ps (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_expandsf256_maskz ((__v8sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expandloadu_ps (__m256 __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256) __builtin_ia32_expandloadsf256_mask ((__v8sf *) __P,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expandloadu_ps (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256) __builtin_ia32_expandloadsf256_maskz ((__v8sf *) __P,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expand_ps (__m128 __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expand_ps (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_expandsf128_maskz ((__v4sf) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expandloadu_ps (__m128 __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_expandloadsf128_mask ((__v4sf *) __P,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expandloadu_ps (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128) __builtin_ia32_expandloadsf128_maskz ((__v4sf *) __P,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expand_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expand_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_expanddi256_maskz ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expandloadu_epi64 (__m256i __W, __mmask8 __U,
|
|
void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloaddi256_mask ((__v4di *) __P,
|
|
(__v4di) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloaddi256_maskz ((__v4di *) __P,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expand_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expand_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_expanddi128_maskz ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expandloadu_epi64 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloaddi128_mask ((__v2di *) __P,
|
|
(__v2di) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloaddi128_maskz ((__v2di *) __P,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expand_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expand_epi32 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandsi256_maskz ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expandloadu_epi32 (__m256i __W, __mmask8 __U,
|
|
void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloadsi256_mask ((__v8si *) __P,
|
|
(__v8si) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloadsi256_maskz ((__v8si *) __P,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expand_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expand_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandsi128_maskz ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expandloadu_epi32 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloadsi128_mask ((__v4si *) __P,
|
|
(__v4si) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloadsi128_maskz ((__v4si *) __P,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutex2var_pd (__m256d __A, __m256i __I, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermt2varpd256_mask ((__v4di) __I
|
|
,
|
|
(__v4df) __A,
|
|
(__v4df) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutex2var_pd (__m256d __A, __mmask8 __U, __m256i __I,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermt2varpd256_mask ((__v4di) __I
|
|
,
|
|
(__v4df) __A,
|
|
(__v4df) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask2_permutex2var_pd (__m256d __A, __m256i __I, __mmask8 __U,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermi2varpd256_mask ((__v4df) __A,
|
|
(__v4di) __I
|
|
,
|
|
(__v4df) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutex2var_pd (__mmask8 __U, __m256d __A, __m256i __I,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermt2varpd256_maskz ((__v4di) __I
|
|
,
|
|
(__v4df) __A,
|
|
(__v4df) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutex2var_ps (__m256 __A, __m256i __I, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermt2varps256_mask ((__v8si) __I
|
|
,
|
|
(__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutex2var_ps (__m256 __A, __mmask8 __U, __m256i __I,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermt2varps256_mask ((__v8si) __I
|
|
,
|
|
(__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask2_permutex2var_ps (__m256 __A, __m256i __I, __mmask8 __U,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermi2varps256_mask ((__v8sf) __A,
|
|
(__v8si) __I
|
|
,
|
|
(__v8sf) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutex2var_ps (__mmask8 __U, __m256 __A, __m256i __I,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermt2varps256_maskz ((__v8si) __I
|
|
,
|
|
(__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutex2var_epi64 (__m128i __A, __m128i __I, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varq128_mask ((__v2di) __I
|
|
,
|
|
(__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutex2var_epi64 (__m128i __A, __mmask8 __U, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varq128_mask ((__v2di) __I
|
|
,
|
|
(__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask2_permutex2var_epi64 (__m128i __A, __m128i __I, __mmask8 __U,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermi2varq128_mask ((__v2di) __A,
|
|
(__v2di) __I
|
|
,
|
|
(__v2di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutex2var_epi64 (__mmask8 __U, __m128i __A, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varq128_maskz ((__v2di) __I
|
|
,
|
|
(__v2di) __A,
|
|
(__v2di) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutex2var_epi32 (__m128i __A, __m128i __I, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2vard128_mask ((__v4si) __I
|
|
,
|
|
(__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutex2var_epi32 (__m128i __A, __mmask8 __U, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2vard128_mask ((__v4si) __I
|
|
,
|
|
(__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask2_permutex2var_epi32 (__m128i __A, __m128i __I, __mmask8 __U,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermi2vard128_mask ((__v4si) __A,
|
|
(__v4si) __I
|
|
,
|
|
(__v4si) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutex2var_epi32 (__mmask8 __U, __m128i __A, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2vard128_maskz ((__v4si) __I
|
|
,
|
|
(__v4si) __A,
|
|
(__v4si) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutex2var_epi64 (__m256i __A, __m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varq256_mask ((__v4di) __I
|
|
,
|
|
(__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutex2var_epi64 (__m256i __A, __mmask8 __U, __m256i __I,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varq256_mask ((__v4di) __I
|
|
,
|
|
(__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask2_permutex2var_epi64 (__m256i __A, __m256i __I,
|
|
__mmask8 __U, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermi2varq256_mask ((__v4di) __A,
|
|
(__v4di) __I
|
|
,
|
|
(__v4di) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutex2var_epi64 (__mmask8 __U, __m256i __A,
|
|
__m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varq256_maskz ((__v4di) __I
|
|
,
|
|
(__v4di) __A,
|
|
(__v4di) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutex2var_epi32 (__m256i __A, __m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2vard256_mask ((__v8si) __I
|
|
,
|
|
(__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutex2var_epi32 (__m256i __A, __mmask8 __U, __m256i __I,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2vard256_mask ((__v8si) __I
|
|
,
|
|
(__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask2_permutex2var_epi32 (__m256i __A, __m256i __I,
|
|
__mmask8 __U, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermi2vard256_mask ((__v8si) __A,
|
|
(__v8si) __I
|
|
,
|
|
(__v8si) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutex2var_epi32 (__mmask8 __U, __m256i __A,
|
|
__m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2vard256_maskz ((__v8si) __I
|
|
,
|
|
(__v8si) __A,
|
|
(__v8si) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutex2var_pd (__m128d __A, __m128i __I, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermt2varpd128_mask ((__v2di) __I
|
|
,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutex2var_pd (__m128d __A, __mmask8 __U, __m128i __I,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermt2varpd128_mask ((__v2di) __I
|
|
,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask2_permutex2var_pd (__m128d __A, __m128i __I, __mmask8 __U,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermi2varpd128_mask ((__v2df) __A,
|
|
(__v2di) __I
|
|
,
|
|
(__v2df) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutex2var_pd (__mmask8 __U, __m128d __A, __m128i __I,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermt2varpd128_maskz ((__v2di) __I
|
|
,
|
|
(__v2df) __A,
|
|
(__v2df) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutex2var_ps (__m128 __A, __m128i __I, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermt2varps128_mask ((__v4si) __I
|
|
,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutex2var_ps (__m128 __A, __mmask8 __U, __m128i __I,
|
|
__m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermt2varps128_mask ((__v4si) __I
|
|
,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask2_permutex2var_ps (__m128 __A, __m128i __I, __mmask8 __U,
|
|
__m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermi2varps128_mask ((__v4sf) __A,
|
|
(__v4si) __I
|
|
,
|
|
(__v4sf) __B,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutex2var_ps (__mmask8 __U, __m128 __A, __m128i __I,
|
|
__m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermt2varps128_maskz ((__v4si) __I
|
|
,
|
|
(__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srav_epi64 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psravq128_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srav_epi64 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psravq128_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srav_epi64 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psravq128_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sllv_epi32 (__m256i __W, __mmask8 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv8si_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sllv_epi32 (__mmask8 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv8si_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sllv_epi32 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv4si_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sllv_epi32 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv4si_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sllv_epi64 (__m256i __W, __mmask8 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv4di_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sllv_epi64 (__mmask8 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv4di_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sllv_epi64 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv2di_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sllv_epi64 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv2di_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srav_epi32 (__m256i __W, __mmask8 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrav8si_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srav_epi32 (__mmask8 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrav8si_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srav_epi32 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrav4si_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srav_epi32 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrav4si_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srlv_epi32 (__m256i __W, __mmask8 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv8si_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srlv_epi32 (__mmask8 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv8si_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srlv_epi32 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv4si_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srlv_epi32 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv4si_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srlv_epi64 (__m256i __W, __mmask8 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv4di_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srlv_epi64 (__mmask8 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv4di_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srlv_epi64 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv2di_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srlv_epi64 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv2di_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rolv_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prolvd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rolv_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prolvd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rolv_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prolvd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rolv_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prolvd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rolv_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prolvd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rolv_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prolvd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rorv_epi32 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prorvd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rorv_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prorvd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rorv_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prorvd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rorv_epi32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prorvd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rorv_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prorvd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rorv_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prorvd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rolv_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prolvq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rolv_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prolvq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rolv_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prolvq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rolv_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prolvq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rolv_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prolvq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rolv_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prolvq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_rorv_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prorvq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_rorv_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prorvq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_rorv_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_prorvq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rorv_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prorvq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_rorv_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prorvq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_rorv_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_prorvq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srav_epi64 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psravq256_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srav_epi64 (__m256i __W, __mmask8 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psravq256_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srav_epi64 (__mmask8 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_psravq256_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_and_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W, __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_and_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_and_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W, __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_and_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_andnot_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandnq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W, __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_andnot_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pandnq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_andnot_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandnq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W, __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_andnot_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pandnq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_pd (),
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_or_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_porq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_or_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_porq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_or_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A | (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_or_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_porq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_or_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_porq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_or_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A | (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_xor_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pxorq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_xor_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pxorq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_xor_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du)__A ^ (__v4du)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_xor_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pxorq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_xor_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pxorq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_xor_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du)__A ^ (__v2du)__B);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_maxpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_maxpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_maxps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_maxps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_div_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_divps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_div_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_divps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_div_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_divpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_div_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_divpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_minpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_div_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_divpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_minpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_minps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_div_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_divpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_div_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_divps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_minps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_div_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_divps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_minps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mul_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_mulps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_minps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mul_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_mulps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_maxps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_maxps_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_minpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_minpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_maxpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_maxpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mul_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_mulpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mul_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_mulpd_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mul_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_mulps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mul_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_mulps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mul_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_mulpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mul_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_mulpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epi64 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epi64 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epi64 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epi64 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epu64 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_max_epu64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epu64 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_min_epu64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epu64 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epu64 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsd256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epu32 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxud256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epu32 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxud256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epu32 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminud256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epu32 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminud256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epi64 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epi64 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epi64 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epi64 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epu64 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_max_epu64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epu64 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_min_epu64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epu64 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epu64 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsd128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epu32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxud128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epu32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxud128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epu32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminud128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epu32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminud128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W, __M);
|
|
}*/
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vl,avx512cd")
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastmb_epi64 (__mmask8 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_broadcastmb128 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastmb_epi64 (__mmask8 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcastmb256 (__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcastmw_epi32 (__mmask16 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_broadcastmw128 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcastmw_epi32 (__mmask16 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcastmw256 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_lzcnt_epi32 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vplzcntd_256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_lzcnt_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vplzcntd_256_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_lzcnt_epi32 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vplzcntd_256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_lzcnt_epi64 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vplzcntq_256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_lzcnt_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vplzcntq_256_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_lzcnt_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vplzcntq_256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_conflict_epi64 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpconflictdi_256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_conflict_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpconflictdi_256_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_conflict_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpconflictdi_256_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_conflict_epi32 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpconflictsi_256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_conflict_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpconflictsi_256_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_conflict_epi32 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpconflictsi_256_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_lzcnt_epi32 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vplzcntd_128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_lzcnt_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vplzcntd_128_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_lzcnt_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vplzcntd_128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_lzcnt_epi64 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vplzcntq_128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_lzcnt_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vplzcntq_128_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_lzcnt_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vplzcntq_128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_conflict_epi64 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpconflictdi_128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_conflict_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpconflictdi_128_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_conflict_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpconflictdi_128_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_conflict_epi32 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpconflictsi_128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_conflict_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpconflictsi_128_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_conflict_epi32 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpconflictsi_128_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpacklo_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_unpcklpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpacklo_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_unpcklpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpacklo_pd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_unpcklpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpacklo_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_unpcklpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpacklo_ps (__m256 __W, __mmask8 __U, __m256 __A,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_unpcklps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpackhi_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_unpckhpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpackhi_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_unpckhpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpackhi_pd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_unpckhpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpackhi_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_unpckhpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpackhi_ps (__m256 __W, __mmask8 __U, __m256 __A,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_unpckhps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpackhi_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_unpckhps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpackhi_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_unpckhps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpackhi_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_unpckhps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtph_ps (__m128 __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtph_ps (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpacklo_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_unpcklps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtph_ps (__m256 __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtph_ps (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpacklo_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_unpcklps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpacklo_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_unpcklps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sra_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrad256_mask ((__v8si) __A,
|
|
(__v4si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sra_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrad256_mask ((__v8si) __A,
|
|
(__v4si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sra_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrad128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sra_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrad128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sra_epi64 (__m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psraq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sra_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psraq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sra_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psraq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sra_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psraq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sra_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psraq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sra_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psraq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sll_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pslld128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sll_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pslld128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sll_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sll_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sll_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pslld256_mask ((__v8si) __A,
|
|
(__v4si) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sll_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pslld256_mask ((__v8si) __A,
|
|
(__v4si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sll_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sll_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllq256_mask ((__v4di) __A,
|
|
(__v2di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutexvar_ps (__m256 __W, __mmask8 __U, __m256i __X,
|
|
__m256 __Y)
|
|
{
|
|
return (__m256) __builtin_ia32_permvarsf256_mask ((__v8sf) __Y,
|
|
(__v8si) __X,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutexvar_ps (__mmask8 __U, __m256i __X, __m256 __Y)
|
|
{
|
|
return (__m256) __builtin_ia32_permvarsf256_mask ((__v8sf) __Y,
|
|
(__v8si) __X,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutexvar_pd (__m256i __X, __m256d __Y)
|
|
{
|
|
return (__m256d) __builtin_ia32_permvardf256_mask ((__v4df) __Y,
|
|
(__v4di) __X,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutexvar_pd (__m256d __W, __mmask8 __U, __m256i __X,
|
|
__m256d __Y)
|
|
{
|
|
return (__m256d) __builtin_ia32_permvardf256_mask ((__v4df) __Y,
|
|
(__v4di) __X,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutexvar_pd (__mmask8 __U, __m256i __X, __m256d __Y)
|
|
{
|
|
return (__m256d) __builtin_ia32_permvardf256_mask ((__v4df) __Y,
|
|
(__v4di) __X,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutevar_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256i __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermilvarpd256_mask ((__v4df) __A,
|
|
(__v4di) __C,
|
|
(__v4df) __W,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutevar_pd (__mmask8 __U, __m256d __A, __m256i __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vpermilvarpd256_mask ((__v4df) __A,
|
|
(__v4di) __C,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutevar_ps (__m256 __W, __mmask8 __U, __m256 __A,
|
|
__m256i __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermilvarps256_mask ((__v8sf) __A,
|
|
(__v8si) __C,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutevar_ps (__mmask8 __U, __m256 __A, __m256i __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vpermilvarps256_mask ((__v8sf) __A,
|
|
(__v8si) __C,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutevar_pd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128i __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermilvarpd_mask ((__v2df) __A,
|
|
(__v2di) __C,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutevar_pd (__mmask8 __U, __m128d __A, __m128i __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vpermilvarpd_mask ((__v2df) __A,
|
|
(__v2di) __C,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutevar_ps (__m128 __W, __mmask8 __U, __m128 __A,
|
|
__m128i __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermilvarps_mask ((__v4sf) __A,
|
|
(__v4si) __C,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutevar_ps (__mmask8 __U, __m128 __A, __m128i __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vpermilvarps_mask ((__v4sf) __A,
|
|
(__v4si) __C,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mullo_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulld256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutexvar_epi64 (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvardi256_mask ((__v4di) __Y,
|
|
(__v4di) __X,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mullo_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulld256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v8si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mullo_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulld128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mullo_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulld128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v4si) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mul_epi32 (__m256i __W, __mmask8 __M, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmuldq256_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v4di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mul_epi32 (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmuldq256_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mul_epi32 (__m128i __W, __mmask8 __M, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmuldq128_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v2di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mul_epi32 (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmuldq128_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutexvar_epi64 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvardi256_mask ((__v4di) __Y,
|
|
(__v4di) __X,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutexvar_epi64 (__m256i __W, __mmask8 __M, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvardi256_mask ((__v4di) __Y,
|
|
(__v4di) __X,
|
|
(__v4di) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mul_epu32 (__m256i __W, __mmask8 __M, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmuludq256_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v4di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutexvar_epi32 (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarsi256_mask ((__v8si) __Y,
|
|
(__v8si) __X,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mul_epu32 (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmuludq256_mask ((__v8si) __X,
|
|
(__v8si) __Y,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mul_epu32 (__m128i __W, __mmask8 __M, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmuludq128_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v2di) __W, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mul_epu32 (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmuludq128_mask ((__v4si) __X,
|
|
(__v4si) __Y,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutexvar_epi32 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarsi256_mask ((__v8si) __Y,
|
|
(__v8si) __X,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutexvar_epi32 (__m256i __W, __mmask8 __M, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarsi256_mask ((__v8si) __Y,
|
|
(__v8si) __X,
|
|
(__v8si) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epu32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epu32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epu32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epu32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epu64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epu64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epu64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epu64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epi32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epi32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epi32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epi32_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
|
|
(__v8si) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epi64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epi64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epi64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epi64_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
|
|
(__v4di) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epu32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epu32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epu32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epu32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epu64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epu64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epu64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epu64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epi32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epi32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epi32_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
|
|
(__v4si) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epi64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epi64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epi64_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
|
|
(__v2di) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512bw")
|
|
typedef short __v32hi __attribute__ ((__vector_size__ (64)));
|
|
typedef char __v64qi __attribute__ ((__vector_size__ (64)));
|
|
typedef unsigned long long __mmask64;
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktest_mask32_u8 (__mmask32 __A, __mmask32 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_ktestcsi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_ktestzsi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktest_mask64_u8 (__mmask64 __A, __mmask64 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_ktestcdi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_ktestzdi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestz_mask32_u8 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestzsi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestz_mask64_u8 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestzdi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestc_mask32_u8 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestcsi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestc_mask64_u8 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestcdi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortest_mask32_u8 (__mmask32 __A, __mmask32 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_kortestcsi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_kortestzsi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortest_mask64_u8 (__mmask64 __A, __mmask64 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_kortestcdi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_kortestzdi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestz_mask32_u8 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestzsi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestz_mask64_u8 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestzdi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestc_mask32_u8 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestcsi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestc_mask64_u8 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestcdi (__A, __B);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kadd_mask32 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kaddsi ((__mmask32) __A, (__mmask32) __B);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kadd_mask64 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kadddi ((__mmask64) __A, (__mmask64) __B);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtmask32_u32 (__mmask32 __A)
|
|
{
|
|
return (unsigned int) __builtin_ia32_kmovd ((__mmask32) __A);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtmask64_u64 (__mmask64 __A)
|
|
{
|
|
return (unsigned long long) __builtin_ia32_kmovq ((__mmask64) __A);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtu32_mask32 (unsigned int __A)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kmovd ((__mmask32) __A);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtu64_mask64 (unsigned long long __A)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kmovq ((__mmask64) __A);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_load_mask32 (__mmask32 *__A)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kmovd (*__A);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_load_mask64 (__mmask64 *__A)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kmovq (*(__mmask64 *) __A);
|
|
}
|
|
extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_store_mask32 (__mmask32 *__A, __mmask32 __B)
|
|
{
|
|
*(__mmask32 *) __A = __builtin_ia32_kmovd (__B);
|
|
}
|
|
extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_store_mask64 (__mmask64 *__A, __mmask64 __B)
|
|
{
|
|
*(__mmask64 *) __A = __builtin_ia32_kmovq (__B);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_knot_mask32 (__mmask32 __A)
|
|
{
|
|
return (__mmask32) __builtin_ia32_knotsi ((__mmask32) __A);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_knot_mask64 (__mmask64 __A)
|
|
{
|
|
return (__mmask64) __builtin_ia32_knotdi ((__mmask64) __A);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kor_mask32 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_korsi ((__mmask32) __A, (__mmask32) __B);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kor_mask64 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kordi ((__mmask64) __A, (__mmask64) __B);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kxnor_mask32 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kxnorsi ((__mmask32) __A, (__mmask32) __B);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kxnor_mask64 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kxnordi ((__mmask64) __A, (__mmask64) __B);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kxor_mask32 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kxorsi ((__mmask32) __A, (__mmask32) __B);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kxor_mask64 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kxordi ((__mmask64) __A, (__mmask64) __B);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kand_mask32 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kandsi ((__mmask32) __A, (__mmask32) __B);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kand_mask64 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kanddi ((__mmask64) __A, (__mmask64) __B);
|
|
}
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kandn_mask32 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kandnsi ((__mmask32) __A, (__mmask32) __B);
|
|
}
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kandn_mask64 (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kandndi ((__mmask64) __A, (__mmask64) __B);
|
|
}
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mov_epi16 (__m512i __W, __mmask32 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdquhi512_mask ((__v32hi) __A,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mov_epi16 (__mmask32 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdquhi512_mask ((__v32hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_loadu_epi16 (__m512i __W, __mmask32 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddquhi512_mask ((const short *) __P,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_loadu_epi16 (__mmask32 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddquhi512_mask ((const short *) __P,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_storeu_epi16 (void *__P, __mmask32 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_storedquhi512_mask ((short *) __P,
|
|
(__v32hi) __A,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mov_epi8 (__m512i __W, __mmask64 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdquqi512_mask ((__v64qi) __A,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mov_epi8 (__mmask64 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_movdquqi512_mask ((__v64qi) __A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kunpackw (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A,
|
|
(__mmask32) __B);
|
|
}*/
|
|
extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kunpackw_mask32 (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A,
|
|
(__mmask32) __B);
|
|
}
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_kunpackd (__mmask64 __A, __mmask64 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A,
|
|
(__mmask64) __B);
|
|
}*/
|
|
extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kunpackd_mask64 (__mmask32 __A, __mmask32 __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A,
|
|
(__mmask64) __B);
|
|
}
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_loadu_epi8 (__m512i __W, __mmask64 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddquqi512_mask ((const char *) __P,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_loadu_epi8 (__mmask64 __U, void const *__P)
|
|
{
|
|
return (__m512i) __builtin_ia32_loaddquqi512_mask ((const char *) __P,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_storeu_epi8 (void *__P, __mmask64 __U, __m512i __A)
|
|
{
|
|
__builtin_ia32_storedquqi512_mask ((char *) __P,
|
|
(__v64qi) __A,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sad_epu8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psadbw512 ((__v64qi) __A,
|
|
(__v64qi) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi16_epi8 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A,
|
|
(__v32qi) _mm256_undefined_si256(),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovwb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A,
|
|
(__v32qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi16_epi8 (__mmask32 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtsepi16_epi8 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A,
|
|
(__v32qi)_mm256_undefined_si256(),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovswb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtsepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A,
|
|
(__v32qi)__O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtsepi16_epi8 (__mmask32 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtusepi16_epi8 (__m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A,
|
|
(__v32qi)_mm256_undefined_si256(),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A,
|
|
(__v32qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask32 __M, __m512i __A)
|
|
{
|
|
__builtin_ia32_pmovuswb512mem_mask ((__v32qi *) __P, (__v32hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtusepi16_epi8 (__mmask32 __M, __m512i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastb_epi8 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastb512_mask ((__v16qi) __A,
|
|
(__v64qi)_mm512_undefined_epi32(),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcastb_epi8 (__m512i __O, __mmask64 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastb512_mask ((__v16qi) __A,
|
|
(__v64qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcastb_epi8 (__mmask64 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastb512_mask ((__v16qi) __A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_set1_epi8 (__m512i __O, __mmask64 __M, char __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastb512_gpr_mask (__A,
|
|
(__v64qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_set1_epi8 (__mmask64 __M, char __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_pbroadcastb512_gpr_mask (__A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcastw_epi16 (__m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastw512_mask ((__v8hi) __A,
|
|
(__v32hi)_mm512_undefined_epi32(),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcastw_epi16 (__m512i __O, __mmask32 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastw512_mask ((__v8hi) __A,
|
|
(__v32hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcastw_epi16 (__mmask32 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastw512_mask ((__v8hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_set1_epi16 (__m512i __O, __mmask32 __M, short __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pbroadcastw512_gpr_mask (__A,
|
|
(__v32hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_set1_epi16 (__mmask32 __M, short __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_pbroadcastw512_gpr_mask (__A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mulhrs_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhrsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mulhrs_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhrsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mulhrs_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhrsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mulhi_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mulhi_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mulhi_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mulhi_epu16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mulhi_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mulhi_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmulhuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mullo_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v32hu) __A * (__v32hu) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mullo_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmullw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mullo_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmullw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi8_epi16 (__m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbw512_mask ((__v32qi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi8_epi16 (__m512i __W, __mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbw512_mask ((__v32qi) __A,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi8_epi16 (__mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovsxbw512_mask ((__v32qi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu8_epi16 (__m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbw512_mask ((__v32qi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu8_epi16 (__m512i __W, __mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbw512_mask ((__v32qi) __A,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu8_epi16 (__mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmovzxbw512_mask ((__v32qi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutexvar_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarhi512_mask ((__v32hi) __B,
|
|
(__v32hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutexvar_epi16 (__mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarhi512_mask ((__v32hi) __B,
|
|
(__v32hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutexvar_epi16 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarhi512_mask ((__v32hi) __B,
|
|
(__v32hi) __A,
|
|
(__v32hi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutex2var_epi16 (__m512i __A, __m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varhi512_mask ((__v32hi) __I
|
|
,
|
|
(__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutex2var_epi16 (__m512i __A, __mmask32 __U,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varhi512_mask ((__v32hi) __I
|
|
,
|
|
(__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2_permutex2var_epi16 (__m512i __A, __m512i __I,
|
|
__mmask32 __U, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermi2varhi512_mask ((__v32hi) __A,
|
|
(__v32hi) __I
|
|
,
|
|
(__v32hi) __B,
|
|
(__mmask32)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutex2var_epi16 (__mmask32 __U, __m512i __A,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varhi512_maskz ((__v32hi) __I
|
|
,
|
|
(__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_avg_epu8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pavgb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_avg_epu8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pavgb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_avg_epu8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pavgb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_add_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v64qu) __A + (__v64qu) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_add_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_add_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sub_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v64qu) __A - (__v64qu) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sub_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sub_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_avg_epu16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pavgw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_avg_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pavgw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_avg_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pavgw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_subs_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_subs_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_subs_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_subs_epu8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubusb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_subs_epu8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubusb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_subs_epu8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubusb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_adds_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_adds_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_adds_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_adds_epu8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddusb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_adds_epu8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddusb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_adds_epu8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddusb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sub_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v32hu) __A - (__v32hu) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sub_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sub_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_subs_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_subs_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_subs_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_subs_epu16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubusw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_subs_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubusw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_subs_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psubusw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_add_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v32hu) __A + (__v32hu) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_add_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_add_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_adds_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_adds_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_adds_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_adds_epu16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddusw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_adds_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddusw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_adds_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_paddusw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srl_epi16 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srl_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srl_epi16 (__mmask32 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_packs_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packsswb512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sll_epi16 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sll_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sll_epi16 (__mmask32 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maddubs_epi16 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaddubsw512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_maddubs_epi16 (__m512i __W, __mmask32 __U, __m512i __X,
|
|
__m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaddubsw512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_maddubs_epi16 (__mmask32 __U, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaddubsw512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_madd_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaddwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_madd_epi16 (__m512i __W, __mmask16 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaddwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_madd_epi16 (__mmask16 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaddwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpackhi_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhbw512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpackhi_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhbw512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpackhi_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhbw512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpackhi_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpackhi_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpackhi_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpckhwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpacklo_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklbw512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpacklo_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklbw512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpacklo_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklbw512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_unpacklo_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_unpacklo_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_unpacklo_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_punpcklwd512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epu8_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B, 0,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epi8_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_pcmpeqb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epu8_mask (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B, 0,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_pcmpeqb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epu16_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B, 0,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpeq_epi16_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpeqw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epu16_mask (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B, 0,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpeq_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpeqw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epu8_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B, 6,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epi8_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_pcmpgtb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epu8_mask (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B, 6,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_pcmpgtb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epu16_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B, 6,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpgt_epi16_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpgtw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epu16_mask (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B, 6,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpgt_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpgtw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movepi8_mask (__m512i __A)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cvtb2mask512 ((__v64qi) __A);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movepi16_mask (__m512i __A)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cvtw2mask512 ((__v32hi) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movm_epi8 (__mmask64 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtmask2b512 (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movm_epi16 (__mmask32 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtmask2w512 (__A);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_test_epi8_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ptestmb512 ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_test_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ptestmb512 ((__v64qi) __A,
|
|
(__v64qi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_test_epi16_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestmw512 ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_test_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestmw512 ((__v32hi) __A,
|
|
(__v32hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_testn_epi8_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ptestnmb512 ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_testn_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ptestnmb512 ((__v64qi) __A,
|
|
(__v64qi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_testn_epi16_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestnmw512 ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_testn_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestnmw512 ((__v32hi) __A,
|
|
(__v32hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shuffle_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pshufb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shuffle_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pshufb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shuffle_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pshufb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epu16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epu16 (__mmask32 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epu16 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epi16 (__mmask32 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epi16 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epu8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxub512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epu8 (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxub512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epu8 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxub512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epi8 (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epu8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminub512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epu8 (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminub512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epu8 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminub512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_min_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_min_epi8 (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_min_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pminsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epi16 (__mmask32 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epi16 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_max_epu16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_max_epu16 (__mmask32 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_max_epu16 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmaxuw512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sra_epi16 (__m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psraw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sra_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psraw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sra_epi16 (__mmask32 __U, __m512i __A, __m128i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psraw512_mask ((__v32hi) __A,
|
|
(__v8hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srav_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srav_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srav_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrav32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_srlv_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_srlv_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_srlv_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psrlv32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_sllv_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_sllv_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_sllv_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_psllv32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_packs_epi16 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packsswb512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_packs_epi16 (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packsswb512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_packus_epi16 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packuswb512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_packus_epi16 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packuswb512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_packus_epi16 (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packuswb512_mask ((__v32hi) __A,
|
|
(__v32hi) __B,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_abs_epi8 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsb512_mask ((__v64qi) __A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_abs_epi8 (__m512i __W, __mmask64 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsb512_mask ((__v64qi) __A,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_abs_epi8 (__mmask64 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsb512_mask ((__v64qi) __A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_abs_epi16 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsw512_mask ((__v32hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_abs_epi16 (__m512i __W, __mmask32 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsw512_mask ((__v32hi) __A,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_abs_epi16 (__mmask32 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_pabsw512_mask ((__v32hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 4,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 1,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 5,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 2,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 4,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 1,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 5,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 2,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 4,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 1,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 5,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 2,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpneq_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 4,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmplt_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 1,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmpge_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 5,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cmple_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 2,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epu8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 4,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epu8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 1,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epu8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 5,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epu8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 2,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epu16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 4,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epu16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 1,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epu16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 5,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epu16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 2,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epi8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 4,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epi8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 1,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epi8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 5,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epi8_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y, 2,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpneq_epi16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 4,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmplt_epi16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 1,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmpge_epi16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 5,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cmple_epi16_mask (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
|
|
(__v32hi) __Y, 2,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_packs_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packssdw512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_packs_epi32 (__mmask32 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packssdw512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_packs_epi32 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packssdw512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v32hi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_packus_epi32 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packusdw512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_packus_epi32 (__mmask32 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packusdw512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_packus_epi32 (__m512i __W, __mmask32 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_packusdw512_mask ((__v16si) __A,
|
|
(__v16si) __B,
|
|
(__v32hi) __W,
|
|
__M);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512dq")
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktest_mask8_u8 (__mmask8 __A, __mmask8 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_ktestcqi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_ktestzqi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestz_mask8_u8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestzqi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestc_mask8_u8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestcqi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktest_mask16_u8 (__mmask16 __A, __mmask16 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_ktestchi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_ktestzhi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestz_mask16_u8 (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestzhi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ktestc_mask16_u8 (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_ktestchi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortest_mask8_u8 (__mmask8 __A, __mmask8 __B, unsigned char *__CF)
|
|
{
|
|
*__CF = (unsigned char) __builtin_ia32_kortestcqi (__A, __B);
|
|
return (unsigned char) __builtin_ia32_kortestzqi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestz_mask8_u8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestzqi (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kortestc_mask8_u8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (unsigned char) __builtin_ia32_kortestcqi (__A, __B);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kadd_mask8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kaddqi ((__mmask8) __A, (__mmask8) __B);
|
|
}
|
|
extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kadd_mask16 (__mmask16 __A, __mmask16 __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_kaddhi ((__mmask16) __A, (__mmask16) __B);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtmask8_u32 (__mmask8 __A)
|
|
{
|
|
return (unsigned int) __builtin_ia32_kmovb ((__mmask8 ) __A);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtu32_mask8 (unsigned int __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kmovb ((__mmask8) __A);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_load_mask8 (__mmask8 *__A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kmovb (*(__mmask8 *) __A);
|
|
}
|
|
extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_store_mask8 (__mmask8 *__A, __mmask8 __B)
|
|
{
|
|
*(__mmask8 *) __A = __builtin_ia32_kmovb (__B);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_knot_mask8 (__mmask8 __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_knotqi ((__mmask8) __A);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kor_mask8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_korqi ((__mmask8) __A, (__mmask8) __B);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kxnor_mask8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kxnorqi ((__mmask8) __A, (__mmask8) __B);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kxor_mask8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kxorqi ((__mmask8) __A, (__mmask8) __B);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kand_mask8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kandqi ((__mmask8) __A, (__mmask8) __B);
|
|
}
|
|
extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_kandn_mask8 (__mmask8 __A, __mmask8 __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_kandnqi ((__mmask8) __A, (__mmask8) __B);
|
|
}
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_f64x2 (__m128d __A)
|
|
{
|
|
return (__m512d)
|
|
__builtin_ia32_broadcastf64x2_512_mask ((__v2df) __A,
|
|
_mm512_undefined_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_f64x2 (__m512d __O, __mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastf64x2_512_mask ((__v2df)
|
|
__A,
|
|
(__v8df)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_broadcastf64x2_512_mask ((__v2df)
|
|
__A,
|
|
(__v8df)
|
|
_mm512_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_i64x2 (__m128i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_broadcasti64x2_512_mask ((__v2di) __A,
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_i64x2 (__m512i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti64x2_512_mask ((__v2di)
|
|
__A,
|
|
(__v8di)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti64x2_512_mask ((__v2di)
|
|
__A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_f32x2 (__m128 __A)
|
|
{
|
|
return (__m512)
|
|
__builtin_ia32_broadcastf32x2_512_mask ((__v4sf) __A,
|
|
(__v16sf)_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_f32x2 (__m512 __O, __mmask16 __M, __m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x2_512_mask ((__v4sf) __A,
|
|
(__v16sf)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_f32x2 (__mmask16 __M, __m128 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x2_512_mask ((__v4sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_i32x2 (__m128i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_broadcasti32x2_512_mask ((__v4si) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_i32x2 (__m512i __O, __mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x2_512_mask ((__v4si)
|
|
__A,
|
|
(__v16si)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_i32x2 (__mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x2_512_mask ((__v4si)
|
|
__A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_f32x8 (__m256 __A)
|
|
{
|
|
return (__m512)
|
|
__builtin_ia32_broadcastf32x8_512_mask ((__v8sf) __A,
|
|
_mm512_undefined_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_f32x8 (__m512 __O, __mmask16 __M, __m256 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x8_512_mask ((__v8sf) __A,
|
|
(__v16sf)__O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_f32x8 (__mmask16 __M, __m256 __A)
|
|
{
|
|
return (__m512) __builtin_ia32_broadcastf32x8_512_mask ((__v8sf) __A,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_broadcast_i32x8 (__m256i __A)
|
|
{
|
|
return (__m512i)
|
|
__builtin_ia32_broadcasti32x8_512_mask ((__v8si) __A,
|
|
(__v16si)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_broadcast_i32x8 (__m512i __O, __mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x8_512_mask ((__v8si)
|
|
__A,
|
|
(__v16si)__O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_broadcast_i32x8 (__mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_broadcasti32x8_512_mask ((__v8si)
|
|
__A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mullo_epi64 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) ((__v8du) __A * (__v8du) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_mullo_epi64 (__m512i __W, __mmask8 __U, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmullq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_mullo_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_pmullq512_mask ((__v8di) __A,
|
|
(__v8di) __B,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_xor_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_xorpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_xor_pd (__m512d __W, __mmask8 __U, __m512d __A,
|
|
__m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_xorpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_xor_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_xorpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_xor_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_xorps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_xor_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_xorps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_xor_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_xorps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_or_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_orpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_or_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_orpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_or_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_orpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_or_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_orps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_or_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_orps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_or_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_orps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_and_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_andpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_and_pd (__m512d __W, __mmask8 __U, __m512d __A,
|
|
__m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_andpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_and_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_andpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_and_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_andps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_and_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_andps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_and_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_andps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_andnot_pd (__m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_andnpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_andnot_pd (__m512d __W, __mmask8 __U, __m512d __A,
|
|
__m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_andnpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_andnot_pd (__mmask8 __U, __m512d __A, __m512d __B)
|
|
{
|
|
return (__m512d) __builtin_ia32_andnpd512_mask ((__v8df) __A,
|
|
(__v8df) __B,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_andnot_ps (__m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_andnps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_andnot_ps (__m512 __W, __mmask16 __U, __m512 __A,
|
|
__m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_andnps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_andnot_ps (__mmask16 __U, __m512 __A, __m512 __B)
|
|
{
|
|
return (__m512) __builtin_ia32_andnps512_mask ((__v16sf) __A,
|
|
(__v16sf) __B,
|
|
(__v16sf)
|
|
_mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movepi32_mask (__m512i __A)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cvtd2mask512 ((__v16si) __A);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movepi64_mask (__m512i __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cvtq2mask512 ((__v8di) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movm_epi32 (__mmask16 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtmask2d512 (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_movm_epi64 (__mmask8 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtmask2q512 (__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttpd_epi64 (__m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttpd_epi64 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttpd_epu64 (__m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttpd_epu64 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttps_epi64 (__m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttps_epi64 (__m512i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttps_epi64 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvttps_epu64 (__m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvttps_epu64 (__m512i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvttps_epu64 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtpd_epi64 (__m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtpd_epi64 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtpd_epu64 (__m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtpd_epu64 (__mmask8 __U, __m512d __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtps_epi64 (__m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtps_epi64 (__m512i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtps_epi64 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtps_epu64 (__m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtps_epu64 (__m512i __W, __mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtps_epu64 (__mmask8 __U, __m256 __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi64_ps (__m512i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_ps (__m256 __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi64_ps (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu64_ps (__m512i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu64_ps (__m256 __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu64_ps (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepi64_pd (__m512i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepi64_pd (__m512d __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepi64_pd (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_cvtepu64_pd (__m512i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) -1,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_cvtepu64_pd (__m512d __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
|
|
(__v8df) __W,
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
/*extern __inline __m512d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_cvtepu64_pd (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
|
|
(__v8df)
|
|
_mm512_setzero_pd (),
|
|
(__mmask8) __U,
|
|
0x04);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vl,avx512bw")
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mov_epi8 (__m256i __W, __mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdquqi256_mask ((__v32qi) __A,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mov_epi8 (__mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdquqi256_mask ((__v32qi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mov_epi8 (__m128i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdquqi128_mask ((__v16qi) __A,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mov_epi8 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdquqi128_mask ((__v16qi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_storeu_epi8 (void *__P, __mmask32 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_storedquqi256_mask ((char *) __P,
|
|
(__v32qi) __A,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_storeu_epi8 (void *__P, __mmask16 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_storedquqi128_mask ((char *) __P,
|
|
(__v16qi) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_loadu_epi16 (__m256i __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddquhi256_mask ((const short *) __P,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_loadu_epi16 (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddquhi256_mask ((const short *) __P,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_loadu_epi16 (__m128i __W, __mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddquhi128_mask ((const short *) __P,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_loadu_epi16 (__mmask8 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddquhi128_mask ((const short *) __P,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mov_epi16 (__m256i __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdquhi256_mask ((__v16hi) __A,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mov_epi16 (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_movdquhi256_mask ((__v16hi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mov_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdquhi128_mask ((__v8hi) __A,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mov_epi16 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_movdquhi128_mask ((__v8hi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_loadu_epi8 (__m256i __W, __mmask32 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddquqi256_mask ((const char *) __P,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_loadu_epi8 (__mmask32 __U, void const *__P)
|
|
{
|
|
return (__m256i) __builtin_ia32_loaddquqi256_mask ((const char *) __P,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_loadu_epi8 (__m128i __W, __mmask16 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddquqi128_mask ((const char *) __P,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_loadu_epi8 (__mmask16 __U, void const *__P)
|
|
{
|
|
return (__m128i) __builtin_ia32_loaddquqi128_mask ((const char *) __P,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi16_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovwb256_mask ((__v16hi) __A,
|
|
(__v16qi)_mm_undefined_si128(),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi16_storeu_epi8 (void * __P, __mmask16 __M,__m256i __A)
|
|
{
|
|
__builtin_ia32_pmovwb256mem_mask ((__v16qi *) __P , (__v16hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovwb256_mask ((__v16hi) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi16_epi8 (__mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovwb256_mask ((__v16hi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtsepi16_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
|
|
(__v16qi)_mm_undefined_si128(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask8 __M,__m128i __A)
|
|
{
|
|
__builtin_ia32_pmovswb128mem_mask ((__v8qi *) __P , (__v8hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtsepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtsepi16_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtsepi16_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
|
|
(__v16qi)_mm_undefined_si128(),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask16 __M,__m256i __A)
|
|
{
|
|
__builtin_ia32_pmovswb256mem_mask ((__v16qi *) __P , (__v16hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtsepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtsepi16_epi8 (__mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtusepi16_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
|
|
(__v16qi)_mm_undefined_si128(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask8 __M,__m128i __A)
|
|
{
|
|
__builtin_ia32_pmovuswb128mem_mask ((__v8qi *) __P , (__v8hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtusepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtusepi16_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtusepi16_epi8 (__m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
|
|
(__v16qi)_mm_undefined_si128(),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask16 __M,__m256i __A)
|
|
{
|
|
__builtin_ia32_pmovuswb256mem_mask ((__v16qi *) __P , (__v16hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtusepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtusepi16_epi8 (__mmask16 __M, __m256i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcastb_epi8 (__m256i __O, __mmask32 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastb256_mask ((__v16qi) __A,
|
|
(__v32qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcastb_epi8 (__mmask32 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastb256_mask ((__v16qi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_set1_epi8 (__m256i __O, __mmask32 __M, char __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastb256_gpr_mask (__A,
|
|
(__v32qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_set1_epi8 (__mmask32 __M, char __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastb256_gpr_mask (__A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_broadcastb_epi8 (__m128i __O, __mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastb128_mask ((__v16qi) __A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_broadcastb_epi8 (__mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastb128_mask ((__v16qi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_set1_epi8 (__m128i __O, __mmask16 __M, char __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastb128_gpr_mask (__A,
|
|
(__v16qi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_set1_epi8 (__mmask16 __M, char __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastb128_gpr_mask (__A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcastw_epi16 (__m256i __O, __mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastw256_mask ((__v8hi) __A,
|
|
(__v16hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcastw_epi16 (__mmask16 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastw256_mask ((__v8hi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_set1_epi16 (__m256i __O, __mmask16 __M, short __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastw256_gpr_mask (__A,
|
|
(__v16hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_set1_epi16 (__mmask16 __M, short __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pbroadcastw256_gpr_mask (__A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_broadcastw_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastw128_mask ((__v8hi) __A,
|
|
(__v8hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_broadcastw_epi16 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastw128_mask ((__v8hi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_set1_epi16 (__m128i __O, __mmask8 __M, short __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastw128_gpr_mask (__A,
|
|
(__v8hi) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_set1_epi16 (__mmask8 __M, short __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pbroadcastw128_gpr_mask (__A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutexvar_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarhi256_mask ((__v16hi) __B,
|
|
(__v16hi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutexvar_epi16 (__mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarhi256_mask ((__v16hi) __B,
|
|
(__v16hi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutexvar_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarhi256_mask ((__v16hi) __B,
|
|
(__v16hi) __A,
|
|
(__v16hi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutexvar_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
|
|
(__v8hi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutexvar_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
|
|
(__v8hi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutexvar_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
|
|
(__v8hi) __A,
|
|
(__v8hi) __W,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutex2var_epi16 (__m256i __A, __m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varhi256_mask ((__v16hi) __I
|
|
,
|
|
(__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutex2var_epi16 (__m256i __A, __mmask16 __U,
|
|
__m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varhi256_mask ((__v16hi) __I
|
|
,
|
|
(__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask2_permutex2var_epi16 (__m256i __A, __m256i __I,
|
|
__mmask16 __U, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermi2varhi256_mask ((__v16hi) __A,
|
|
(__v16hi) __I
|
|
,
|
|
(__v16hi) __B,
|
|
(__mmask16)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutex2var_epi16 (__mmask16 __U, __m256i __A,
|
|
__m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varhi256_maskz ((__v16hi) __I
|
|
,
|
|
(__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutex2var_epi16 (__m128i __A, __m128i __I, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varhi128_mask ((__v8hi) __I
|
|
,
|
|
(__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutex2var_epi16 (__m128i __A, __mmask8 __U, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varhi128_mask ((__v8hi) __I
|
|
,
|
|
(__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask2_permutex2var_epi16 (__m128i __A, __m128i __I, __mmask8 __U,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermi2varhi128_mask ((__v8hi) __A,
|
|
(__v8hi) __I
|
|
,
|
|
(__v8hi) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutex2var_epi16 (__mmask8 __U, __m128i __A, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varhi128_maskz ((__v8hi) __I
|
|
,
|
|
(__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_maddubs_epi16 (__m256i __W, __mmask16 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaddubsw256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_maddubs_epi16 (__mmask16 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaddubsw256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_maddubs_epi16 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaddubsw128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_maddubs_epi16 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaddubsw128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_madd_epi16 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaddwd256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v8si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_madd_epi16 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaddwd256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_madd_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaddwd128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v4si) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_madd_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaddwd128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movepi8_mask (__m128i __A)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cvtb2mask128 ((__v16qi) __A);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movepi8_mask (__m256i __A)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cvtb2mask256 ((__v32qi) __A);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movepi16_mask (__m128i __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cvtw2mask128 ((__v8hi) __A);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movepi16_mask (__m256i __A)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cvtw2mask256 ((__v16hi) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movm_epi8 (__mmask16 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtmask2b128 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movm_epi8 (__mmask32 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtmask2b256 (__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movm_epi16 (__mmask8 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtmask2w128 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movm_epi16 (__mmask16 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtmask2w256 (__A);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_test_epi8_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestmb128 ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_test_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestmb128 ((__v16qi) __A,
|
|
(__v16qi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_test_epi8_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestmb256 ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_test_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestmb256 ((__v32qi) __A,
|
|
(__v32qi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_test_epi16_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmw128 ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_test_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestmw128 ((__v8hi) __A,
|
|
(__v8hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_test_epi16_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestmw256 ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_test_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestmw256 ((__v16hi) __A,
|
|
(__v16hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epu16 (__mmask16 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminuw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epu16 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminuw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epu16 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminuw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epu16 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminuw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epi16 (__mmask16 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epu8 (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxub256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epu8 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxub256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epu8 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxub128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epu8 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxub128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epi8 (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epu8 (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminub256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epu8 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminub256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epu8 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminub128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epu8 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminub128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_min_epi8 (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_min_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pminsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epi16 (__mmask16 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_max_epu16 (__mmask16 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxuw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_max_epu16 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmaxuw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_max_epu16 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxuw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_max_epu16 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmaxuw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_min_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_min_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pminsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epi8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 4,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epi8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 1,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epi8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 5,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epi8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 2,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epi16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 4,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epi16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 1,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epi16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 5,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epi16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 2,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epu8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 4,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epu8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 1,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epu8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 5,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epu8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 2,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epu16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epu16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epu16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epu16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epi8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 4,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 1,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epi8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 5,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epi8_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 2,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpneq_epi16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 4,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmplt_epi16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 1,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpge_epi16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 5,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmple_epi16_mask (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 2,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mulhrs_epi16 (__m256i __W, __mmask16 __U, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhrsw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mulhrs_epi16 (__mmask16 __U, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhrsw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mulhi_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhuw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mulhi_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhuw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mulhi_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mulhi_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmulhw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mulhi_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mulhi_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mulhi_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhuw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mulhi_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhuw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mulhrs_epi16 (__m128i __W, __mmask8 __U, __m128i __X,
|
|
__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhrsw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mulhrs_epi16 (__mmask8 __U, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmulhrsw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mullo_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmullw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mullo_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmullw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mullo_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmullw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mullo_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmullw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi8_epi16 (__m256i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbw256_mask ((__v16qi) __A,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi8_epi16 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovsxbw256_mask ((__v16qi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi8_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbw128_mask ((__v16qi) __A,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi8_epi16 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovsxbw128_mask ((__v16qi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu8_epi16 (__m256i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbw256_mask ((__v16qi) __A,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu8_epi16 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmovzxbw256_mask ((__v16qi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu8_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbw128_mask ((__v16qi) __A,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu8_epi16 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovzxbw128_mask ((__v16qi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_avg_epu8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pavgb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_avg_epu8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pavgb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_avg_epu8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pavgb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_avg_epu8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pavgb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_avg_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pavgw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_avg_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pavgw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_avg_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pavgw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_avg_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pavgw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_add_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_add_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_add_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_add_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_adds_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_adds_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_adds_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_adds_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_adds_epu8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddusb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_adds_epu8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddusb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_adds_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddusw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_adds_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_paddusw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sub_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sub_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sub_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sub_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_subs_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_subs_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_subs_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_subs_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_subs_epu8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubusb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_subs_epu8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubusb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_subs_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubusw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_subs_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psubusw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_add_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_add_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpackhi_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhbw256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpackhi_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhbw256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpackhi_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhbw128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpackhi_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhbw128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpackhi_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhwd256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpackhi_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpckhwd256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpackhi_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhwd128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpackhi_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpckhwd128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpacklo_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpcklbw256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpacklo_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpcklbw256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpacklo_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpcklbw128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpacklo_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpcklbw128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_unpacklo_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpcklwd256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_unpacklo_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_punpcklwd256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_unpacklo_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpcklwd128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_unpacklo_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_punpcklwd128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi8_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpeqb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epu8_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B, 0,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epu8_mask (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B, 0,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpeqb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epu8_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B, 0,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi8_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpeqb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epu8_mask (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B, 0,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpeqb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epu16_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B, 0,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpeq_epi16_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epu16_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B, 0, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpeq_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpeqw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epu16_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B, 0,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpeq_epi16_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpeqw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epu16_mask (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B, 0,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpeq_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpeqw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epu8_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B, 6,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi8_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpgtb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epu8_mask (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B, 6,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpgtb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epu8_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B, 6,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi8_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpgtb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epu8_mask (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B, 6,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_pcmpgtb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epu16_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B, 6,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmpgt_epi16_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epu16_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B, 6, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpgt_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_pcmpgtw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epu16_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B, 6,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpgt_epi16_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpgtw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epu16_mask (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B, 6,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpgt_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_pcmpgtw256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
__U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testn_epi8_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestnmb128 ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_testn_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestnmb128 ((__v16qi) __A,
|
|
(__v16qi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testn_epi8_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestnmb256 ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_testn_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ptestnmb256 ((__v32qi) __A,
|
|
(__v32qi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_testn_epi16_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmw128 ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_testn_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ptestnmw128 ((__v8hi) __A,
|
|
(__v8hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_testn_epi16_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestnmw256 ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_testn_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ptestnmw256 ((__v16hi) __A,
|
|
(__v16hi) __B, __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shuffle_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pshufb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shuffle_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pshufb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shuffle_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pshufb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shuffle_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pshufb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_packs_epi16 (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packsswb256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_packs_epi16 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packsswb256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v32qi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_packs_epi16 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packsswb128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_packs_epi16 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packsswb128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16qi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_packus_epi16 (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packuswb256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_packus_epi16 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packuswb256_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v32qi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_packus_epi16 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packuswb128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_packus_epi16 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packuswb128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16qi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_abs_epi8 (__m256i __W, __mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsb256_mask ((__v32qi) __A,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_abs_epi8 (__mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsb256_mask ((__v32qi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_abs_epi8 (__m128i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_abs_epi8 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsb128_mask ((__v16qi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_abs_epi16 (__m256i __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsw256_mask ((__v16hi) __A,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_abs_epi16 (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_pabsw256_mask ((__v16hi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_abs_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_abs_epi16 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pabsw128_mask ((__v8hi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epu8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 4,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epu8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 1,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epu8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 5,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epu8_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 2,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpneq_epu16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 4,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmplt_epu16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 1,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmpge_epu16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 5,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cmple_epu16_mask (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 2,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_storeu_epi16 (void *__P, __mmask16 __U, __m256i __A)
|
|
{
|
|
__builtin_ia32_storedquhi256_mask ((short *) __P,
|
|
(__v16hi) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_storeu_epi16 (void *__P, __mmask8 __U, __m128i __A)
|
|
{
|
|
__builtin_ia32_storedquhi128_mask ((short *) __P,
|
|
(__v8hi) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_adds_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_subs_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_subs_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_subs_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_subs_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_subs_epu8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubusb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_subs_epu8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubusb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_subs_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubusw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_subs_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubusw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srl_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlw256_mask ((__v16hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srl_epi16 (__mmask16 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlw256_mask ((__v16hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srl_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srl_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sra_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psraw256_mask ((__v16hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sra_epi16 (__mmask16 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psraw256_mask ((__v16hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sra_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psraw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sra_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psraw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_adds_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddsw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_adds_epu8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddusb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_adds_epu8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddusb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_adds_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddusw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_adds_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddusw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sub_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sub_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psubw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_adds_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_adds_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_paddsb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi16_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
|
|
(__v16qi)_mm_undefined_si128(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi16_storeu_epi8 (void * __P, __mmask8 __M,__m128i __A)
|
|
{
|
|
__builtin_ia32_pmovwb128mem_mask ((__v8qi *) __P , (__v8hi) __A, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
|
|
(__v16qi) __O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi16_epi8 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srav_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrav16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srav_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrav16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srav_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrav16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srav_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srav_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srav_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_srlv_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_srlv_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_srlv_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psrlv16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_srlv_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_srlv_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_srlv_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_sllv_epi16 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sllv_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sllv_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllv16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sllv_epi16 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sllv_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sllv_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_sll_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_sll_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_psllw128_mask ((__v8hi) __A,
|
|
(__v8hi) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_sll_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllw256_mask ((__v16hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_sll_epi16 (__mmask16 __U, __m256i __A, __m128i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_psllw256_mask ((__v16hi) __A,
|
|
(__v8hi) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_packus_epi32 (__mmask16 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packusdw256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_packus_epi32 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packusdw256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v16hi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_packus_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packusdw128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_packus_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packusdw128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v8hi) __W, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_packs_epi32 (__mmask16 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packssdw256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_packs_epi32 (__m256i __W, __mmask16 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_packssdw256_mask ((__v8si) __A,
|
|
(__v8si) __B,
|
|
(__v16hi) __W,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_packs_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packssdw128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_packs_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_packssdw128_mask ((__v4si) __A,
|
|
(__v4si) __B,
|
|
(__v8hi) __W, __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 4,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 1,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 5,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 2,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 4,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 1,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 5,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y, 2,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpneq_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 4,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmplt_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 1,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmpge_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 5,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cmple_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
|
|
(__v8hi) __Y, 2,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 4,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 1,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 5,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 2,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 4,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 1,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 5,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 2,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 4,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 1,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 5,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y, 2,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpneq_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 4,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmplt_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 1,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmpge_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 5,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cmple_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
|
|
(__v16hi) __Y, 2,
|
|
(__mmask16) __M);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vl,avx512dq")
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttpd_epi64 (__m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttpd_epi64 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttpd_epi64 (__m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttpd_epi64 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttpd_epu64 (__m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttpd_epu64 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttpd_epu64 (__m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttpd_epu64 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtpd_epi64 (__m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtpd_epi64 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpd_epi64 (__m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtpd_epi64 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtpd_epu64 (__m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtpd_epu64 (__mmask8 __U, __m256d __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtpd_epu64 (__m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtpd_epu64 (__mmask8 __U, __m128d __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttps_epi64 (__m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttps_epi64 (__m256i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttps_epi64 (__m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttps_epi64 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvttps_epu64 (__m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvttps_epu64 (__m256i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvttps_epu64 (__m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvttps_epu64 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_f64x2 (__m128d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df)
|
|
__A,
|
|
(__v4df)_mm256_undefined_pd(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcast_f64x2 (__m256d __O, __mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df)
|
|
__A,
|
|
(__v4df)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df)
|
|
__A,
|
|
(__v4df)
|
|
_mm256_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_i64x2 (__m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di)
|
|
__A,
|
|
(__v4di)_mm256_undefined_si256(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcast_i64x2 (__m256i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di)
|
|
__A,
|
|
(__v4di)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di)
|
|
__A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_f32x2 (__m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,
|
|
(__v8sf)_mm256_undefined_ps(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcast_f32x2 (__m256 __O, __mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,
|
|
(__v8sf) __O,
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcast_f32x2 (__mmask8 __M, __m128 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_broadcast_i32x2 (__m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si)
|
|
__A,
|
|
(__v8si)_mm256_undefined_si256(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_broadcast_i32x2 (__m256i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si)
|
|
__A,
|
|
(__v8si)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si)
|
|
__A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_broadcast_i32x2 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si)
|
|
__A,
|
|
(__v4si)_mm_undefined_si128(),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_broadcast_i32x2 (__m128i __O, __mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si)
|
|
__A,
|
|
(__v4si)
|
|
__O, __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si)
|
|
__A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
__M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mullo_epi64 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) ((__v4du) __A * (__v4du) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_mullo_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmullq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_mullo_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_pmullq256_mask ((__v4di) __A,
|
|
(__v4di) __B,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mullo_epi64 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) ((__v2du) __A * (__v2du) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_mullo_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmullq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_mullo_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_pmullq128_mask ((__v2di) __A,
|
|
(__v2di) __B,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_andnot_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_andnpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_andnot_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_andnpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_andnot_pd (__m128d __W, __mmask8 __U, __m128d __A,
|
|
__m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_andnpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_andnot_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_andnpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_andnot_ps (__m256 __W, __mmask8 __U, __m256 __A,
|
|
__m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_andnps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_andnot_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_andnps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_andnot_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_andnps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_andnot_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_andnps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtps_epi64 (__m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtps_epi64 (__m256i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_epi64 (__m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtps_epi64 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtps_epu64 (__m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtps_epu64 (__m256i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtps_epu64 (__m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtps_epu64 (__m128i __W, __mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi64_ps (__m256i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi64_ps (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi64_ps (__m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi64_ps (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu64_ps (__m256i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu64_ps (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu64_ps (__m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu64_ps (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepi64_pd (__m256i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepi64_pd (__m256d __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepi64_pd (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepi64_pd (__m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepi64_pd (__m128d __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepi64_pd (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtepu64_pd (__m256i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_cvtepu64_pd (__m256d __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_cvtepu64_pd (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_and_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_andpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_and_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_andpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_and_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_andpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_and_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_andpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_and_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_andps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_and_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_andps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_and_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_andps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_and_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_andps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtepu64_pd (__m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_cvtepu64_pd (__m128d __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_cvtepu64_pd (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_xor_pd (__m256d __W, __mmask8 __U, __m256d __A,
|
|
__m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_xorpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_xor_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_xorpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_xor_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_xorpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_xorpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_xor_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_xorps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_xor_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_xorps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_xor_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_xorps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_xor_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_xorps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_or_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_orpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_or_pd (__mmask8 __U, __m256d __A, __m256d __B)
|
|
{
|
|
return (__m256d) __builtin_ia32_orpd256_mask ((__v4df) __A,
|
|
(__v4df) __B,
|
|
(__v4df)
|
|
_mm256_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_or_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_orpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_or_pd (__mmask8 __U, __m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_orpd128_mask ((__v2df) __A,
|
|
(__v2df) __B,
|
|
(__v2df)
|
|
_mm_setzero_pd (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_or_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_orps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_or_ps (__mmask8 __U, __m256 __A, __m256 __B)
|
|
{
|
|
return (__m256) __builtin_ia32_orps256_mask ((__v8sf) __A,
|
|
(__v8sf) __B,
|
|
(__v8sf)
|
|
_mm256_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_or_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_orps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_or_ps (__mmask8 __U, __m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_orps128_mask ((__v4sf) __A,
|
|
(__v4sf) __B,
|
|
(__v4sf)
|
|
_mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movm_epi32 (__mmask8 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtmask2d128 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movm_epi32 (__mmask8 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtmask2d256 (__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movm_epi64 (__mmask8 __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_cvtmask2q128 (__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movm_epi64 (__mmask8 __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_cvtmask2q256 (__A);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movepi32_mask (__m128i __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cvtd2mask128 ((__v4si) __A);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movepi32_mask (__m256i __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cvtd2mask256 ((__v8si) __A);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_movepi64_mask (__m128i __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cvtq2mask128 ((__v2di) __A);
|
|
}*/
|
|
/*extern __inline __mmask8
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_movepi64_mask (__m256i __A)
|
|
{
|
|
return (__mmask8) __builtin_ia32_cvtq2mask256 ((__v4di) __A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512ifma")
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_madd52lo_epu64 (__m512i __X, __m512i __Y, __m512i __Z)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmadd52luq512_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __Z,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_madd52hi_epu64 (__m512i __X, __m512i __Y, __m512i __Z)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmadd52huq512_mask ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __Z,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_madd52lo_epu64 (__m512i __W, __mmask8 __M, __m512i __X,
|
|
__m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmadd52luq512_mask ((__v8di) __W,
|
|
(__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_madd52hi_epu64 (__m512i __W, __mmask8 __M, __m512i __X,
|
|
__m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmadd52huq512_mask ((__v8di) __W,
|
|
(__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_madd52lo_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmadd52luq512_maskz ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __Z,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_madd52hi_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmadd52huq512_maskz ((__v8di) __X,
|
|
(__v8di) __Y,
|
|
(__v8di) __Z,
|
|
(__mmask8) __M);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512ifma,avx512vl")
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_madd52lo_epu64 (__m128i __X, __m128i __Y, __m128i __Z)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadd52luq128_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __Z,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_madd52hi_epu64 (__m128i __X, __m128i __Y, __m128i __Z)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadd52huq128_mask ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __Z,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_madd52lo_epu64 (__m256i __X, __m256i __Y, __m256i __Z)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmadd52luq256_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __Z,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_madd52hi_epu64 (__m256i __X, __m256i __Y, __m256i __Z)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmadd52huq256_mask ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __Z,
|
|
(__mmask8) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_madd52lo_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadd52luq128_mask ((__v2di) __W,
|
|
(__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_madd52hi_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadd52huq128_mask ((__v2di) __W,
|
|
(__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_madd52lo_epu64 (__m256i __W, __mmask8 __M, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmadd52luq256_mask ((__v4di) __W,
|
|
(__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_madd52hi_epu64 (__m256i __W, __mmask8 __M, __m256i __X,
|
|
__m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmadd52huq256_mask ((__v4di) __W,
|
|
(__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_madd52lo_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadd52luq128_maskz ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __Z,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_madd52hi_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadd52huq128_maskz ((__v2di) __X,
|
|
(__v2di) __Y,
|
|
(__v2di) __Z,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_madd52lo_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmadd52luq256_maskz ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __Z,
|
|
(__mmask8) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_madd52hi_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmadd52huq256_maskz ((__v4di) __X,
|
|
(__v4di) __Y,
|
|
(__v4di) __Z,
|
|
(__mmask8) __M);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vbmi")
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_multishift_epi64_epi8 (__m512i __W, __mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmultishiftqb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_multishift_epi64_epi8 (__mmask64 __M, __m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmultishiftqb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_multishift_epi64_epi8 (__m512i __X, __m512i __Y)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpmultishiftqb512_mask ((__v64qi) __X,
|
|
(__v64qi) __Y,
|
|
(__v64qi)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutexvar_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarqi512_mask ((__v64qi) __B,
|
|
(__v64qi) __A,
|
|
(__v64qi)
|
|
_mm512_undefined_epi32 (),
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutexvar_epi8 (__mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarqi512_mask ((__v64qi) __B,
|
|
(__v64qi) __A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512(),
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutexvar_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
__m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_permvarqi512_mask ((__v64qi) __B,
|
|
(__v64qi) __A,
|
|
(__v64qi) __W,
|
|
(__mmask64) __M);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_permutex2var_epi8 (__m512i __A, __m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varqi512_mask ((__v64qi) __I
|
|
,
|
|
(__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_permutex2var_epi8 (__m512i __A, __mmask64 __U,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varqi512_mask ((__v64qi) __I
|
|
,
|
|
(__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask2_permutex2var_epi8 (__m512i __A, __m512i __I,
|
|
__mmask64 __U, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermi2varqi512_mask ((__v64qi) __A,
|
|
(__v64qi) __I
|
|
,
|
|
(__v64qi) __B,
|
|
(__mmask64)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_permutex2var_epi8 (__mmask64 __U, __m512i __A,
|
|
__m512i __I, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpermt2varqi512_maskz ((__v64qi) __I
|
|
,
|
|
(__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64)
|
|
__U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vbmi,avx512vl")
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_multishift_epi64_epi8 (__m256i __W, __mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmultishiftqb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y,
|
|
(__v32qi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_multishift_epi64_epi8 (__mmask32 __M, __m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmultishiftqb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_multishift_epi64_epi8 (__m256i __X, __m256i __Y)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpmultishiftqb256_mask ((__v32qi) __X,
|
|
(__v32qi) __Y,
|
|
(__v32qi)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_multishift_epi64_epi8 (__m128i __W, __mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmultishiftqb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y,
|
|
(__v16qi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_multishift_epi64_epi8 (__mmask16 __M, __m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmultishiftqb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_multishift_epi64_epi8 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmultishiftqb128_mask ((__v16qi) __X,
|
|
(__v16qi) __Y,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutexvar_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarqi256_mask ((__v32qi) __B,
|
|
(__v32qi) __A,
|
|
(__v32qi)
|
|
_mm256_undefined_si256 (),
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutexvar_epi8 (__mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarqi256_mask ((__v32qi) __B,
|
|
(__v32qi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutexvar_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
__m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_permvarqi256_mask ((__v32qi) __B,
|
|
(__v32qi) __A,
|
|
(__v32qi) __W,
|
|
(__mmask32) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutexvar_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_permvarqi128_mask ((__v16qi) __B,
|
|
(__v16qi) __A,
|
|
(__v16qi)
|
|
_mm_undefined_si128 (),
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutexvar_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_permvarqi128_mask ((__v16qi) __B,
|
|
(__v16qi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutexvar_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_permvarqi128_mask ((__v16qi) __B,
|
|
(__v16qi) __A,
|
|
(__v16qi) __W,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_permutex2var_epi8 (__m256i __A, __m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varqi256_mask ((__v32qi) __I
|
|
,
|
|
(__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_permutex2var_epi8 (__m256i __A, __mmask32 __U,
|
|
__m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varqi256_mask ((__v32qi) __I
|
|
,
|
|
(__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask2_permutex2var_epi8 (__m256i __A, __m256i __I,
|
|
__mmask32 __U, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermi2varqi256_mask ((__v32qi) __A,
|
|
(__v32qi) __I
|
|
,
|
|
(__v32qi) __B,
|
|
(__mmask32)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_permutex2var_epi8 (__mmask32 __U, __m256i __A,
|
|
__m256i __I, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpermt2varqi256_maskz ((__v32qi) __I
|
|
,
|
|
(__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_permutex2var_epi8 (__m128i __A, __m128i __I, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varqi128_mask ((__v16qi) __I
|
|
,
|
|
(__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_permutex2var_epi8 (__m128i __A, __mmask16 __U, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varqi128_mask ((__v16qi) __I
|
|
,
|
|
(__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask2_permutex2var_epi8 (__m128i __A, __m128i __I, __mmask16 __U,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermi2varqi128_mask ((__v16qi) __A,
|
|
(__v16qi) __I
|
|
,
|
|
(__v16qi) __B,
|
|
(__mmask16)
|
|
__U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_permutex2var_epi8 (__mmask16 __U, __m128i __A, __m128i __I,
|
|
__m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpermt2varqi128_maskz ((__v16qi) __I
|
|
,
|
|
(__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16)
|
|
__U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx5124fmaps")
|
|
/*extern __inline __m512
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_4fmadd_ps (__m512 __A, __m512 __B, __m512 __C,
|
|
__m512 __D, __m512 __E, __m128 *__F)
|
|
{
|
|
return (__m512) __builtin_ia32_4fmaddps ((__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__v16sf) __D,
|
|
(__v16sf) __E,
|
|
(__v16sf) __A,
|
|
(const __v4sf *) __F);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_4fmadd_ps (__m512 __A, __mmask16 __U, __m512 __B,
|
|
__m512 __C, __m512 __D, __m512 __E, __m128 *__F)
|
|
{
|
|
return (__m512) __builtin_ia32_4fmaddps_mask ((__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__v16sf) __D,
|
|
(__v16sf) __E,
|
|
(__v16sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v16sf) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_4fmadd_ps (__mmask16 __U,
|
|
__m512 __A, __m512 __B, __m512 __C,
|
|
__m512 __D, __m512 __E, __m128 *__F)
|
|
{
|
|
return (__m512) __builtin_ia32_4fmaddps_mask ((__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__v16sf) __D,
|
|
(__v16sf) __E,
|
|
(__v16sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v16sf) _mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_4fmadd_ss (__m128 __A, __m128 __B, __m128 __C,
|
|
__m128 __D, __m128 __E, __m128 *__F)
|
|
{
|
|
return (__m128) __builtin_ia32_4fmaddss ((__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__v4sf) __D,
|
|
(__v4sf) __E,
|
|
(__v4sf) __A,
|
|
(const __v4sf *) __F);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_4fmadd_ss (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C,
|
|
__m128 __D, __m128 __E, __m128 *__F)
|
|
{
|
|
return (__m128) __builtin_ia32_4fmaddss_mask ((__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__v4sf) __D,
|
|
(__v4sf) __E,
|
|
(__v4sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v4sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_4fmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C,
|
|
__m128 __D, __m128 __E, __m128 *__F)
|
|
{
|
|
return (__m128) __builtin_ia32_4fmaddss_mask ((__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__v4sf) __D,
|
|
(__v4sf) __E,
|
|
(__v4sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v4sf) _mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_4fnmadd_ps (__m512 __A, __m512 __B, __m512 __C,
|
|
__m512 __D, __m512 __E, __m128 *__F)
|
|
{
|
|
return (__m512) __builtin_ia32_4fnmaddps ((__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__v16sf) __D,
|
|
(__v16sf) __E,
|
|
(__v16sf) __A,
|
|
(const __v4sf *) __F);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_4fnmadd_ps (__m512 __A, __mmask16 __U, __m512 __B,
|
|
__m512 __C, __m512 __D, __m512 __E, __m128 *__F)
|
|
{
|
|
return (__m512) __builtin_ia32_4fnmaddps_mask ((__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__v16sf) __D,
|
|
(__v16sf) __E,
|
|
(__v16sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v16sf) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_4fnmadd_ps (__mmask16 __U,
|
|
__m512 __A, __m512 __B, __m512 __C,
|
|
__m512 __D, __m512 __E, __m128 *__F)
|
|
{
|
|
return (__m512) __builtin_ia32_4fnmaddps_mask ((__v16sf) __B,
|
|
(__v16sf) __C,
|
|
(__v16sf) __D,
|
|
(__v16sf) __E,
|
|
(__v16sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v16sf) _mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_4fnmadd_ss (__m128 __A, __m128 __B, __m128 __C,
|
|
__m128 __D, __m128 __E, __m128 *__F)
|
|
{
|
|
return (__m128) __builtin_ia32_4fnmaddss ((__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__v4sf) __D,
|
|
(__v4sf) __E,
|
|
(__v4sf) __A,
|
|
(const __v4sf *) __F);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_4fnmadd_ss (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C,
|
|
__m128 __D, __m128 __E, __m128 *__F)
|
|
{
|
|
return (__m128) __builtin_ia32_4fnmaddss_mask ((__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__v4sf) __D,
|
|
(__v4sf) __E,
|
|
(__v4sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v4sf) __A,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_4fnmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C,
|
|
__m128 __D, __m128 __E, __m128 *__F)
|
|
{
|
|
return (__m128) __builtin_ia32_4fnmaddss_mask ((__v4sf) __B,
|
|
(__v4sf) __C,
|
|
(__v4sf) __D,
|
|
(__v4sf) __E,
|
|
(__v4sf) __A,
|
|
(const __v4sf *) __F,
|
|
(__v4sf) _mm_setzero_ps (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx5124vnniw")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_4dpwssd_epi32 (__m512i __A, __m512i __B, __m512i __C,
|
|
__m512i __D, __m512i __E, __m128i *__F)
|
|
{
|
|
return (__m512i) __builtin_ia32_vp4dpwssd ((__v16si) __B,
|
|
(__v16si) __C,
|
|
(__v16si) __D,
|
|
(__v16si) __E,
|
|
(__v16si) __A,
|
|
(const __v4si *) __F);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_4dpwssd_epi32 (__m512i __A, __mmask16 __U, __m512i __B,
|
|
__m512i __C, __m512i __D, __m512i __E,
|
|
__m128i *__F)
|
|
{
|
|
return (__m512i) __builtin_ia32_vp4dpwssd_mask ((__v16si) __B,
|
|
(__v16si) __C,
|
|
(__v16si) __D,
|
|
(__v16si) __E,
|
|
(__v16si) __A,
|
|
(const __v4si *) __F,
|
|
(__v16si) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_4dpwssd_epi32 (__mmask16 __U, __m512i __A, __m512i __B,
|
|
__m512i __C, __m512i __D, __m512i __E,
|
|
__m128i *__F)
|
|
{
|
|
return (__m512i) __builtin_ia32_vp4dpwssd_mask ((__v16si) __B,
|
|
(__v16si) __C,
|
|
(__v16si) __D,
|
|
(__v16si) __E,
|
|
(__v16si) __A,
|
|
(const __v4si *) __F,
|
|
(__v16si) _mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_4dpwssds_epi32 (__m512i __A, __m512i __B, __m512i __C,
|
|
__m512i __D, __m512i __E, __m128i *__F)
|
|
{
|
|
return (__m512i) __builtin_ia32_vp4dpwssds ((__v16si) __B,
|
|
(__v16si) __C,
|
|
(__v16si) __D,
|
|
(__v16si) __E,
|
|
(__v16si) __A,
|
|
(const __v4si *) __F);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_4dpwssds_epi32 (__m512i __A, __mmask16 __U, __m512i __B,
|
|
__m512i __C, __m512i __D, __m512i __E,
|
|
__m128i *__F)
|
|
{
|
|
return (__m512i) __builtin_ia32_vp4dpwssds_mask ((__v16si) __B,
|
|
(__v16si) __C,
|
|
(__v16si) __D,
|
|
(__v16si) __E,
|
|
(__v16si) __A,
|
|
(const __v4si *) __F,
|
|
(__v16si) __A,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_4dpwssds_epi32 (__mmask16 __U, __m512i __A, __m512i __B,
|
|
__m512i __C, __m512i __D, __m512i __E,
|
|
__m128i *__F)
|
|
{
|
|
return (__m512i) __builtin_ia32_vp4dpwssds_mask ((__v16si) __B,
|
|
(__v16si) __C,
|
|
(__v16si) __D,
|
|
(__v16si) __E,
|
|
(__v16si) __A,
|
|
(const __v4si *) __F,
|
|
(__v16si) _mm512_setzero_ps (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vpopcntdq")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_popcnt_epi32 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountd_v16si ((__v16si) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_popcnt_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountd_v16si_mask ((__v16si) __A,
|
|
(__v16si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_popcnt_epi32 (__mmask16 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountd_v16si_mask ((__v16si) __A,
|
|
(__v16si)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_popcnt_epi64 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountq_v8di ((__v8di) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_popcnt_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountq_v8di_mask ((__v8di) __A,
|
|
(__v8di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_popcnt_epi64 (__mmask8 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountq_v8di_mask ((__v8di) __A,
|
|
(__v8di)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vbmi2")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shrdv_epi16 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpshrdv_v32hi ((__v32hi)__A, (__v32hi) __B,
|
|
(__v32hi) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shrdv_epi32 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpshrdv_v16si ((__v16si)__A, (__v16si) __B,
|
|
(__v16si) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shrdv_epi32 (__m512i __A, __mmask16 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshrdv_v16si_mask ((__v16si)__A,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shrdv_epi32 (__mmask16 __A, __m512i __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshrdv_v16si_maskz ((__v16si)__B,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shrdv_epi64 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpshrdv_v8di ((__v8di)__A, (__v8di) __B,
|
|
(__v8di) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shrdv_epi64 (__m512i __A, __mmask8 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshrdv_v8di_mask ((__v8di)__A, (__v8di) __C,
|
|
(__v8di) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shrdv_epi64 (__mmask8 __A, __m512i __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshrdv_v8di_maskz ((__v8di)__B, (__v8di) __C,
|
|
(__v8di) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shldv_epi16 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpshldv_v32hi ((__v32hi)__A, (__v32hi) __B,
|
|
(__v32hi) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shldv_epi32 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpshldv_v16si ((__v16si)__A, (__v16si) __B,
|
|
(__v16si) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shldv_epi32 (__m512i __A, __mmask16 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshldv_v16si_mask ((__v16si)__A,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shldv_epi32 (__mmask16 __A, __m512i __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshldv_v16si_maskz ((__v16si)__B,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_shldv_epi64 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpshldv_v8di ((__v8di)__A, (__v8di) __B,
|
|
(__v8di) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shldv_epi64 (__m512i __A, __mmask8 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshldv_v8di_mask ((__v8di)__A, (__v8di) __C,
|
|
(__v8di) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shldv_epi64 (__mmask8 __A, __m512i __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshldv_v8di_maskz ((__v8di)__B, (__v8di) __C,
|
|
(__v8di) __D, (__mmask8)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vbmi2,avx512bw")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compress_epi8 (__m512i __A, __mmask64 __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_compressqi512_mask ((__v64qi)__C,
|
|
(__v64qi)__A, (__mmask64)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_compress_epi8 (__mmask64 __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_compressqi512_mask ((__v64qi)__B,
|
|
(__v64qi)_mm512_setzero_si512 (), (__mmask64)__A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compressstoreu_epi8 (void * __A, __mmask64 __B, __m512i __C)
|
|
{
|
|
__builtin_ia32_compressstoreuqi512_mask ((__v64qi *) __A, (__v64qi) __C,
|
|
(__mmask64) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compress_epi16 (__m512i __A, __mmask32 __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_compresshi512_mask ((__v32hi)__C,
|
|
(__v32hi)__A, (__mmask32)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_compress_epi16 (__mmask32 __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_compresshi512_mask ((__v32hi)__B,
|
|
(__v32hi)_mm512_setzero_si512 (), (__mmask32)__A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_compressstoreu_epi16 (void * __A, __mmask32 __B, __m512i __C)
|
|
{
|
|
__builtin_ia32_compressstoreuhi512_mask ((__v32hi *) __A, (__v32hi) __C,
|
|
(__mmask32) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expand_epi8 (__m512i __A, __mmask64 __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandqi512_mask ((__v64qi) __C,
|
|
(__v64qi) __A,
|
|
(__mmask64) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expand_epi8 (__mmask64 __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandqi512_maskz ((__v64qi) __B,
|
|
(__v64qi) _mm512_setzero_si512 (), (__mmask64) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expandloadu_epi8 (__m512i __A, __mmask64 __B, const void * __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloadqi512_mask ((const __v64qi *) __C,
|
|
(__v64qi) __A, (__mmask64) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expandloadu_epi8 (__mmask64 __A, const void * __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloadqi512_maskz ((const __v64qi *) __B,
|
|
(__v64qi) _mm512_setzero_si512 (), (__mmask64) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expand_epi16 (__m512i __A, __mmask32 __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandhi512_mask ((__v32hi) __C,
|
|
(__v32hi) __A,
|
|
(__mmask32) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expand_epi16 (__mmask32 __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandhi512_maskz ((__v32hi) __B,
|
|
(__v32hi) _mm512_setzero_si512 (), (__mmask32) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_expandloadu_epi16 (__m512i __A, __mmask32 __B, const void * __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloadhi512_mask ((const __v32hi *) __C,
|
|
(__v32hi) __A, (__mmask32) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_expandloadu_epi16 (__mmask32 __A, const void * __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_expandloadhi512_maskz ((const __v32hi *) __B,
|
|
(__v32hi) _mm512_setzero_si512 (), (__mmask32) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shrdv_epi16 (__m512i __A, __mmask32 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshrdv_v32hi_mask ((__v32hi)__A,
|
|
(__v32hi) __C, (__v32hi) __D, (__mmask32)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shrdv_epi16 (__mmask32 __A, __m512i __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshrdv_v32hi_maskz ((__v32hi)__B,
|
|
(__v32hi) __C, (__v32hi) __D, (__mmask32)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_shldv_epi16 (__m512i __A, __mmask32 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshldv_v32hi_mask ((__v32hi)__A,
|
|
(__v32hi) __C, (__v32hi) __D, (__mmask32)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_shldv_epi16 (__mmask32 __A, __m512i __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpshldv_v32hi_maskz ((__v32hi)__B,
|
|
(__v32hi) __C, (__v32hi) __D, (__mmask32)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vbmi2,avx512vl")
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compress_epi8 (__m128i __A, __mmask16 __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi)__C,
|
|
(__v16qi)__A, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_compress_epi8 (__mmask16 __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __B,
|
|
(__v16qi) _mm_setzero_si128 (), (__mmask16) __A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compressstoreu_epi16 (void * __A, __mmask16 __B, __m256i __C)
|
|
{
|
|
__builtin_ia32_compressstoreuhi256_mask ((__v16hi *) __A, (__v16hi) __C,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compress_epi16 (__m128i __A, __mmask8 __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi)__C, (__v8hi)__A,
|
|
(__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_compress_epi16 (__mmask8 __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __B,
|
|
(__v8hi) _mm_setzero_si128 (), (__mmask8) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compress_epi16 (__m256i __A, __mmask16 __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi)__C,
|
|
(__v16hi)__A, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_compress_epi16 (__mmask16 __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __B,
|
|
(__v16hi) _mm256_setzero_si256 (), (__mmask16) __A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compressstoreu_epi8 (void * __A, __mmask16 __B, __m128i __C)
|
|
{
|
|
__builtin_ia32_compressstoreuqi128_mask ((__v16qi *) __A, (__v16qi) __C,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_compressstoreu_epi16 (void * __A, __mmask8 __B, __m128i __C)
|
|
{
|
|
__builtin_ia32_compressstoreuhi128_mask ((__v8hi *) __A, (__v8hi) __C,
|
|
(__mmask8) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expand_epi8 (__m128i __A, __mmask16 __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __C,
|
|
(__v16qi) __A,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expand_epi8 (__mmask16 __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandqi128_maskz ((__v16qi) __B,
|
|
(__v16qi) _mm_setzero_si128 (), (__mmask16) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expandloadu_epi8 (__m128i __A, __mmask16 __B, const void * __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *) __C,
|
|
(__v16qi) __A, (__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expandloadu_epi8 (__mmask16 __A, const void * __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloadqi128_maskz ((const __v16qi *) __B,
|
|
(__v16qi) _mm_setzero_si128 (), (__mmask16) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expand_epi16 (__m128i __A, __mmask8 __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __C,
|
|
(__v8hi) __A,
|
|
(__mmask8) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expand_epi16 (__mmask8 __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandhi128_maskz ((__v8hi) __B,
|
|
(__v8hi) _mm_setzero_si128 (), (__mmask8) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_expandloadu_epi16 (__m128i __A, __mmask8 __B, const void * __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *) __C,
|
|
(__v8hi) __A, (__mmask8) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_expandloadu_epi16 (__mmask8 __A, const void * __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_expandloadhi128_maskz ((const __v8hi *) __B,
|
|
(__v8hi) _mm_setzero_si128 (), (__mmask8) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expand_epi16 (__m256i __A, __mmask16 __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __C,
|
|
(__v16hi) __A,
|
|
(__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expand_epi16 (__mmask16 __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandhi256_maskz ((__v16hi) __B,
|
|
(__v16hi) _mm256_setzero_si256 (), (__mmask16) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expandloadu_epi16 (__m256i __A, __mmask16 __B, const void * __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *) __C,
|
|
(__v16hi) __A, (__mmask16) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expandloadu_epi16 (__mmask16 __A, const void * __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloadhi256_maskz ((const __v16hi *) __B,
|
|
(__v16hi) _mm256_setzero_si256 (), (__mmask16) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shrdv_epi16 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpshrdv_v16hi ((__v16hi)__A, (__v16hi) __B,
|
|
(__v16hi) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shrdv_epi16 (__m256i __A, __mmask16 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshrdv_v16hi_mask ((__v16hi)__A,
|
|
(__v16hi) __C, (__v16hi) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shrdv_epi16 (__mmask16 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshrdv_v16hi_maskz ((__v16hi)__B,
|
|
(__v16hi) __C, (__v16hi) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shrdv_epi32 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpshrdv_v8si ((__v8si)__A, (__v8si) __B,
|
|
(__v8si) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shrdv_epi32 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshrdv_v8si_mask ((__v8si)__A, (__v8si) __C,
|
|
(__v8si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shrdv_epi32 (__mmask8 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshrdv_v8si_maskz ((__v8si)__B, (__v8si) __C,
|
|
(__v8si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shrdv_epi64 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpshrdv_v4di ((__v4di)__A, (__v4di) __B,
|
|
(__v4di) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shrdv_epi64 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshrdv_v4di_mask ((__v4di)__A, (__v4di) __C,
|
|
(__v4di) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shrdv_epi64 (__mmask8 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshrdv_v4di_maskz ((__v4di)__B, (__v4di) __C,
|
|
(__v4di) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shrdv_epi16 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshrdv_v8hi ((__v8hi)__A, (__v8hi) __B,
|
|
(__v8hi) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shrdv_epi16 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshrdv_v8hi_mask ((__v8hi)__A, (__v8hi) __C,
|
|
(__v8hi) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shrdv_epi16 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshrdv_v8hi_maskz ((__v8hi)__B, (__v8hi) __C,
|
|
(__v8hi) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shrdv_epi32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshrdv_v4si ((__v4si)__A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shrdv_epi32 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshrdv_v4si_mask ((__v4si)__A, (__v4si) __C,
|
|
(__v4si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shrdv_epi32 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshrdv_v4si_maskz ((__v4si)__B, (__v4si) __C,
|
|
(__v4si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shrdv_epi64 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshrdv_v2di ((__v2di)__A, (__v2di) __B,
|
|
(__v2di) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shrdv_epi64 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshrdv_v2di_mask ((__v2di)__A, (__v2di) __C,
|
|
(__v2di) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shrdv_epi64 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshrdv_v2di_maskz ((__v2di)__B, (__v2di) __C,
|
|
(__v2di) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shldv_epi16 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpshldv_v16hi ((__v16hi)__A, (__v16hi) __B,
|
|
(__v16hi) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shldv_epi16 (__m256i __A, __mmask16 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshldv_v16hi_mask ((__v16hi)__A,
|
|
(__v16hi) __C, (__v16hi) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shldv_epi16 (__mmask16 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshldv_v16hi_maskz ((__v16hi)__B,
|
|
(__v16hi) __C, (__v16hi) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shldv_epi32 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpshldv_v8si ((__v8si)__A, (__v8si) __B,
|
|
(__v8si) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shldv_epi32 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshldv_v8si_mask ((__v8si)__A, (__v8si) __C,
|
|
(__v8si) __D, (__mmask8)__B) ;
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shldv_epi32 (__mmask8 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshldv_v8si_maskz ((__v8si)__B, (__v8si) __C,
|
|
(__v8si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_shldv_epi64 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpshldv_v4di ((__v4di)__A, (__v4di) __B,
|
|
(__v4di) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_shldv_epi64 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshldv_v4di_mask ((__v4di)__A, (__v4di) __C,
|
|
(__v4di) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_shldv_epi64 (__mmask8 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpshldv_v4di_maskz ((__v4di)__B, (__v4di) __C,
|
|
(__v4di) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shldv_epi16 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshldv_v8hi ((__v8hi)__A, (__v8hi) __B,
|
|
(__v8hi) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shldv_epi16 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshldv_v8hi_mask ((__v8hi)__A, (__v8hi) __C,
|
|
(__v8hi) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shldv_epi16 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshldv_v8hi_maskz ((__v8hi)__B, (__v8hi) __C,
|
|
(__v8hi) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shldv_epi32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshldv_v4si ((__v4si)__A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shldv_epi32 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshldv_v4si_mask ((__v4si)__A, (__v4si) __C,
|
|
(__v4si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shldv_epi32 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshldv_v4si_maskz ((__v4si)__B, (__v4si) __C,
|
|
(__v4si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shldv_epi64 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshldv_v2di ((__v2di)__A, (__v2di) __B,
|
|
(__v2di) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_shldv_epi64 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshldv_v2di_mask ((__v2di)__A, (__v2di) __C,
|
|
(__v2di) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_shldv_epi64 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpshldv_v2di_maskz ((__v2di)__B, (__v2di) __C,
|
|
(__v2di) __D, (__mmask8)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vbmi2,avx512vl,avx512bw")
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compress_epi8 (__m256i __A, __mmask32 __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi)__C,
|
|
(__v32qi)__A, (__mmask32)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_compress_epi8 (__mmask32 __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __B,
|
|
(__v32qi) _mm256_setzero_si256 (), (__mmask32) __A);
|
|
}*/
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_compressstoreu_epi8 (void * __A, __mmask32 __B, __m256i __C)
|
|
{
|
|
__builtin_ia32_compressstoreuqi256_mask ((__v32qi *) __A, (__v32qi) __C,
|
|
(__mmask32) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expand_epi8 (__m256i __A, __mmask32 __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __C,
|
|
(__v32qi) __A,
|
|
(__mmask32) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expand_epi8 (__mmask32 __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandqi256_maskz ((__v32qi) __B,
|
|
(__v32qi) _mm256_setzero_si256 (), (__mmask32) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_expandloadu_epi8 (__m256i __A, __mmask32 __B, const void * __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *) __C,
|
|
(__v32qi) __A, (__mmask32) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_expandloadu_epi8 (__mmask32 __A, const void * __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_expandloadqi256_maskz ((const __v32qi *) __B,
|
|
(__v32qi) _mm256_setzero_si256 (), (__mmask32) __A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vnni")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_dpbusd_epi32 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpdpbusd_v16si ((__v16si)__A, (__v16si) __B,
|
|
(__v16si) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_dpbusd_epi32 (__m512i __A, __mmask16 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpbusd_v16si_mask ((__v16si)__A,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_dpbusd_epi32 (__mmask16 __A, __m512i __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpbusd_v16si_maskz ((__v16si)__B,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_dpbusds_epi32 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpdpbusds_v16si ((__v16si)__A, (__v16si) __B,
|
|
(__v16si) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_dpbusds_epi32 (__m512i __A, __mmask16 __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpbusds_v16si_mask ((__v16si)__A,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_dpbusds_epi32 (__mmask16 __A, __m512i __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpbusds_v16si_maskz ((__v16si)__B,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_dpwssd_epi32 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpdpwssd_v16si ((__v16si)__A, (__v16si) __B,
|
|
(__v16si) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_dpwssd_epi32 (__m512i __A, __mmask16 __B, __m512i __C, __m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpwssd_v16si_mask ((__v16si)__A,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_dpwssd_epi32 (__mmask16 __A, __m512i __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpwssd_v16si_maskz ((__v16si)__B,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_dpwssds_epi32 (__m512i __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpdpwssds_v16si ((__v16si)__A, (__v16si) __B,
|
|
(__v16si) __C);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_dpwssds_epi32 (__m512i __A, __mmask16 __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpwssds_v16si_mask ((__v16si)__A,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_dpwssds_epi32 (__mmask16 __A, __m512i __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i)__builtin_ia32_vpdpwssds_v16si_maskz ((__v16si)__B,
|
|
(__v16si) __C, (__v16si) __D, (__mmask16)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vnni,avx512vl")
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_dpbusd_epi32 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpdpbusd_v8si ((__v8si)__A, (__v8si) __B,
|
|
(__v8si) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_dpbusd_epi32 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpbusd_v8si_mask ((__v8si)__A, (__v8si) __C,
|
|
(__v8si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_dpbusd_epi32 (__mmask8 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpbusd_v8si_maskz ((__v8si)__B,
|
|
(__v8si) __C, (__v8si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_dpbusd_epi32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpdpbusd_v4si ((__v4si)__A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_dpbusd_epi32 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpbusd_v4si_mask ((__v4si)__A, (__v4si) __C,
|
|
(__v4si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_dpbusd_epi32 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpbusd_v4si_maskz ((__v4si)__B,
|
|
(__v4si) __C, (__v4si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_dpbusds_epi32 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpdpbusds_v8si ((__v8si)__A, (__v8si) __B,
|
|
(__v8si) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_dpbusds_epi32 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpbusds_v8si_mask ((__v8si)__A,
|
|
(__v8si) __C, (__v8si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_dpbusds_epi32 (__mmask8 __A, __m256i __B, __m256i __C,
|
|
__m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpbusds_v8si_maskz ((__v8si)__B,
|
|
(__v8si) __C, (__v8si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_dpbusds_epi32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpdpbusds_v4si ((__v4si)__A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_dpbusds_epi32 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpbusds_v4si_mask ((__v4si)__A,
|
|
(__v4si) __C, (__v4si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_dpbusds_epi32 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpbusds_v4si_maskz ((__v4si)__B,
|
|
(__v4si) __C, (__v4si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_dpwssd_epi32 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpdpwssd_v8si ((__v8si)__A, (__v8si) __B,
|
|
(__v8si) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_dpwssd_epi32 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpwssd_v8si_mask ((__v8si)__A, (__v8si) __C,
|
|
(__v8si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_dpwssd_epi32 (__mmask8 __A, __m256i __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpwssd_v8si_maskz ((__v8si)__B,
|
|
(__v8si) __C, (__v8si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_dpwssd_epi32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpdpwssd_v4si ((__v4si)__A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_dpwssd_epi32 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpwssd_v4si_mask ((__v4si)__A, (__v4si) __C,
|
|
(__v4si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_dpwssd_epi32 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpwssd_v4si_maskz ((__v4si)__B,
|
|
(__v4si) __C, (__v4si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_dpwssds_epi32 (__m256i __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpdpwssds_v8si ((__v8si)__A, (__v8si) __B,
|
|
(__v8si) __C);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_dpwssds_epi32 (__m256i __A, __mmask8 __B, __m256i __C, __m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpwssds_v8si_mask ((__v8si)__A,
|
|
(__v8si) __C, (__v8si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_dpwssds_epi32 (__mmask8 __A, __m256i __B, __m256i __C,
|
|
__m256i __D)
|
|
{
|
|
return (__m256i)__builtin_ia32_vpdpwssds_v8si_maskz ((__v8si)__B,
|
|
(__v8si) __C, (__v8si) __D, (__mmask8)__A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_dpwssds_epi32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpdpwssds_v4si ((__v4si)__A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_dpwssds_epi32 (__m128i __A, __mmask8 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpwssds_v4si_mask ((__v4si)__A,
|
|
(__v4si) __C, (__v4si) __D, (__mmask8)__B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_dpwssds_epi32 (__mmask8 __A, __m128i __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i)__builtin_ia32_vpdpwssds_v4si_maskz ((__v4si)__B,
|
|
(__v4si) __C, (__v4si) __D, (__mmask8)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512vpopcntdq,avx512vl")
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_popcnt_epi32 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountd_v4si ((__v4si) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_popcnt_epi32 (__m128i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountd_v4si_mask ((__v4si) __A,
|
|
(__v4si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_popcnt_epi32 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountd_v4si_mask ((__v4si) __A,
|
|
(__v4si)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_popcnt_epi32 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountd_v8si ((__v8si) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_popcnt_epi32 (__m256i __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountd_v8si_mask ((__v8si) __A,
|
|
(__v8si) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_popcnt_epi32 (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountd_v8si_mask ((__v8si) __A,
|
|
(__v8si)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_popcnt_epi64 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountq_v2di ((__v2di) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_popcnt_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountq_v2di_mask ((__v2di) __A,
|
|
(__v2di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_popcnt_epi64 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountq_v2di_mask ((__v2di) __A,
|
|
(__v2di)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_popcnt_epi64 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountq_v4di ((__v4di) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_popcnt_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountq_v4di_mask ((__v4di) __A,
|
|
(__v4di) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_popcnt_epi64 (__mmask8 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountq_v4di_mask ((__v4di) __A,
|
|
(__v4di)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512bitalg")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_popcnt_epi8 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountb_v64qi ((__v64qi) __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_popcnt_epi16 (__m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountw_v32hi ((__v32hi) __A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512bitalg,avx512bw")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_popcnt_epi8 (__m512i __W, __mmask64 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountb_v64qi_mask ((__v64qi) __A,
|
|
(__v64qi) __W,
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_popcnt_epi8 (__mmask64 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountb_v64qi_mask ((__v64qi) __A,
|
|
(__v64qi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask64) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_popcnt_epi16 (__m512i __W, __mmask32 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountw_v32hi_mask ((__v32hi) __A,
|
|
(__v32hi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_popcnt_epi16 (__mmask32 __U, __m512i __A)
|
|
{
|
|
return (__m512i) __builtin_ia32_vpopcountw_v32hi_mask ((__v32hi) __A,
|
|
(__v32hi)
|
|
_mm512_setzero_si512 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_bitshuffle_epi64_mask (__m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_vpshufbitqmb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) -1);
|
|
}*/
|
|
/*extern __inline __mmask64
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_bitshuffle_epi64_mask (__mmask64 __M, __m512i __A, __m512i __B)
|
|
{
|
|
return (__mmask64) __builtin_ia32_vpshufbitqmb512_mask ((__v64qi) __A,
|
|
(__v64qi) __B,
|
|
(__mmask64) __M);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512bitalg,avx512vl,avx512bw")
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_popcnt_epi8 (__m256i __W, __mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountb_v32qi_mask ((__v32qi) __A,
|
|
(__v32qi) __W,
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_popcnt_epi8 (__mmask32 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountb_v32qi_mask ((__v32qi) __A,
|
|
(__v32qi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask32) __U);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_bitshuffle_epi64_mask (__m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_vpshufbitqmb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) -1);
|
|
}*/
|
|
/*extern __inline __mmask32
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_bitshuffle_epi64_mask (__mmask32 __M, __m256i __A, __m256i __B)
|
|
{
|
|
return (__mmask32) __builtin_ia32_vpshufbitqmb256_mask ((__v32qi) __A,
|
|
(__v32qi) __B,
|
|
(__mmask32) __M);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("avx512bitalg,avx512vl")
|
|
/*extern __inline __mmask16
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_bitshuffle_epi64_mask (__m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_vpshufbitqmb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) -1);
|
|
}*/
|
|
/*extern __inline __mmask16
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_bitshuffle_epi64_mask (__mmask16 __M, __m128i __A, __m128i __B)
|
|
{
|
|
return (__mmask16) __builtin_ia32_vpshufbitqmb128_mask ((__v16qi) __A,
|
|
(__v16qi) __B,
|
|
(__mmask16) __M);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_popcnt_epi8 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountb_v32qi ((__v32qi) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_popcnt_epi16 (__m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountw_v16hi ((__v16hi) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_popcnt_epi8 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountb_v16qi ((__v16qi) __A);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_popcnt_epi16 (__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountw_v8hi ((__v8hi) __A);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_popcnt_epi16 (__m256i __W, __mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountw_v16hi_mask ((__v16hi) __A,
|
|
(__v16hi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_popcnt_epi16 (__mmask16 __U, __m256i __A)
|
|
{
|
|
return (__m256i) __builtin_ia32_vpopcountw_v16hi_mask ((__v16hi) __A,
|
|
(__v16hi)
|
|
_mm256_setzero_si256 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_popcnt_epi8 (__m128i __W, __mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountb_v16qi_mask ((__v16qi) __A,
|
|
(__v16qi) __W,
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_popcnt_epi8 (__mmask16 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountb_v16qi_mask ((__v16qi) __A,
|
|
(__v16qi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask16) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_popcnt_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountw_v8hi_mask ((__v8hi) __A,
|
|
(__v8hi) __W,
|
|
(__mmask8) __U);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_popcnt_epi16 (__mmask8 __U, __m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpopcountw_v8hi_mask ((__v8hi) __A,
|
|
(__v8hi)
|
|
_mm_setzero_si128 (),
|
|
(__mmask8) __U);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sha")
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha1msg1_epu32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_sha1msg1 ((__v4si) __A, (__v4si) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha1msg2_epu32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_sha1msg2 ((__v4si) __A, (__v4si) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha1nexte_epu32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_sha1nexte ((__v4si) __A, (__v4si) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha256msg1_epu32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_sha256msg1 ((__v4si) __A, (__v4si) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha256msg2_epu32 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_sha256msg2 ((__v4si) __A, (__v4si) __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha256rnds2_epu32 (__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_sha256rnds2 ((__v4si) __A, (__v4si) __B,
|
|
(__v4si) __C);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("lzcnt")
|
|
/*extern __inline unsigned short __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__lzcnt16 (unsigned short __X)
|
|
{
|
|
return __builtin_ia32_lzcnt_u16 (__X);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__lzcnt32 (unsigned int __X)
|
|
{
|
|
return __builtin_ia32_lzcnt_u32 (__X);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_lzcnt_u32 (unsigned int __X)
|
|
{
|
|
return __builtin_ia32_lzcnt_u32 (__X);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__lzcnt64 (unsigned long long __X)
|
|
{
|
|
return __builtin_ia32_lzcnt_u64 (__X);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_lzcnt_u64 (unsigned long long __X)
|
|
{
|
|
return __builtin_ia32_lzcnt_u64 (__X);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("bmi")
|
|
/*extern __inline unsigned short __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__tzcnt_u16 (unsigned short __X)
|
|
{
|
|
return __builtin_ia32_tzcnt_u16 (__X);
|
|
}*/
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__andn_u32 (unsigned int __X, unsigned int __Y)
|
|
{
|
|
return ~__X & __Y;
|
|
}
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bextr_u32 (unsigned int __X, unsigned int __Y)
|
|
{
|
|
return __builtin_ia32_bextr_u32 (__X, __Y);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_bextr_u32 (unsigned int __X, unsigned int __Y, unsigned __Z)
|
|
{
|
|
return __builtin_ia32_bextr_u32 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsi_u32 (unsigned int __X)
|
|
{
|
|
return __X & -__X;
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_blsi_u32 (unsigned int __X)
|
|
{
|
|
return __blsi_u32 (__X);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsmsk_u32 (unsigned int __X)
|
|
{
|
|
return __X ^ (__X - 1);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_blsmsk_u32 (unsigned int __X)
|
|
{
|
|
return __blsmsk_u32 (__X);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsr_u32 (unsigned int __X)
|
|
{
|
|
return __X & (__X - 1);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_blsr_u32 (unsigned int __X)
|
|
{
|
|
return __blsr_u32 (__X);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__tzcnt_u32 (unsigned int __X)
|
|
{
|
|
return __builtin_ia32_tzcnt_u32 (__X);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_tzcnt_u32 (unsigned int __X)
|
|
{
|
|
return __builtin_ia32_tzcnt_u32 (__X);
|
|
}*/
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__andn_u64 (unsigned long long __X, unsigned long long __Y)
|
|
{
|
|
return ~__X & __Y;
|
|
}
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__bextr_u64 (unsigned long long __X, unsigned long long __Y)
|
|
{
|
|
return __builtin_ia32_bextr_u64 (__X, __Y);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_bextr_u64 (unsigned long long __X, unsigned int __Y, unsigned int __Z)
|
|
{
|
|
return __builtin_ia32_bextr_u64 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsi_u64 (unsigned long long __X)
|
|
{
|
|
return __X & -__X;
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_blsi_u64 (unsigned long long __X)
|
|
{
|
|
return __blsi_u64 (__X);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsmsk_u64 (unsigned long long __X)
|
|
{
|
|
return __X ^ (__X - 1);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_blsmsk_u64 (unsigned long long __X)
|
|
{
|
|
return __blsmsk_u64 (__X);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsr_u64 (unsigned long long __X)
|
|
{
|
|
return __X & (__X - 1);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_blsr_u64 (unsigned long long __X)
|
|
{
|
|
return __blsr_u64 (__X);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__tzcnt_u64 (unsigned long long __X)
|
|
{
|
|
return __builtin_ia32_tzcnt_u64 (__X);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_tzcnt_u64 (unsigned long long __X)
|
|
{
|
|
return __builtin_ia32_tzcnt_u64 (__X);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("bmi2")
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_bzhi_u32 (unsigned int __X, unsigned int __Y)
|
|
{
|
|
return __builtin_ia32_bzhi_si (__X, __Y);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_pdep_u32 (unsigned int __X, unsigned int __Y)
|
|
{
|
|
return __builtin_ia32_pdep_si (__X, __Y);
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_pext_u32 (unsigned int __X, unsigned int __Y)
|
|
{
|
|
return __builtin_ia32_pext_si (__X, __Y);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_bzhi_u64 (unsigned long long __X, unsigned long long __Y)
|
|
{
|
|
return __builtin_ia32_bzhi_di (__X, __Y);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_pdep_u64 (unsigned long long __X, unsigned long long __Y)
|
|
{
|
|
return __builtin_ia32_pdep_di (__X, __Y);
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_pext_u64 (unsigned long long __X, unsigned long long __Y)
|
|
{
|
|
return __builtin_ia32_pext_di (__X, __Y);
|
|
}
|
|
/*extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mulx_u64 (unsigned long long __X, unsigned long long __Y,
|
|
unsigned long long *__P)
|
|
{
|
|
unsigned __int128 __res = (unsigned __int128) __X * __Y;
|
|
*__P = (unsigned long long) (__res >> 64);
|
|
return (unsigned long long) __res;
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("fma")
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmadd_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfmaddpd ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmadd_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d)__builtin_ia32_vfmaddpd256 ((__v4df)__A, (__v4df)__B,
|
|
(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmadd_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfmaddps ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256)__builtin_ia32_vfmaddps256 ((__v8sf)__A, (__v8sf)__B,
|
|
(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmadd_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd3 ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmadd_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss3 ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmsub_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfmsubpd ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmsub_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d)__builtin_ia32_vfmsubpd256 ((__v4df)__A, (__v4df)__B,
|
|
(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmsub_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfmsubps ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmsub_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256)__builtin_ia32_vfmsubps256 ((__v8sf)__A, (__v8sf)__B,
|
|
(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmsub_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfmsubsd3 ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmsub_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfmsubss3 ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmadd_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfnmaddpd ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fnmadd_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d)__builtin_ia32_vfnmaddpd256 ((__v4df)__A, (__v4df)__B,
|
|
(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmadd_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfnmaddps ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fnmadd_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256)__builtin_ia32_vfnmaddps256 ((__v8sf)__A, (__v8sf)__B,
|
|
(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmadd_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfnmaddsd3 ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmadd_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfnmaddss3 ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmsub_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfnmsubpd ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fnmsub_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d)__builtin_ia32_vfnmsubpd256 ((__v4df)__A, (__v4df)__B,
|
|
(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmsub_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfnmsubps ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fnmsub_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256)__builtin_ia32_vfnmsubps256 ((__v8sf)__A, (__v8sf)__B,
|
|
(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmsub_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfnmsubsd3 ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fnmsub_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfnmsubss3 ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmaddsub_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfmaddsubpd ((__v2df)__A, (__v2df)__B,
|
|
(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmaddsub_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d)__builtin_ia32_vfmaddsubpd256 ((__v4df)__A,
|
|
(__v4df)__B,
|
|
(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmaddsub_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfmaddsubps ((__v4sf)__A, (__v4sf)__B,
|
|
(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmaddsub_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256)__builtin_ia32_vfmaddsubps256 ((__v8sf)__A,
|
|
(__v8sf)__B,
|
|
(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmsubadd_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d)__builtin_ia32_vfmaddsubpd ((__v2df)__A, (__v2df)__B,
|
|
-(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256d
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmsubadd_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d)__builtin_ia32_vfmaddsubpd256 ((__v4df)__A,
|
|
(__v4df)__B,
|
|
-(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m128
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_fmsubadd_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128)__builtin_ia32_vfmaddsubps ((__v4sf)__A, (__v4sf)__B,
|
|
-(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m256
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_fmsubadd_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256)__builtin_ia32_vfmaddsubps256 ((__v8sf)__A,
|
|
(__v8sf)__B,
|
|
-(__v8sf)__C);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("f16c")
|
|
/*extern __inline float __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cvtsh_ss (unsigned short __S)
|
|
{
|
|
__v8hi __H = __extension__ (__v8hi){ (short) __S, 0, 0, 0, 0, 0, 0, 0 };
|
|
__v4sf __A = __builtin_ia32_vcvtph2ps (__H);
|
|
return __builtin_ia32_vec_ext_v4sf (__A, 0);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cvtph_ps (__m128i __A)
|
|
{
|
|
return (__m128) __builtin_ia32_vcvtph2ps ((__v8hi) __A);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_cvtph_ps (__m128i __A)
|
|
{
|
|
return (__m256) __builtin_ia32_vcvtph2ps256 ((__v8hi) __A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("rtm")
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xbegin (void)
|
|
{
|
|
return __builtin_ia32_xbegin ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xend (void)
|
|
{
|
|
__builtin_ia32_xend ();
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("rtm")
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_xtest (void)
|
|
{
|
|
return __builtin_ia32_xtest ();
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target ("shstk")
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_get_ssp (void)
|
|
{
|
|
return __builtin_ia32_rdsspq ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_inc_ssp (unsigned int __B)
|
|
{
|
|
__builtin_ia32_incsspq ((unsigned long long) __B);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_saveprevssp (void)
|
|
{
|
|
__builtin_ia32_saveprevssp ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rstorssp (void *__B)
|
|
{
|
|
__builtin_ia32_rstorssp (__B);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wrssd (unsigned int __B, void *__C)
|
|
{
|
|
__builtin_ia32_wrssd (__B, __C);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wrssq (unsigned long long __B, void *__C)
|
|
{
|
|
__builtin_ia32_wrssq (__B, __C);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wrussd (unsigned int __B, void *__C)
|
|
{
|
|
__builtin_ia32_wrussd (__B, __C);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wrussq (unsigned long long __B, void *__C)
|
|
{
|
|
__builtin_ia32_wrussq (__B, __C);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_setssbsy (void)
|
|
{
|
|
__builtin_ia32_setssbsy ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_clrssbsy (void *__B)
|
|
{
|
|
__builtin_ia32_clrssbsy (__B);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("gfni,sse2")
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_gf2p8mul_epi8 (__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi((__v16qi) __A,
|
|
(__v16qi) __B);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("gfni,avx")
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_gf2p8mul_epi8 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i) __builtin_ia32_vgf2p8mulb_v32qi ((__v32qi) __A,
|
|
(__v32qi) __B);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("gfni,avx512vl")
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mask_gf2p8mul_epi8 (__m128i __A, __mmask16 __B, __m128i __C, __m128i __D)
|
|
{
|
|
return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi_mask ((__v16qi) __C,
|
|
(__v16qi) __D,
|
|
(__v16qi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m128i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maskz_gf2p8mul_epi8 (__mmask16 __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi_mask ((__v16qi) __B,
|
|
(__v16qi) __C, (__v16qi) _mm_setzero_si128 (), __A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("gfni,avx512vl,avx512bw")
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_mask_gf2p8mul_epi8 (__m256i __A, __mmask32 __B, __m256i __C,
|
|
__m256i __D)
|
|
{
|
|
return (__m256i) __builtin_ia32_vgf2p8mulb_v32qi_mask ((__v32qi) __C,
|
|
(__v32qi) __D,
|
|
(__v32qi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maskz_gf2p8mul_epi8 (__mmask32 __A, __m256i __B, __m256i __C)
|
|
{
|
|
return (__m256i) __builtin_ia32_vgf2p8mulb_v32qi_mask ((__v32qi) __B,
|
|
(__v32qi) __C, (__v32qi) _mm256_setzero_si256 (), __A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("gfni,avx512f,avx512bw")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_mask_gf2p8mul_epi8 (__m512i __A, __mmask64 __B, __m512i __C,
|
|
__m512i __D)
|
|
{
|
|
return (__m512i) __builtin_ia32_vgf2p8mulb_v64qi_mask ((__v64qi) __C,
|
|
(__v64qi) __D, (__v64qi)__A, __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_maskz_gf2p8mul_epi8 (__mmask64 __A, __m512i __B, __m512i __C)
|
|
{
|
|
return (__m512i) __builtin_ia32_vgf2p8mulb_v64qi_mask ((__v64qi) __B,
|
|
(__v64qi) __C, (__v64qi) _mm512_setzero_si512 (), __A);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_gf2p8mul_epi8 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i) __builtin_ia32_vgf2p8mulb_v64qi ((__v64qi) __A,
|
|
(__v64qi) __B);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("vaes,avx")
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_aesdec_epi128 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_vaesdec_v32qi ((__v32qi) __A, (__v32qi) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_aesdeclast_epi128 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_vaesdeclast_v32qi ((__v32qi) __A,
|
|
(__v32qi) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_aesenc_epi128 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_vaesenc_v32qi ((__v32qi) __A, (__v32qi) __B);
|
|
}*/
|
|
/*extern __inline __m256i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_aesenclast_epi128 (__m256i __A, __m256i __B)
|
|
{
|
|
return (__m256i)__builtin_ia32_vaesenclast_v32qi ((__v32qi) __A,
|
|
(__v32qi) __B);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("vaes,avx512f")
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_aesdec_epi128 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i)__builtin_ia32_vaesdec_v64qi ((__v64qi) __A, (__v64qi) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_aesdeclast_epi128 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i)__builtin_ia32_vaesdeclast_v64qi ((__v64qi) __A,
|
|
(__v64qi) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_aesenc_epi128 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i)__builtin_ia32_vaesenc_v64qi ((__v64qi) __A, (__v64qi) __B);
|
|
}*/
|
|
/*extern __inline __m512i
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm512_aesenclast_epi128 (__m512i __A, __m512i __B)
|
|
{
|
|
return (__m512i)__builtin_ia32_vaesenclast_v64qi ((__v64qi) __A,
|
|
(__v64qi) __B);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("vpclmulqdq,avx512f")
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("vpclmulqdq,avx")
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target ("movdiri")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_directstoreu_u32 (void * __P, unsigned int __A)
|
|
{
|
|
__builtin_ia32_directstoreu_u32 ((unsigned int *)__P, __A);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_directstoreu_u64 (void * __P, unsigned long long __A)
|
|
{
|
|
__builtin_ia32_directstoreu_u64 ((unsigned long long *)__P, __A);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target ("movdir64b")
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_movdir64b (void * __P, const void * __Q)
|
|
{
|
|
__builtin_ia32_movdir64b (__P, __Q);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sgx")
|
|
/*extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_encls_u32 (const unsigned int __L, size_t __D[])
|
|
{
|
|
enum __encls_type
|
|
{
|
|
__SGX_ECREATE = 0x00,
|
|
__SGX_EADD = 0x01,
|
|
__SGX_EINIT = 0x02,
|
|
__SGX_EREMOVE = 0x03,
|
|
__SGX_EDBGRD = 0x04,
|
|
__SGX_EDBGWR = 0x05,
|
|
__SGX_EEXTEND = 0x06,
|
|
__SGX_ELDB = 0x07,
|
|
__SGX_ELDU = 0x08,
|
|
__SGX_EBLOCK = 0x09,
|
|
__SGX_EPA = 0x0A,
|
|
__SGX_EWB = 0x0B,
|
|
__SGX_ETRACK = 0x0C,
|
|
__SGX_EAUG = 0x0D,
|
|
__SGX_EMODPR = 0x0E,
|
|
__SGX_EMODT = 0x0F,
|
|
__SGX_ERDINFO = 0x10,
|
|
__SGX_ETRACKC = 0x11,
|
|
__SGX_ELDBC = 0x12,
|
|
__SGX_ELDUC = 0x13
|
|
};
|
|
enum __encls_type __T = (enum __encls_type)__L;
|
|
unsigned int __R = 0;
|
|
if (!__builtin_constant_p (__T))
|
|
/*__asm__*/
|
|
else switch (__T)
|
|
{
|
|
case __SGX_ECREATE:
|
|
case __SGX_EADD:
|
|
case __SGX_EDBGWR:
|
|
case __SGX_EEXTEND:
|
|
case __SGX_EPA:
|
|
case __SGX_EMODPR:
|
|
case __SGX_EMODT:
|
|
case __SGX_EAUG:
|
|
case __SGX_ERDINFO:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_EINIT:
|
|
case __SGX_ELDB:
|
|
case __SGX_ELDU:
|
|
case __SGX_EWB:
|
|
case __SGX_ELDBC:
|
|
case __SGX_ELDUC:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_EREMOVE:
|
|
case __SGX_EBLOCK:
|
|
case __SGX_ETRACK:
|
|
case __SGX_ETRACKC:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_EDBGRD:
|
|
/*__asm__*/
|
|
break;
|
|
default:
|
|
/*__asm__*/
|
|
}
|
|
return __R;
|
|
}*/
|
|
/*extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_enclu_u32 (const unsigned int __L, size_t __D[])
|
|
{
|
|
enum __enclu_type
|
|
{
|
|
__SGX_EREPORT = 0x00,
|
|
__SGX_EGETKEY = 0x01,
|
|
__SGX_EENTER = 0x02,
|
|
__SGX_ERESUME = 0x03,
|
|
__SGX_EEXIT = 0x04,
|
|
__SGX_EACCEPT = 0x05,
|
|
__SGX_EMODPE = 0x06,
|
|
__SGX_EACCEPTCOPY = 0x07
|
|
};
|
|
enum __enclu_type __T = (enum __enclu_type) __L;
|
|
unsigned int __R = 0;
|
|
if (!__builtin_constant_p (__T))
|
|
/*__asm__*/
|
|
else switch (__T)
|
|
{
|
|
case __SGX_EREPORT:
|
|
case __SGX_EACCEPTCOPY:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_EGETKEY:
|
|
case __SGX_ERESUME:
|
|
case __SGX_EACCEPT:
|
|
case __SGX_EMODPE:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_EENTER:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_EEXIT:
|
|
/*__asm__*/
|
|
break;
|
|
default:
|
|
/*__asm__*/
|
|
}
|
|
return __R;
|
|
}*/
|
|
/*extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_enclv_u32 (const unsigned int __L, size_t __D[])
|
|
{
|
|
enum __enclv_type
|
|
{
|
|
__SGX_EDECVIRTCHILD = 0x00,
|
|
__SGX_EINCVIRTCHILD = 0x01,
|
|
__SGX_ESETCONTEXT = 0x02
|
|
};
|
|
unsigned int __R = 0;
|
|
if (!__builtin_constant_p (__L))
|
|
/*__asm__*/
|
|
else switch (__L)
|
|
{
|
|
case __SGX_EDECVIRTCHILD:
|
|
case __SGX_EINCVIRTCHILD:
|
|
/*__asm__*/
|
|
break;
|
|
case __SGX_ESETCONTEXT:
|
|
/*__asm__*/
|
|
break;
|
|
default:
|
|
/*__asm__*/
|
|
}
|
|
return __R;
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("pconfig")
|
|
/*extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_pconfig_u32 (const unsigned int __L, size_t __D[])
|
|
{
|
|
enum __pconfig_type
|
|
{
|
|
__PCONFIG_KEY_PROGRAM = 0x01,
|
|
};
|
|
unsigned int __R = 0;
|
|
if (!__builtin_constant_p (__L))
|
|
/*__asm__*/
|
|
else switch (__L)
|
|
{
|
|
case __PCONFIG_KEY_PROGRAM:
|
|
/*__asm__*/
|
|
break;
|
|
default:
|
|
/*__asm__*/
|
|
}
|
|
return __R;
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("waitpkg")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_umonitor (void *__A)
|
|
{
|
|
__builtin_ia32_umonitor (__A);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_umwait (unsigned int __A, unsigned long long __B)
|
|
{
|
|
return __builtin_ia32_umwait (__A, __B);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_tpause (unsigned int __A, unsigned long long __B)
|
|
{
|
|
return __builtin_ia32_tpause (__A, __B);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("cldemote")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_cldemote (void *__A)
|
|
{
|
|
__builtin_ia32_cldemote (__A);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("rdseed")
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdseed16_step (unsigned short *__p)
|
|
{
|
|
return __builtin_ia32_rdseed_hi_step (__p);
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdseed32_step (unsigned int *__p)
|
|
{
|
|
return __builtin_ia32_rdseed_si_step (__p);
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdseed64_step (unsigned long long *__p)
|
|
{
|
|
return __builtin_ia32_rdseed_di_step (__p);
|
|
}
|
|
#pragma GCC pop_options
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_prefetchw (void *__P)
|
|
{
|
|
__builtin_prefetch (__P, 1, 3 );
|
|
}*/
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_subborrow_u32 (unsigned char __CF, unsigned int __X,
|
|
unsigned int __Y, unsigned int *__P)
|
|
{
|
|
return __builtin_ia32_sbb_u32 (__CF, __X, __Y, __P);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_addcarry_u32 (unsigned char __CF, unsigned int __X,
|
|
unsigned int __Y, unsigned int *__P)
|
|
{
|
|
return __builtin_ia32_addcarryx_u32 (__CF, __X, __Y, __P);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_addcarryx_u32 (unsigned char __CF, unsigned int __X,
|
|
unsigned int __Y, unsigned int *__P)
|
|
{
|
|
return __builtin_ia32_addcarryx_u32 (__CF, __X, __Y, __P);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_subborrow_u64 (unsigned char __CF, unsigned long long __X,
|
|
unsigned long long __Y, unsigned long long *__P)
|
|
{
|
|
return __builtin_ia32_sbb_u64 (__CF, __X, __Y, __P);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_addcarry_u64 (unsigned char __CF, unsigned long long __X,
|
|
unsigned long long __Y, unsigned long long *__P)
|
|
{
|
|
return __builtin_ia32_addcarryx_u64 (__CF, __X, __Y, __P);
|
|
}
|
|
extern __inline unsigned char
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_addcarryx_u64 (unsigned char __CF, unsigned long long __X,
|
|
unsigned long long __Y, unsigned long long *__P)
|
|
{
|
|
return __builtin_ia32_addcarryx_u64 (__CF, __X, __Y, __P);
|
|
}
|
|
#pragma GCC push_options
|
|
#pragma GCC target("clwb")
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_clwb (void *__A)
|
|
{
|
|
__builtin_ia32_clwb (__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("clflushopt")
|
|
/*extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_clflushopt (void *__A)
|
|
{
|
|
__builtin_ia32_clflushopt (__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("wbnoinvd")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wbnoinvd (void)
|
|
{
|
|
__builtin_ia32_wbnoinvd ();
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("pku")
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdpkru_u32 (void)
|
|
{
|
|
return __builtin_ia32_rdpkru ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wrpkru (unsigned int __key)
|
|
{
|
|
__builtin_ia32_wrpkru (__key);
|
|
}
|
|
#pragma GCC pop_options
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_wbinvd (void)
|
|
{
|
|
__builtin_ia32_wbinvd ();
|
|
}
|
|
#pragma GCC push_options
|
|
#pragma GCC target("rdrnd")
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdrand16_step (unsigned short *__P)
|
|
{
|
|
return __builtin_ia32_rdrand16_step (__P);
|
|
}
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdrand32_step (unsigned int *__P)
|
|
{
|
|
return __builtin_ia32_rdrand32_step (__P);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("rdpid")
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdpid_u32 (void)
|
|
{
|
|
return __builtin_ia32_rdpid ();
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("fsgsbase")
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_readfsbase_u32 (void)
|
|
{
|
|
return __builtin_ia32_rdfsbase32 ();
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_readfsbase_u64 (void)
|
|
{
|
|
return __builtin_ia32_rdfsbase64 ();
|
|
}
|
|
extern __inline unsigned int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_readgsbase_u32 (void)
|
|
{
|
|
return __builtin_ia32_rdgsbase32 ();
|
|
}
|
|
extern __inline unsigned long long
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_readgsbase_u64 (void)
|
|
{
|
|
return __builtin_ia32_rdgsbase64 ();
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_writefsbase_u32 (unsigned int __B)
|
|
{
|
|
__builtin_ia32_wrfsbase32 (__B);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_writefsbase_u64 (unsigned long long __B)
|
|
{
|
|
__builtin_ia32_wrfsbase64 (__B);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_writegsbase_u32 (unsigned int __B)
|
|
{
|
|
__builtin_ia32_wrgsbase32 (__B);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_writegsbase_u64 (unsigned long long __B)
|
|
{
|
|
__builtin_ia32_wrgsbase64 (__B);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("rdrnd")
|
|
extern __inline int
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_rdrand64_step (unsigned long long *__P)
|
|
{
|
|
return __builtin_ia32_rdrand64_step (__P);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("ptwrite")
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ptwrite64 (unsigned long long __B)
|
|
{
|
|
__builtin_ia32_ptwrite64 (__B);
|
|
}
|
|
extern __inline void
|
|
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_ptwrite32 (unsigned __B)
|
|
{
|
|
__builtin_ia32_ptwrite32 (__B);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse,3dnow")
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_femms (void)
|
|
{
|
|
__builtin_ia32_femms();
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pavgusb (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pavgusb ((__v8qi)__A, (__v8qi)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pf2id (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pf2id ((__v2sf)__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfacc (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfacc ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfadd (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfadd ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfcmpeq (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfcmpeq ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfcmpge (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfcmpge ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfcmpgt (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfcmpgt ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfmax (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfmax ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfmin (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfmin ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfmul (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfmul ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfrcp (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pfrcp ((__v2sf)__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfrcpit1 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfrcpit1 ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfrcpit2 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfrcpit2 ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfrsqrt (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pfrsqrt ((__v2sf)__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfrsqit1 (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfrsqit1 ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfsub (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfsub ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfsubr (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfsubr ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pi2fd (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pi2fd ((__v2si)__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pmulhrw (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pmulhrw ((__v4hi)__A, (__v4hi)__B);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_prefetch (void *__P)
|
|
{
|
|
__builtin_prefetch (__P, 0, 3 );
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_from_float (float __A)
|
|
{
|
|
return __extension__ (__m64)(__v2sf){ __A, 0.0f };
|
|
}*/
|
|
/*extern __inline float __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_to_float (__m64 __A)
|
|
{
|
|
union { __v2sf v; float a[2]; } __tmp;
|
|
__tmp.v = (__v2sf)__A;
|
|
return __tmp.a[0];
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse,3dnowa")
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pf2iw (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pf2iw ((__v2sf)__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfnacc (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfnacc ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pfpnacc (__m64 __A, __m64 __B)
|
|
{
|
|
return (__m64)__builtin_ia32_pfpnacc ((__v2sf)__A, (__v2sf)__B);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pi2fw (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pi2fw ((__v2si)__A);
|
|
}*/
|
|
/*extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_m_pswapd (__m64 __A)
|
|
{
|
|
return (__m64)__builtin_ia32_pswapdsf ((__v2sf)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("sse4a")
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_sd (double * __P, __m128d __Y)
|
|
{
|
|
__builtin_ia32_movntsd (__P, (__v2df) __Y);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_stream_ss (float * __P, __m128 __Y)
|
|
{
|
|
__builtin_ia32_movntss (__P, (__v4sf) __Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_extract_si64 (__m128i __X, __m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_extrq ((__v2di) __X, (__v16qi) __Y);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_insert_si64 (__m128i __X,__m128i __Y)
|
|
{
|
|
return (__m128i) __builtin_ia32_insertq ((__v2di)__X, (__v2di)__Y);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("fma4")
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macc_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps ((__v4sf)__A, (__v4sf)__B, (__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macc_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd ((__v2df)__A, (__v2df)__B, (__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macc_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss ((__v4sf)__A, (__v4sf)__B, (__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macc_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd ((__v2df)__A, (__v2df)__B, (__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_msub_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps ((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_msub_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd ((__v2df)__A, (__v2df)__B, -(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_msub_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss ((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_msub_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd ((__v2df)__A, (__v2df)__B, -(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmacc_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps (-(__v4sf)__A, (__v4sf)__B, (__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmacc_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd (-(__v2df)__A, (__v2df)__B, (__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmacc_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss (-(__v4sf)__A, (__v4sf)__B, (__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmacc_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd (-(__v2df)__A, (__v2df)__B, (__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmsub_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddps (-(__v4sf)__A, (__v4sf)__B, -(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmsub_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddpd (-(__v2df)__A, (__v2df)__B, -(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmsub_ss (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddss (-(__v4sf)__A, (__v4sf)__B, -(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_nmsub_sd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsd (-(__v2df)__A, (__v2df)__B, -(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maddsub_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps ((__v4sf)__A, (__v4sf)__B, (__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maddsub_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd ((__v2df)__A, (__v2df)__B, (__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_msubadd_ps (__m128 __A, __m128 __B, __m128 __C)
|
|
{
|
|
return (__m128) __builtin_ia32_vfmaddsubps ((__v4sf)__A, (__v4sf)__B, -(__v4sf)__C);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_msubadd_pd (__m128d __A, __m128d __B, __m128d __C)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfmaddsubpd ((__v2df)__A, (__v2df)__B, -(__v2df)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_macc_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256 ((__v8sf)__A, (__v8sf)__B, (__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_macc_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256 ((__v4df)__A, (__v4df)__B, (__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_msub_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256 ((__v8sf)__A, (__v8sf)__B, -(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_msub_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256 ((__v4df)__A, (__v4df)__B, -(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_nmacc_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256 (-(__v8sf)__A, (__v8sf)__B, (__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_nmacc_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256 (-(__v4df)__A, (__v4df)__B, (__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_nmsub_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddps256 (-(__v8sf)__A, (__v8sf)__B, -(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_nmsub_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddpd256 (-(__v4df)__A, (__v4df)__B, -(__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maddsub_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256 ((__v8sf)__A, (__v8sf)__B, (__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_maddsub_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256 ((__v4df)__A, (__v4df)__B, (__v4df)__C);
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_msubadd_ps (__m256 __A, __m256 __B, __m256 __C)
|
|
{
|
|
return (__m256) __builtin_ia32_vfmaddsubps256 ((__v8sf)__A, (__v8sf)__B, -(__v8sf)__C);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_msubadd_pd (__m256d __A, __m256d __B, __m256d __C)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfmaddsubpd256 ((__v4df)__A, (__v4df)__B, -(__v4df)__C);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("xop")
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maccs_epi16(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacssww ((__v8hi)__A,(__v8hi)__B, (__v8hi)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macc_epi16(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacsww ((__v8hi)__A, (__v8hi)__B, (__v8hi)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maccsd_epi16(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacsswd ((__v8hi)__A, (__v8hi)__B, (__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maccd_epi16(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacswd ((__v8hi)__A, (__v8hi)__B, (__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maccs_epi32(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacssdd ((__v4si)__A, (__v4si)__B, (__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macc_epi32(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacsdd ((__v4si)__A, (__v4si)__B, (__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maccslo_epi32(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacssdql ((__v4si)__A, (__v4si)__B, (__v2di)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macclo_epi32(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacsdql ((__v4si)__A, (__v4si)__B, (__v2di)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maccshi_epi32(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacssdqh ((__v4si)__A, (__v4si)__B, (__v2di)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_macchi_epi32(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmacsdqh ((__v4si)__A, (__v4si)__B, (__v2di)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maddsd_epi16(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadcsswd ((__v8hi)__A,(__v8hi)__B,(__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_maddd_epi16(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpmadcswd ((__v8hi)__A,(__v8hi)__B,(__v4si)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddw_epi8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddbw ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddd_epi8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddbd ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddq_epi8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddbq ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddd_epi16(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddwd ((__v8hi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddq_epi16(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddwq ((__v8hi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddq_epi32(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphadddq ((__v4si)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddw_epu8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddubw ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddd_epu8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddubd ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddq_epu8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddubq ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddd_epu16(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphadduwd ((__v8hi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddq_epu16(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphadduwq ((__v8hi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_haddq_epu32(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphaddudq ((__v4si)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsubw_epi8(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphsubbw ((__v16qi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsubd_epi16(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphsubwd ((__v8hi)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_hsubq_epi32(__m128i __A)
|
|
{
|
|
return (__m128i) __builtin_ia32_vphsubdq ((__v4si)__A);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_cmov_si128(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcmov (__A, __B, __C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_perm_epi8(__m128i __A, __m128i __B, __m128i __C)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpperm ((__v16qi)__A, (__v16qi)__B, (__v16qi)__C);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rot_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vprotb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rot_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vprotw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rot_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vprotd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_rot_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vprotq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shl_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshlb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shl_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshlw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shl_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshld ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_shl_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshlq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshab ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshaw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshad ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_sha_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpshaq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltub ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomleub ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtub ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgeub ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomequb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomnequb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalseub ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epu8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrueub ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltuw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomleuw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtuw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgeuw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomequw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomnequw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalseuw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epu16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrueuw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltud ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomleud ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtud ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgeud ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomequd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomnequd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalseud ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epu32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrueud ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltuq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomleuq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtuq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgeuq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomequq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomnequq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalseuq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epu64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrueuq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomleb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgeb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomeqb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomneqb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalseb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epi8(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrueb ((__v16qi)__A, (__v16qi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomlew ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgew ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomeqw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomneqw ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalsew ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epi16(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtruew ((__v8hi)__A, (__v8hi)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomled ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomged ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomeqd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomneqd ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalsed ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epi32(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrued ((__v4si)__A, (__v4si)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comlt_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomltq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comle_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomleq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comgt_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgtq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comge_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomgeq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comeq_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomeqq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comneq_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomneqq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comfalse_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomfalseq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_comtrue_epi64(__m128i __A, __m128i __B)
|
|
{
|
|
return (__m128i) __builtin_ia32_vpcomtrueq ((__v2di)__A, (__v2di)__B);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_frcz_ps (__m128 __A)
|
|
{
|
|
return (__m128) __builtin_ia32_vfrczps ((__v4sf)__A);
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_frcz_pd (__m128d __A)
|
|
{
|
|
return (__m128d) __builtin_ia32_vfrczpd ((__v2df)__A);
|
|
}*/
|
|
/*extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_frcz_ss (__m128 __A, __m128 __B)
|
|
{
|
|
return (__m128) __builtin_ia32_movss ((__v4sf)__A,
|
|
(__v4sf)
|
|
__builtin_ia32_vfrczss ((__v4sf)__B));
|
|
}*/
|
|
/*extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_frcz_sd (__m128d __A, __m128d __B)
|
|
{
|
|
return (__m128d) __builtin_ia32_movsd ((__v2df)__A,
|
|
(__v2df)
|
|
__builtin_ia32_vfrczsd ((__v2df)__B));
|
|
}*/
|
|
/*extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_frcz_ps (__m256 __A)
|
|
{
|
|
return (__m256) __builtin_ia32_vfrczps256 ((__v8sf)__A);
|
|
}*/
|
|
/*extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm256_frcz_pd (__m256d __A)
|
|
{
|
|
return (__m256d) __builtin_ia32_vfrczpd256 ((__v4df)__A);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("lwp")
|
|
extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__llwpcb (void *__pcbAddress)
|
|
{
|
|
__builtin_ia32_llwpcb (__pcbAddress);
|
|
}
|
|
extern __inline void * __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__slwpcb (void)
|
|
{
|
|
return __builtin_ia32_slwpcb ();
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("tbm")
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcfill_u32 (unsigned int __X)
|
|
{
|
|
return __X & (__X + 1);
|
|
}
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blci_u32 (unsigned int __X)
|
|
{
|
|
return __X | ~(__X + 1);
|
|
}
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcic_u32 (unsigned int __X)
|
|
{
|
|
return ~__X & (__X + 1);
|
|
}
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcmsk_u32 (unsigned int __X)
|
|
{
|
|
return __X ^ (__X + 1);
|
|
}
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcs_u32 (unsigned int __X)
|
|
{
|
|
return __X | (__X + 1);
|
|
}
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsfill_u32 (unsigned int __X)
|
|
{
|
|
return __X | (__X - 1);
|
|
}*/
|
|
/*extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsic_u32 (unsigned int __X)
|
|
{
|
|
return ~__X | (__X - 1);
|
|
}*/
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__t1mskc_u32 (unsigned int __X)
|
|
{
|
|
return ~__X | (__X + 1);
|
|
}
|
|
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__tzmsk_u32 (unsigned int __X)
|
|
{
|
|
return ~__X & (__X - 1);
|
|
}
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcfill_u64 (unsigned long long __X)
|
|
{
|
|
return __X & (__X + 1);
|
|
}
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blci_u64 (unsigned long long __X)
|
|
{
|
|
return __X | ~(__X + 1);
|
|
}
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcic_u64 (unsigned long long __X)
|
|
{
|
|
return ~__X & (__X + 1);
|
|
}
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcmsk_u64 (unsigned long long __X)
|
|
{
|
|
return __X ^ (__X + 1);
|
|
}
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blcs_u64 (unsigned long long __X)
|
|
{
|
|
return __X | (__X + 1);
|
|
}
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsfill_u64 (unsigned long long __X)
|
|
{
|
|
return __X | (__X - 1);
|
|
}*/
|
|
/*extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__blsic_u64 (unsigned long long __X)
|
|
{
|
|
return ~__X | (__X - 1);
|
|
}*/
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__t1mskc_u64 (unsigned long long __X)
|
|
{
|
|
return ~__X | (__X + 1);
|
|
}
|
|
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
__tzmsk_u64 (unsigned long long __X)
|
|
{
|
|
return ~__X & (__X - 1);
|
|
}
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("mwaitx")
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_monitorx (void const * __P, unsigned int __E, unsigned int __H)
|
|
{
|
|
__builtin_ia32_monitorx (__P, __E, __H);
|
|
}*/
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_mwaitx (unsigned int __E, unsigned int __H, unsigned int __C)
|
|
{
|
|
__builtin_ia32_mwaitx (__E, __H, __C);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
#pragma GCC push_options
|
|
#pragma GCC target("clzero")
|
|
/*extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
|
_mm_clzero (void * __I)
|
|
{
|
|
__builtin_ia32_clzero (__I);
|
|
}*/
|
|
#pragma GCC pop_options
|
|
unsigned int __getcallerseflags(void);
|
|
DWORD __segmentlimit(DWORD Selector);
|
|
LONGLONG __mulh(LONGLONG Multiplier,LONGLONG Multiplicand);
|
|
ULONGLONG __umulh(ULONGLONG Multiplier,ULONGLONG Multiplicand);
|
|
DWORD64 __shiftleft128(DWORD64 LowPart,DWORD64 HighPart,BYTE Shift);
|
|
DWORD64 __shiftright128(DWORD64 LowPart,DWORD64 HighPart,BYTE Shift);
|
|
LONG64 _mul128(LONG64 Multiplier,LONG64 Multiplicand,LONG64 *HighProduct);
|
|
DWORD64 _umul128(DWORD64 Multiplier,DWORD64 Multiplicand,DWORD64 *HighProduct);
|
|
LONG64 MultiplyExtract128(LONG64 Multiplier,LONG64 Multiplicand,BYTE Shift);
|
|
DWORD64 UnsignedMultiplyExtract128(DWORD64 Multiplier,DWORD64 Multiplicand,BYTE Shift);
|
|
typedef struct _XMM_SAVE_AREA32 {
|
|
WORD ControlWord;
|
|
WORD StatusWord;
|
|
BYTE TagWord;
|
|
BYTE Reserved1;
|
|
WORD ErrorOpcode;
|
|
DWORD ErrorOffset;
|
|
WORD ErrorSelector;
|
|
WORD Reserved2;
|
|
DWORD DataOffset;
|
|
WORD DataSelector;
|
|
WORD Reserved3;
|
|
DWORD MxCsr;
|
|
DWORD MxCsr_Mask;
|
|
M128A FloatRegisters[8];
|
|
M128A XmmRegisters[16];
|
|
BYTE Reserved4[96];
|
|
} XMM_SAVE_AREA32,*PXMM_SAVE_AREA32;
|
|
typedef struct __attribute__ ((__aligned__ (16))) _CONTEXT {
|
|
DWORD64 P1Home;
|
|
DWORD64 P2Home;
|
|
DWORD64 P3Home;
|
|
DWORD64 P4Home;
|
|
DWORD64 P5Home;
|
|
DWORD64 P6Home;
|
|
DWORD ContextFlags;
|
|
DWORD MxCsr;
|
|
WORD SegCs;
|
|
WORD SegDs;
|
|
WORD SegEs;
|
|
WORD SegFs;
|
|
WORD SegGs;
|
|
WORD SegSs;
|
|
DWORD EFlags;
|
|
DWORD64 Dr0;
|
|
DWORD64 Dr1;
|
|
DWORD64 Dr2;
|
|
DWORD64 Dr3;
|
|
DWORD64 Dr6;
|
|
DWORD64 Dr7;
|
|
DWORD64 Rax;
|
|
DWORD64 Rcx;
|
|
DWORD64 Rdx;
|
|
DWORD64 Rbx;
|
|
DWORD64 Rsp;
|
|
DWORD64 Rbp;
|
|
DWORD64 Rsi;
|
|
DWORD64 Rdi;
|
|
DWORD64 R8;
|
|
DWORD64 R9;
|
|
DWORD64 R10;
|
|
DWORD64 R11;
|
|
DWORD64 R12;
|
|
DWORD64 R13;
|
|
DWORD64 R14;
|
|
DWORD64 R15;
|
|
DWORD64 Rip;
|
|
__extension__ union {
|
|
XMM_SAVE_AREA32 FltSave;
|
|
XMM_SAVE_AREA32 FloatSave;
|
|
__extension__ struct {
|
|
M128A Header[2];
|
|
M128A Legacy[8];
|
|
M128A Xmm0;
|
|
M128A Xmm1;
|
|
M128A Xmm2;
|
|
M128A Xmm3;
|
|
M128A Xmm4;
|
|
M128A Xmm5;
|
|
M128A Xmm6;
|
|
M128A Xmm7;
|
|
M128A Xmm8;
|
|
M128A Xmm9;
|
|
M128A Xmm10;
|
|
M128A Xmm11;
|
|
M128A Xmm12;
|
|
M128A Xmm13;
|
|
M128A Xmm14;
|
|
M128A Xmm15;
|
|
};
|
|
};
|
|
M128A VectorRegister[26];
|
|
DWORD64 VectorControl;
|
|
DWORD64 DebugControl;
|
|
DWORD64 LastBranchToRip;
|
|
DWORD64 LastBranchFromRip;
|
|
DWORD64 LastExceptionToRip;
|
|
DWORD64 LastExceptionFromRip;
|
|
} CONTEXT,*PCONTEXT;
|
|
typedef struct _RUNTIME_FUNCTION {
|
|
DWORD BeginAddress;
|
|
DWORD EndAddress;
|
|
DWORD UnwindData;
|
|
} RUNTIME_FUNCTION,*PRUNTIME_FUNCTION;
|
|
typedef PRUNTIME_FUNCTION (*PGET_RUNTIME_FUNCTION_CALLBACK)(DWORD64 ControlPc,PVOID Context);
|
|
typedef DWORD (*POUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK)(HANDLE Process,PVOID TableAddress,PDWORD Entries,PRUNTIME_FUNCTION *Functions);
|
|
typedef struct _LDT_ENTRY {
|
|
WORD LimitLow;
|
|
WORD BaseLow;
|
|
union {
|
|
struct {
|
|
BYTE BaseMid;
|
|
BYTE Flags1;
|
|
BYTE Flags2;
|
|
BYTE BaseHi;
|
|
} Bytes;
|
|
struct {
|
|
DWORD BaseMid : 8;
|
|
DWORD Type : 5;
|
|
DWORD Dpl : 2;
|
|
DWORD Pres : 1;
|
|
DWORD LimitHi : 4;
|
|
DWORD Sys : 1;
|
|
DWORD Reserved_0 : 1;
|
|
DWORD Default_Big : 1;
|
|
DWORD Granularity : 1;
|
|
DWORD BaseHi : 8;
|
|
} Bits;
|
|
} HighWord;
|
|
} LDT_ENTRY,*PLDT_ENTRY;
|
|
typedef struct _EXCEPTION_RECORD {
|
|
DWORD ExceptionCode;
|
|
DWORD ExceptionFlags;
|
|
struct _EXCEPTION_RECORD *ExceptionRecord;
|
|
PVOID ExceptionAddress;
|
|
DWORD NumberParameters;
|
|
ULONG_PTR ExceptionInformation[15];
|
|
} EXCEPTION_RECORD;
|
|
typedef EXCEPTION_RECORD *PEXCEPTION_RECORD;
|
|
typedef struct _EXCEPTION_RECORD32 {
|
|
DWORD ExceptionCode;
|
|
DWORD ExceptionFlags;
|
|
DWORD ExceptionRecord;
|
|
DWORD ExceptionAddress;
|
|
DWORD NumberParameters;
|
|
DWORD ExceptionInformation[15];
|
|
} EXCEPTION_RECORD32,*PEXCEPTION_RECORD32;
|
|
typedef struct _EXCEPTION_RECORD64 {
|
|
DWORD ExceptionCode;
|
|
DWORD ExceptionFlags;
|
|
DWORD64 ExceptionRecord;
|
|
DWORD64 ExceptionAddress;
|
|
DWORD NumberParameters;
|
|
DWORD __unusedAlignment;
|
|
DWORD64 ExceptionInformation[15];
|
|
} EXCEPTION_RECORD64,*PEXCEPTION_RECORD64;
|
|
typedef struct _EXCEPTION_POINTERS {
|
|
PEXCEPTION_RECORD ExceptionRecord;
|
|
PCONTEXT ContextRecord;
|
|
} EXCEPTION_POINTERS,*PEXCEPTION_POINTERS;
|
|
typedef struct _UNWIND_HISTORY_TABLE_ENTRY {
|
|
ULONG64 ImageBase;
|
|
PRUNTIME_FUNCTION FunctionEntry;
|
|
} UNWIND_HISTORY_TABLE_ENTRY, *PUNWIND_HISTORY_TABLE_ENTRY;
|
|
typedef struct _UNWIND_HISTORY_TABLE {
|
|
ULONG Count;
|
|
BYTE LocalHint;
|
|
BYTE GlobalHint;
|
|
BYTE Search;
|
|
BYTE Once;
|
|
ULONG64 LowAddress;
|
|
ULONG64 HighAddress;
|
|
UNWIND_HISTORY_TABLE_ENTRY Entry[12];
|
|
} UNWIND_HISTORY_TABLE, *PUNWIND_HISTORY_TABLE;
|
|
struct _DISPATCHER_CONTEXT;
|
|
typedef struct _DISPATCHER_CONTEXT DISPATCHER_CONTEXT;
|
|
typedef struct _DISPATCHER_CONTEXT *PDISPATCHER_CONTEXT;
|
|
struct _DISPATCHER_CONTEXT {
|
|
ULONG64 ControlPc;
|
|
ULONG64 ImageBase;
|
|
PRUNTIME_FUNCTION FunctionEntry;
|
|
ULONG64 EstablisherFrame;
|
|
ULONG64 TargetIp;
|
|
PCONTEXT ContextRecord;
|
|
PEXCEPTION_ROUTINE LanguageHandler;
|
|
PVOID HandlerData;
|
|
PUNWIND_HISTORY_TABLE HistoryTable;
|
|
ULONG ScopeIndex;
|
|
ULONG Fill0;
|
|
};
|
|
typedef struct _KNONVOLATILE_CONTEXT_POINTERS
|
|
{
|
|
PM128A FloatingContext[16];
|
|
PULONG64 IntegerContext[16];
|
|
} KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
|
|
typedef PVOID PACCESS_TOKEN;
|
|
typedef PVOID PSECURITY_DESCRIPTOR;
|
|
typedef PVOID PSID;
|
|
typedef PVOID PCLAIMS_BLOB;
|
|
typedef DWORD ACCESS_MASK;
|
|
typedef ACCESS_MASK *PACCESS_MASK;
|
|
typedef struct _GENERIC_MAPPING {
|
|
ACCESS_MASK GenericRead;
|
|
ACCESS_MASK GenericWrite;
|
|
ACCESS_MASK GenericExecute;
|
|
ACCESS_MASK GenericAll;
|
|
} GENERIC_MAPPING;
|
|
typedef GENERIC_MAPPING *PGENERIC_MAPPING;
|
|
#pragma pack(push,4)
|
|
typedef struct _LUID_AND_ATTRIBUTES {
|
|
LUID Luid;
|
|
DWORD Attributes;
|
|
} LUID_AND_ATTRIBUTES,*PLUID_AND_ATTRIBUTES;
|
|
typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[1];
|
|
typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY;
|
|
#pragma pack(pop)
|
|
typedef struct _SID_IDENTIFIER_AUTHORITY {
|
|
BYTE Value[6];
|
|
} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY;
|
|
typedef struct _SID {
|
|
BYTE Revision;
|
|
BYTE SubAuthorityCount;
|
|
SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
|
|
DWORD SubAuthority[1];
|
|
} SID,*PISID;
|
|
typedef enum _SID_NAME_USE {
|
|
SidTypeUser = 1,SidTypeGroup,SidTypeDomain,SidTypeAlias,SidTypeWellKnownGroup,SidTypeDeletedAccount,SidTypeInvalid,SidTypeUnknown,SidTypeComputer,SidTypeLabel,SidTypeLogonSession
|
|
} SID_NAME_USE,*PSID_NAME_USE;
|
|
typedef struct _SID_AND_ATTRIBUTES {
|
|
PSID Sid;
|
|
DWORD Attributes;
|
|
} SID_AND_ATTRIBUTES,*PSID_AND_ATTRIBUTES;
|
|
typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[1];
|
|
typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY;
|
|
typedef ULONG_PTR SID_HASH_ENTRY, *PSID_HASH_ENTRY;
|
|
typedef struct _SID_AND_ATTRIBUTES_HASH {
|
|
DWORD SidCount;
|
|
PSID_AND_ATTRIBUTES SidAttr;
|
|
SID_HASH_ENTRY Hash[32];
|
|
} SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH;
|
|
typedef enum {
|
|
WinNullSid = 0,WinWorldSid = 1,WinLocalSid = 2,WinCreatorOwnerSid = 3,
|
|
WinCreatorGroupSid = 4,WinCreatorOwnerServerSid = 5,
|
|
WinCreatorGroupServerSid = 6,WinNtAuthoritySid = 7,WinDialupSid = 8,
|
|
WinNetworkSid = 9,WinBatchSid = 10,WinInteractiveSid = 11,
|
|
WinServiceSid = 12,WinAnonymousSid = 13,WinProxySid = 14,
|
|
WinEnterpriseControllersSid = 15,WinSelfSid = 16,
|
|
WinAuthenticatedUserSid = 17,WinRestrictedCodeSid = 18,
|
|
WinTerminalServerSid = 19,WinRemoteLogonIdSid = 20,WinLogonIdsSid = 21,
|
|
WinLocalSystemSid = 22,WinLocalServiceSid = 23,WinNetworkServiceSid = 24,
|
|
WinBuiltinDomainSid = 25,WinBuiltinAdministratorsSid = 26,
|
|
WinBuiltinUsersSid = 27,WinBuiltinGuestsSid = 28,
|
|
WinBuiltinPowerUsersSid = 29,WinBuiltinAccountOperatorsSid = 30,
|
|
WinBuiltinSystemOperatorsSid = 31,WinBuiltinPrintOperatorsSid = 32,
|
|
WinBuiltinBackupOperatorsSid = 33,WinBuiltinReplicatorSid = 34,
|
|
WinBuiltinPreWindows2000CompatibleAccessSid = 35,
|
|
WinBuiltinRemoteDesktopUsersSid = 36,
|
|
WinBuiltinNetworkConfigurationOperatorsSid = 37,
|
|
WinAccountAdministratorSid = 38,WinAccountGuestSid = 39,
|
|
WinAccountKrbtgtSid = 40,WinAccountDomainAdminsSid = 41,
|
|
WinAccountDomainUsersSid = 42,WinAccountDomainGuestsSid = 43,
|
|
WinAccountComputersSid = 44,WinAccountControllersSid = 45,
|
|
WinAccountCertAdminsSid = 46,WinAccountSchemaAdminsSid = 47,
|
|
WinAccountEnterpriseAdminsSid = 48,WinAccountPolicyAdminsSid = 49,
|
|
WinAccountRasAndIasServersSid = 50,WinNTLMAuthenticationSid = 51,
|
|
WinDigestAuthenticationSid = 52,WinSChannelAuthenticationSid = 53,
|
|
WinThisOrganizationSid = 54,WinOtherOrganizationSid = 55,
|
|
WinBuiltinIncomingForestTrustBuildersSid = 56,
|
|
WinBuiltinPerfMonitoringUsersSid = 57,WinBuiltinPerfLoggingUsersSid = 58,
|
|
WinBuiltinAuthorizationAccessSid = 59,
|
|
WinBuiltinTerminalServerLicenseServersSid = 60,
|
|
WinBuiltinDCOMUsersSid = 61,WinBuiltinIUsersSid = 62,
|
|
WinIUserSid = 63, WinBuiltinCryptoOperatorsSid = 64,
|
|
WinUntrustedLabelSid = 65, WinLowLabelSid = 66, WinMediumLabelSid = 67,
|
|
WinHighLabelSid = 68, WinSystemLabelSid = 69, WinWriteRestrictedCodeSid = 70,
|
|
WinCreatorOwnerRightsSid = 71, WinCacheablePrincipalsGroupSid = 72,
|
|
WinNonCacheablePrincipalsGroupSid = 73, WinEnterpriseReadonlyControllersSid = 74,
|
|
WinAccountReadonlyControllersSid = 75, WinBuiltinEventLogReadersGroup = 76,
|
|
WinNewEnterpriseReadonlyControllersSid = 77, WinBuiltinCertSvcDComAccessGroup = 78,
|
|
WinMediumPlusLabelSid = 79, WinLocalLogonSid = 80, WinConsoleLogonSid = 81,
|
|
WinThisOrganizationCertificateSid = 82, WinApplicationPackageAuthoritySid = 83,
|
|
WinBuiltinAnyPackageSid = 84, WinCapabilityInternetClientSid = 85,
|
|
WinCapabilityInternetClientServerSid = 86,
|
|
WinCapabilityPrivateNetworkClientServerSid = 87,
|
|
WinCapabilityPicturesLibrarySid = 88, WinCapabilityVideosLibrarySid = 89,
|
|
WinCapabilityMusicLibrarySid = 90, WinCapabilityDocumentsLibrarySid = 91,
|
|
WinCapabilitySharedUserCertificatesSid = 92, WinCapabilityEnterpriseAuthenticationSid = 93,
|
|
WinCapabilityRemovableStorageSid = 94, WinBuiltinRDSRemoteAccessServersSid = 95,
|
|
WinBuiltinRDSEndpointServersSid = 96, WinBuiltinRDSManagementServersSid = 97,
|
|
WinUserModeDriversSid = 98, WinBuiltinHyperVAdminsSid = 99,
|
|
WinAccountCloneableControllersSid = 100,
|
|
WinBuiltinAccessControlAssistanceOperatorsSid = 101,
|
|
WinBuiltinRemoteManagementUsersSid = 102, WinAuthenticationAuthorityAssertedSid = 103,
|
|
WinAuthenticationServiceAssertedSid = 104,
|
|
WinLocalAccountSid = 105,
|
|
WinLocalAccountAndAdministratorSid = 106,
|
|
WinAccountProtectedUsersSid = 107,
|
|
WinCapabilityAppointmentsSid = 108,
|
|
WinCapabilityContactsSid = 109,
|
|
WinAccountDefaultSystemManagedSid = 110,
|
|
WinBuiltinDefaultSystemManagedGroupSid = 111,
|
|
WinBuiltinStorageReplicaAdminsSid = 112,
|
|
WinAccountKeyAdminsSid = 113,
|
|
WinAccountEnterpriseKeyAdminsSid = 114,
|
|
WinAuthenticationKeyTrustSid = 115,
|
|
WinAuthenticationKeyPropertyMFASid = 116,
|
|
WinAuthenticationKeyPropertyAttestationSid = 117
|
|
} WELL_KNOWN_SID_TYPE;
|
|
typedef struct _ACL {
|
|
BYTE AclRevision;
|
|
BYTE Sbz1;
|
|
WORD AclSize;
|
|
WORD AceCount;
|
|
WORD Sbz2;
|
|
} ACL;
|
|
typedef ACL *PACL;
|
|
typedef struct _ACE_HEADER {
|
|
BYTE AceType;
|
|
BYTE AceFlags;
|
|
WORD AceSize;
|
|
} ACE_HEADER;
|
|
typedef ACE_HEADER *PACE_HEADER;
|
|
typedef struct _ACCESS_ALLOWED_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} ACCESS_ALLOWED_ACE;
|
|
typedef ACCESS_ALLOWED_ACE *PACCESS_ALLOWED_ACE;
|
|
typedef struct _ACCESS_DENIED_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} ACCESS_DENIED_ACE;
|
|
typedef ACCESS_DENIED_ACE *PACCESS_DENIED_ACE;
|
|
typedef struct _SYSTEM_AUDIT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_AUDIT_ACE;
|
|
typedef SYSTEM_AUDIT_ACE *PSYSTEM_AUDIT_ACE;
|
|
typedef struct _SYSTEM_ALARM_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_ALARM_ACE;
|
|
typedef SYSTEM_ALARM_ACE *PSYSTEM_ALARM_ACE;
|
|
typedef struct _SYSTEM_RESOURCE_ATTRIBUTE_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_RESOURCE_ATTRIBUTE_ACE,*PSYSTEM_RESOURCE_ATTRIBUTE_ACE;
|
|
typedef struct _SYSTEM_SCOPED_POLICY_ID_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_SCOPED_POLICY_ID_ACE,*PSYSTEM_SCOPED_POLICY_ID_ACE;
|
|
typedef struct _SYSTEM_MANDATORY_LABEL_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_MANDATORY_LABEL_ACE, *PSYSTEM_MANDATORY_LABEL_ACE;
|
|
typedef struct _ACCESS_ALLOWED_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} ACCESS_ALLOWED_OBJECT_ACE,*PACCESS_ALLOWED_OBJECT_ACE;
|
|
typedef struct _ACCESS_DENIED_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} ACCESS_DENIED_OBJECT_ACE,*PACCESS_DENIED_OBJECT_ACE;
|
|
typedef struct _SYSTEM_AUDIT_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} SYSTEM_AUDIT_OBJECT_ACE,*PSYSTEM_AUDIT_OBJECT_ACE;
|
|
typedef struct _SYSTEM_ALARM_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} SYSTEM_ALARM_OBJECT_ACE,*PSYSTEM_ALARM_OBJECT_ACE;
|
|
typedef struct _ACCESS_ALLOWED_CALLBACK_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} ACCESS_ALLOWED_CALLBACK_ACE,*PACCESS_ALLOWED_CALLBACK_ACE;
|
|
typedef struct _ACCESS_DENIED_CALLBACK_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} ACCESS_DENIED_CALLBACK_ACE,*PACCESS_DENIED_CALLBACK_ACE;
|
|
typedef struct _SYSTEM_AUDIT_CALLBACK_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_AUDIT_CALLBACK_ACE,*PSYSTEM_AUDIT_CALLBACK_ACE;
|
|
typedef struct _SYSTEM_ALARM_CALLBACK_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD SidStart;
|
|
} SYSTEM_ALARM_CALLBACK_ACE,*PSYSTEM_ALARM_CALLBACK_ACE;
|
|
typedef struct _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} ACCESS_ALLOWED_CALLBACK_OBJECT_ACE,*PACCESS_ALLOWED_CALLBACK_OBJECT_ACE;
|
|
typedef struct _ACCESS_DENIED_CALLBACK_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} ACCESS_DENIED_CALLBACK_OBJECT_ACE,*PACCESS_DENIED_CALLBACK_OBJECT_ACE;
|
|
typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} SYSTEM_AUDIT_CALLBACK_OBJECT_ACE,*PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE;
|
|
typedef struct _SYSTEM_ALARM_CALLBACK_OBJECT_ACE {
|
|
ACE_HEADER Header;
|
|
ACCESS_MASK Mask;
|
|
DWORD Flags;
|
|
GUID ObjectType;
|
|
GUID InheritedObjectType;
|
|
DWORD SidStart;
|
|
} SYSTEM_ALARM_CALLBACK_OBJECT_ACE,*PSYSTEM_ALARM_CALLBACK_OBJECT_ACE;
|
|
typedef enum _ACL_INFORMATION_CLASS {
|
|
AclRevisionInformation = 1,AclSizeInformation
|
|
} ACL_INFORMATION_CLASS;
|
|
typedef struct _ACL_REVISION_INFORMATION {
|
|
DWORD AclRevision;
|
|
} ACL_REVISION_INFORMATION;
|
|
typedef ACL_REVISION_INFORMATION *PACL_REVISION_INFORMATION;
|
|
typedef struct _ACL_SIZE_INFORMATION {
|
|
DWORD AceCount;
|
|
DWORD AclBytesInUse;
|
|
DWORD AclBytesFree;
|
|
} ACL_SIZE_INFORMATION;
|
|
typedef ACL_SIZE_INFORMATION *PACL_SIZE_INFORMATION;
|
|
typedef WORD SECURITY_DESCRIPTOR_CONTROL,*PSECURITY_DESCRIPTOR_CONTROL;
|
|
typedef struct _SECURITY_DESCRIPTOR_RELATIVE {
|
|
BYTE Revision;
|
|
BYTE Sbz1;
|
|
SECURITY_DESCRIPTOR_CONTROL Control;
|
|
DWORD Owner;
|
|
DWORD Group;
|
|
DWORD Sacl;
|
|
DWORD Dacl;
|
|
} SECURITY_DESCRIPTOR_RELATIVE,*PISECURITY_DESCRIPTOR_RELATIVE;
|
|
typedef struct _SECURITY_DESCRIPTOR {
|
|
BYTE Revision;
|
|
BYTE Sbz1;
|
|
SECURITY_DESCRIPTOR_CONTROL Control;
|
|
PSID Owner;
|
|
PSID Group;
|
|
PACL Sacl;
|
|
PACL Dacl;
|
|
} SECURITY_DESCRIPTOR,*PISECURITY_DESCRIPTOR;
|
|
typedef struct _OBJECT_TYPE_LIST {
|
|
WORD Level;
|
|
WORD Sbz;
|
|
GUID *ObjectType;
|
|
} OBJECT_TYPE_LIST,*POBJECT_TYPE_LIST;
|
|
typedef enum _AUDIT_EVENT_TYPE {
|
|
AuditEventObjectAccess,AuditEventDirectoryServiceAccess
|
|
} AUDIT_EVENT_TYPE,*PAUDIT_EVENT_TYPE;
|
|
typedef struct _PRIVILEGE_SET {
|
|
DWORD PrivilegeCount;
|
|
DWORD Control;
|
|
LUID_AND_ATTRIBUTES Privilege[1];
|
|
} PRIVILEGE_SET,*PPRIVILEGE_SET;
|
|
typedef enum _ACCESS_REASON_TYPE {
|
|
AccessReasonNone = 0x00000000,
|
|
AccessReasonAllowedAce = 0x00010000,
|
|
AccessReasonDeniedAce = 0x00020000,
|
|
AccessReasonAllowedParentAce = 0x00030000,
|
|
AccessReasonDeniedParentAce = 0x00040000,
|
|
AccessReasonNotGrantedByCape = 0x00050000,
|
|
AccessReasonNotGrantedByParentCape = 0x00060000,
|
|
AccessReasonNotGrantedToAppContainer = 0x00070000,
|
|
AccessReasonMissingPrivilege = 0x00100000,
|
|
AccessReasonFromPrivilege = 0x00200000,
|
|
AccessReasonIntegrityLevel = 0x00300000,
|
|
AccessReasonOwnership = 0x00400000,
|
|
AccessReasonNullDacl = 0x00500000,
|
|
AccessReasonEmptyDacl = 0x00600000,
|
|
AccessReasonNoSD = 0x00700000,
|
|
AccessReasonNoGrant = 0x00800000
|
|
} ACCESS_REASON_TYPE;
|
|
typedef DWORD ACCESS_REASON;
|
|
typedef struct _ACCESS_REASONS {
|
|
ACCESS_REASON Data[32];
|
|
} ACCESS_REASONS,*PACCESS_REASONS;
|
|
typedef struct _SE_SECURITY_DESCRIPTOR {
|
|
DWORD Size;
|
|
DWORD Flags;
|
|
PSECURITY_DESCRIPTOR SecurityDescriptor;
|
|
} SE_SECURITY_DESCRIPTOR,*PSE_SECURITY_DESCRIPTOR;
|
|
typedef struct _SE_ACCESS_REQUEST {
|
|
DWORD Size;
|
|
PSE_SECURITY_DESCRIPTOR SeSecurityDescriptor;
|
|
ACCESS_MASK DesiredAccess;
|
|
ACCESS_MASK PreviouslyGrantedAccess;
|
|
PSID PrincipalSelfSid;
|
|
PGENERIC_MAPPING GenericMapping;
|
|
DWORD ObjectTypeListCount;
|
|
POBJECT_TYPE_LIST ObjectTypeList;
|
|
} SE_ACCESS_REQUEST,*PSE_ACCESS_REQUEST;
|
|
typedef struct _SE_ACCESS_REPLY {
|
|
DWORD Size;
|
|
DWORD ResultListCount;
|
|
PACCESS_MASK GrantedAccess;
|
|
PDWORD AccessStatus;
|
|
PACCESS_REASONS AccessReason;
|
|
PPRIVILEGE_SET *Privileges;
|
|
} SE_ACCESS_REPLY,*PSE_ACCESS_REPLY;
|
|
typedef enum _SECURITY_IMPERSONATION_LEVEL {
|
|
SecurityAnonymous,SecurityIdentification,SecurityImpersonation,SecurityDelegation
|
|
} SECURITY_IMPERSONATION_LEVEL,*PSECURITY_IMPERSONATION_LEVEL;
|
|
typedef enum _TOKEN_TYPE {
|
|
TokenPrimary = 1,TokenImpersonation
|
|
} TOKEN_TYPE;
|
|
typedef TOKEN_TYPE *PTOKEN_TYPE;
|
|
typedef enum _TOKEN_ELEVATION_TYPE {
|
|
TokenElevationTypeDefault = 1,
|
|
TokenElevationTypeFull,
|
|
TokenElevationTypeLimited
|
|
} TOKEN_ELEVATION_TYPE, *PTOKEN_ELEVATION_TYPE;
|
|
typedef enum _TOKEN_INFORMATION_CLASS {
|
|
TokenUser = 1,
|
|
TokenGroups,
|
|
TokenPrivileges,
|
|
TokenOwner,
|
|
TokenPrimaryGroup,
|
|
TokenDefaultDacl,
|
|
TokenSource,
|
|
TokenType,
|
|
TokenImpersonationLevel,
|
|
TokenStatistics,
|
|
TokenRestrictedSids,
|
|
TokenSessionId,
|
|
TokenGroupsAndPrivileges,
|
|
TokenSessionReference,
|
|
TokenSandBoxInert,
|
|
TokenAuditPolicy,
|
|
TokenOrigin,
|
|
TokenElevationType,
|
|
TokenLinkedToken,
|
|
TokenElevation,
|
|
TokenHasRestrictions,
|
|
TokenAccessInformation,
|
|
TokenVirtualizationAllowed,
|
|
TokenVirtualizationEnabled,
|
|
TokenIntegrityLevel,
|
|
TokenUIAccess,
|
|
TokenMandatoryPolicy,
|
|
TokenLogonSid,
|
|
TokenIsAppContainer,
|
|
TokenCapabilities,
|
|
TokenAppContainerSid,
|
|
TokenAppContainerNumber,
|
|
TokenUserClaimAttributes,
|
|
TokenDeviceClaimAttributes,
|
|
TokenRestrictedUserClaimAttributes,
|
|
TokenRestrictedDeviceClaimAttributes,
|
|
TokenDeviceGroups,
|
|
TokenRestrictedDeviceGroups,
|
|
TokenSecurityAttributes,
|
|
TokenIsRestricted,
|
|
MaxTokenInfoClass
|
|
} TOKEN_INFORMATION_CLASS,*PTOKEN_INFORMATION_CLASS;
|
|
typedef struct _TOKEN_USER {
|
|
SID_AND_ATTRIBUTES User;
|
|
} TOKEN_USER,*PTOKEN_USER;
|
|
typedef struct _TOKEN_GROUPS {
|
|
DWORD GroupCount;
|
|
SID_AND_ATTRIBUTES Groups[1];
|
|
} TOKEN_GROUPS,*PTOKEN_GROUPS;
|
|
typedef struct _TOKEN_PRIVILEGES {
|
|
DWORD PrivilegeCount;
|
|
LUID_AND_ATTRIBUTES Privileges[1];
|
|
} TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES;
|
|
typedef struct _TOKEN_OWNER {
|
|
PSID Owner;
|
|
} TOKEN_OWNER,*PTOKEN_OWNER;
|
|
typedef struct _TOKEN_PRIMARY_GROUP {
|
|
PSID PrimaryGroup;
|
|
} TOKEN_PRIMARY_GROUP,*PTOKEN_PRIMARY_GROUP;
|
|
typedef struct _TOKEN_DEFAULT_DACL {
|
|
PACL DefaultDacl;
|
|
} TOKEN_DEFAULT_DACL,*PTOKEN_DEFAULT_DACL;
|
|
typedef struct _TOKEN_USER_CLAIMS {
|
|
PCLAIMS_BLOB UserClaims;
|
|
} TOKEN_USER_CLAIMS,*PTOKEN_USER_CLAIMS;
|
|
typedef struct _TOKEN_DEVICE_CLAIMS {
|
|
PCLAIMS_BLOB DeviceClaims;
|
|
} TOKEN_DEVICE_CLAIMS,*PTOKEN_DEVICE_CLAIMS;
|
|
typedef struct _TOKEN_GROUPS_AND_PRIVILEGES {
|
|
DWORD SidCount;
|
|
DWORD SidLength;
|
|
PSID_AND_ATTRIBUTES Sids;
|
|
DWORD RestrictedSidCount;
|
|
DWORD RestrictedSidLength;
|
|
PSID_AND_ATTRIBUTES RestrictedSids;
|
|
DWORD PrivilegeCount;
|
|
DWORD PrivilegeLength;
|
|
PLUID_AND_ATTRIBUTES Privileges;
|
|
LUID AuthenticationId;
|
|
} TOKEN_GROUPS_AND_PRIVILEGES,*PTOKEN_GROUPS_AND_PRIVILEGES;
|
|
typedef struct _TOKEN_LINKED_TOKEN {
|
|
HANDLE LinkedToken;
|
|
} TOKEN_LINKED_TOKEN,*PTOKEN_LINKED_TOKEN;
|
|
typedef struct _TOKEN_ELEVATION {
|
|
DWORD TokenIsElevated;
|
|
} TOKEN_ELEVATION,*PTOKEN_ELEVATION;
|
|
typedef struct _TOKEN_MANDATORY_LABEL {
|
|
SID_AND_ATTRIBUTES Label;
|
|
} TOKEN_MANDATORY_LABEL,*PTOKEN_MANDATORY_LABEL;
|
|
typedef struct _TOKEN_MANDATORY_POLICY {
|
|
DWORD Policy;
|
|
} TOKEN_MANDATORY_POLICY,*PTOKEN_MANDATORY_POLICY;
|
|
typedef struct _TOKEN_ACCESS_INFORMATION {
|
|
PSID_AND_ATTRIBUTES_HASH SidHash;
|
|
PSID_AND_ATTRIBUTES_HASH RestrictedSidHash;
|
|
PTOKEN_PRIVILEGES Privileges;
|
|
LUID AuthenticationId;
|
|
TOKEN_TYPE TokenType;
|
|
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
|
TOKEN_MANDATORY_POLICY MandatoryPolicy;
|
|
DWORD Flags;
|
|
DWORD AppContainerNumber;
|
|
PSID PackageSid;
|
|
PSID_AND_ATTRIBUTES_HASH CapabilitiesHash;
|
|
} TOKEN_ACCESS_INFORMATION,*PTOKEN_ACCESS_INFORMATION;
|
|
typedef struct _TOKEN_AUDIT_POLICY {
|
|
UCHAR PerUserPolicy[(((56)) >> 1) + 1];
|
|
} TOKEN_AUDIT_POLICY, *PTOKEN_AUDIT_POLICY;
|
|
typedef struct _TOKEN_SOURCE {
|
|
CHAR SourceName[8];
|
|
LUID SourceIdentifier;
|
|
} TOKEN_SOURCE,*PTOKEN_SOURCE;
|
|
typedef struct _TOKEN_STATISTICS {
|
|
LUID TokenId;
|
|
LUID AuthenticationId;
|
|
LARGE_INTEGER ExpirationTime;
|
|
TOKEN_TYPE TokenType;
|
|
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
|
DWORD DynamicCharged;
|
|
DWORD DynamicAvailable;
|
|
DWORD GroupCount;
|
|
DWORD PrivilegeCount;
|
|
LUID ModifiedId;
|
|
} TOKEN_STATISTICS,*PTOKEN_STATISTICS;
|
|
typedef struct _TOKEN_CONTROL {
|
|
LUID TokenId;
|
|
LUID AuthenticationId;
|
|
LUID ModifiedId;
|
|
TOKEN_SOURCE TokenSource;
|
|
} TOKEN_CONTROL,*PTOKEN_CONTROL;
|
|
typedef struct _TOKEN_ORIGIN {
|
|
LUID OriginatingLogonSession;
|
|
} TOKEN_ORIGIN,*PTOKEN_ORIGIN;
|
|
typedef enum _MANDATORY_LEVEL {
|
|
MandatoryLevelUntrusted = 0,
|
|
MandatoryLevelLow,
|
|
MandatoryLevelMedium,
|
|
MandatoryLevelHigh,
|
|
MandatoryLevelSystem,
|
|
MandatoryLevelSecureProcess,
|
|
MandatoryLevelCount
|
|
} MANDATORY_LEVEL,*PMANDATORY_LEVEL;
|
|
typedef struct _TOKEN_APPCONTAINER_INFORMATION {
|
|
PSID TokenAppContainer;
|
|
} TOKEN_APPCONTAINER_INFORMATION,*PTOKEN_APPCONTAINER_INFORMATION;
|
|
typedef struct _CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE {
|
|
DWORD64 Version;
|
|
PWSTR Name;
|
|
} CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE,*PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE;
|
|
typedef struct _CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE {
|
|
PVOID pValue;
|
|
DWORD ValueLength;
|
|
} CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE, *PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE;
|
|
typedef struct _CLAIM_SECURITY_ATTRIBUTE_V1 {
|
|
PWSTR Name;
|
|
WORD ValueType;
|
|
WORD Reserved;
|
|
DWORD Flags;
|
|
DWORD ValueCount;
|
|
union {
|
|
PLONG64 pInt64;
|
|
PDWORD64 pUint64;
|
|
PWSTR *ppString;
|
|
PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE pFqbn;
|
|
PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE pOctetString;
|
|
} Values;
|
|
} CLAIM_SECURITY_ATTRIBUTE_V1,*PCLAIM_SECURITY_ATTRIBUTE_V1;
|
|
typedef struct _CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 {
|
|
DWORD Name;
|
|
WORD ValueType;
|
|
WORD Reserved;
|
|
DWORD Flags;
|
|
DWORD ValueCount;
|
|
union {
|
|
DWORD pInt64[1];
|
|
DWORD pUint64[1];
|
|
DWORD ppString[1];
|
|
DWORD pFqbn[1];
|
|
DWORD pOctetString[1];
|
|
} Values;
|
|
} CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1,*PCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1;
|
|
typedef struct _CLAIM_SECURITY_ATTRIBUTES_INFORMATION {
|
|
WORD Version;
|
|
WORD Reserved;
|
|
DWORD AttributeCount;
|
|
union {
|
|
PCLAIM_SECURITY_ATTRIBUTE_V1 pAttributeV1;
|
|
} Attribute;
|
|
} CLAIM_SECURITY_ATTRIBUTES_INFORMATION,*PCLAIM_SECURITY_ATTRIBUTES_INFORMATION;
|
|
typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,*PSECURITY_CONTEXT_TRACKING_MODE;
|
|
typedef struct _SECURITY_QUALITY_OF_SERVICE {
|
|
DWORD Length;
|
|
SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
|
|
SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode;
|
|
BOOLEAN EffectiveOnly;
|
|
} SECURITY_QUALITY_OF_SERVICE,*PSECURITY_QUALITY_OF_SERVICE;
|
|
typedef struct _SE_IMPERSONATION_STATE {
|
|
PACCESS_TOKEN Token;
|
|
BOOLEAN CopyOnOpen;
|
|
BOOLEAN EffectiveOnly;
|
|
SECURITY_IMPERSONATION_LEVEL Level;
|
|
} SE_IMPERSONATION_STATE,*PSE_IMPERSONATION_STATE;
|
|
typedef DWORD SECURITY_INFORMATION,*PSECURITY_INFORMATION;
|
|
typedef enum _SE_LEARNING_MODE_DATA_TYPE {
|
|
SeLearningModeInvalidType = 0,
|
|
SeLearningModeSettings,
|
|
SeLearningModeMax
|
|
} SE_LEARNING_MODE_DATA_TYPE;
|
|
typedef struct _SECURITY_CAPABILITIES {
|
|
PSID AppContainerSid;
|
|
PSID_AND_ATTRIBUTES Capabilities;
|
|
DWORD CapabilityCount;
|
|
DWORD Reserved;
|
|
} SECURITY_CAPABILITIES,*PSECURITY_CAPABILITIES,*LPSECURITY_CAPABILITIES;
|
|
typedef struct _JOB_SET_ARRAY {
|
|
HANDLE JobHandle;
|
|
DWORD MemberLevel;
|
|
DWORD Flags;
|
|
} JOB_SET_ARRAY,*PJOB_SET_ARRAY;
|
|
typedef struct _EXCEPTION_REGISTRATION_RECORD {
|
|
__extension__ union {
|
|
struct _EXCEPTION_REGISTRATION_RECORD *Next;
|
|
struct _EXCEPTION_REGISTRATION_RECORD *prev;
|
|
};
|
|
__extension__ union {
|
|
PEXCEPTION_ROUTINE Handler;
|
|
PEXCEPTION_ROUTINE handler;
|
|
};
|
|
} EXCEPTION_REGISTRATION_RECORD;
|
|
typedef EXCEPTION_REGISTRATION_RECORD *PEXCEPTION_REGISTRATION_RECORD;
|
|
typedef EXCEPTION_REGISTRATION_RECORD EXCEPTION_REGISTRATION;
|
|
typedef PEXCEPTION_REGISTRATION_RECORD PEXCEPTION_REGISTRATION;
|
|
__extension__ typedef struct _NT_TIB {
|
|
struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
|
|
PVOID StackBase;
|
|
PVOID StackLimit;
|
|
PVOID SubSystemTib;
|
|
__extension__ union {
|
|
PVOID FiberData;
|
|
DWORD Version;
|
|
};
|
|
PVOID ArbitraryUserPointer;
|
|
struct _NT_TIB *Self;
|
|
} NT_TIB;
|
|
typedef NT_TIB *PNT_TIB;
|
|
__extension__ typedef struct _NT_TIB32 {
|
|
DWORD ExceptionList;
|
|
DWORD StackBase;
|
|
DWORD StackLimit;
|
|
DWORD SubSystemTib;
|
|
__extension__ union {
|
|
DWORD FiberData;
|
|
DWORD Version;
|
|
};
|
|
DWORD ArbitraryUserPointer;
|
|
DWORD Self;
|
|
} NT_TIB32,*PNT_TIB32;
|
|
__extension__ typedef struct _NT_TIB64 {
|
|
DWORD64 ExceptionList;
|
|
DWORD64 StackBase;
|
|
DWORD64 StackLimit;
|
|
DWORD64 SubSystemTib;
|
|
__extension__ union {
|
|
DWORD64 FiberData;
|
|
DWORD Version;
|
|
};
|
|
DWORD64 ArbitraryUserPointer;
|
|
DWORD64 Self;
|
|
} NT_TIB64,*PNT_TIB64;
|
|
typedef struct _UMS_CREATE_THREAD_ATTRIBUTES {
|
|
DWORD UmsVersion;
|
|
PVOID UmsContext;
|
|
PVOID UmsCompletionList;
|
|
} UMS_CREATE_THREAD_ATTRIBUTES,*PUMS_CREATE_THREAD_ATTRIBUTES;
|
|
typedef struct _QUOTA_LIMITS {
|
|
SIZE_T PagedPoolLimit;
|
|
SIZE_T NonPagedPoolLimit;
|
|
SIZE_T MinimumWorkingSetSize;
|
|
SIZE_T MaximumWorkingSetSize;
|
|
SIZE_T PagefileLimit;
|
|
LARGE_INTEGER TimeLimit;
|
|
} QUOTA_LIMITS,*PQUOTA_LIMITS;
|
|
typedef union _RATE_QUOTA_LIMIT {
|
|
DWORD RateData;
|
|
__extension__ struct {
|
|
DWORD RatePercent : 7;
|
|
DWORD Reserved0 : 25;
|
|
} ;
|
|
} RATE_QUOTA_LIMIT, *PRATE_QUOTA_LIMIT;
|
|
typedef struct _QUOTA_LIMITS_EX {
|
|
SIZE_T PagedPoolLimit;
|
|
SIZE_T NonPagedPoolLimit;
|
|
SIZE_T MinimumWorkingSetSize;
|
|
SIZE_T MaximumWorkingSetSize;
|
|
SIZE_T PagefileLimit;
|
|
LARGE_INTEGER TimeLimit;
|
|
SIZE_T WorkingSetLimit;
|
|
SIZE_T Reserved2;
|
|
SIZE_T Reserved3;
|
|
SIZE_T Reserved4;
|
|
DWORD Flags;
|
|
RATE_QUOTA_LIMIT CpuRateLimit;
|
|
} QUOTA_LIMITS_EX,*PQUOTA_LIMITS_EX;
|
|
typedef struct _IO_COUNTERS {
|
|
ULONGLONG ReadOperationCount;
|
|
ULONGLONG WriteOperationCount;
|
|
ULONGLONG OtherOperationCount;
|
|
ULONGLONG ReadTransferCount;
|
|
ULONGLONG WriteTransferCount;
|
|
ULONGLONG OtherTransferCount;
|
|
} IO_COUNTERS;
|
|
typedef IO_COUNTERS *PIO_COUNTERS;
|
|
typedef enum _HARDWARE_COUNTER_TYPE {
|
|
PMCCounter,
|
|
MaxHardwareCounterType
|
|
} HARDWARE_COUNTER_TYPE, *PHARDWARE_COUNTER_TYPE;
|
|
typedef enum _PROCESS_MITIGATION_POLICY {
|
|
ProcessDEPPolicy,
|
|
ProcessASLRPolicy,
|
|
ProcessDynamicCodePolicy,
|
|
ProcessStrictHandleCheckPolicy,
|
|
ProcessSystemCallDisablePolicy,
|
|
ProcessMitigationOptionsMask,
|
|
ProcessExtensionPointDisablePolicy,
|
|
ProcessControlFlowGuardPolicy,
|
|
ProcessSignaturePolicy,
|
|
ProcessFontDisablePolicy,
|
|
ProcessImageLoadPolicy,
|
|
MaxProcessMitigationPolicy
|
|
} PROCESS_MITIGATION_POLICY,*PPROCESS_MITIGATION_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_ASLR_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD EnableBottomUpRandomization : 1;
|
|
DWORD EnableForceRelocateImages : 1;
|
|
DWORD EnableHighEntropy : 1;
|
|
DWORD DisallowStrippedImages : 1;
|
|
DWORD ReservedFlags : 28;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_ASLR_POLICY,*PPROCESS_MITIGATION_ASLR_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_DEP_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD Enable : 1;
|
|
DWORD DisableAtlThunkEmulation : 1;
|
|
DWORD ReservedFlags : 30;
|
|
};
|
|
};
|
|
BOOLEAN Permanent;
|
|
} PROCESS_MITIGATION_DEP_POLICY,*PPROCESS_MITIGATION_DEP_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD RaiseExceptionOnInvalidHandleReference : 1;
|
|
DWORD HandleExceptionsPermanentlyEnabled : 1;
|
|
DWORD ReservedFlags : 30;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY,*PPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD DisallowWin32kSystemCalls : 1;
|
|
DWORD ReservedFlags : 31;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY,*PPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD DisableExtensionPoints : 1;
|
|
DWORD ReservedFlags : 31;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY,*PPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD EnableControlFlowGuard :1;
|
|
DWORD EnableExportSuppression :1;
|
|
DWORD StrictMode :1;
|
|
DWORD ReservedFlags :29;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY, *PPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD MicrosoftSignedOnly :1;
|
|
DWORD StoreSignedOnly :1;
|
|
DWORD MitigationOptIn :1;
|
|
DWORD ReservedFlags :29;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY, *PPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_DYNAMIC_CODE_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD ProhibitDynamicCode :1;
|
|
DWORD AllowThreadOptOut :1;
|
|
DWORD AllowRemoteDowngrade :1;
|
|
DWORD ReservedFlags :30;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_DYNAMIC_CODE_POLICY, *PPROCESS_MITIGATION_DYNAMIC_CODE_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_FONT_DISABLE_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD DisableNonSystemFonts :1;
|
|
DWORD AuditNonSystemFontLoading :1;
|
|
DWORD ReservedFlags :30;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_FONT_DISABLE_POLICY, *PPROCESS_MITIGATION_FONT_DISABLE_POLICY;
|
|
typedef struct _PROCESS_MITIGATION_IMAGE_LOAD_POLICY {
|
|
__extension__ union {
|
|
DWORD Flags;
|
|
__extension__ struct {
|
|
DWORD NoRemoteImages :1;
|
|
DWORD NoLowMandatoryLabelImages :1;
|
|
DWORD PreferSystem32Images :1;
|
|
DWORD ReservedFlags :29;
|
|
};
|
|
};
|
|
} PROCESS_MITIGATION_IMAGE_LOAD_POLICY, *PPROCESS_MITIGATION_IMAGE_LOAD_POLICY;
|
|
typedef struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
|
|
LARGE_INTEGER TotalUserTime;
|
|
LARGE_INTEGER TotalKernelTime;
|
|
LARGE_INTEGER ThisPeriodTotalUserTime;
|
|
LARGE_INTEGER ThisPeriodTotalKernelTime;
|
|
DWORD TotalPageFaultCount;
|
|
DWORD TotalProcesses;
|
|
DWORD ActiveProcesses;
|
|
DWORD TotalTerminatedProcesses;
|
|
} JOBOBJECT_BASIC_ACCOUNTING_INFORMATION,*PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION;
|
|
typedef struct _JOBOBJECT_BASIC_LIMIT_INFORMATION {
|
|
LARGE_INTEGER PerProcessUserTimeLimit;
|
|
LARGE_INTEGER PerJobUserTimeLimit;
|
|
DWORD LimitFlags;
|
|
SIZE_T MinimumWorkingSetSize;
|
|
SIZE_T MaximumWorkingSetSize;
|
|
DWORD ActiveProcessLimit;
|
|
ULONG_PTR Affinity;
|
|
DWORD PriorityClass;
|
|
DWORD SchedulingClass;
|
|
} JOBOBJECT_BASIC_LIMIT_INFORMATION,*PJOBOBJECT_BASIC_LIMIT_INFORMATION;
|
|
typedef struct _JOBOBJECT_EXTENDED_LIMIT_INFORMATION {
|
|
JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
|
|
IO_COUNTERS IoInfo;
|
|
SIZE_T ProcessMemoryLimit;
|
|
SIZE_T JobMemoryLimit;
|
|
SIZE_T PeakProcessMemoryUsed;
|
|
SIZE_T PeakJobMemoryUsed;
|
|
} JOBOBJECT_EXTENDED_LIMIT_INFORMATION,*PJOBOBJECT_EXTENDED_LIMIT_INFORMATION;
|
|
typedef struct _JOBOBJECT_BASIC_PROCESS_ID_LIST {
|
|
DWORD NumberOfAssignedProcesses;
|
|
DWORD NumberOfProcessIdsInList;
|
|
ULONG_PTR ProcessIdList[1];
|
|
} JOBOBJECT_BASIC_PROCESS_ID_LIST,*PJOBOBJECT_BASIC_PROCESS_ID_LIST;
|
|
typedef struct _JOBOBJECT_BASIC_UI_RESTRICTIONS {
|
|
DWORD UIRestrictionsClass;
|
|
} JOBOBJECT_BASIC_UI_RESTRICTIONS,*PJOBOBJECT_BASIC_UI_RESTRICTIONS;
|
|
typedef struct _JOBOBJECT_SECURITY_LIMIT_INFORMATION {
|
|
DWORD SecurityLimitFlags;
|
|
HANDLE JobToken;
|
|
PTOKEN_GROUPS SidsToDisable;
|
|
PTOKEN_PRIVILEGES PrivilegesToDelete;
|
|
PTOKEN_GROUPS RestrictedSids;
|
|
} JOBOBJECT_SECURITY_LIMIT_INFORMATION,*PJOBOBJECT_SECURITY_LIMIT_INFORMATION;
|
|
typedef struct _JOBOBJECT_END_OF_JOB_TIME_INFORMATION {
|
|
DWORD EndOfJobTimeAction;
|
|
} JOBOBJECT_END_OF_JOB_TIME_INFORMATION,*PJOBOBJECT_END_OF_JOB_TIME_INFORMATION;
|
|
typedef struct _JOBOBJECT_ASSOCIATE_COMPLETION_PORT {
|
|
PVOID CompletionKey;
|
|
HANDLE CompletionPort;
|
|
} JOBOBJECT_ASSOCIATE_COMPLETION_PORT,*PJOBOBJECT_ASSOCIATE_COMPLETION_PORT;
|
|
typedef struct _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION {
|
|
JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo;
|
|
IO_COUNTERS IoInfo;
|
|
} JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION,*PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION;
|
|
typedef struct _JOBOBJECT_JOBSET_INFORMATION {
|
|
DWORD MemberLevel;
|
|
} JOBOBJECT_JOBSET_INFORMATION,*PJOBOBJECT_JOBSET_INFORMATION;
|
|
typedef enum _JOBOBJECT_RATE_CONTROL_TOLERANCE {
|
|
ToleranceLow = 1,
|
|
ToleranceMedium,
|
|
ToleranceHigh
|
|
} JOBOBJECT_RATE_CONTROL_TOLERANCE;
|
|
typedef enum _JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL {
|
|
ToleranceIntervalShort = 1,
|
|
ToleranceIntervalMedium,
|
|
ToleranceIntervalLong
|
|
} JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL;
|
|
typedef struct _JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION {
|
|
DWORD64 IoReadBytesLimit;
|
|
DWORD64 IoWriteBytesLimit;
|
|
LARGE_INTEGER PerJobUserTimeLimit;
|
|
DWORD64 JobMemoryLimit;
|
|
JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
|
|
JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceInterval;
|
|
DWORD LimitFlags;
|
|
} JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION,*PJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION;
|
|
typedef struct _JOBOBJECT_LIMIT_VIOLATION_INFORMATION {
|
|
DWORD LimitFlags;
|
|
DWORD ViolationLimitFlags;
|
|
DWORD64 IoReadBytes;
|
|
DWORD64 IoReadBytesLimit;
|
|
DWORD64 IoWriteBytes;
|
|
DWORD64 IoWriteBytesLimit;
|
|
LARGE_INTEGER PerJobUserTime;
|
|
LARGE_INTEGER PerJobUserTimeLimit;
|
|
DWORD64 JobMemory;
|
|
DWORD64 JobMemoryLimit;
|
|
JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
|
|
JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceLimit;
|
|
} JOBOBJECT_LIMIT_VIOLATION_INFORMATION,*PJOBOBJECT_LIMIT_VIOLATION_INFORMATION;
|
|
typedef struct _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION {
|
|
DWORD ControlFlags;
|
|
__extension__ union {
|
|
DWORD CpuRate;
|
|
DWORD Weight;
|
|
};
|
|
} JOBOBJECT_CPU_RATE_CONTROL_INFORMATION,*PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION;
|
|
typedef enum _JOBOBJECTINFOCLASS {
|
|
JobObjectBasicAccountingInformation = 1, JobObjectBasicLimitInformation,
|
|
JobObjectBasicProcessIdList, JobObjectBasicUIRestrictions,
|
|
JobObjectSecurityLimitInformation, JobObjectEndOfJobTimeInformation,
|
|
JobObjectAssociateCompletionPortInformation, JobObjectBasicAndIoAccountingInformation,
|
|
JobObjectExtendedLimitInformation, JobObjectJobSetInformation,
|
|
JobObjectGroupInformation,
|
|
JobObjectNotificationLimitInformation,
|
|
JobObjectLimitViolationInformation,
|
|
JobObjectGroupInformationEx,
|
|
JobObjectCpuRateControlInformation,
|
|
JobObjectCompletionFilter,
|
|
JobObjectCompletionCounter,
|
|
JobObjectReserved1Information = 18,
|
|
JobObjectReserved2Information,
|
|
JobObjectReserved3Information,
|
|
JobObjectReserved4Information,
|
|
JobObjectReserved5Information,
|
|
JobObjectReserved6Information,
|
|
JobObjectReserved7Information,
|
|
JobObjectReserved8Information,
|
|
MaxJobObjectInfoClass
|
|
} JOBOBJECTINFOCLASS;
|
|
typedef enum _FIRMWARE_TYPE {
|
|
FirmwareTypeUnknown,
|
|
FirmwareTypeBios,
|
|
FirmwareTypeUefi,
|
|
FirmwareTypeMax
|
|
} FIRMWARE_TYPE,*PFIRMWARE_TYPE;
|
|
typedef enum _LOGICAL_PROCESSOR_RELATIONSHIP {
|
|
RelationProcessorCore,RelationNumaNode,RelationCache,
|
|
RelationProcessorPackage,RelationGroup,RelationAll=0xffff
|
|
} LOGICAL_PROCESSOR_RELATIONSHIP;
|
|
typedef enum _PROCESSOR_CACHE_TYPE {
|
|
CacheUnified,CacheInstruction,CacheData,CacheTrace
|
|
} PROCESSOR_CACHE_TYPE;
|
|
typedef struct _CACHE_DESCRIPTOR {
|
|
BYTE Level;
|
|
BYTE Associativity;
|
|
WORD LineSize;
|
|
DWORD Size;
|
|
PROCESSOR_CACHE_TYPE Type;
|
|
} CACHE_DESCRIPTOR,*PCACHE_DESCRIPTOR;
|
|
typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
|
|
ULONG_PTR ProcessorMask;
|
|
LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
|
|
__extension__ union {
|
|
struct {
|
|
BYTE Flags;
|
|
} ProcessorCore;
|
|
struct {
|
|
DWORD NodeNumber;
|
|
} NumaNode;
|
|
CACHE_DESCRIPTOR Cache;
|
|
ULONGLONG Reserved[2];
|
|
} ;
|
|
} SYSTEM_LOGICAL_PROCESSOR_INFORMATION,*PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;
|
|
typedef struct _PROCESSOR_RELATIONSHIP {
|
|
BYTE Flags;
|
|
BYTE Reserved[21];
|
|
WORD GroupCount;
|
|
GROUP_AFFINITY GroupMask[1];
|
|
} PROCESSOR_RELATIONSHIP,*PPROCESSOR_RELATIONSHIP;
|
|
typedef struct _NUMA_NODE_RELATIONSHIP {
|
|
DWORD NodeNumber;
|
|
BYTE Reserved[20];
|
|
GROUP_AFFINITY GroupMask;
|
|
} NUMA_NODE_RELATIONSHIP,*PNUMA_NODE_RELATIONSHIP;
|
|
typedef struct _CACHE_RELATIONSHIP {
|
|
BYTE Level;
|
|
BYTE Associativity;
|
|
WORD LineSize;
|
|
DWORD CacheSize;
|
|
PROCESSOR_CACHE_TYPE Type;
|
|
BYTE Reserved[20];
|
|
GROUP_AFFINITY GroupMask;
|
|
} CACHE_RELATIONSHIP,*PCACHE_RELATIONSHIP;
|
|
typedef struct _PROCESSOR_GROUP_INFO {
|
|
BYTE MaximumProcessorCount;
|
|
BYTE ActiveProcessorCount;
|
|
BYTE Reserved[38];
|
|
KAFFINITY ActiveProcessorMask;
|
|
} PROCESSOR_GROUP_INFO,*PPROCESSOR_GROUP_INFO;
|
|
typedef struct _GROUP_RELATIONSHIP {
|
|
WORD MaximumGroupCount;
|
|
WORD ActiveGroupCount;
|
|
BYTE Reserved[20];
|
|
PROCESSOR_GROUP_INFO GroupInfo[1];
|
|
} GROUP_RELATIONSHIP,*PGROUP_RELATIONSHIP;
|
|
struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX {
|
|
LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
|
|
DWORD Size;
|
|
__extension__ union {
|
|
PROCESSOR_RELATIONSHIP Processor;
|
|
NUMA_NODE_RELATIONSHIP NumaNode;
|
|
CACHE_RELATIONSHIP Cache;
|
|
GROUP_RELATIONSHIP Group;
|
|
} ;
|
|
};
|
|
typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX,*PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX;
|
|
typedef struct _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION {
|
|
DWORD64 CycleTime;
|
|
} SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION,*PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION;
|
|
typedef struct _XSTATE_FEATURE {
|
|
DWORD Offset;
|
|
DWORD Size;
|
|
} XSTATE_FEATURE,*PXSTATE_FEATURE;
|
|
typedef struct _XSTATE_CONFIGURATION {
|
|
DWORD64 EnabledFeatures;
|
|
DWORD64 EnabledVolatileFeatures;
|
|
DWORD Size;
|
|
DWORD OptimizedSave : 1;
|
|
XSTATE_FEATURE Features[(64)];
|
|
} XSTATE_CONFIGURATION,*PXSTATE_CONFIGURATION;
|
|
typedef struct _MEMORY_BASIC_INFORMATION {
|
|
PVOID BaseAddress;
|
|
PVOID AllocationBase;
|
|
DWORD AllocationProtect;
|
|
SIZE_T RegionSize;
|
|
DWORD State;
|
|
DWORD Protect;
|
|
DWORD Type;
|
|
} MEMORY_BASIC_INFORMATION,*PMEMORY_BASIC_INFORMATION;
|
|
typedef struct _MEMORY_BASIC_INFORMATION32 {
|
|
DWORD BaseAddress;
|
|
DWORD AllocationBase;
|
|
DWORD AllocationProtect;
|
|
DWORD RegionSize;
|
|
DWORD State;
|
|
DWORD Protect;
|
|
DWORD Type;
|
|
} MEMORY_BASIC_INFORMATION32,*PMEMORY_BASIC_INFORMATION32;
|
|
typedef struct __attribute__ ((__aligned__ (16))) _MEMORY_BASIC_INFORMATION64 {
|
|
ULONGLONG BaseAddress;
|
|
ULONGLONG AllocationBase;
|
|
DWORD AllocationProtect;
|
|
DWORD __alignment1;
|
|
ULONGLONG RegionSize;
|
|
DWORD State;
|
|
DWORD Protect;
|
|
DWORD Type;
|
|
DWORD __alignment2;
|
|
} MEMORY_BASIC_INFORMATION64,*PMEMORY_BASIC_INFORMATION64;
|
|
typedef struct FILE_ID_128 {
|
|
BYTE Identifier[16];
|
|
} FILE_ID_128, *PFILE_ID_128;
|
|
typedef struct _FILE_NOTIFY_INFORMATION {
|
|
DWORD NextEntryOffset;
|
|
DWORD Action;
|
|
DWORD FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FILE_NOTIFY_INFORMATION,*PFILE_NOTIFY_INFORMATION;
|
|
typedef union _FILE_SEGMENT_ELEMENT {
|
|
PVOID64 Buffer;
|
|
ULONGLONG Alignment;
|
|
} FILE_SEGMENT_ELEMENT,*PFILE_SEGMENT_ELEMENT;
|
|
typedef struct _REPARSE_GUID_DATA_BUFFER {
|
|
DWORD ReparseTag;
|
|
WORD ReparseDataLength;
|
|
WORD Reserved;
|
|
GUID ReparseGuid;
|
|
struct {
|
|
BYTE DataBuffer[1];
|
|
} GenericReparseBuffer;
|
|
} REPARSE_GUID_DATA_BUFFER,*PREPARSE_GUID_DATA_BUFFER;
|
|
extern const GUID GUID_MAX_POWER_SAVINGS;
|
|
extern const GUID GUID_MIN_POWER_SAVINGS;
|
|
extern const GUID GUID_TYPICAL_POWER_SAVINGS;
|
|
extern const GUID NO_SUBGROUP_GUID;
|
|
extern const GUID ALL_POWERSCHEMES_GUID;
|
|
extern const GUID GUID_POWERSCHEME_PERSONALITY;
|
|
extern const GUID GUID_ACTIVE_POWERSCHEME;
|
|
extern const GUID GUID_IDLE_RESILIENCY_SUBGROUP;
|
|
extern const GUID GUID_IDLE_RESILIENCY_PERIOD;
|
|
extern const GUID GUID_DISK_COALESCING_POWERDOWN_TIMEOUT;
|
|
extern const GUID GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT;
|
|
extern const GUID GUID_VIDEO_SUBGROUP;
|
|
extern const GUID GUID_VIDEO_POWERDOWN_TIMEOUT;
|
|
extern const GUID GUID_VIDEO_ANNOYANCE_TIMEOUT;
|
|
extern const GUID GUID_VIDEO_ADAPTIVE_PERCENT_INCREASE;
|
|
extern const GUID GUID_VIDEO_DIM_TIMEOUT;
|
|
extern const GUID GUID_VIDEO_ADAPTIVE_POWERDOWN;
|
|
extern const GUID GUID_MONITOR_POWER_ON;
|
|
extern const GUID GUID_DEVICE_POWER_POLICY_VIDEO_BRIGHTNESS;
|
|
extern const GUID GUID_DEVICE_POWER_POLICY_VIDEO_DIM_BRIGHTNESS;
|
|
extern const GUID GUID_VIDEO_CURRENT_MONITOR_BRIGHTNESS;
|
|
extern const GUID GUID_VIDEO_ADAPTIVE_DISPLAY_BRIGHTNESS;
|
|
extern const GUID GUID_CONSOLE_DISPLAY_STATE;
|
|
extern const GUID GUID_ALLOW_DISPLAY_REQUIRED;
|
|
extern const GUID GUID_VIDEO_CONSOLE_LOCK_TIMEOUT;
|
|
extern const GUID GUID_ADAPTIVE_POWER_BEHAVIOR_SUBGROUP;
|
|
extern const GUID GUID_NON_ADAPTIVE_INPUT_TIMEOUT;
|
|
extern const GUID GUID_DISK_SUBGROUP;
|
|
extern const GUID GUID_DISK_POWERDOWN_TIMEOUT;
|
|
extern const GUID GUID_DISK_IDLE_TIMEOUT;
|
|
extern const GUID GUID_DISK_BURST_IGNORE_THRESHOLD;
|
|
extern const GUID GUID_DISK_ADAPTIVE_POWERDOWN;
|
|
extern const GUID GUID_SLEEP_SUBGROUP;
|
|
extern const GUID GUID_SLEEP_IDLE_THRESHOLD;
|
|
extern const GUID GUID_STANDBY_TIMEOUT;
|
|
extern const GUID GUID_UNATTEND_SLEEP_TIMEOUT;
|
|
extern const GUID GUID_HIBERNATE_TIMEOUT;
|
|
extern const GUID GUID_HIBERNATE_FASTS4_POLICY;
|
|
extern const GUID GUID_CRITICAL_POWER_TRANSITION;
|
|
extern const GUID GUID_SYSTEM_AWAYMODE;
|
|
extern const GUID GUID_ALLOW_AWAYMODE;
|
|
extern const GUID GUID_ALLOW_STANDBY_STATES;
|
|
extern const GUID GUID_ALLOW_RTC_WAKE;
|
|
extern const GUID GUID_ALLOW_SYSTEM_REQUIRED;
|
|
extern const GUID GUID_SYSTEM_BUTTON_SUBGROUP;
|
|
extern const GUID GUID_POWERBUTTON_ACTION;
|
|
extern const GUID GUID_SLEEPBUTTON_ACTION;
|
|
extern const GUID GUID_USERINTERFACEBUTTON_ACTION;
|
|
extern const GUID GUID_LIDCLOSE_ACTION;
|
|
extern const GUID GUID_LIDOPEN_POWERSTATE;
|
|
extern const GUID GUID_BATTERY_SUBGROUP;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_0;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_0;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_0;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_1;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_1;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_1;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_2;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_2;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_2;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_ACTION_3;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_3;
|
|
extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_3;
|
|
extern const GUID GUID_PROCESSOR_SETTINGS_SUBGROUP;
|
|
extern const GUID GUID_PROCESSOR_THROTTLE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_THROTTLE_MAXIMUM;
|
|
extern const GUID GUID_PROCESSOR_THROTTLE_MINIMUM;
|
|
extern const GUID GUID_PROCESSOR_ALLOW_THROTTLING;
|
|
extern const GUID GUID_PROCESSOR_IDLESTATE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_PERFSTATE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_PERF_INCREASE_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_PERF_DECREASE_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_PERF_INCREASE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_PERF_DECREASE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_PERF_INCREASE_TIME;
|
|
extern const GUID GUID_PROCESSOR_PERF_DECREASE_TIME;
|
|
extern const GUID GUID_PROCESSOR_PERF_TIME_CHECK;
|
|
extern const GUID GUID_PROCESSOR_PERF_BOOST_POLICY;
|
|
extern const GUID GUID_PROCESSOR_PERF_BOOST_MODE;
|
|
extern const GUID GUID_PROCESSOR_IDLE_ALLOW_SCALING;
|
|
extern const GUID GUID_PROCESSOR_IDLE_DISABLE;
|
|
extern const GUID GUID_PROCESSOR_IDLE_STATE_MAXIMUM;
|
|
extern const GUID GUID_PROCESSOR_IDLE_TIME_CHECK;
|
|
extern const GUID GUID_PROCESSOR_IDLE_DEMOTE_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_IDLE_PROMOTE_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_POLICY;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_MAX_CORES;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_MIN_CORES;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_TIME;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_TIME;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_DECREASE_FACTOR;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_WEIGHTING;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_DECREASE_FACTOR;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_WEIGHTING;
|
|
extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_PARKING_CORE_OVERRIDE;
|
|
extern const GUID GUID_PROCESSOR_PARKING_PERF_STATE;
|
|
extern const GUID GUID_PROCESSOR_PARKING_CONCURRENCY_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_PARKING_HEADROOM_THRESHOLD;
|
|
extern const GUID GUID_PROCESSOR_PERF_HISTORY;
|
|
extern const GUID GUID_PROCESSOR_PERF_LATENCY_HINT;
|
|
extern const GUID GUID_PROCESSOR_DISTRIBUTE_UTILITY;
|
|
extern const GUID GUID_SYSTEM_COOLING_POLICY;
|
|
extern const GUID GUID_LOCK_CONSOLE_ON_WAKE;
|
|
extern const GUID GUID_DEVICE_IDLE_POLICY;
|
|
extern const GUID GUID_ACDC_POWER_SOURCE;
|
|
extern const GUID GUID_LIDSWITCH_STATE_CHANGE;
|
|
extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
|
|
extern const GUID GUID_GLOBAL_USER_PRESENCE;
|
|
extern const GUID GUID_SESSION_DISPLAY_STATUS;
|
|
extern const GUID GUID_SESSION_USER_PRESENCE;
|
|
extern const GUID GUID_IDLE_BACKGROUND_TASK;
|
|
extern const GUID GUID_BACKGROUND_TASK_NOTIFICATION;
|
|
extern const GUID GUID_APPLAUNCH_BUTTON;
|
|
extern const GUID GUID_PCIEXPRESS_SETTINGS_SUBGROUP;
|
|
extern const GUID GUID_PCIEXPRESS_ASPM_POLICY;
|
|
extern const GUID GUID_ENABLE_SWITCH_FORCED_SHUTDOWN;
|
|
typedef enum _SYSTEM_POWER_STATE {
|
|
PowerSystemUnspecified = 0,PowerSystemWorking = 1,PowerSystemSleeping1 = 2,PowerSystemSleeping2 = 3,PowerSystemSleeping3 = 4,PowerSystemHibernate = 5,PowerSystemShutdown = 6,PowerSystemMaximum = 7
|
|
} SYSTEM_POWER_STATE,*PSYSTEM_POWER_STATE;
|
|
typedef enum {
|
|
PowerActionNone = 0, PowerActionReserved, PowerActionSleep, PowerActionHibernate,
|
|
PowerActionShutdown, PowerActionShutdownReset, PowerActionShutdownOff,
|
|
PowerActionWarmEject
|
|
} POWER_ACTION,*PPOWER_ACTION;
|
|
typedef enum _DEVICE_POWER_STATE {
|
|
PowerDeviceUnspecified = 0, PowerDeviceD0, PowerDeviceD1, PowerDeviceD2, PowerDeviceD3,
|
|
PowerDeviceMaximum
|
|
} DEVICE_POWER_STATE,*PDEVICE_POWER_STATE;
|
|
typedef enum _MONITOR_DISPLAY_STATE {
|
|
PowerMonitorOff = 0, PowerMonitorOn, PowerMonitorDim
|
|
} MONITOR_DISPLAY_STATE, *PMONITOR_DISPLAY_STATE;
|
|
typedef enum _USER_ACTIVITY_PRESENCE {
|
|
PowerUserPresent = 0,
|
|
PowerUserNotPresent,
|
|
PowerUserInactive,
|
|
PowerUserMaximum,
|
|
PowerUserInvalid = PowerUserMaximum
|
|
} USER_ACTIVITY_PRESENCE,*PUSER_ACTIVITY_PRESENCE;
|
|
typedef DWORD EXECUTION_STATE, *PEXECUTION_STATE;
|
|
typedef enum {
|
|
LT_DONT_CARE,LT_LOWEST_LATENCY
|
|
} LATENCY_TIME;
|
|
typedef enum _POWER_REQUEST_TYPE {
|
|
PowerRequestDisplayRequired,
|
|
PowerRequestSystemRequired,
|
|
PowerRequestAwayModeRequired,
|
|
PowerRequestExecutionRequired
|
|
} POWER_REQUEST_TYPE,*PPOWER_REQUEST_TYPE;
|
|
typedef struct CM_Power_Data_s {
|
|
DWORD PD_Size;
|
|
DEVICE_POWER_STATE PD_MostRecentPowerState;
|
|
DWORD PD_Capabilities;
|
|
DWORD PD_D1Latency;
|
|
DWORD PD_D2Latency;
|
|
DWORD PD_D3Latency;
|
|
DEVICE_POWER_STATE PD_PowerStateMapping[7];
|
|
SYSTEM_POWER_STATE PD_DeepestSystemWake;
|
|
} CM_POWER_DATA,*PCM_POWER_DATA;
|
|
typedef enum {
|
|
SystemPowerPolicyAc,
|
|
SystemPowerPolicyDc,
|
|
VerifySystemPolicyAc,
|
|
VerifySystemPolicyDc,
|
|
SystemPowerCapabilities,
|
|
SystemBatteryState,
|
|
SystemPowerStateHandler,
|
|
ProcessorStateHandler,
|
|
SystemPowerPolicyCurrent,
|
|
AdministratorPowerPolicy,
|
|
SystemReserveHiberFile,
|
|
ProcessorInformation,
|
|
SystemPowerInformation,
|
|
ProcessorStateHandler2,
|
|
LastWakeTime,
|
|
LastSleepTime,
|
|
SystemExecutionState,
|
|
SystemPowerStateNotifyHandler,
|
|
ProcessorPowerPolicyAc,
|
|
ProcessorPowerPolicyDc,
|
|
VerifyProcessorPowerPolicyAc,
|
|
VerifyProcessorPowerPolicyDc,
|
|
ProcessorPowerPolicyCurrent,
|
|
SystemPowerStateLogging,
|
|
SystemPowerLoggingEntry,
|
|
SetPowerSettingValue,
|
|
NotifyUserPowerSetting,
|
|
PowerInformationLevelUnused0,
|
|
SystemMonitorHiberBootPowerOff,
|
|
SystemVideoState,
|
|
TraceApplicationPowerMessage,
|
|
TraceApplicationPowerMessageEnd,
|
|
ProcessorPerfStates,
|
|
ProcessorIdleStates,
|
|
ProcessorCap,
|
|
SystemWakeSource,
|
|
SystemHiberFileInformation,
|
|
TraceServicePowerMessage,
|
|
ProcessorLoad,
|
|
PowerShutdownNotification,
|
|
MonitorCapabilities,
|
|
SessionPowerInit,
|
|
SessionDisplayState,
|
|
PowerRequestCreate,
|
|
PowerRequestAction,
|
|
GetPowerRequestList,
|
|
ProcessorInformationEx,
|
|
NotifyUserModeLegacyPowerEvent,
|
|
GroupPark,
|
|
ProcessorIdleDomains,
|
|
WakeTimerList,
|
|
SystemHiberFileSize,
|
|
ProcessorIdleStatesHv,
|
|
ProcessorPerfStatesHv,
|
|
ProcessorPerfCapHv,
|
|
ProcessorSetIdle,
|
|
LogicalProcessorIdling,
|
|
UserPresence,
|
|
PowerSettingNotificationName,
|
|
GetPowerSettingValue,
|
|
IdleResiliency,
|
|
SessionRITState,
|
|
SessionConnectNotification,
|
|
SessionPowerCleanup,
|
|
SessionLockState,
|
|
SystemHiberbootState,
|
|
PlatformInformation,
|
|
PdcInvocation,
|
|
MonitorInvocation,
|
|
FirmwareTableInformationRegistered,
|
|
SetShutdownSelectedTime,
|
|
SuspendResumeInvocation,
|
|
PlmPowerRequestCreate,
|
|
ScreenOff,
|
|
CsDeviceNotification,
|
|
PlatformRole,
|
|
LastResumePerformance,
|
|
DisplayBurst,
|
|
ExitLatencySamplingPercentage,
|
|
ApplyLowPowerScenarioSettings,
|
|
PowerInformationLevelMaximum
|
|
} POWER_INFORMATION_LEVEL;
|
|
typedef enum {
|
|
UserNotPresent = 0,
|
|
UserPresent = 1,
|
|
UserUnknown = 0xff
|
|
} POWER_USER_PRESENCE_TYPE,*PPOWER_USER_PRESENCE_TYPE;
|
|
typedef struct _POWER_USER_PRESENCE {
|
|
POWER_USER_PRESENCE_TYPE UserPresence;
|
|
} POWER_USER_PRESENCE,*PPOWER_USER_PRESENCE;
|
|
typedef struct _POWER_SESSION_CONNECT {
|
|
BOOLEAN Connected;
|
|
BOOLEAN Console;
|
|
} POWER_SESSION_CONNECT,*PPOWER_SESSION_CONNECT;
|
|
typedef struct _POWER_SESSION_TIMEOUTS {
|
|
DWORD InputTimeout;
|
|
DWORD DisplayTimeout;
|
|
} POWER_SESSION_TIMEOUTS,*PPOWER_SESSION_TIMEOUTS;
|
|
typedef struct _POWER_SESSION_RIT_STATE {
|
|
BOOLEAN Active;
|
|
DWORD LastInputTime;
|
|
} POWER_SESSION_RIT_STATE,*PPOWER_SESSION_RIT_STATE;
|
|
typedef struct _POWER_SESSION_WINLOGON {
|
|
DWORD SessionId;
|
|
BOOLEAN Console;
|
|
BOOLEAN Locked;
|
|
} POWER_SESSION_WINLOGON,*PPOWER_SESSION_WINLOGON;
|
|
typedef struct _POWER_IDLE_RESILIENCY {
|
|
DWORD CoalescingTimeout;
|
|
DWORD IdleResiliencyPeriod;
|
|
} POWER_IDLE_RESILIENCY,*PPOWER_IDLE_RESILIENCY;
|
|
typedef enum {
|
|
MonitorRequestReasonUnknown,
|
|
MonitorRequestReasonPowerButton,
|
|
MonitorRequestReasonRemoteConnection,
|
|
MonitorRequestReasonScMonitorpower,
|
|
MonitorRequestReasonUserInput,
|
|
MonitorRequestReasonAcDcDisplayBurst,
|
|
MonitorRequestReasonUserDisplayBurst,
|
|
MonitorRequestReasonPoSetSystemState,
|
|
MonitorRequestReasonSetThreadExecutionState,
|
|
MonitorRequestReasonFullWake,
|
|
MonitorRequestReasonSessionUnlock,
|
|
MonitorRequestReasonScreenOffRequest,
|
|
MonitorRequestReasonIdleTimeout,
|
|
MonitorRequestReasonPolicyChange,
|
|
MonitorRequestReasonMax
|
|
} POWER_MONITOR_REQUEST_REASON;
|
|
typedef struct _POWER_MONITOR_INVOCATION {
|
|
BOOLEAN On;
|
|
BOOLEAN Console;
|
|
POWER_MONITOR_REQUEST_REASON RequestReason;
|
|
} POWER_MONITOR_INVOCATION,*PPOWER_MONITOR_INVOCATION;
|
|
typedef struct _RESUME_PERFORMANCE {
|
|
DWORD PostTimeMs;
|
|
ULONGLONG TotalResumeTimeMs;
|
|
ULONGLONG ResumeCompleteTimestamp;
|
|
} RESUME_PERFORMANCE,*PRESUME_PERFORMANCE;
|
|
typedef enum {
|
|
PoAc,
|
|
PoDc,
|
|
PoHot,
|
|
PoConditionMaximum
|
|
} SYSTEM_POWER_CONDITION;
|
|
typedef struct {
|
|
DWORD Version;
|
|
GUID Guid;
|
|
SYSTEM_POWER_CONDITION PowerCondition;
|
|
DWORD DataLength;
|
|
BYTE Data[1];
|
|
} SET_POWER_SETTING_VALUE,*PSET_POWER_SETTING_VALUE;
|
|
typedef struct {
|
|
GUID Guid;
|
|
} NOTIFY_USER_POWER_SETTING,*PNOTIFY_USER_POWER_SETTING;
|
|
typedef struct _APPLICATIONLAUNCH_SETTING_VALUE {
|
|
LARGE_INTEGER ActivationTime;
|
|
DWORD Flags;
|
|
DWORD ButtonInstanceID;
|
|
} APPLICATIONLAUNCH_SETTING_VALUE,*PAPPLICATIONLAUNCH_SETTING_VALUE;
|
|
typedef enum _POWER_PLATFORM_ROLE {
|
|
PlatformRoleUnspecified = 0,
|
|
PlatformRoleDesktop,
|
|
PlatformRoleMobile,
|
|
PlatformRoleWorkstation,
|
|
PlatformRoleEnterpriseServer,
|
|
PlatformRoleSOHOServer,
|
|
PlatformRoleAppliancePC,
|
|
PlatformRolePerformanceServer,
|
|
PlatformRoleSlate,
|
|
PlatformRoleMaximum
|
|
} POWER_PLATFORM_ROLE,*PPOWER_PLATFORM_ROLE;
|
|
typedef struct _POWER_PLATFORM_INFORMATION {
|
|
BOOLEAN AoAc;
|
|
} POWER_PLATFORM_INFORMATION,*PPOWER_PLATFORM_INFORMATION;
|
|
typedef struct {
|
|
DWORD Granularity;
|
|
DWORD Capacity;
|
|
} BATTERY_REPORTING_SCALE,*PBATTERY_REPORTING_SCALE;
|
|
typedef struct {
|
|
DWORD Frequency;
|
|
DWORD Flags;
|
|
DWORD PercentFrequency;
|
|
} PPM_WMI_LEGACY_PERFSTATE,*PPPM_WMI_LEGACY_PERFSTATE;
|
|
typedef struct {
|
|
DWORD Latency;
|
|
DWORD Power;
|
|
DWORD TimeCheck;
|
|
BYTE PromotePercent;
|
|
BYTE DemotePercent;
|
|
BYTE StateType;
|
|
BYTE Reserved;
|
|
DWORD StateFlags;
|
|
DWORD Context;
|
|
DWORD IdleHandler;
|
|
DWORD Reserved1;
|
|
} PPM_WMI_IDLE_STATE,*PPPM_WMI_IDLE_STATE;
|
|
typedef struct {
|
|
DWORD Type;
|
|
DWORD Count;
|
|
DWORD TargetState;
|
|
DWORD OldState;
|
|
DWORD64 TargetProcessors;
|
|
PPM_WMI_IDLE_STATE State[1];
|
|
} PPM_WMI_IDLE_STATES,*PPPM_WMI_IDLE_STATES;
|
|
typedef struct {
|
|
DWORD Type;
|
|
DWORD Count;
|
|
DWORD TargetState;
|
|
DWORD OldState;
|
|
PVOID TargetProcessors;
|
|
PPM_WMI_IDLE_STATE State[1];
|
|
} PPM_WMI_IDLE_STATES_EX,*PPPM_WMI_IDLE_STATES_EX;
|
|
typedef struct {
|
|
DWORD Frequency;
|
|
DWORD Power;
|
|
BYTE PercentFrequency;
|
|
BYTE IncreaseLevel;
|
|
BYTE DecreaseLevel;
|
|
BYTE Type;
|
|
DWORD IncreaseTime;
|
|
DWORD DecreaseTime;
|
|
DWORD64 Control;
|
|
DWORD64 Status;
|
|
DWORD HitCount;
|
|
DWORD Reserved1;
|
|
DWORD64 Reserved2;
|
|
DWORD64 Reserved3;
|
|
} PPM_WMI_PERF_STATE,*PPPM_WMI_PERF_STATE;
|
|
typedef struct {
|
|
DWORD Count;
|
|
DWORD MaxFrequency;
|
|
DWORD CurrentState;
|
|
DWORD MaxPerfState;
|
|
DWORD MinPerfState;
|
|
DWORD LowestPerfState;
|
|
DWORD ThermalConstraint;
|
|
BYTE BusyAdjThreshold;
|
|
BYTE PolicyType;
|
|
BYTE Type;
|
|
BYTE Reserved;
|
|
DWORD TimerInterval;
|
|
DWORD64 TargetProcessors;
|
|
DWORD PStateHandler;
|
|
DWORD PStateContext;
|
|
DWORD TStateHandler;
|
|
DWORD TStateContext;
|
|
DWORD FeedbackHandler;
|
|
DWORD Reserved1;
|
|
DWORD64 Reserved2;
|
|
PPM_WMI_PERF_STATE State[1];
|
|
} PPM_WMI_PERF_STATES,*PPPM_WMI_PERF_STATES;
|
|
typedef struct {
|
|
DWORD Count;
|
|
DWORD MaxFrequency;
|
|
DWORD CurrentState;
|
|
DWORD MaxPerfState;
|
|
DWORD MinPerfState;
|
|
DWORD LowestPerfState;
|
|
DWORD ThermalConstraint;
|
|
BYTE BusyAdjThreshold;
|
|
BYTE PolicyType;
|
|
BYTE Type;
|
|
BYTE Reserved;
|
|
DWORD TimerInterval;
|
|
PVOID TargetProcessors;
|
|
DWORD PStateHandler;
|
|
DWORD PStateContext;
|
|
DWORD TStateHandler;
|
|
DWORD TStateContext;
|
|
DWORD FeedbackHandler;
|
|
DWORD Reserved1;
|
|
DWORD64 Reserved2;
|
|
PPM_WMI_PERF_STATE State[1];
|
|
} PPM_WMI_PERF_STATES_EX,*PPPM_WMI_PERF_STATES_EX;
|
|
typedef struct {
|
|
DWORD IdleTransitions;
|
|
DWORD FailedTransitions;
|
|
DWORD InvalidBucketIndex;
|
|
DWORD64 TotalTime;
|
|
DWORD IdleTimeBuckets[6];
|
|
} PPM_IDLE_STATE_ACCOUNTING,*PPPM_IDLE_STATE_ACCOUNTING;
|
|
typedef struct {
|
|
DWORD StateCount;
|
|
DWORD TotalTransitions;
|
|
DWORD ResetCount;
|
|
DWORD64 StartTime;
|
|
PPM_IDLE_STATE_ACCOUNTING State[1];
|
|
} PPM_IDLE_ACCOUNTING,*PPPM_IDLE_ACCOUNTING;
|
|
typedef struct {
|
|
DWORD64 TotalTimeUs;
|
|
DWORD MinTimeUs;
|
|
DWORD MaxTimeUs;
|
|
DWORD Count;
|
|
} PPM_IDLE_STATE_BUCKET_EX,*PPPM_IDLE_STATE_BUCKET_EX;
|
|
typedef struct {
|
|
DWORD64 TotalTime;
|
|
DWORD IdleTransitions;
|
|
DWORD FailedTransitions;
|
|
DWORD InvalidBucketIndex;
|
|
DWORD MinTimeUs;
|
|
DWORD MaxTimeUs;
|
|
DWORD CancelledTransitions;
|
|
PPM_IDLE_STATE_BUCKET_EX IdleTimeBuckets[16];
|
|
} PPM_IDLE_STATE_ACCOUNTING_EX,*PPPM_IDLE_STATE_ACCOUNTING_EX;
|
|
typedef struct {
|
|
DWORD StateCount;
|
|
DWORD TotalTransitions;
|
|
DWORD ResetCount;
|
|
DWORD AbortCount;
|
|
DWORD64 StartTime;
|
|
PPM_IDLE_STATE_ACCOUNTING_EX State[1];
|
|
} PPM_IDLE_ACCOUNTING_EX,*PPPM_IDLE_ACCOUNTING_EX;
|
|
typedef struct {
|
|
DWORD State;
|
|
DWORD Status;
|
|
DWORD Latency;
|
|
DWORD Speed;
|
|
DWORD Processor;
|
|
} PPM_PERFSTATE_EVENT,*PPPM_PERFSTATE_EVENT;
|
|
typedef struct {
|
|
DWORD State;
|
|
DWORD Latency;
|
|
DWORD Speed;
|
|
DWORD64 Processors;
|
|
} PPM_PERFSTATE_DOMAIN_EVENT,*PPPM_PERFSTATE_DOMAIN_EVENT;
|
|
typedef struct {
|
|
DWORD NewState;
|
|
DWORD OldState;
|
|
DWORD64 Processors;
|
|
} PPM_IDLESTATE_EVENT,*PPPM_IDLESTATE_EVENT;
|
|
typedef struct {
|
|
DWORD ThermalConstraint;
|
|
DWORD64 Processors;
|
|
} PPM_THERMALCHANGE_EVENT,*PPPM_THERMALCHANGE_EVENT;
|
|
typedef struct {
|
|
BYTE Mode;
|
|
DWORD64 Processors;
|
|
} PPM_THERMAL_POLICY_EVENT,*PPPM_THERMAL_POLICY_EVENT;
|
|
extern const GUID PPM_PERFSTATE_CHANGE_GUID;
|
|
extern const GUID PPM_PERFSTATE_DOMAIN_CHANGE_GUID;
|
|
extern const GUID PPM_IDLESTATE_CHANGE_GUID;
|
|
extern const GUID PPM_PERFSTATES_DATA_GUID;
|
|
extern const GUID PPM_IDLESTATES_DATA_GUID;
|
|
extern const GUID PPM_IDLE_ACCOUNTING_GUID;
|
|
extern const GUID PPM_IDLE_ACCOUNTING_EX_GUID;
|
|
extern const GUID PPM_THERMALCONSTRAINT_GUID;
|
|
extern const GUID PPM_PERFMON_PERFSTATE_GUID;
|
|
extern const GUID PPM_THERMAL_POLICY_CHANGE_GUID;
|
|
typedef struct {
|
|
POWER_ACTION Action;
|
|
DWORD Flags;
|
|
DWORD EventCode;
|
|
} POWER_ACTION_POLICY,*PPOWER_ACTION_POLICY;
|
|
typedef struct {
|
|
DWORD TimeCheck;
|
|
BYTE DemotePercent;
|
|
BYTE PromotePercent;
|
|
BYTE Spare[2];
|
|
} PROCESSOR_IDLESTATE_INFO,*PPROCESSOR_IDLESTATE_INFO;
|
|
typedef struct {
|
|
BOOLEAN Enable;
|
|
BYTE Spare[3];
|
|
DWORD BatteryLevel;
|
|
POWER_ACTION_POLICY PowerPolicy;
|
|
SYSTEM_POWER_STATE MinSystemState;
|
|
} SYSTEM_POWER_LEVEL,*PSYSTEM_POWER_LEVEL;
|
|
typedef struct _SYSTEM_POWER_POLICY {
|
|
DWORD Revision;
|
|
POWER_ACTION_POLICY PowerButton;
|
|
POWER_ACTION_POLICY SleepButton;
|
|
POWER_ACTION_POLICY LidClose;
|
|
SYSTEM_POWER_STATE LidOpenWake;
|
|
DWORD Reserved;
|
|
POWER_ACTION_POLICY Idle;
|
|
DWORD IdleTimeout;
|
|
BYTE IdleSensitivity;
|
|
BYTE DynamicThrottle;
|
|
BYTE Spare2[2];
|
|
SYSTEM_POWER_STATE MinSleep;
|
|
SYSTEM_POWER_STATE MaxSleep;
|
|
SYSTEM_POWER_STATE ReducedLatencySleep;
|
|
DWORD WinLogonFlags;
|
|
DWORD Spare3;
|
|
DWORD DozeS4Timeout;
|
|
DWORD BroadcastCapacityResolution;
|
|
SYSTEM_POWER_LEVEL DischargePolicy[4];
|
|
DWORD VideoTimeout;
|
|
BOOLEAN VideoDimDisplay;
|
|
DWORD VideoReserved[3];
|
|
DWORD SpindownTimeout;
|
|
BOOLEAN OptimizeForPower;
|
|
BYTE FanThrottleTolerance;
|
|
BYTE ForcedThrottle;
|
|
BYTE MinThrottle;
|
|
POWER_ACTION_POLICY OverThrottled;
|
|
} SYSTEM_POWER_POLICY,*PSYSTEM_POWER_POLICY;
|
|
typedef struct {
|
|
WORD Revision;
|
|
union {
|
|
WORD AsWORD;
|
|
__extension__ struct {
|
|
WORD AllowScaling : 1;
|
|
WORD Disabled : 1;
|
|
WORD Reserved : 14;
|
|
} ;
|
|
} Flags;
|
|
DWORD PolicyCount;
|
|
PROCESSOR_IDLESTATE_INFO Policy[0x3];
|
|
} PROCESSOR_IDLESTATE_POLICY,*PPROCESSOR_IDLESTATE_POLICY;
|
|
typedef struct _PROCESSOR_POWER_POLICY_INFO {
|
|
DWORD TimeCheck;
|
|
DWORD DemoteLimit;
|
|
DWORD PromoteLimit;
|
|
BYTE DemotePercent;
|
|
BYTE PromotePercent;
|
|
BYTE Spare[2];
|
|
DWORD AllowDemotion:1;
|
|
DWORD AllowPromotion:1;
|
|
DWORD Reserved:30;
|
|
} PROCESSOR_POWER_POLICY_INFO,*PPROCESSOR_POWER_POLICY_INFO;
|
|
typedef struct _PROCESSOR_POWER_POLICY {
|
|
DWORD Revision;
|
|
BYTE DynamicThrottle;
|
|
BYTE Spare[3];
|
|
DWORD DisableCStates:1;
|
|
DWORD Reserved:31;
|
|
DWORD PolicyCount;
|
|
PROCESSOR_POWER_POLICY_INFO Policy[3];
|
|
} PROCESSOR_POWER_POLICY,*PPROCESSOR_POWER_POLICY;
|
|
typedef struct {
|
|
DWORD Revision;
|
|
BYTE MaxThrottle;
|
|
BYTE MinThrottle;
|
|
BYTE BusyAdjThreshold;
|
|
__extension__ union {
|
|
BYTE Spare;
|
|
union {
|
|
BYTE AsBYTE;
|
|
__extension__ struct {
|
|
BYTE NoDomainAccounting : 1;
|
|
BYTE IncreasePolicy: 2;
|
|
BYTE DecreasePolicy: 2;
|
|
BYTE Reserved : 3;
|
|
} ;
|
|
} Flags;
|
|
} ;
|
|
DWORD TimeCheck;
|
|
DWORD IncreaseTime;
|
|
DWORD DecreaseTime;
|
|
DWORD IncreasePercent;
|
|
DWORD DecreasePercent;
|
|
} PROCESSOR_PERFSTATE_POLICY,*PPROCESSOR_PERFSTATE_POLICY;
|
|
typedef struct _ADMINISTRATOR_POWER_POLICY {
|
|
SYSTEM_POWER_STATE MinSleep;
|
|
SYSTEM_POWER_STATE MaxSleep;
|
|
DWORD MinVideoTimeout;
|
|
DWORD MaxVideoTimeout;
|
|
DWORD MinSpindownTimeout;
|
|
DWORD MaxSpindownTimeout;
|
|
} ADMINISTRATOR_POWER_POLICY,*PADMINISTRATOR_POWER_POLICY;
|
|
typedef struct {
|
|
BOOLEAN PowerButtonPresent;
|
|
BOOLEAN SleepButtonPresent;
|
|
BOOLEAN LidPresent;
|
|
BOOLEAN SystemS1;
|
|
BOOLEAN SystemS2;
|
|
BOOLEAN SystemS3;
|
|
BOOLEAN SystemS4;
|
|
BOOLEAN SystemS5;
|
|
BOOLEAN HiberFilePresent;
|
|
BOOLEAN FullWake;
|
|
BOOLEAN VideoDimPresent;
|
|
BOOLEAN ApmPresent;
|
|
BOOLEAN UpsPresent;
|
|
BOOLEAN ThermalControl;
|
|
BOOLEAN ProcessorThrottle;
|
|
BYTE ProcessorMinThrottle;
|
|
BYTE ProcessorMaxThrottle;
|
|
BOOLEAN FastSystemS4;
|
|
BYTE spare2[3];
|
|
BOOLEAN DiskSpinDown;
|
|
BYTE spare3[8];
|
|
BOOLEAN SystemBatteriesPresent;
|
|
BOOLEAN BatteriesAreShortTerm;
|
|
BATTERY_REPORTING_SCALE BatteryScale[3];
|
|
SYSTEM_POWER_STATE AcOnLineWake;
|
|
SYSTEM_POWER_STATE SoftLidWake;
|
|
SYSTEM_POWER_STATE RtcWake;
|
|
SYSTEM_POWER_STATE MinDeviceWakeState;
|
|
SYSTEM_POWER_STATE DefaultLowLatencyWake;
|
|
} SYSTEM_POWER_CAPABILITIES,*PSYSTEM_POWER_CAPABILITIES;
|
|
typedef struct {
|
|
BOOLEAN AcOnLine;
|
|
BOOLEAN BatteryPresent;
|
|
BOOLEAN Charging;
|
|
BOOLEAN Discharging;
|
|
BOOLEAN Spare1[4];
|
|
DWORD MaxCapacity;
|
|
DWORD RemainingCapacity;
|
|
DWORD Rate;
|
|
DWORD EstimatedTime;
|
|
DWORD DefaultAlert1;
|
|
DWORD DefaultAlert2;
|
|
} SYSTEM_BATTERY_STATE,*PSYSTEM_BATTERY_STATE;
|
|
#pragma pack(push,4)
|
|
#pragma pack(push,2)
|
|
typedef struct _IMAGE_DOS_HEADER {
|
|
WORD e_magic;
|
|
WORD e_cblp;
|
|
WORD e_cp;
|
|
WORD e_crlc;
|
|
WORD e_cparhdr;
|
|
WORD e_minalloc;
|
|
WORD e_maxalloc;
|
|
WORD e_ss;
|
|
WORD e_sp;
|
|
WORD e_csum;
|
|
WORD e_ip;
|
|
WORD e_cs;
|
|
WORD e_lfarlc;
|
|
WORD e_ovno;
|
|
WORD e_res[4];
|
|
WORD e_oemid;
|
|
WORD e_oeminfo;
|
|
WORD e_res2[10];
|
|
LONG e_lfanew;
|
|
} IMAGE_DOS_HEADER,*PIMAGE_DOS_HEADER;
|
|
typedef struct _IMAGE_OS2_HEADER {
|
|
WORD ne_magic;
|
|
CHAR ne_ver;
|
|
CHAR ne_rev;
|
|
WORD ne_enttab;
|
|
WORD ne_cbenttab;
|
|
LONG ne_crc;
|
|
WORD ne_flags;
|
|
WORD ne_autodata;
|
|
WORD ne_heap;
|
|
WORD ne_stack;
|
|
LONG ne_csip;
|
|
LONG ne_sssp;
|
|
WORD ne_cseg;
|
|
WORD ne_cmod;
|
|
WORD ne_cbnrestab;
|
|
WORD ne_segtab;
|
|
WORD ne_rsrctab;
|
|
WORD ne_restab;
|
|
WORD ne_modtab;
|
|
WORD ne_imptab;
|
|
LONG ne_nrestab;
|
|
WORD ne_cmovent;
|
|
WORD ne_align;
|
|
WORD ne_cres;
|
|
BYTE ne_exetyp;
|
|
BYTE ne_flagsothers;
|
|
WORD ne_pretthunks;
|
|
WORD ne_psegrefbytes;
|
|
WORD ne_swaparea;
|
|
WORD ne_expver;
|
|
} IMAGE_OS2_HEADER,*PIMAGE_OS2_HEADER;
|
|
typedef struct _IMAGE_VXD_HEADER {
|
|
WORD e32_magic;
|
|
BYTE e32_border;
|
|
BYTE e32_worder;
|
|
DWORD e32_level;
|
|
WORD e32_cpu;
|
|
WORD e32_os;
|
|
DWORD e32_ver;
|
|
DWORD e32_mflags;
|
|
DWORD e32_mpages;
|
|
DWORD e32_startobj;
|
|
DWORD e32_eip;
|
|
DWORD e32_stackobj;
|
|
DWORD e32_esp;
|
|
DWORD e32_pagesize;
|
|
DWORD e32_lastpagesize;
|
|
DWORD e32_fixupsize;
|
|
DWORD e32_fixupsum;
|
|
DWORD e32_ldrsize;
|
|
DWORD e32_ldrsum;
|
|
DWORD e32_objtab;
|
|
DWORD e32_objcnt;
|
|
DWORD e32_objmap;
|
|
DWORD e32_itermap;
|
|
DWORD e32_rsrctab;
|
|
DWORD e32_rsrccnt;
|
|
DWORD e32_restab;
|
|
DWORD e32_enttab;
|
|
DWORD e32_dirtab;
|
|
DWORD e32_dircnt;
|
|
DWORD e32_fpagetab;
|
|
DWORD e32_frectab;
|
|
DWORD e32_impmod;
|
|
DWORD e32_impmodcnt;
|
|
DWORD e32_impproc;
|
|
DWORD e32_pagesum;
|
|
DWORD e32_datapage;
|
|
DWORD e32_preload;
|
|
DWORD e32_nrestab;
|
|
DWORD e32_cbnrestab;
|
|
DWORD e32_nressum;
|
|
DWORD e32_autodata;
|
|
DWORD e32_debuginfo;
|
|
DWORD e32_debuglen;
|
|
DWORD e32_instpreload;
|
|
DWORD e32_instdemand;
|
|
DWORD e32_heapsize;
|
|
BYTE e32_res3[12];
|
|
DWORD e32_winresoff;
|
|
DWORD e32_winreslen;
|
|
WORD e32_devid;
|
|
WORD e32_ddkver;
|
|
} IMAGE_VXD_HEADER,*PIMAGE_VXD_HEADER;
|
|
#pragma pack(pop)
|
|
typedef struct _IMAGE_FILE_HEADER {
|
|
WORD Machine;
|
|
WORD NumberOfSections;
|
|
DWORD TimeDateStamp;
|
|
DWORD PointerToSymbolTable;
|
|
DWORD NumberOfSymbols;
|
|
WORD SizeOfOptionalHeader;
|
|
WORD Characteristics;
|
|
} IMAGE_FILE_HEADER,*PIMAGE_FILE_HEADER;
|
|
typedef struct _IMAGE_DATA_DIRECTORY {
|
|
DWORD VirtualAddress;
|
|
DWORD Size;
|
|
} IMAGE_DATA_DIRECTORY,*PIMAGE_DATA_DIRECTORY;
|
|
typedef struct _IMAGE_OPTIONAL_HEADER {
|
|
WORD Magic;
|
|
BYTE MajorLinkerVersion;
|
|
BYTE MinorLinkerVersion;
|
|
DWORD SizeOfCode;
|
|
DWORD SizeOfInitializedData;
|
|
DWORD SizeOfUninitializedData;
|
|
DWORD AddressOfEntryPoint;
|
|
DWORD BaseOfCode;
|
|
DWORD BaseOfData;
|
|
DWORD ImageBase;
|
|
DWORD SectionAlignment;
|
|
DWORD FileAlignment;
|
|
WORD MajorOperatingSystemVersion;
|
|
WORD MinorOperatingSystemVersion;
|
|
WORD MajorImageVersion;
|
|
WORD MinorImageVersion;
|
|
WORD MajorSubsystemVersion;
|
|
WORD MinorSubsystemVersion;
|
|
DWORD Win32VersionValue;
|
|
DWORD SizeOfImage;
|
|
DWORD SizeOfHeaders;
|
|
DWORD CheckSum;
|
|
WORD Subsystem;
|
|
WORD DllCharacteristics;
|
|
DWORD SizeOfStackReserve;
|
|
DWORD SizeOfStackCommit;
|
|
DWORD SizeOfHeapReserve;
|
|
DWORD SizeOfHeapCommit;
|
|
DWORD LoaderFlags;
|
|
DWORD NumberOfRvaAndSizes;
|
|
IMAGE_DATA_DIRECTORY DataDirectory[16];
|
|
} IMAGE_OPTIONAL_HEADER32,*PIMAGE_OPTIONAL_HEADER32;
|
|
typedef struct _IMAGE_ROM_OPTIONAL_HEADER {
|
|
WORD Magic;
|
|
BYTE MajorLinkerVersion;
|
|
BYTE MinorLinkerVersion;
|
|
DWORD SizeOfCode;
|
|
DWORD SizeOfInitializedData;
|
|
DWORD SizeOfUninitializedData;
|
|
DWORD AddressOfEntryPoint;
|
|
DWORD BaseOfCode;
|
|
DWORD BaseOfData;
|
|
DWORD BaseOfBss;
|
|
DWORD GprMask;
|
|
DWORD CprMask[4];
|
|
DWORD GpValue;
|
|
} IMAGE_ROM_OPTIONAL_HEADER,*PIMAGE_ROM_OPTIONAL_HEADER;
|
|
typedef struct _IMAGE_OPTIONAL_HEADER64 {
|
|
WORD Magic;
|
|
BYTE MajorLinkerVersion;
|
|
BYTE MinorLinkerVersion;
|
|
DWORD SizeOfCode;
|
|
DWORD SizeOfInitializedData;
|
|
DWORD SizeOfUninitializedData;
|
|
DWORD AddressOfEntryPoint;
|
|
DWORD BaseOfCode;
|
|
ULONGLONG ImageBase;
|
|
DWORD SectionAlignment;
|
|
DWORD FileAlignment;
|
|
WORD MajorOperatingSystemVersion;
|
|
WORD MinorOperatingSystemVersion;
|
|
WORD MajorImageVersion;
|
|
WORD MinorImageVersion;
|
|
WORD MajorSubsystemVersion;
|
|
WORD MinorSubsystemVersion;
|
|
DWORD Win32VersionValue;
|
|
DWORD SizeOfImage;
|
|
DWORD SizeOfHeaders;
|
|
DWORD CheckSum;
|
|
WORD Subsystem;
|
|
WORD DllCharacteristics;
|
|
ULONGLONG SizeOfStackReserve;
|
|
ULONGLONG SizeOfStackCommit;
|
|
ULONGLONG SizeOfHeapReserve;
|
|
ULONGLONG SizeOfHeapCommit;
|
|
DWORD LoaderFlags;
|
|
DWORD NumberOfRvaAndSizes;
|
|
IMAGE_DATA_DIRECTORY DataDirectory[16];
|
|
} IMAGE_OPTIONAL_HEADER64,*PIMAGE_OPTIONAL_HEADER64;
|
|
typedef IMAGE_OPTIONAL_HEADER64 IMAGE_OPTIONAL_HEADER;
|
|
typedef PIMAGE_OPTIONAL_HEADER64 PIMAGE_OPTIONAL_HEADER;
|
|
typedef struct _IMAGE_NT_HEADERS64 {
|
|
DWORD Signature;
|
|
IMAGE_FILE_HEADER FileHeader;
|
|
IMAGE_OPTIONAL_HEADER64 OptionalHeader;
|
|
} IMAGE_NT_HEADERS64,*PIMAGE_NT_HEADERS64;
|
|
typedef struct _IMAGE_NT_HEADERS {
|
|
DWORD Signature;
|
|
IMAGE_FILE_HEADER FileHeader;
|
|
IMAGE_OPTIONAL_HEADER32 OptionalHeader;
|
|
} IMAGE_NT_HEADERS32,*PIMAGE_NT_HEADERS32;
|
|
typedef struct _IMAGE_ROM_HEADERS {
|
|
IMAGE_FILE_HEADER FileHeader;
|
|
IMAGE_ROM_OPTIONAL_HEADER OptionalHeader;
|
|
} IMAGE_ROM_HEADERS,*PIMAGE_ROM_HEADERS;
|
|
typedef IMAGE_NT_HEADERS64 IMAGE_NT_HEADERS;
|
|
typedef PIMAGE_NT_HEADERS64 PIMAGE_NT_HEADERS;
|
|
typedef struct ANON_OBJECT_HEADER {
|
|
WORD Sig1;
|
|
WORD Sig2;
|
|
WORD Version;
|
|
WORD Machine;
|
|
DWORD TimeDateStamp;
|
|
CLSID ClassID;
|
|
DWORD SizeOfData;
|
|
} ANON_OBJECT_HEADER;
|
|
typedef struct ANON_OBJECT_HEADER_V2 {
|
|
WORD Sig1;
|
|
WORD Sig2;
|
|
WORD Version;
|
|
WORD Machine;
|
|
DWORD TimeDateStamp;
|
|
CLSID ClassID;
|
|
DWORD SizeOfData;
|
|
DWORD Flags;
|
|
DWORD MetaDataSize;
|
|
DWORD MetaDataOffset;
|
|
} ANON_OBJECT_HEADER_V2;
|
|
typedef struct ANON_OBJECT_HEADER_BIGOBJ {
|
|
WORD Sig1;
|
|
WORD Sig2;
|
|
WORD Version;
|
|
WORD Machine;
|
|
DWORD TimeDateStamp;
|
|
CLSID ClassID;
|
|
DWORD SizeOfData;
|
|
DWORD Flags;
|
|
DWORD MetaDataSize;
|
|
DWORD MetaDataOffset;
|
|
DWORD NumberOfSections;
|
|
DWORD PointerToSymbolTable;
|
|
DWORD NumberOfSymbols;
|
|
} ANON_OBJECT_HEADER_BIGOBJ;
|
|
typedef struct _IMAGE_SECTION_HEADER {
|
|
BYTE Name[8];
|
|
union {
|
|
DWORD PhysicalAddress;
|
|
DWORD VirtualSize;
|
|
} Misc;
|
|
DWORD VirtualAddress;
|
|
DWORD SizeOfRawData;
|
|
DWORD PointerToRawData;
|
|
DWORD PointerToRelocations;
|
|
DWORD PointerToLinenumbers;
|
|
WORD NumberOfRelocations;
|
|
WORD NumberOfLinenumbers;
|
|
DWORD Characteristics;
|
|
} IMAGE_SECTION_HEADER,*PIMAGE_SECTION_HEADER;
|
|
#pragma pack(push,2)
|
|
typedef struct _IMAGE_SYMBOL {
|
|
union {
|
|
BYTE ShortName[8];
|
|
struct {
|
|
DWORD Short;
|
|
DWORD Long;
|
|
} Name;
|
|
DWORD LongName[2];
|
|
} N;
|
|
DWORD Value;
|
|
SHORT SectionNumber;
|
|
WORD Type;
|
|
BYTE StorageClass;
|
|
BYTE NumberOfAuxSymbols;
|
|
} IMAGE_SYMBOL;
|
|
typedef IMAGE_SYMBOL *PIMAGE_SYMBOL;
|
|
typedef struct _IMAGE_SYMBOL_EX {
|
|
union {
|
|
BYTE ShortName[8];
|
|
struct {
|
|
DWORD Short;
|
|
DWORD Long;
|
|
} Name;
|
|
DWORD LongName[2];
|
|
} N;
|
|
DWORD Value;
|
|
LONG SectionNumber;
|
|
WORD Type;
|
|
BYTE StorageClass;
|
|
BYTE NumberOfAuxSymbols;
|
|
} IMAGE_SYMBOL_EX, *PIMAGE_SYMBOL_EX;
|
|
#pragma pack(push,2)
|
|
typedef struct IMAGE_AUX_SYMBOL_TOKEN_DEF {
|
|
BYTE bAuxType;
|
|
BYTE bReserved;
|
|
DWORD SymbolTableIndex;
|
|
BYTE rgbReserved[12];
|
|
} IMAGE_AUX_SYMBOL_TOKEN_DEF, *PIMAGE_AUX_SYMBOL_TOKEN_DEF;
|
|
#pragma pack(pop)
|
|
typedef union _IMAGE_AUX_SYMBOL {
|
|
struct {
|
|
DWORD TagIndex;
|
|
union {
|
|
struct {
|
|
WORD Linenumber;
|
|
WORD Size;
|
|
} LnSz;
|
|
DWORD TotalSize;
|
|
} Misc;
|
|
union {
|
|
struct {
|
|
DWORD PointerToLinenumber;
|
|
DWORD PointerToNextFunction;
|
|
} Function;
|
|
struct {
|
|
WORD Dimension[4];
|
|
} Array;
|
|
} FcnAry;
|
|
WORD TvIndex;
|
|
} Sym;
|
|
struct {
|
|
BYTE Name[18];
|
|
} File;
|
|
struct {
|
|
DWORD Length;
|
|
WORD NumberOfRelocations;
|
|
WORD NumberOfLinenumbers;
|
|
DWORD CheckSum;
|
|
SHORT Number;
|
|
BYTE Selection;
|
|
} Section;
|
|
IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
|
|
struct {
|
|
DWORD crc;
|
|
BYTE rgbReserved[14];
|
|
} CRC;
|
|
} IMAGE_AUX_SYMBOL, *PIMAGE_AUX_SYMBOL;
|
|
typedef union _IMAGE_AUX_SYMBOL_EX {
|
|
struct {
|
|
DWORD WeakDefaultSymIndex;
|
|
DWORD WeakSearchType;
|
|
BYTE rgbReserved[12];
|
|
} Sym;
|
|
struct {
|
|
BYTE Name[sizeof (IMAGE_SYMBOL_EX)];
|
|
} File;
|
|
struct {
|
|
DWORD Length;
|
|
WORD NumberOfRelocations;
|
|
WORD NumberOfLinenumbers;
|
|
DWORD CheckSum;
|
|
SHORT Number;
|
|
BYTE Selection;
|
|
BYTE bReserved;
|
|
SHORT HighNumber;
|
|
BYTE rgbReserved[2];
|
|
} Section;
|
|
__extension__ struct {
|
|
IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
|
|
BYTE rgbReserved[2];
|
|
};
|
|
struct {
|
|
DWORD crc;
|
|
BYTE rgbReserved[16];
|
|
} CRC;
|
|
} IMAGE_AUX_SYMBOL_EX, *PIMAGE_AUX_SYMBOL_EX;
|
|
typedef enum IMAGE_AUX_SYMBOL_TYPE {
|
|
IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = 1
|
|
} IMAGE_AUX_SYMBOL_TYPE;
|
|
typedef struct _IMAGE_RELOCATION {
|
|
__extension__ union {
|
|
DWORD VirtualAddress;
|
|
DWORD RelocCount;
|
|
} ;
|
|
DWORD SymbolTableIndex;
|
|
WORD Type;
|
|
} IMAGE_RELOCATION;
|
|
typedef IMAGE_RELOCATION *PIMAGE_RELOCATION;
|
|
typedef struct _IMAGE_LINENUMBER {
|
|
union {
|
|
DWORD SymbolTableIndex;
|
|
DWORD VirtualAddress;
|
|
} Type;
|
|
WORD Linenumber;
|
|
} IMAGE_LINENUMBER;
|
|
typedef IMAGE_LINENUMBER *PIMAGE_LINENUMBER;
|
|
#pragma pack(pop)
|
|
typedef struct _IMAGE_BASE_RELOCATION {
|
|
DWORD VirtualAddress;
|
|
DWORD SizeOfBlock;
|
|
} IMAGE_BASE_RELOCATION;
|
|
typedef IMAGE_BASE_RELOCATION *PIMAGE_BASE_RELOCATION;
|
|
typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER {
|
|
BYTE Name[16];
|
|
BYTE Date[12];
|
|
BYTE UserID[6];
|
|
BYTE GroupID[6];
|
|
BYTE Mode[8];
|
|
BYTE Size[10];
|
|
BYTE EndHeader[2];
|
|
} IMAGE_ARCHIVE_MEMBER_HEADER,*PIMAGE_ARCHIVE_MEMBER_HEADER;
|
|
typedef struct _IMAGE_EXPORT_DIRECTORY {
|
|
DWORD Characteristics;
|
|
DWORD TimeDateStamp;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
DWORD Name;
|
|
DWORD Base;
|
|
DWORD NumberOfFunctions;
|
|
DWORD NumberOfNames;
|
|
DWORD AddressOfFunctions;
|
|
DWORD AddressOfNames;
|
|
DWORD AddressOfNameOrdinals;
|
|
} IMAGE_EXPORT_DIRECTORY,*PIMAGE_EXPORT_DIRECTORY;
|
|
typedef struct _IMAGE_IMPORT_BY_NAME {
|
|
WORD Hint;
|
|
CHAR Name[1];
|
|
} IMAGE_IMPORT_BY_NAME,*PIMAGE_IMPORT_BY_NAME;
|
|
#pragma pack(push,8)
|
|
typedef struct _IMAGE_THUNK_DATA64 {
|
|
union {
|
|
ULONGLONG ForwarderString;
|
|
ULONGLONG Function;
|
|
ULONGLONG Ordinal;
|
|
ULONGLONG AddressOfData;
|
|
} u1;
|
|
} IMAGE_THUNK_DATA64;
|
|
typedef IMAGE_THUNK_DATA64 *PIMAGE_THUNK_DATA64;
|
|
#pragma pack(pop)
|
|
typedef struct _IMAGE_THUNK_DATA32 {
|
|
union {
|
|
DWORD ForwarderString;
|
|
DWORD Function;
|
|
DWORD Ordinal;
|
|
DWORD AddressOfData;
|
|
} u1;
|
|
} IMAGE_THUNK_DATA32;
|
|
typedef IMAGE_THUNK_DATA32 *PIMAGE_THUNK_DATA32;
|
|
typedef void ( *PIMAGE_TLS_CALLBACK)(PVOID DllHandle,DWORD Reason,PVOID Reserved);
|
|
typedef struct _IMAGE_TLS_DIRECTORY64 {
|
|
ULONGLONG StartAddressOfRawData;
|
|
ULONGLONG EndAddressOfRawData;
|
|
ULONGLONG AddressOfIndex;
|
|
ULONGLONG AddressOfCallBacks;
|
|
DWORD SizeOfZeroFill;
|
|
DWORD Characteristics;
|
|
} IMAGE_TLS_DIRECTORY64;
|
|
typedef IMAGE_TLS_DIRECTORY64 *PIMAGE_TLS_DIRECTORY64;
|
|
typedef struct _IMAGE_TLS_DIRECTORY32 {
|
|
DWORD StartAddressOfRawData;
|
|
DWORD EndAddressOfRawData;
|
|
DWORD AddressOfIndex;
|
|
DWORD AddressOfCallBacks;
|
|
DWORD SizeOfZeroFill;
|
|
DWORD Characteristics;
|
|
} IMAGE_TLS_DIRECTORY32;
|
|
typedef IMAGE_TLS_DIRECTORY32 *PIMAGE_TLS_DIRECTORY32;
|
|
typedef IMAGE_THUNK_DATA64 IMAGE_THUNK_DATA;
|
|
typedef PIMAGE_THUNK_DATA64 PIMAGE_THUNK_DATA;
|
|
typedef IMAGE_TLS_DIRECTORY64 IMAGE_TLS_DIRECTORY;
|
|
typedef PIMAGE_TLS_DIRECTORY64 PIMAGE_TLS_DIRECTORY;
|
|
typedef struct _IMAGE_IMPORT_DESCRIPTOR {
|
|
__extension__ union {
|
|
DWORD Characteristics;
|
|
DWORD OriginalFirstThunk;
|
|
} ;
|
|
DWORD TimeDateStamp;
|
|
DWORD ForwarderChain;
|
|
DWORD Name;
|
|
DWORD FirstThunk;
|
|
} IMAGE_IMPORT_DESCRIPTOR;
|
|
typedef IMAGE_IMPORT_DESCRIPTOR *PIMAGE_IMPORT_DESCRIPTOR;
|
|
typedef struct _IMAGE_BOUND_IMPORT_DESCRIPTOR {
|
|
DWORD TimeDateStamp;
|
|
WORD OffsetModuleName;
|
|
WORD NumberOfModuleForwarderRefs;
|
|
} IMAGE_BOUND_IMPORT_DESCRIPTOR,*PIMAGE_BOUND_IMPORT_DESCRIPTOR;
|
|
typedef struct _IMAGE_BOUND_FORWARDER_REF {
|
|
DWORD TimeDateStamp;
|
|
WORD OffsetModuleName;
|
|
WORD Reserved;
|
|
} IMAGE_BOUND_FORWARDER_REF,*PIMAGE_BOUND_FORWARDER_REF;
|
|
typedef struct _IMAGE_DELAYLOAD_DESCRIPTOR {
|
|
union {
|
|
DWORD AllAttributes;
|
|
__extension__ struct {
|
|
DWORD RvaBased : 1;
|
|
DWORD ReservedAttributes : 31;
|
|
};
|
|
} Attributes;
|
|
DWORD DllNameRVA;
|
|
DWORD ModuleHandleRVA;
|
|
DWORD ImportAddressTableRVA;
|
|
DWORD ImportNameTableRVA;
|
|
DWORD BoundImportAddressTableRVA;
|
|
DWORD UnloadInformationTableRVA;
|
|
DWORD TimeDateStamp;
|
|
} IMAGE_DELAYLOAD_DESCRIPTOR,*PIMAGE_DELAYLOAD_DESCRIPTOR;
|
|
typedef const IMAGE_DELAYLOAD_DESCRIPTOR *PCIMAGE_DELAYLOAD_DESCRIPTOR;
|
|
typedef struct _IMAGE_RESOURCE_DIRECTORY {
|
|
DWORD Characteristics;
|
|
DWORD TimeDateStamp;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
WORD NumberOfNamedEntries;
|
|
WORD NumberOfIdEntries;
|
|
} IMAGE_RESOURCE_DIRECTORY,*PIMAGE_RESOURCE_DIRECTORY;
|
|
typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY {
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
DWORD NameOffset:31;
|
|
DWORD NameIsString:1;
|
|
} ;
|
|
DWORD Name;
|
|
WORD Id;
|
|
} ;
|
|
__extension__ union {
|
|
DWORD OffsetToData;
|
|
__extension__ struct {
|
|
DWORD OffsetToDirectory:31;
|
|
DWORD DataIsDirectory:1;
|
|
} ;
|
|
} ;
|
|
} IMAGE_RESOURCE_DIRECTORY_ENTRY,*PIMAGE_RESOURCE_DIRECTORY_ENTRY;
|
|
typedef struct _IMAGE_RESOURCE_DIRECTORY_STRING {
|
|
WORD Length;
|
|
CHAR NameString[1];
|
|
} IMAGE_RESOURCE_DIRECTORY_STRING,*PIMAGE_RESOURCE_DIRECTORY_STRING;
|
|
typedef struct _IMAGE_RESOURCE_DIR_STRING_U {
|
|
WORD Length;
|
|
WCHAR NameString[1];
|
|
} IMAGE_RESOURCE_DIR_STRING_U,*PIMAGE_RESOURCE_DIR_STRING_U;
|
|
typedef struct _IMAGE_RESOURCE_DATA_ENTRY {
|
|
DWORD OffsetToData;
|
|
DWORD Size;
|
|
DWORD CodePage;
|
|
DWORD Reserved;
|
|
} IMAGE_RESOURCE_DATA_ENTRY,*PIMAGE_RESOURCE_DATA_ENTRY;
|
|
typedef struct {
|
|
DWORD Size;
|
|
DWORD TimeDateStamp;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
DWORD GlobalFlagsClear;
|
|
DWORD GlobalFlagsSet;
|
|
DWORD CriticalSectionDefaultTimeout;
|
|
DWORD DeCommitFreeBlockThreshold;
|
|
DWORD DeCommitTotalFreeThreshold;
|
|
DWORD LockPrefixTable;
|
|
DWORD MaximumAllocationSize;
|
|
DWORD VirtualMemoryThreshold;
|
|
DWORD ProcessHeapFlags;
|
|
DWORD ProcessAffinityMask;
|
|
WORD CSDVersion;
|
|
WORD Reserved1;
|
|
DWORD EditList;
|
|
DWORD SecurityCookie;
|
|
DWORD SEHandlerTable;
|
|
DWORD SEHandlerCount;
|
|
} IMAGE_LOAD_CONFIG_DIRECTORY32,*PIMAGE_LOAD_CONFIG_DIRECTORY32;
|
|
typedef struct {
|
|
DWORD Size;
|
|
DWORD TimeDateStamp;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
DWORD GlobalFlagsClear;
|
|
DWORD GlobalFlagsSet;
|
|
DWORD CriticalSectionDefaultTimeout;
|
|
ULONGLONG DeCommitFreeBlockThreshold;
|
|
ULONGLONG DeCommitTotalFreeThreshold;
|
|
ULONGLONG LockPrefixTable;
|
|
ULONGLONG MaximumAllocationSize;
|
|
ULONGLONG VirtualMemoryThreshold;
|
|
ULONGLONG ProcessAffinityMask;
|
|
DWORD ProcessHeapFlags;
|
|
WORD CSDVersion;
|
|
WORD Reserved1;
|
|
ULONGLONG EditList;
|
|
ULONGLONG SecurityCookie;
|
|
ULONGLONG SEHandlerTable;
|
|
ULONGLONG SEHandlerCount;
|
|
} IMAGE_LOAD_CONFIG_DIRECTORY64,*PIMAGE_LOAD_CONFIG_DIRECTORY64;
|
|
typedef IMAGE_LOAD_CONFIG_DIRECTORY64 IMAGE_LOAD_CONFIG_DIRECTORY;
|
|
typedef PIMAGE_LOAD_CONFIG_DIRECTORY64 PIMAGE_LOAD_CONFIG_DIRECTORY;
|
|
typedef struct _IMAGE_CE_RUNTIME_FUNCTION_ENTRY {
|
|
DWORD FuncStart;
|
|
DWORD PrologLen : 8;
|
|
DWORD FuncLen : 22;
|
|
DWORD ThirtyTwoBit : 1;
|
|
DWORD ExceptionFlag : 1;
|
|
} IMAGE_CE_RUNTIME_FUNCTION_ENTRY,*PIMAGE_CE_RUNTIME_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY {
|
|
ULONGLONG BeginAddress;
|
|
ULONGLONG EndAddress;
|
|
ULONGLONG ExceptionHandler;
|
|
ULONGLONG HandlerData;
|
|
ULONGLONG PrologEndAddress;
|
|
} IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY {
|
|
DWORD BeginAddress;
|
|
DWORD EndAddress;
|
|
DWORD ExceptionHandler;
|
|
DWORD HandlerData;
|
|
DWORD PrologEndAddress;
|
|
} IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_ARM_RUNTIME_FUNCTION_ENTRY {
|
|
DWORD BeginAddress;
|
|
__extension__ union {
|
|
DWORD UnwindData;
|
|
__extension__ struct {
|
|
DWORD Flag : 2;
|
|
DWORD FunctionLength : 11;
|
|
DWORD Ret : 2;
|
|
DWORD H : 1;
|
|
DWORD Reg : 3;
|
|
DWORD R : 1;
|
|
DWORD L : 1;
|
|
DWORD C : 1;
|
|
DWORD StackAdjust : 10;
|
|
} ;
|
|
} ;
|
|
} IMAGE_ARM_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ARM_RUNTIME_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY {
|
|
DWORD BeginAddress;
|
|
__extension__ union {
|
|
DWORD UnwindData;
|
|
__extension__ struct {
|
|
DWORD Flag : 2;
|
|
DWORD FunctionLength : 11;
|
|
DWORD RegF : 3;
|
|
DWORD RegI : 4;
|
|
DWORD H : 1;
|
|
DWORD CR : 2;
|
|
DWORD FrameSize : 9;
|
|
} ;
|
|
} ;
|
|
} IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY,*PIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY {
|
|
DWORD BeginAddress;
|
|
DWORD EndAddress;
|
|
__extension__ union {
|
|
DWORD UnwindInfoAddress;
|
|
DWORD UnwindData;
|
|
} ;
|
|
} _IMAGE_RUNTIME_FUNCTION_ENTRY,*_PIMAGE_RUNTIME_FUNCTION_ENTRY;
|
|
typedef _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
|
|
typedef _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
|
|
typedef _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_RUNTIME_FUNCTION_ENTRY;
|
|
typedef _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_RUNTIME_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_DEBUG_DIRECTORY {
|
|
DWORD Characteristics;
|
|
DWORD TimeDateStamp;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
DWORD Type;
|
|
DWORD SizeOfData;
|
|
DWORD AddressOfRawData;
|
|
DWORD PointerToRawData;
|
|
} IMAGE_DEBUG_DIRECTORY,*PIMAGE_DEBUG_DIRECTORY;
|
|
typedef struct _IMAGE_COFF_SYMBOLS_HEADER {
|
|
DWORD NumberOfSymbols;
|
|
DWORD LvaToFirstSymbol;
|
|
DWORD NumberOfLinenumbers;
|
|
DWORD LvaToFirstLinenumber;
|
|
DWORD RvaToFirstByteOfCode;
|
|
DWORD RvaToLastByteOfCode;
|
|
DWORD RvaToFirstByteOfData;
|
|
DWORD RvaToLastByteOfData;
|
|
} IMAGE_COFF_SYMBOLS_HEADER,*PIMAGE_COFF_SYMBOLS_HEADER;
|
|
typedef struct _FPO_DATA {
|
|
DWORD ulOffStart;
|
|
DWORD cbProcSize;
|
|
DWORD cdwLocals;
|
|
WORD cdwParams;
|
|
WORD cbProlog : 8;
|
|
WORD cbRegs : 3;
|
|
WORD fHasSEH : 1;
|
|
WORD fUseBP : 1;
|
|
WORD reserved : 1;
|
|
WORD cbFrame : 2;
|
|
} FPO_DATA,*PFPO_DATA;
|
|
typedef struct _IMAGE_DEBUG_MISC {
|
|
DWORD DataType;
|
|
DWORD Length;
|
|
BOOLEAN Unicode;
|
|
BYTE Reserved[3];
|
|
BYTE Data[1];
|
|
} IMAGE_DEBUG_MISC,*PIMAGE_DEBUG_MISC;
|
|
typedef struct _IMAGE_FUNCTION_ENTRY {
|
|
DWORD StartingAddress;
|
|
DWORD EndingAddress;
|
|
DWORD EndOfPrologue;
|
|
} IMAGE_FUNCTION_ENTRY,*PIMAGE_FUNCTION_ENTRY;
|
|
typedef struct _IMAGE_FUNCTION_ENTRY64 {
|
|
ULONGLONG StartingAddress;
|
|
ULONGLONG EndingAddress;
|
|
__extension__ union {
|
|
ULONGLONG EndOfPrologue;
|
|
ULONGLONG UnwindInfoAddress;
|
|
} ;
|
|
} IMAGE_FUNCTION_ENTRY64,*PIMAGE_FUNCTION_ENTRY64;
|
|
typedef struct _IMAGE_SEPARATE_DEBUG_HEADER {
|
|
WORD Signature;
|
|
WORD Flags;
|
|
WORD Machine;
|
|
WORD Characteristics;
|
|
DWORD TimeDateStamp;
|
|
DWORD CheckSum;
|
|
DWORD ImageBase;
|
|
DWORD SizeOfImage;
|
|
DWORD NumberOfSections;
|
|
DWORD ExportedNamesSize;
|
|
DWORD DebugDirectorySize;
|
|
DWORD SectionAlignment;
|
|
DWORD Reserved[2];
|
|
} IMAGE_SEPARATE_DEBUG_HEADER,*PIMAGE_SEPARATE_DEBUG_HEADER;
|
|
typedef struct _NON_PAGED_DEBUG_INFO {
|
|
WORD Signature;
|
|
WORD Flags;
|
|
DWORD Size;
|
|
WORD Machine;
|
|
WORD Characteristics;
|
|
DWORD TimeDateStamp;
|
|
DWORD CheckSum;
|
|
DWORD SizeOfImage;
|
|
ULONGLONG ImageBase;
|
|
} NON_PAGED_DEBUG_INFO,*PNON_PAGED_DEBUG_INFO;
|
|
typedef struct _ImageArchitectureHeader {
|
|
unsigned int AmaskValue: 1;
|
|
int Adummy1 : 7;
|
|
unsigned int AmaskShift : 8;
|
|
int Adummy2 : 16;
|
|
DWORD FirstEntryRVA;
|
|
} IMAGE_ARCHITECTURE_HEADER,*PIMAGE_ARCHITECTURE_HEADER;
|
|
typedef struct _ImageArchitectureEntry {
|
|
DWORD FixupInstRVA;
|
|
DWORD NewInst;
|
|
} IMAGE_ARCHITECTURE_ENTRY,*PIMAGE_ARCHITECTURE_ENTRY;
|
|
#pragma pack(pop)
|
|
typedef struct IMPORT_OBJECT_HEADER {
|
|
WORD Sig1;
|
|
WORD Sig2;
|
|
WORD Version;
|
|
WORD Machine;
|
|
DWORD TimeDateStamp;
|
|
DWORD SizeOfData;
|
|
__extension__ union {
|
|
WORD Ordinal;
|
|
WORD Hint;
|
|
};
|
|
WORD Type : 2;
|
|
WORD NameType : 3;
|
|
WORD Reserved : 11;
|
|
} IMPORT_OBJECT_HEADER;
|
|
typedef enum IMPORT_OBJECT_TYPE {
|
|
IMPORT_OBJECT_CODE = 0,IMPORT_OBJECT_DATA = 1,IMPORT_OBJECT_CONST = 2
|
|
} IMPORT_OBJECT_TYPE;
|
|
typedef enum IMPORT_OBJECT_NAME_TYPE {
|
|
IMPORT_OBJECT_ORDINAL = 0,IMPORT_OBJECT_NAME = 1,IMPORT_OBJECT_NAME_NO_PREFIX = 2,IMPORT_OBJECT_NAME_UNDECORATE = 3
|
|
} IMPORT_OBJECT_NAME_TYPE;
|
|
typedef enum ReplacesCorHdrNumericDefines {
|
|
COMIMAGE_FLAGS_ILONLY = 0x00000001,COMIMAGE_FLAGS_32BITREQUIRED = 0x00000002,COMIMAGE_FLAGS_IL_LIBRARY = 0x00000004,
|
|
COMIMAGE_FLAGS_STRONGNAMESIGNED = 0x00000008,COMIMAGE_FLAGS_TRACKDEBUGDATA = 0x00010000,COR_VERSION_MAJOR_V2 = 2,
|
|
COR_VERSION_MAJOR = COR_VERSION_MAJOR_V2,COR_VERSION_MINOR = 0,COR_DELETED_NAME_LENGTH = 8,COR_VTABLEGAP_NAME_LENGTH = 8,
|
|
NATIVE_TYPE_MAX_CB = 1,COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE= 0xFF,IMAGE_COR_MIH_METHODRVA = 0x01,IMAGE_COR_MIH_EHRVA = 0x02,
|
|
IMAGE_COR_MIH_BASICBLOCK = 0x08,COR_VTABLE_32BIT =0x01,COR_VTABLE_64BIT =0x02,COR_VTABLE_FROM_UNMANAGED = 0x04,
|
|
COR_VTABLE_CALL_MOST_DERIVED = 0x10,IMAGE_COR_EATJ_THUNK_SIZE = 32,MAX_CLASS_NAME =1024,MAX_PACKAGE_NAME = 1024
|
|
} ReplacesCorHdrNumericDefines;
|
|
typedef struct IMAGE_COR20_HEADER {
|
|
DWORD cb;
|
|
WORD MajorRuntimeVersion;
|
|
WORD MinorRuntimeVersion;
|
|
IMAGE_DATA_DIRECTORY MetaData;
|
|
DWORD Flags;
|
|
__extension__ union {
|
|
DWORD EntryPointToken;
|
|
DWORD EntryPointRVA;
|
|
} ;
|
|
IMAGE_DATA_DIRECTORY Resources;
|
|
IMAGE_DATA_DIRECTORY StrongNameSignature;
|
|
IMAGE_DATA_DIRECTORY CodeManagerTable;
|
|
IMAGE_DATA_DIRECTORY VTableFixups;
|
|
IMAGE_DATA_DIRECTORY ExportAddressTableJumps;
|
|
IMAGE_DATA_DIRECTORY ManagedNativeHeader;
|
|
} IMAGE_COR20_HEADER,*PIMAGE_COR20_HEADER;
|
|
__attribute__((dllimport)) WORD RtlCaptureStackBackTrace (DWORD FramesToSkip, DWORD FramesToCapture, PVOID *BackTrace, PDWORD BackTraceHash);
|
|
__attribute__((dllimport)) void RtlCaptureContext (PCONTEXT ContextRecord);
|
|
__attribute__((dllimport)) SIZE_T RtlCompareMemory (const void *Source1, const void *Source2, SIZE_T Length);
|
|
__attribute__((dllimport)) BOOLEAN __attribute__((__cdecl__)) RtlAddFunctionTable (PRUNTIME_FUNCTION FunctionTable, DWORD EntryCount, DWORD64 BaseAddress);
|
|
__attribute__((dllimport)) BOOLEAN __attribute__((__cdecl__)) RtlDeleteFunctionTable (PRUNTIME_FUNCTION FunctionTable);
|
|
__attribute__((dllimport)) BOOLEAN __attribute__((__cdecl__)) RtlInstallFunctionTableCallback (DWORD64 TableIdentifier, DWORD64 BaseAddress, DWORD Length, PGET_RUNTIME_FUNCTION_CALLBACK Callback, PVOID Context, PCWSTR OutOfProcessCallbackDll);
|
|
__attribute__((dllimport)) void __attribute__((__cdecl__)) RtlRestoreContext (PCONTEXT ContextRecord, struct _EXCEPTION_RECORD *ExceptionRecord);
|
|
__attribute__((dllimport)) PEXCEPTION_ROUTINE RtlVirtualUnwind (DWORD HandlerType, DWORD64 ImageBase, DWORD64 ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD64 EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
|
|
__attribute__((dllimport)) void RtlUnwind (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue);
|
|
__attribute__((dllimport)) PVOID RtlPcToFileHeader (PVOID PcValue, PVOID *BaseOfImage);
|
|
__attribute__((dllimport)) PRUNTIME_FUNCTION RtlLookupFunctionEntry (DWORD64 ControlPc, PDWORD64 ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);
|
|
__attribute__((dllimport)) void RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);
|
|
typedef struct __attribute__ ((__aligned__ (16))) _SLIST_ENTRY {
|
|
struct _SLIST_ENTRY *Next;
|
|
} SLIST_ENTRY,*PSLIST_ENTRY;
|
|
typedef union __attribute__ ((__aligned__ (16))) _SLIST_HEADER {
|
|
__extension__ struct {
|
|
ULONGLONG Alignment;
|
|
ULONGLONG Region;
|
|
} ;
|
|
struct {
|
|
ULONGLONG Depth:16;
|
|
ULONGLONG Sequence:9;
|
|
ULONGLONG NextEntry:39;
|
|
ULONGLONG HeaderType:1;
|
|
ULONGLONG Init:1;
|
|
ULONGLONG Reserved:59;
|
|
ULONGLONG Region:3;
|
|
} Header8;
|
|
struct {
|
|
ULONGLONG Depth:16;
|
|
ULONGLONG Sequence:48;
|
|
ULONGLONG HeaderType:1;
|
|
ULONGLONG Reserved:3;
|
|
ULONGLONG NextEntry:60;
|
|
} HeaderX64;
|
|
} SLIST_HEADER,*PSLIST_HEADER;
|
|
__attribute__((dllimport)) void RtlInitializeSListHead (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) PSLIST_ENTRY RtlFirstEntrySList (const SLIST_HEADER *ListHead);
|
|
__attribute__((dllimport)) PSLIST_ENTRY RtlInterlockedPopEntrySList (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) PSLIST_ENTRY RtlInterlockedPushEntrySList (PSLIST_HEADER ListHead, PSLIST_ENTRY ListEntry);
|
|
__attribute__((dllimport)) PSLIST_ENTRY RtlInterlockedPushListSListEx (PSLIST_HEADER ListHead, PSLIST_ENTRY List, PSLIST_ENTRY ListEnd, DWORD Count);
|
|
__attribute__((dllimport)) PSLIST_ENTRY RtlInterlockedFlushSList (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) WORD RtlQueryDepthSList (PSLIST_HEADER ListHead);
|
|
typedef struct _RTL_RUN_ONCE { PVOID Ptr; } RTL_RUN_ONCE, *PRTL_RUN_ONCE;
|
|
typedef DWORD ( *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *);
|
|
typedef struct _RTL_BARRIER {
|
|
DWORD Reserved1;
|
|
DWORD Reserved2;
|
|
ULONG_PTR Reserved3[2];
|
|
DWORD Reserved4;
|
|
DWORD Reserved5;
|
|
} RTL_BARRIER,*PRTL_BARRIER;
|
|
PVOID RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt);
|
|
typedef struct _MESSAGE_RESOURCE_ENTRY {
|
|
WORD Length;
|
|
WORD Flags;
|
|
BYTE Text[1];
|
|
} MESSAGE_RESOURCE_ENTRY,*PMESSAGE_RESOURCE_ENTRY;
|
|
typedef struct _MESSAGE_RESOURCE_BLOCK {
|
|
DWORD LowId;
|
|
DWORD HighId;
|
|
DWORD OffsetToEntries;
|
|
} MESSAGE_RESOURCE_BLOCK,*PMESSAGE_RESOURCE_BLOCK;
|
|
typedef struct _MESSAGE_RESOURCE_DATA {
|
|
DWORD NumberOfBlocks;
|
|
MESSAGE_RESOURCE_BLOCK Blocks[1];
|
|
} MESSAGE_RESOURCE_DATA,*PMESSAGE_RESOURCE_DATA;
|
|
typedef struct _OSVERSIONINFOA {
|
|
DWORD dwOSVersionInfoSize;
|
|
DWORD dwMajorVersion;
|
|
DWORD dwMinorVersion;
|
|
DWORD dwBuildNumber;
|
|
DWORD dwPlatformId;
|
|
CHAR szCSDVersion[128];
|
|
} OSVERSIONINFOA,*POSVERSIONINFOA,*LPOSVERSIONINFOA;
|
|
typedef struct _OSVERSIONINFOW {
|
|
DWORD dwOSVersionInfoSize;
|
|
DWORD dwMajorVersion;
|
|
DWORD dwMinorVersion;
|
|
DWORD dwBuildNumber;
|
|
DWORD dwPlatformId;
|
|
WCHAR szCSDVersion[128];
|
|
} OSVERSIONINFOW,*POSVERSIONINFOW,*LPOSVERSIONINFOW,RTL_OSVERSIONINFOW,*PRTL_OSVERSIONINFOW;
|
|
typedef OSVERSIONINFOA OSVERSIONINFO;
|
|
typedef POSVERSIONINFOA POSVERSIONINFO;
|
|
typedef LPOSVERSIONINFOA LPOSVERSIONINFO;
|
|
typedef struct _OSVERSIONINFOEXA {
|
|
DWORD dwOSVersionInfoSize;
|
|
DWORD dwMajorVersion;
|
|
DWORD dwMinorVersion;
|
|
DWORD dwBuildNumber;
|
|
DWORD dwPlatformId;
|
|
CHAR szCSDVersion[128];
|
|
WORD wServicePackMajor;
|
|
WORD wServicePackMinor;
|
|
WORD wSuiteMask;
|
|
BYTE wProductType;
|
|
BYTE wReserved;
|
|
} OSVERSIONINFOEXA,*POSVERSIONINFOEXA,*LPOSVERSIONINFOEXA;
|
|
typedef struct _OSVERSIONINFOEXW {
|
|
DWORD dwOSVersionInfoSize;
|
|
DWORD dwMajorVersion;
|
|
DWORD dwMinorVersion;
|
|
DWORD dwBuildNumber;
|
|
DWORD dwPlatformId;
|
|
WCHAR szCSDVersion[128];
|
|
WORD wServicePackMajor;
|
|
WORD wServicePackMinor;
|
|
WORD wSuiteMask;
|
|
BYTE wProductType;
|
|
BYTE wReserved;
|
|
} OSVERSIONINFOEXW,*POSVERSIONINFOEXW,*LPOSVERSIONINFOEXW,RTL_OSVERSIONINFOEXW,*PRTL_OSVERSIONINFOEXW;
|
|
typedef OSVERSIONINFOEXA OSVERSIONINFOEX;
|
|
typedef POSVERSIONINFOEXA POSVERSIONINFOEX;
|
|
typedef LPOSVERSIONINFOEXA LPOSVERSIONINFOEX;
|
|
__attribute__((dllimport)) ULONGLONG VerSetConditionMask (ULONGLONG ConditionMask, DWORD TypeMask, BYTE Condition);
|
|
typedef enum _RTL_UMS_THREAD_INFO_CLASS {
|
|
UmsThreadInvalidInfoClass = 0,
|
|
UmsThreadUserContext,
|
|
UmsThreadPriority,
|
|
UmsThreadAffinity,
|
|
UmsThreadTeb,
|
|
UmsThreadIsSuspended,
|
|
UmsThreadIsTerminated,
|
|
UmsThreadMaxInfoClass
|
|
} RTL_UMS_THREAD_INFO_CLASS,*PRTL_UMS_THREAD_INFO_CLASS;
|
|
typedef enum _RTL_UMS_SCHEDULER_REASON {
|
|
UmsSchedulerStartup = 0,
|
|
UmsSchedulerThreadBlocked,
|
|
UmsSchedulerThreadYield,
|
|
} RTL_UMS_SCHEDULER_REASON,*PRTL_UMS_SCHEDULER_REASON;
|
|
typedef void RTL_UMS_SCHEDULER_ENTRY_POINT (RTL_UMS_SCHEDULER_REASON Reason, ULONG_PTR ActivationPayload, PVOID SchedulerParam);
|
|
typedef RTL_UMS_SCHEDULER_ENTRY_POINT *PRTL_UMS_SCHEDULER_ENTRY_POINT;
|
|
typedef struct _RTL_CRITICAL_SECTION_DEBUG {
|
|
WORD Type;
|
|
WORD CreatorBackTraceIndex;
|
|
struct _RTL_CRITICAL_SECTION *CriticalSection;
|
|
LIST_ENTRY ProcessLocksList;
|
|
DWORD EntryCount;
|
|
DWORD ContentionCount;
|
|
DWORD Flags;
|
|
WORD CreatorBackTraceIndexHigh;
|
|
WORD SpareWORD;
|
|
} RTL_CRITICAL_SECTION_DEBUG,*PRTL_CRITICAL_SECTION_DEBUG,RTL_RESOURCE_DEBUG,*PRTL_RESOURCE_DEBUG;
|
|
#pragma pack(push,8)
|
|
typedef struct _RTL_CRITICAL_SECTION {
|
|
PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
|
|
LONG LockCount;
|
|
LONG RecursionCount;
|
|
HANDLE OwningThread;
|
|
HANDLE LockSemaphore;
|
|
ULONG_PTR SpinCount;
|
|
} RTL_CRITICAL_SECTION,*PRTL_CRITICAL_SECTION;
|
|
#pragma pack(pop)
|
|
typedef struct _RTL_SRWLOCK { PVOID Ptr; } RTL_SRWLOCK,*PRTL_SRWLOCK;
|
|
typedef struct _RTL_CONDITION_VARIABLE { PVOID Ptr; } RTL_CONDITION_VARIABLE,*PRTL_CONDITION_VARIABLE;
|
|
typedef void ( *PAPCFUNC) (ULONG_PTR Parameter);
|
|
typedef LONG ( *PVECTORED_EXCEPTION_HANDLER) (struct _EXCEPTION_POINTERS *ExceptionInfo);
|
|
typedef enum _HEAP_INFORMATION_CLASS {
|
|
HeapCompatibilityInformation,
|
|
HeapEnableTerminationOnCorruption
|
|
} HEAP_INFORMATION_CLASS;
|
|
typedef void ( *WORKERCALLBACKFUNC) (PVOID);
|
|
typedef void ( *APC_CALLBACK_FUNCTION) (DWORD, PVOID, PVOID);
|
|
typedef void ( *WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN);
|
|
typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK;
|
|
typedef void ( *PFLS_CALLBACK_FUNCTION) (PVOID lpFlsData);
|
|
typedef BOOLEAN ( *PSECURE_MEMORY_CACHE_CALLBACK) (PVOID Addr, SIZE_T Range);
|
|
typedef enum _ACTIVATION_CONTEXT_INFO_CLASS {
|
|
ActivationContextBasicInformation = 1,
|
|
ActivationContextDetailedInformation = 2,
|
|
AssemblyDetailedInformationInActivationContext = 3,
|
|
FileInformationInAssemblyOfAssemblyInActivationContext = 4,
|
|
RunlevelInformationInActivationContext = 5,
|
|
CompatibilityInformationInActivationContext = 6,
|
|
ActivationContextManifestResourceName = 7,
|
|
MaxActivationContextInfoClass,
|
|
AssemblyDetailedInformationInActivationContxt = 3,
|
|
FileInformationInAssemblyOfAssemblyInActivationContxt = 4
|
|
} ACTIVATION_CONTEXT_INFO_CLASS;
|
|
typedef enum {
|
|
ACTCTX_RUN_LEVEL_UNSPECIFIED = 0,
|
|
ACTCTX_RUN_LEVEL_AS_INVOKER,
|
|
ACTCTX_RUN_LEVEL_HIGHEST_AVAILABLE,
|
|
ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
|
|
ACTCTX_RUN_LEVEL_NUMBERS
|
|
} ACTCTX_REQUESTED_RUN_LEVEL;
|
|
typedef enum {
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_UNKNOWN = 0,
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS,
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MITIGATION
|
|
} ACTCTX_COMPATIBILITY_ELEMENT_TYPE;
|
|
typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX {
|
|
DWORD ulAssemblyIndex;
|
|
DWORD ulFileIndexInAssembly;
|
|
} ACTIVATION_CONTEXT_QUERY_INDEX,*PACTIVATION_CONTEXT_QUERY_INDEX;
|
|
typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
|
|
DWORD ulFlags;
|
|
DWORD ulFilenameLength;
|
|
DWORD ulPathLength;
|
|
PCWSTR lpFileName;
|
|
PCWSTR lpFilePath;
|
|
} ASSEMBLY_FILE_DETAILED_INFORMATION,*PASSEMBLY_FILE_DETAILED_INFORMATION;
|
|
typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
|
|
DWORD ulFlags;
|
|
DWORD ulEncodedAssemblyIdentityLength;
|
|
DWORD ulManifestPathType;
|
|
DWORD ulManifestPathLength;
|
|
LARGE_INTEGER liManifestLastWriteTime;
|
|
DWORD ulPolicyPathType;
|
|
DWORD ulPolicyPathLength;
|
|
LARGE_INTEGER liPolicyLastWriteTime;
|
|
DWORD ulMetadataSatelliteRosterIndex;
|
|
DWORD ulManifestVersionMajor;
|
|
DWORD ulManifestVersionMinor;
|
|
DWORD ulPolicyVersionMajor;
|
|
DWORD ulPolicyVersionMinor;
|
|
DWORD ulAssemblyDirectoryNameLength;
|
|
PCWSTR lpAssemblyEncodedAssemblyIdentity;
|
|
PCWSTR lpAssemblyManifestPath;
|
|
PCWSTR lpAssemblyPolicyPath;
|
|
PCWSTR lpAssemblyDirectoryName;
|
|
DWORD ulFileCount;
|
|
} ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
|
|
typedef struct _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION {
|
|
DWORD ulFlags;
|
|
ACTCTX_REQUESTED_RUN_LEVEL RunLevel;
|
|
DWORD UiAccess;
|
|
} ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION,*PACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION;
|
|
typedef struct _COMPATIBILITY_CONTEXT_ELEMENT {
|
|
GUID Id;
|
|
ACTCTX_COMPATIBILITY_ELEMENT_TYPE Type;
|
|
} COMPATIBILITY_CONTEXT_ELEMENT,*PCOMPATIBILITY_CONTEXT_ELEMENT;
|
|
typedef struct _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION {
|
|
DWORD ElementCount;
|
|
COMPATIBILITY_CONTEXT_ELEMENT Elements[];
|
|
} ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION,*PACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION;
|
|
typedef struct _SUPPORTED_OS_INFO {
|
|
WORD OsCount;
|
|
WORD MitigationExist;
|
|
WORD OsList[(4)];
|
|
} SUPPORTED_OS_INFO,*PSUPPORTED_OS_INFO;
|
|
typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
|
|
DWORD dwFlags;
|
|
DWORD ulFormatVersion;
|
|
DWORD ulAssemblyCount;
|
|
DWORD ulRootManifestPathType;
|
|
DWORD ulRootManifestPathChars;
|
|
DWORD ulRootConfigurationPathType;
|
|
DWORD ulRootConfigurationPathChars;
|
|
DWORD ulAppDirPathType;
|
|
DWORD ulAppDirPathChars;
|
|
PCWSTR lpRootManifestPath;
|
|
PCWSTR lpRootConfigurationPath;
|
|
PCWSTR lpAppDirPath;
|
|
} ACTIVATION_CONTEXT_DETAILED_INFORMATION,*PACTIVATION_CONTEXT_DETAILED_INFORMATION;
|
|
typedef const struct _ACTIVATION_CONTEXT_QUERY_INDEX *PCACTIVATION_CONTEXT_QUERY_INDEX;
|
|
typedef const ASSEMBLY_FILE_DETAILED_INFORMATION *PCASSEMBLY_FILE_DETAILED_INFORMATION;
|
|
typedef const struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
|
|
typedef const struct _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION *PCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION;
|
|
typedef const struct _COMPATIBILITY_CONTEXT_ELEMENT *PCCOMPATIBILITY_CONTEXT_ELEMENT;
|
|
typedef const struct _ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION *PCACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION;
|
|
typedef const struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
|
|
typedef void ( *RTL_VERIFIER_DLL_LOAD_CALLBACK) (PWSTR DllName,PVOID DllBase,SIZE_T DllSize,PVOID Reserved);
|
|
typedef void ( *RTL_VERIFIER_DLL_UNLOAD_CALLBACK) (PWSTR DllName,PVOID DllBase,SIZE_T DllSize,PVOID Reserved);
|
|
typedef void ( *RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK)(PVOID AllocationBase,SIZE_T AllocationSize);
|
|
typedef struct _RTL_VERIFIER_THUNK_DESCRIPTOR {
|
|
PCHAR ThunkName;
|
|
PVOID ThunkOldAddress;
|
|
PVOID ThunkNewAddress;
|
|
} RTL_VERIFIER_THUNK_DESCRIPTOR,*PRTL_VERIFIER_THUNK_DESCRIPTOR;
|
|
typedef struct _RTL_VERIFIER_DLL_DESCRIPTOR {
|
|
PWCHAR DllName;
|
|
DWORD DllFlags;
|
|
PVOID DllAddress;
|
|
PRTL_VERIFIER_THUNK_DESCRIPTOR DllThunks;
|
|
} RTL_VERIFIER_DLL_DESCRIPTOR,*PRTL_VERIFIER_DLL_DESCRIPTOR;
|
|
typedef struct _RTL_VERIFIER_PROVIDER_DESCRIPTOR {
|
|
DWORD Length;
|
|
PRTL_VERIFIER_DLL_DESCRIPTOR ProviderDlls;
|
|
RTL_VERIFIER_DLL_LOAD_CALLBACK ProviderDllLoadCallback;
|
|
RTL_VERIFIER_DLL_UNLOAD_CALLBACK ProviderDllUnloadCallback;
|
|
PWSTR VerifierImage;
|
|
DWORD VerifierFlags;
|
|
DWORD VerifierDebug;
|
|
PVOID RtlpGetStackTraceAddress;
|
|
PVOID RtlpDebugPageHeapCreate;
|
|
PVOID RtlpDebugPageHeapDestroy;
|
|
RTL_VERIFIER_NTDLLHEAPFREE_CALLBACK ProviderNtdllHeapFreeCallback;
|
|
} RTL_VERIFIER_PROVIDER_DESCRIPTOR,*PRTL_VERIFIER_PROVIDER_DESCRIPTOR;
|
|
void RtlApplicationVerifierStop(ULONG_PTR Code,PSTR Message,ULONG_PTR Param1,PSTR Description1,ULONG_PTR Param2,PSTR Description2,ULONG_PTR Param3,PSTR Description3,ULONG_PTR Param4,PSTR Description4);
|
|
__attribute__((dllimport)) DWORD RtlSetHeapInformation(PVOID HeapHandle,HEAP_INFORMATION_CLASS HeapInformationClass,PVOID HeapInformation,SIZE_T HeapInformationLength);
|
|
__attribute__((dllimport)) DWORD RtlQueryHeapInformation(PVOID HeapHandle,HEAP_INFORMATION_CLASS HeapInformationClass,PVOID HeapInformation,SIZE_T HeapInformationLength,PSIZE_T ReturnLength);
|
|
DWORD RtlMultipleAllocateHeap(PVOID HeapHandle,DWORD Flags,SIZE_T Size,DWORD Count,PVOID *Array);
|
|
DWORD RtlMultipleFreeHeap(PVOID HeapHandle,DWORD Flags,DWORD Count,PVOID *Array);
|
|
typedef struct _HARDWARE_COUNTER_DATA {
|
|
HARDWARE_COUNTER_TYPE Type;
|
|
DWORD Reserved;
|
|
DWORD64 Value;
|
|
} HARDWARE_COUNTER_DATA,*PHARDWARE_COUNTER_DATA;
|
|
typedef struct _PERFORMANCE_DATA {
|
|
WORD Size;
|
|
BYTE Version;
|
|
BYTE HwCountersCount;
|
|
DWORD ContextSwitchCount;
|
|
DWORD64 WaitReasonBitMap;
|
|
DWORD64 CycleTime;
|
|
DWORD RetryCount;
|
|
DWORD Reserved;
|
|
HARDWARE_COUNTER_DATA HwCounters[16];
|
|
} PERFORMANCE_DATA,*PPERFORMANCE_DATA;
|
|
typedef struct _EVENTLOGRECORD {
|
|
DWORD Length;
|
|
DWORD Reserved;
|
|
DWORD RecordNumber;
|
|
DWORD TimeGenerated;
|
|
DWORD TimeWritten;
|
|
DWORD EventID;
|
|
WORD EventType;
|
|
WORD NumStrings;
|
|
WORD EventCategory;
|
|
WORD ReservedFlags;
|
|
DWORD ClosingRecordNumber;
|
|
DWORD StringOffset;
|
|
DWORD UserSidLength;
|
|
DWORD UserSidOffset;
|
|
DWORD DataLength;
|
|
DWORD DataOffset;
|
|
} EVENTLOGRECORD,*PEVENTLOGRECORD;
|
|
typedef struct _EVENTSFORLOGFILE {
|
|
DWORD ulSize;
|
|
WCHAR szLogicalLogFile[256];
|
|
DWORD ulNumRecords;
|
|
EVENTLOGRECORD pEventLogRecords[];
|
|
} EVENTSFORLOGFILE,*PEVENTSFORLOGFILE;
|
|
typedef struct _PACKEDEVENTINFO {
|
|
DWORD ulSize;
|
|
DWORD ulNumEventsForLogFile;
|
|
DWORD ulOffsets[];
|
|
} PACKEDEVENTINFO,*PPACKEDEVENTINFO;
|
|
typedef enum _CM_SERVICE_NODE_TYPE {
|
|
DriverType = 0x00000001,FileSystemType = 0x00000002,Win32ServiceOwnProcess = 0x00000010,
|
|
Win32ServiceShareProcess = 0x00000020,AdapterType = 0x00000004,RecognizerType = 0x00000008
|
|
} SERVICE_NODE_TYPE;
|
|
typedef enum _CM_SERVICE_LOAD_TYPE {
|
|
BootLoad = 0x00000000,SystemLoad = 0x00000001,AutoLoad = 0x00000002,DemandLoad = 0x00000003,
|
|
DisableLoad = 0x00000004
|
|
} SERVICE_LOAD_TYPE;
|
|
typedef enum _CM_ERROR_CONTROL_TYPE {
|
|
IgnoreError = 0x00000000,NormalError = 0x00000001,SevereError = 0x00000002,CriticalError = 0x00000003
|
|
} SERVICE_ERROR_TYPE;
|
|
typedef struct _TAPE_ERASE {
|
|
DWORD Type;
|
|
BOOLEAN Immediate;
|
|
} TAPE_ERASE,*PTAPE_ERASE;
|
|
typedef struct _TAPE_PREPARE {
|
|
DWORD Operation;
|
|
BOOLEAN Immediate;
|
|
} TAPE_PREPARE,*PTAPE_PREPARE;
|
|
typedef struct _TAPE_WRITE_MARKS {
|
|
DWORD Type;
|
|
DWORD Count;
|
|
BOOLEAN Immediate;
|
|
} TAPE_WRITE_MARKS,*PTAPE_WRITE_MARKS;
|
|
typedef struct _TAPE_GET_POSITION {
|
|
DWORD Type;
|
|
DWORD Partition;
|
|
LARGE_INTEGER Offset;
|
|
} TAPE_GET_POSITION,*PTAPE_GET_POSITION;
|
|
typedef struct _TAPE_SET_POSITION {
|
|
DWORD Method;
|
|
DWORD Partition;
|
|
LARGE_INTEGER Offset;
|
|
BOOLEAN Immediate;
|
|
} TAPE_SET_POSITION,*PTAPE_SET_POSITION;
|
|
typedef struct _TAPE_GET_DRIVE_PARAMETERS {
|
|
BOOLEAN ECC;
|
|
BOOLEAN Compression;
|
|
BOOLEAN DataPadding;
|
|
BOOLEAN ReportSetmarks;
|
|
DWORD DefaultBlockSize;
|
|
DWORD MaximumBlockSize;
|
|
DWORD MinimumBlockSize;
|
|
DWORD MaximumPartitionCount;
|
|
DWORD FeaturesLow;
|
|
DWORD FeaturesHigh;
|
|
DWORD EOTWarningZoneSize;
|
|
} TAPE_GET_DRIVE_PARAMETERS,*PTAPE_GET_DRIVE_PARAMETERS;
|
|
typedef struct _TAPE_SET_DRIVE_PARAMETERS {
|
|
BOOLEAN ECC;
|
|
BOOLEAN Compression;
|
|
BOOLEAN DataPadding;
|
|
BOOLEAN ReportSetmarks;
|
|
DWORD EOTWarningZoneSize;
|
|
} TAPE_SET_DRIVE_PARAMETERS,*PTAPE_SET_DRIVE_PARAMETERS;
|
|
typedef struct _TAPE_GET_MEDIA_PARAMETERS {
|
|
LARGE_INTEGER Capacity;
|
|
LARGE_INTEGER Remaining;
|
|
DWORD BlockSize;
|
|
DWORD PartitionCount;
|
|
BOOLEAN WriteProtected;
|
|
} TAPE_GET_MEDIA_PARAMETERS,*PTAPE_GET_MEDIA_PARAMETERS;
|
|
typedef struct _TAPE_SET_MEDIA_PARAMETERS {
|
|
DWORD BlockSize;
|
|
} TAPE_SET_MEDIA_PARAMETERS,*PTAPE_SET_MEDIA_PARAMETERS;
|
|
typedef struct _TAPE_CREATE_PARTITION {
|
|
DWORD Method;
|
|
DWORD Count;
|
|
DWORD Size;
|
|
} TAPE_CREATE_PARTITION,*PTAPE_CREATE_PARTITION;
|
|
typedef struct _TAPE_WMI_OPERATIONS {
|
|
DWORD Method;
|
|
DWORD DataBufferSize;
|
|
PVOID DataBuffer;
|
|
} TAPE_WMI_OPERATIONS,*PTAPE_WMI_OPERATIONS;
|
|
typedef enum _TAPE_DRIVE_PROBLEM_TYPE {
|
|
TapeDriveProblemNone,TapeDriveReadWriteWarning,TapeDriveReadWriteError,TapeDriveReadWarning,TapeDriveWriteWarning,TapeDriveReadError,TapeDriveWriteError,TapeDriveHardwareError,TapeDriveUnsupportedMedia,TapeDriveScsiConnectionError,TapeDriveTimetoClean,TapeDriveCleanDriveNow,TapeDriveMediaLifeExpired,TapeDriveSnappedTape
|
|
} TAPE_DRIVE_PROBLEM_TYPE;
|
|
typedef DWORD TP_VERSION,*PTP_VERSION;
|
|
typedef struct _TP_CALLBACK_INSTANCE TP_CALLBACK_INSTANCE,*PTP_CALLBACK_INSTANCE;
|
|
typedef void ( *PTP_SIMPLE_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context);
|
|
typedef struct _TP_POOL TP_POOL,*PTP_POOL;
|
|
typedef enum _TP_CALLBACK_PRIORITY {
|
|
TP_CALLBACK_PRIORITY_HIGH,
|
|
TP_CALLBACK_PRIORITY_NORMAL,
|
|
TP_CALLBACK_PRIORITY_LOW,
|
|
TP_CALLBACK_PRIORITY_INVALID,
|
|
TP_CALLBACK_PRIORITY_COUNT = TP_CALLBACK_PRIORITY_INVALID
|
|
} TP_CALLBACK_PRIORITY;
|
|
typedef struct _TP_POOL_STACK_INFORMATION {
|
|
SIZE_T StackReserve;
|
|
SIZE_T StackCommit;
|
|
} TP_POOL_STACK_INFORMATION, *PTP_POOL_STACK_INFORMATION;
|
|
typedef struct _TP_CLEANUP_GROUP TP_CLEANUP_GROUP,*PTP_CLEANUP_GROUP;
|
|
typedef void ( *PTP_CLEANUP_GROUP_CANCEL_CALLBACK) (PVOID ObjectContext, PVOID CleanupContext);
|
|
typedef struct _TP_CALLBACK_ENVIRON_V1 {
|
|
TP_VERSION Version;
|
|
PTP_POOL Pool;
|
|
PTP_CLEANUP_GROUP CleanupGroup;
|
|
PTP_CLEANUP_GROUP_CANCEL_CALLBACK CleanupGroupCancelCallback;
|
|
PVOID RaceDll;
|
|
struct _ACTIVATION_CONTEXT *ActivationContext;
|
|
PTP_SIMPLE_CALLBACK FinalizationCallback;
|
|
union {
|
|
DWORD Flags;
|
|
struct {
|
|
DWORD LongFunction : 1;
|
|
DWORD Persistent : 1;
|
|
DWORD Private : 30;
|
|
} s;
|
|
} u;
|
|
} TP_CALLBACK_ENVIRON_V1;
|
|
typedef TP_CALLBACK_ENVIRON_V1 TP_CALLBACK_ENVIRON,*PTP_CALLBACK_ENVIRON;
|
|
typedef struct _TP_WORK TP_WORK,*PTP_WORK;
|
|
typedef void ( *PTP_WORK_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_WORK Work);
|
|
typedef struct _TP_TIMER TP_TIMER,*PTP_TIMER;
|
|
typedef void ( *PTP_TIMER_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_TIMER Timer);
|
|
typedef DWORD TP_WAIT_RESULT;
|
|
typedef struct _TP_WAIT TP_WAIT,*PTP_WAIT;
|
|
typedef void ( *PTP_WAIT_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_WAIT Wait, TP_WAIT_RESULT WaitResult);
|
|
typedef struct _TP_IO TP_IO,*PTP_IO;
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpInitializeCallbackEnviron (PTP_CALLBACK_ENVIRON cbe) {
|
|
cbe->Pool = ((void *)0);
|
|
cbe->CleanupGroup = ((void *)0);
|
|
cbe->CleanupGroupCancelCallback = ((void *)0);
|
|
cbe->RaceDll = ((void *)0);
|
|
cbe->ActivationContext = ((void *)0);
|
|
cbe->FinalizationCallback = ((void *)0);
|
|
cbe->u.Flags = 0;
|
|
cbe->Version = 1;
|
|
}
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackThreadpool (PTP_CALLBACK_ENVIRON cbe, PTP_POOL pool) { cbe->Pool = pool; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackCleanupGroup (PTP_CALLBACK_ENVIRON cbe, PTP_CLEANUP_GROUP cleanup_group, PTP_CLEANUP_GROUP_CANCEL_CALLBACK cleanup_group_cb) {
|
|
cbe->CleanupGroup = cleanup_group;
|
|
cbe->CleanupGroupCancelCallback = cleanup_group_cb;
|
|
}
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackActivationContext (PTP_CALLBACK_ENVIRON cbe, struct _ACTIVATION_CONTEXT *actx) { cbe->ActivationContext = actx; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackNoActivationContext (PTP_CALLBACK_ENVIRON cbe) { cbe->ActivationContext = (struct _ACTIVATION_CONTEXT *) (LONG_PTR) -1; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackLongFunction (PTP_CALLBACK_ENVIRON cbe) { cbe->u.s.LongFunction = 1; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackRaceWithDll (PTP_CALLBACK_ENVIRON cbe, PVOID h) { cbe->RaceDll = h; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackFinalizationCallback (PTP_CALLBACK_ENVIRON cbe, PTP_SIMPLE_CALLBACK fini_cb) { cbe->FinalizationCallback = fini_cb; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpSetCallbackPersistent (PTP_CALLBACK_ENVIRON cbe) { cbe->u.s.Persistent = 1; }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) void TpDestroyCallbackEnviron (PTP_CALLBACK_ENVIRON cbe) { {(cbe) = (cbe);}; }
|
|
struct _TEB *NtCurrentTeb(void);
|
|
PVOID GetCurrentFiber(void);
|
|
PVOID GetFiberData(void);
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) struct _TEB *NtCurrentTeb(void) { return (struct _TEB *)__readgsqword(((LONG) __builtin_offsetof(NT_TIB, Self))); }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) PVOID GetCurrentFiber(void) { return(PVOID)__readgsqword(((LONG) __builtin_offsetof(NT_TIB, FiberData))); }
|
|
extern __inline__ __attribute__((__always_inline__,__gnu_inline__)) PVOID GetFiberData(void) {
|
|
return *(PVOID *)GetCurrentFiber();
|
|
}
|
|
typedef GUID CRM_PROTOCOL_ID,*PCRM_PROTOCOL_ID;
|
|
typedef ULONG NOTIFICATION_MASK;
|
|
typedef struct _TRANSACTION_NOTIFICATION {
|
|
PVOID TransactionKey;
|
|
ULONG TransactionNotification;
|
|
LARGE_INTEGER TmVirtualClock;
|
|
ULONG ArgumentLength;
|
|
} TRANSACTION_NOTIFICATION,*PTRANSACTION_NOTIFICATION;
|
|
typedef struct _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT {
|
|
GUID EnlistmentId;
|
|
GUID UOW;
|
|
} TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT,*PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT;
|
|
typedef struct _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT {
|
|
GUID TmIdentity;
|
|
ULONG Flags;
|
|
} TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT,*PTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT;
|
|
typedef ULONG SAVEPOINT_ID,*PSAVEPOINT_ID;
|
|
typedef struct _TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT {
|
|
SAVEPOINT_ID SavepointId;
|
|
} TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT,*PTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT;
|
|
typedef struct _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT {
|
|
ULONG PropagationCookie;
|
|
GUID UOW;
|
|
GUID TmIdentity;
|
|
ULONG BufferLength;
|
|
} TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT,*PTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT;
|
|
typedef struct _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT {
|
|
ULONG MarshalCookie;
|
|
GUID UOW;
|
|
} TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT,*PTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT;
|
|
typedef TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT TRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT,*PTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT;
|
|
typedef struct _KCRM_MARSHAL_HEADER {
|
|
ULONG VersionMajor;
|
|
ULONG VersionMinor;
|
|
ULONG NumProtocols;
|
|
ULONG Unused;
|
|
} KCRM_MARSHAL_HEADER,*PKCRM_MARSHAL_HEADER,* PRKCRM_MARSHAL_HEADER;
|
|
typedef struct _KCRM_TRANSACTION_BLOB {
|
|
GUID UOW;
|
|
GUID TmIdentity;
|
|
ULONG IsolationLevel;
|
|
ULONG IsolationFlags;
|
|
ULONG Timeout;
|
|
WCHAR Description[64];
|
|
} KCRM_TRANSACTION_BLOB,*PKCRM_TRANSACTION_BLOB,* PRKCRM_TRANSACTION_BLOB;
|
|
typedef struct _KCRM_PROTOCOL_BLOB {
|
|
CRM_PROTOCOL_ID ProtocolId;
|
|
ULONG StaticInfoLength;
|
|
ULONG TransactionIdInfoLength;
|
|
ULONG Unused1;
|
|
ULONG Unused2;
|
|
} KCRM_PROTOCOL_BLOB,*PKCRM_PROTOCOL_BLOB,* PRKCRM_PROTOCOL_BLOB;
|
|
typedef enum _TRANSACTION_OUTCOME {
|
|
TransactionOutcomeUndetermined = 1,
|
|
TransactionOutcomeCommitted,
|
|
TransactionOutcomeAborted,
|
|
} TRANSACTION_OUTCOME;
|
|
typedef enum _TRANSACTION_STATE {
|
|
TransactionStateNormal = 1,
|
|
TransactionStateIndoubt,
|
|
TransactionStateCommittedNotify,
|
|
} TRANSACTION_STATE;
|
|
typedef struct _TRANSACTION_BASIC_INFORMATION {
|
|
GUID TransactionId;
|
|
DWORD State;
|
|
DWORD Outcome;
|
|
} TRANSACTION_BASIC_INFORMATION,*PTRANSACTION_BASIC_INFORMATION;
|
|
typedef struct _TRANSACTIONMANAGER_BASIC_INFORMATION {
|
|
GUID TmIdentity;
|
|
LARGE_INTEGER VirtualClock;
|
|
} TRANSACTIONMANAGER_BASIC_INFORMATION,*PTRANSACTIONMANAGER_BASIC_INFORMATION;
|
|
typedef struct _TRANSACTIONMANAGER_LOG_INFORMATION {
|
|
GUID LogIdentity;
|
|
} TRANSACTIONMANAGER_LOG_INFORMATION,*PTRANSACTIONMANAGER_LOG_INFORMATION;
|
|
typedef struct _TRANSACTIONMANAGER_LOGPATH_INFORMATION {
|
|
DWORD LogPathLength;
|
|
WCHAR LogPath[1];
|
|
} TRANSACTIONMANAGER_LOGPATH_INFORMATION,*PTRANSACTIONMANAGER_LOGPATH_INFORMATION;
|
|
typedef struct _TRANSACTIONMANAGER_RECOVERY_INFORMATION {
|
|
ULONGLONG LastRecoveredLsn;
|
|
} TRANSACTIONMANAGER_RECOVERY_INFORMATION,*PTRANSACTIONMANAGER_RECOVERY_INFORMATION;
|
|
typedef struct _TRANSACTIONMANAGER_OLDEST_INFORMATION {
|
|
GUID OldestTransactionGuid;
|
|
} TRANSACTIONMANAGER_OLDEST_INFORMATION,*PTRANSACTIONMANAGER_OLDEST_INFORMATION;
|
|
typedef struct _TRANSACTION_PROPERTIES_INFORMATION {
|
|
DWORD IsolationLevel;
|
|
DWORD IsolationFlags;
|
|
LARGE_INTEGER Timeout;
|
|
DWORD Outcome;
|
|
DWORD DescriptionLength;
|
|
WCHAR Description[1];
|
|
} TRANSACTION_PROPERTIES_INFORMATION,*PTRANSACTION_PROPERTIES_INFORMATION;
|
|
typedef struct _TRANSACTION_BIND_INFORMATION {
|
|
HANDLE TmHandle;
|
|
} TRANSACTION_BIND_INFORMATION,*PTRANSACTION_BIND_INFORMATION;
|
|
typedef struct _TRANSACTION_ENLISTMENT_PAIR {
|
|
GUID EnlistmentId;
|
|
GUID ResourceManagerId;
|
|
} TRANSACTION_ENLISTMENT_PAIR,*PTRANSACTION_ENLISTMENT_PAIR;
|
|
typedef struct _TRANSACTION_ENLISTMENTS_INFORMATION {
|
|
DWORD NumberOfEnlistments;
|
|
TRANSACTION_ENLISTMENT_PAIR EnlistmentPair[1];
|
|
} TRANSACTION_ENLISTMENTS_INFORMATION,*PTRANSACTION_ENLISTMENTS_INFORMATION;
|
|
typedef struct _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION {
|
|
TRANSACTION_ENLISTMENT_PAIR SuperiorEnlistmentPair;
|
|
} TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION,*PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION;
|
|
typedef struct _RESOURCEMANAGER_BASIC_INFORMATION {
|
|
GUID ResourceManagerId;
|
|
DWORD DescriptionLength;
|
|
WCHAR Description[1];
|
|
} RESOURCEMANAGER_BASIC_INFORMATION,*PRESOURCEMANAGER_BASIC_INFORMATION;
|
|
typedef struct _RESOURCEMANAGER_COMPLETION_INFORMATION {
|
|
HANDLE IoCompletionPortHandle;
|
|
ULONG_PTR CompletionKey;
|
|
} RESOURCEMANAGER_COMPLETION_INFORMATION,*PRESOURCEMANAGER_COMPLETION_INFORMATION;
|
|
typedef enum _TRANSACTION_INFORMATION_CLASS {
|
|
TransactionBasicInformation,
|
|
TransactionPropertiesInformation,
|
|
TransactionEnlistmentInformation,
|
|
TransactionSuperiorEnlistmentInformation,
|
|
TransactionBindInformation,
|
|
TransactionDTCPrivateInformation
|
|
} TRANSACTION_INFORMATION_CLASS;
|
|
typedef enum _TRANSACTIONMANAGER_INFORMATION_CLASS {
|
|
TransactionManagerBasicInformation,
|
|
TransactionManagerLogInformation,
|
|
TransactionManagerLogPathInformation,
|
|
TransactionManagerOnlineProbeInformation = 3,
|
|
TransactionManagerRecoveryInformation = 4,
|
|
TransactionManagerOldestTransactionInformation = 5
|
|
} TRANSACTIONMANAGER_INFORMATION_CLASS;
|
|
typedef enum _RESOURCEMANAGER_INFORMATION_CLASS {
|
|
ResourceManagerBasicInformation,
|
|
ResourceManagerCompletionInformation
|
|
} RESOURCEMANAGER_INFORMATION_CLASS;
|
|
typedef struct _ENLISTMENT_BASIC_INFORMATION {
|
|
GUID EnlistmentId;
|
|
GUID TransactionId;
|
|
GUID ResourceManagerId;
|
|
} ENLISTMENT_BASIC_INFORMATION,*PENLISTMENT_BASIC_INFORMATION;
|
|
typedef struct _ENLISTMENT_CRM_INFORMATION {
|
|
GUID CrmTransactionManagerId;
|
|
GUID CrmResourceManagerId;
|
|
GUID CrmEnlistmentId;
|
|
} ENLISTMENT_CRM_INFORMATION,*PENLISTMENT_CRM_INFORMATION;
|
|
typedef enum _ENLISTMENT_INFORMATION_CLASS {
|
|
EnlistmentBasicInformation,
|
|
EnlistmentRecoveryInformation,
|
|
EnlistmentCrmInformation
|
|
} ENLISTMENT_INFORMATION_CLASS;
|
|
typedef struct _TRANSACTION_LIST_ENTRY {
|
|
GUID UOW;
|
|
} TRANSACTION_LIST_ENTRY,*PTRANSACTION_LIST_ENTRY;
|
|
typedef struct _TRANSACTION_LIST_INFORMATION {
|
|
DWORD NumberOfTransactions;
|
|
TRANSACTION_LIST_ENTRY TransactionInformation[1];
|
|
} TRANSACTION_LIST_INFORMATION,*PTRANSACTION_LIST_INFORMATION;
|
|
typedef enum _KTMOBJECT_TYPE {
|
|
KTMOBJECT_TRANSACTION,
|
|
KTMOBJECT_TRANSACTION_MANAGER,
|
|
KTMOBJECT_RESOURCE_MANAGER,
|
|
KTMOBJECT_ENLISTMENT,
|
|
KTMOBJECT_INVALID
|
|
} KTMOBJECT_TYPE,*PKTMOBJECT_TYPE;
|
|
typedef struct _KTMOBJECT_CURSOR {
|
|
GUID LastQuery;
|
|
DWORD ObjectIdCount;
|
|
GUID ObjectIds[1];
|
|
} KTMOBJECT_CURSOR,*PKTMOBJECT_CURSOR;
|
|
typedef struct _WOW64_FLOATING_SAVE_AREA {
|
|
DWORD ControlWord;
|
|
DWORD StatusWord;
|
|
DWORD TagWord;
|
|
DWORD ErrorOffset;
|
|
DWORD ErrorSelector;
|
|
DWORD DataOffset;
|
|
DWORD DataSelector;
|
|
BYTE RegisterArea[80];
|
|
DWORD Cr0NpxState;
|
|
} WOW64_FLOATING_SAVE_AREA, *PWOW64_FLOATING_SAVE_AREA;
|
|
#pragma pack(push,4)
|
|
typedef struct _WOW64_CONTEXT {
|
|
DWORD ContextFlags;
|
|
DWORD Dr0;
|
|
DWORD Dr1;
|
|
DWORD Dr2;
|
|
DWORD Dr3;
|
|
DWORD Dr6;
|
|
DWORD Dr7;
|
|
WOW64_FLOATING_SAVE_AREA FloatSave;
|
|
DWORD SegGs;
|
|
DWORD SegFs;
|
|
DWORD SegEs;
|
|
DWORD SegDs;
|
|
DWORD Edi;
|
|
DWORD Esi;
|
|
DWORD Ebx;
|
|
DWORD Edx;
|
|
DWORD Ecx;
|
|
DWORD Eax;
|
|
DWORD Ebp;
|
|
DWORD Eip;
|
|
DWORD SegCs;
|
|
DWORD EFlags;
|
|
DWORD Esp;
|
|
DWORD SegSs;
|
|
BYTE ExtendedRegisters[512];
|
|
} WOW64_CONTEXT, *PWOW64_CONTEXT;
|
|
#pragma pack(pop)
|
|
typedef struct _WOW64_LDT_ENTRY {
|
|
WORD LimitLow;
|
|
WORD BaseLow;
|
|
__extension__ union {
|
|
struct {
|
|
BYTE BaseMid;
|
|
BYTE Flags1;
|
|
BYTE Flags2;
|
|
BYTE BaseHi;
|
|
} Bytes;
|
|
struct {
|
|
DWORD BaseMid :8;
|
|
DWORD Type :5;
|
|
DWORD Dpl :2;
|
|
DWORD Pres :1;
|
|
DWORD LimitHi :4;
|
|
DWORD Sys :1;
|
|
DWORD Reserved_0 :1;
|
|
DWORD Default_Big :1;
|
|
DWORD Granularity :1;
|
|
DWORD BaseHi :8;
|
|
} Bits;
|
|
} HighWord;
|
|
} WOW64_LDT_ENTRY, *PWOW64_LDT_ENTRY;
|
|
typedef struct _WOW64_DESCRIPTOR_TABLE_ENTRY {
|
|
DWORD Selector;
|
|
WOW64_LDT_ENTRY Descriptor;
|
|
} WOW64_DESCRIPTOR_TABLE_ENTRY,*PWOW64_DESCRIPTOR_TABLE_ENTRY;
|
|
typedef UINT_PTR WPARAM;
|
|
typedef LONG_PTR LPARAM;
|
|
typedef LONG_PTR LRESULT;
|
|
typedef HANDLE *SPHANDLE;
|
|
typedef HANDLE *LPHANDLE;
|
|
typedef HANDLE HGLOBAL;
|
|
typedef HANDLE HLOCAL;
|
|
typedef HANDLE GLOBALHANDLE;
|
|
typedef HANDLE LOCALHANDLE;
|
|
typedef INT_PTR ( *FARPROC) ();
|
|
typedef INT_PTR ( *NEARPROC) ();
|
|
typedef INT_PTR ( *PROC) ();
|
|
typedef WORD ATOM;
|
|
typedef int HFILE;
|
|
struct HINSTANCE__ { int unused; }; typedef struct HINSTANCE__ *HINSTANCE;
|
|
struct HKEY__ { int unused; }; typedef struct HKEY__ *HKEY;
|
|
typedef HKEY *PHKEY;
|
|
struct HKL__ { int unused; }; typedef struct HKL__ *HKL;
|
|
struct HLSURF__ { int unused; }; typedef struct HLSURF__ *HLSURF;
|
|
struct HMETAFILE__ { int unused; }; typedef struct HMETAFILE__ *HMETAFILE;
|
|
typedef HINSTANCE HMODULE;
|
|
struct HRGN__ { int unused; }; typedef struct HRGN__ *HRGN;
|
|
struct HRSRC__ { int unused; }; typedef struct HRSRC__ *HRSRC;
|
|
struct HSPRITE__ { int unused; }; typedef struct HSPRITE__ *HSPRITE;
|
|
struct HSTR__ { int unused; }; typedef struct HSTR__ *HSTR;
|
|
struct HTASK__ { int unused; }; typedef struct HTASK__ *HTASK;
|
|
struct HWINSTA__ { int unused; }; typedef struct HWINSTA__ *HWINSTA;
|
|
typedef struct _FILETIME {
|
|
DWORD dwLowDateTime;
|
|
DWORD dwHighDateTime;
|
|
} FILETIME,*PFILETIME,*LPFILETIME;
|
|
struct HWND__ { int unused; }; typedef struct HWND__ *HWND;
|
|
struct HHOOK__ { int unused; }; typedef struct HHOOK__ *HHOOK;
|
|
typedef void *HGDIOBJ;
|
|
struct HACCEL__ { int unused; }; typedef struct HACCEL__ *HACCEL;
|
|
struct HBITMAP__ { int unused; }; typedef struct HBITMAP__ *HBITMAP;
|
|
struct HBRUSH__ { int unused; }; typedef struct HBRUSH__ *HBRUSH;
|
|
struct HCOLORSPACE__ { int unused; }; typedef struct HCOLORSPACE__ *HCOLORSPACE;
|
|
struct HDC__ { int unused; }; typedef struct HDC__ *HDC;
|
|
struct HGLRC__ { int unused; }; typedef struct HGLRC__ *HGLRC;
|
|
struct HDESK__ { int unused; }; typedef struct HDESK__ *HDESK;
|
|
struct HENHMETAFILE__ { int unused; }; typedef struct HENHMETAFILE__ *HENHMETAFILE;
|
|
struct HFONT__ { int unused; }; typedef struct HFONT__ *HFONT;
|
|
struct HICON__ { int unused; }; typedef struct HICON__ *HICON;
|
|
struct HMENU__ { int unused; }; typedef struct HMENU__ *HMENU;
|
|
struct HPALETTE__ { int unused; }; typedef struct HPALETTE__ *HPALETTE;
|
|
struct HPEN__ { int unused; }; typedef struct HPEN__ *HPEN;
|
|
struct HMONITOR__ { int unused; }; typedef struct HMONITOR__ *HMONITOR;
|
|
struct HWINEVENTHOOK__ { int unused; }; typedef struct HWINEVENTHOOK__ *HWINEVENTHOOK;
|
|
typedef HICON HCURSOR;
|
|
typedef DWORD COLORREF;
|
|
struct HUMPD__ { int unused; }; typedef struct HUMPD__ *HUMPD;
|
|
typedef DWORD *LPCOLORREF;
|
|
typedef struct tagRECT {
|
|
LONG left;
|
|
LONG top;
|
|
LONG right;
|
|
LONG bottom;
|
|
} RECT,*PRECT,*NPRECT,*LPRECT;
|
|
typedef const RECT *LPCRECT;
|
|
typedef struct _RECTL {
|
|
LONG left;
|
|
LONG top;
|
|
LONG right;
|
|
LONG bottom;
|
|
} RECTL,*PRECTL,*LPRECTL;
|
|
typedef const RECTL *LPCRECTL;
|
|
typedef struct tagPOINT {
|
|
LONG x;
|
|
LONG y;
|
|
} POINT,*PPOINT,*NPPOINT,*LPPOINT;
|
|
typedef struct _POINTL {
|
|
LONG x;
|
|
LONG y;
|
|
} POINTL,*PPOINTL;
|
|
typedef struct tagSIZE {
|
|
LONG cx;
|
|
LONG cy;
|
|
} SIZE,*PSIZE,*LPSIZE;
|
|
typedef SIZE SIZEL;
|
|
typedef SIZE *PSIZEL,*LPSIZEL;
|
|
typedef struct tagPOINTS {
|
|
SHORT x;
|
|
SHORT y;
|
|
} POINTS,*PPOINTS,*LPPOINTS;
|
|
typedef struct _SECURITY_ATTRIBUTES {
|
|
DWORD nLength;
|
|
LPVOID lpSecurityDescriptor;
|
|
WINBOOL bInheritHandle;
|
|
} SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
|
|
typedef struct _OVERLAPPED {
|
|
ULONG_PTR Internal;
|
|
ULONG_PTR InternalHigh;
|
|
__extension__ union {
|
|
struct {
|
|
DWORD Offset;
|
|
DWORD OffsetHigh;
|
|
} ;
|
|
PVOID Pointer;
|
|
} ;
|
|
HANDLE hEvent;
|
|
} OVERLAPPED, *LPOVERLAPPED;
|
|
typedef struct _OVERLAPPED_ENTRY {
|
|
ULONG_PTR lpCompletionKey;
|
|
LPOVERLAPPED lpOverlapped;
|
|
ULONG_PTR Internal;
|
|
DWORD dwNumberOfBytesTransferred;
|
|
} OVERLAPPED_ENTRY, *LPOVERLAPPED_ENTRY;
|
|
typedef struct _SYSTEMTIME {
|
|
WORD wYear;
|
|
WORD wMonth;
|
|
WORD wDayOfWeek;
|
|
WORD wDay;
|
|
WORD wHour;
|
|
WORD wMinute;
|
|
WORD wSecond;
|
|
WORD wMilliseconds;
|
|
} SYSTEMTIME, *PSYSTEMTIME, *LPSYSTEMTIME;
|
|
typedef struct _WIN32_FIND_DATAA {
|
|
DWORD dwFileAttributes;
|
|
FILETIME ftCreationTime;
|
|
FILETIME ftLastAccessTime;
|
|
FILETIME ftLastWriteTime;
|
|
DWORD nFileSizeHigh;
|
|
DWORD nFileSizeLow;
|
|
DWORD dwReserved0;
|
|
DWORD dwReserved1;
|
|
CHAR cFileName[260];
|
|
CHAR cAlternateFileName[14];
|
|
} WIN32_FIND_DATAA, *PWIN32_FIND_DATAA, *LPWIN32_FIND_DATAA;
|
|
typedef struct _WIN32_FIND_DATAW {
|
|
DWORD dwFileAttributes;
|
|
FILETIME ftCreationTime;
|
|
FILETIME ftLastAccessTime;
|
|
FILETIME ftLastWriteTime;
|
|
DWORD nFileSizeHigh;
|
|
DWORD nFileSizeLow;
|
|
DWORD dwReserved0;
|
|
DWORD dwReserved1;
|
|
WCHAR cFileName[260];
|
|
WCHAR cAlternateFileName[14];
|
|
} WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
|
|
typedef WIN32_FIND_DATAA WIN32_FIND_DATA;
|
|
typedef PWIN32_FIND_DATAA PWIN32_FIND_DATA;
|
|
typedef LPWIN32_FIND_DATAA LPWIN32_FIND_DATA;
|
|
typedef enum _FINDEX_INFO_LEVELS {
|
|
FindExInfoStandard,
|
|
FindExInfoBasic,
|
|
FindExInfoMaxInfoLevel
|
|
} FINDEX_INFO_LEVELS;
|
|
typedef enum _FINDEX_SEARCH_OPS {
|
|
FindExSearchNameMatch,
|
|
FindExSearchLimitToDirectories,
|
|
FindExSearchLimitToDevices,
|
|
FindExSearchMaxSearchOp
|
|
} FINDEX_SEARCH_OPS;
|
|
typedef enum _GET_FILEEX_INFO_LEVELS {
|
|
GetFileExInfoStandard,
|
|
GetFileExMaxInfoLevel
|
|
} GET_FILEEX_INFO_LEVELS;
|
|
typedef RTL_CRITICAL_SECTION CRITICAL_SECTION;
|
|
typedef PRTL_CRITICAL_SECTION PCRITICAL_SECTION;
|
|
typedef PRTL_CRITICAL_SECTION LPCRITICAL_SECTION;
|
|
typedef RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG;
|
|
typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG;
|
|
typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG;
|
|
typedef void ( *LPOVERLAPPED_COMPLETION_ROUTINE) (DWORD dwErrorCode, DWORD dwNumberOfBytesTransfered, LPOVERLAPPED lpOverlapped);
|
|
typedef struct _PROCESS_HEAP_ENTRY {
|
|
PVOID lpData;
|
|
DWORD cbData;
|
|
BYTE cbOverhead;
|
|
BYTE iRegionIndex;
|
|
WORD wFlags;
|
|
__extension__ union {
|
|
struct {
|
|
HANDLE hMem;
|
|
DWORD dwReserved[3];
|
|
} Block;
|
|
struct {
|
|
DWORD dwCommittedSize;
|
|
DWORD dwUnCommittedSize;
|
|
LPVOID lpFirstBlock;
|
|
LPVOID lpLastBlock;
|
|
} Region;
|
|
} ;
|
|
} PROCESS_HEAP_ENTRY,*LPPROCESS_HEAP_ENTRY,*PPROCESS_HEAP_ENTRY;
|
|
typedef struct _REASON_CONTEXT {
|
|
ULONG Version;
|
|
DWORD Flags;
|
|
union {
|
|
struct {
|
|
HMODULE LocalizedReasonModule;
|
|
ULONG LocalizedReasonId;
|
|
ULONG ReasonStringCount;
|
|
LPWSTR *ReasonStrings;
|
|
} Detailed;
|
|
LPWSTR SimpleReasonString;
|
|
} Reason;
|
|
} REASON_CONTEXT, *PREASON_CONTEXT;
|
|
typedef DWORD ( *PTHREAD_START_ROUTINE) (LPVOID lpThreadParameter);
|
|
typedef PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE;
|
|
typedef LPVOID ( *PENCLAVE_ROUTINE) (LPVOID lpThreadParameter);
|
|
typedef PENCLAVE_ROUTINE LPENCLAVE_ROUTINE;
|
|
typedef struct _EXCEPTION_DEBUG_INFO {
|
|
EXCEPTION_RECORD ExceptionRecord;
|
|
DWORD dwFirstChance;
|
|
} EXCEPTION_DEBUG_INFO, *LPEXCEPTION_DEBUG_INFO;
|
|
typedef struct _CREATE_THREAD_DEBUG_INFO {
|
|
HANDLE hThread;
|
|
LPVOID lpThreadLocalBase;
|
|
LPTHREAD_START_ROUTINE lpStartAddress;
|
|
} CREATE_THREAD_DEBUG_INFO, *LPCREATE_THREAD_DEBUG_INFO;
|
|
typedef struct _CREATE_PROCESS_DEBUG_INFO {
|
|
HANDLE hFile;
|
|
HANDLE hProcess;
|
|
HANDLE hThread;
|
|
LPVOID lpBaseOfImage;
|
|
DWORD dwDebugInfoFileOffset;
|
|
DWORD nDebugInfoSize;
|
|
LPVOID lpThreadLocalBase;
|
|
LPTHREAD_START_ROUTINE lpStartAddress;
|
|
LPVOID lpImageName;
|
|
WORD fUnicode;
|
|
} CREATE_PROCESS_DEBUG_INFO, *LPCREATE_PROCESS_DEBUG_INFO;
|
|
typedef struct _EXIT_THREAD_DEBUG_INFO {
|
|
DWORD dwExitCode;
|
|
} EXIT_THREAD_DEBUG_INFO, *LPEXIT_THREAD_DEBUG_INFO;
|
|
typedef struct _EXIT_PROCESS_DEBUG_INFO {
|
|
DWORD dwExitCode;
|
|
} EXIT_PROCESS_DEBUG_INFO, *LPEXIT_PROCESS_DEBUG_INFO;
|
|
typedef struct _LOAD_DLL_DEBUG_INFO {
|
|
HANDLE hFile;
|
|
LPVOID lpBaseOfDll;
|
|
DWORD dwDebugInfoFileOffset;
|
|
DWORD nDebugInfoSize;
|
|
LPVOID lpImageName;
|
|
WORD fUnicode;
|
|
} LOAD_DLL_DEBUG_INFO, *LPLOAD_DLL_DEBUG_INFO;
|
|
typedef struct _UNLOAD_DLL_DEBUG_INFO {
|
|
LPVOID lpBaseOfDll;
|
|
} UNLOAD_DLL_DEBUG_INFO, *LPUNLOAD_DLL_DEBUG_INFO;
|
|
typedef struct _OUTPUT_DEBUG_STRING_INFO {
|
|
LPSTR lpDebugStringData;
|
|
WORD fUnicode;
|
|
WORD nDebugStringLength;
|
|
} OUTPUT_DEBUG_STRING_INFO, *LPOUTPUT_DEBUG_STRING_INFO;
|
|
typedef struct _RIP_INFO {
|
|
DWORD dwError;
|
|
DWORD dwType;
|
|
} RIP_INFO, *LPRIP_INFO;
|
|
typedef struct _DEBUG_EVENT {
|
|
DWORD dwDebugEventCode;
|
|
DWORD dwProcessId;
|
|
DWORD dwThreadId;
|
|
union {
|
|
EXCEPTION_DEBUG_INFO Exception;
|
|
CREATE_THREAD_DEBUG_INFO CreateThread;
|
|
CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
|
|
EXIT_THREAD_DEBUG_INFO ExitThread;
|
|
EXIT_PROCESS_DEBUG_INFO ExitProcess;
|
|
LOAD_DLL_DEBUG_INFO LoadDll;
|
|
UNLOAD_DLL_DEBUG_INFO UnloadDll;
|
|
OUTPUT_DEBUG_STRING_INFO DebugString;
|
|
RIP_INFO RipInfo;
|
|
} u;
|
|
} DEBUG_EVENT, *LPDEBUG_EVENT;
|
|
typedef PCONTEXT LPCONTEXT;
|
|
typedef struct _CONTRACT_DESCRIPTION CONTRACT_DESCRIPTION;
|
|
typedef struct _BEM_REFERENCE BEM_REFERENCE;
|
|
typedef void ( *BEM_FREE_INTERFACE_CALLBACK) (void *interfaceInstance);
|
|
HRESULT BemCreateReference (const GUID *const iid, void *interfaceInstance, BEM_FREE_INTERFACE_CALLBACK freeCallback, BEM_REFERENCE **reference);
|
|
HRESULT BemCreateContractFrom (LPCWSTR dllPath, const GUID *const extensionId, const CONTRACT_DESCRIPTION *contractDescription, void *hostContract, void **contract);
|
|
HRESULT BemCopyReference (BEM_REFERENCE *reference, BEM_REFERENCE **copiedReference);
|
|
void BemFreeReference (BEM_REFERENCE *reference);
|
|
void BemFreeContract (void *contract);
|
|
__attribute__((dllimport)) WINBOOL IsDebuggerPresent (void);
|
|
__attribute__((dllimport)) void OutputDebugStringA (LPCSTR lpOutputString);
|
|
__attribute__((dllimport)) void OutputDebugStringW (LPCWSTR lpOutputString);
|
|
__attribute__((dllimport)) void DebugBreak (void);
|
|
__attribute__((dllimport)) WINBOOL ContinueDebugEvent (DWORD dwProcessId, DWORD dwThreadId, DWORD dwContinueStatus);
|
|
__attribute__((dllimport)) WINBOOL WaitForDebugEvent (LPDEBUG_EVENT lpDebugEvent, DWORD dwMilliseconds);
|
|
__attribute__((dllimport)) WINBOOL DebugActiveProcess (DWORD dwProcessId);
|
|
__attribute__((dllimport)) WINBOOL DebugActiveProcessStop (DWORD dwProcessId);
|
|
__attribute__((dllimport)) WINBOOL CheckRemoteDebuggerPresent (HANDLE hProcess, PBOOL pbDebuggerPresent);
|
|
typedef LONG ( *PTOP_LEVEL_EXCEPTION_FILTER) (struct _EXCEPTION_POINTERS *ExceptionInfo);
|
|
typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
|
|
__attribute__((dllimport)) UINT SetErrorMode (UINT uMode);
|
|
__attribute__((dllimport)) LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter (LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter);
|
|
__attribute__((dllimport)) LONG UnhandledExceptionFilter (struct _EXCEPTION_POINTERS *ExceptionInfo);
|
|
__attribute__((dllimport)) PVOID AddVectoredExceptionHandler (ULONG First, PVECTORED_EXCEPTION_HANDLER Handler);
|
|
__attribute__((dllimport)) ULONG RemoveVectoredExceptionHandler (PVOID Handle);
|
|
__attribute__((dllimport)) PVOID AddVectoredContinueHandler (ULONG First, PVECTORED_EXCEPTION_HANDLER Handler);
|
|
__attribute__((dllimport)) ULONG RemoveVectoredContinueHandler (PVOID Handle);
|
|
__attribute__((dllimport)) void RaiseException (DWORD dwExceptionCode, DWORD dwExceptionFlags, DWORD nNumberOfArguments, const ULONG_PTR *lpArguments);
|
|
__attribute__((dllimport)) DWORD GetLastError (void);
|
|
__attribute__((dllimport)) void SetLastError (DWORD dwErrCode);
|
|
__attribute__((dllimport)) HANDLE CreateFileW (LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile);
|
|
__attribute__((dllimport)) DWORD GetFileAttributesW (LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetFileSize (HANDLE hFile, LPDWORD lpFileSizeHigh);
|
|
__attribute__((dllimport)) DWORD SetFilePointer (HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod);
|
|
typedef struct _BY_HANDLE_FILE_INFORMATION {
|
|
DWORD dwFileAttributes;
|
|
FILETIME ftCreationTime;
|
|
FILETIME ftLastAccessTime;
|
|
FILETIME ftLastWriteTime;
|
|
DWORD dwVolumeSerialNumber;
|
|
DWORD nFileSizeHigh;
|
|
DWORD nFileSizeLow;
|
|
DWORD nNumberOfLinks;
|
|
DWORD nFileIndexHigh;
|
|
DWORD nFileIndexLow;
|
|
} BY_HANDLE_FILE_INFORMATION, *PBY_HANDLE_FILE_INFORMATION,
|
|
*LPBY_HANDLE_FILE_INFORMATION;
|
|
__attribute__((dllimport)) HANDLE CreateFileA (LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile);
|
|
__attribute__((dllimport)) WINBOOL DefineDosDeviceW (DWORD dwFlags, LPCWSTR lpDeviceName, LPCWSTR lpTargetPath);
|
|
__attribute__((dllimport)) WINBOOL FindCloseChangeNotification (HANDLE hChangeHandle);
|
|
__attribute__((dllimport)) HANDLE FindFirstChangeNotificationA (LPCSTR lpPathName, WINBOOL bWatchSubtree, DWORD dwNotifyFilter);
|
|
__attribute__((dllimport)) HANDLE FindFirstChangeNotificationW (LPCWSTR lpPathName, WINBOOL bWatchSubtree, DWORD dwNotifyFilter);
|
|
__attribute__((dllimport)) HANDLE FindFirstVolumeW (LPWSTR lpszVolumeName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL FindNextChangeNotification (HANDLE hChangeHandle);
|
|
__attribute__((dllimport)) WINBOOL FindNextVolumeW (HANDLE hFindVolume, LPWSTR lpszVolumeName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL FindVolumeClose (HANDLE hFindVolume);
|
|
__attribute__((dllimport)) WINBOOL GetFileInformationByHandle (HANDLE hFile, LPBY_HANDLE_FILE_INFORMATION lpFileInformation);
|
|
__attribute__((dllimport)) LONG CompareFileTime (const FILETIME *lpFileTime1, const FILETIME *lpFileTime2);
|
|
__attribute__((dllimport)) WINBOOL DeleteVolumeMountPointW (LPCWSTR lpszVolumeMountPoint);
|
|
__attribute__((dllimport)) WINBOOL FileTimeToLocalFileTime (const FILETIME *lpFileTime, LPFILETIME lpLocalFileTime);
|
|
__attribute__((dllimport)) HANDLE FindFirstFileA (LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData);
|
|
__attribute__((dllimport)) HANDLE FindFirstFileW (LPCWSTR lpFileName, LPWIN32_FIND_DATAW lpFindFileData);
|
|
__attribute__((dllimport)) WINBOOL GetDiskFreeSpaceA (LPCSTR lpRootPathName, LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector, LPDWORD lpNumberOfFreeClusters, LPDWORD lpTotalNumberOfClusters);
|
|
__attribute__((dllimport)) WINBOOL GetDiskFreeSpaceW (LPCWSTR lpRootPathName, LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector, LPDWORD lpNumberOfFreeClusters, LPDWORD lpTotalNumberOfClusters);
|
|
__attribute__((dllimport)) UINT GetDriveTypeA (LPCSTR lpRootPathName);
|
|
__attribute__((dllimport)) UINT GetDriveTypeW (LPCWSTR lpRootPathName);
|
|
__attribute__((dllimport)) DWORD GetFileAttributesA (LPCSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL GetFileSizeEx (HANDLE hFile, PLARGE_INTEGER lpFileSize);
|
|
__attribute__((dllimport)) WINBOOL GetFileTime (HANDLE hFile, LPFILETIME lpCreationTime, LPFILETIME lpLastAccessTime, LPFILETIME lpLastWriteTime);
|
|
__attribute__((dllimport)) DWORD GetFileType (HANDLE hFile);
|
|
__attribute__((dllimport)) DWORD GetFullPathNameA (LPCSTR lpFileName, DWORD nBufferLength, LPSTR lpBuffer, LPSTR *lpFilePart);
|
|
__attribute__((dllimport)) DWORD GetFullPathNameW (LPCWSTR lpFileName, DWORD nBufferLength, LPWSTR lpBuffer, LPWSTR *lpFilePart);
|
|
__attribute__((dllimport)) DWORD GetLogicalDrives (void);
|
|
__attribute__((dllimport)) DWORD GetLogicalDriveStringsW (DWORD nBufferLength, LPWSTR lpBuffer);
|
|
__attribute__((dllimport)) DWORD GetLongPathNameA (LPCSTR lpszShortPath, LPSTR lpszLongPath, DWORD cchBuffer);
|
|
__attribute__((dllimport)) DWORD GetLongPathNameW (LPCWSTR lpszShortPath, LPWSTR lpszLongPath, DWORD cchBuffer);
|
|
__attribute__((dllimport)) DWORD GetShortPathNameW (LPCWSTR lpszLongPath, LPWSTR lpszShortPath, DWORD cchBuffer);
|
|
__attribute__((dllimport)) UINT GetTempFileNameA (LPCSTR lpPathName, LPCSTR lpPrefixString, UINT uUnique, LPSTR lpTempFileName);
|
|
__attribute__((dllimport)) UINT GetTempFileNameW (LPCWSTR lpPathName, LPCWSTR lpPrefixString, UINT uUnique, LPWSTR lpTempFileName);
|
|
__attribute__((dllimport)) WINBOOL GetVolumeInformationW (LPCWSTR lpRootPathName, LPWSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPWSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize);
|
|
__attribute__((dllimport)) WINBOOL GetVolumePathNameW (LPCWSTR lpszFileName, LPWSTR lpszVolumePathName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL LocalFileTimeToFileTime (const FILETIME *lpLocalFileTime, LPFILETIME lpFileTime);
|
|
__attribute__((dllimport)) WINBOOL LockFile (HANDLE hFile, DWORD dwFileOffsetLow, DWORD dwFileOffsetHigh, DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh);
|
|
__attribute__((dllimport)) DWORD QueryDosDeviceW (LPCWSTR lpDeviceName, LPWSTR lpTargetPath, DWORD ucchMax);
|
|
__attribute__((dllimport)) WINBOOL ReadFileEx (HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) WINBOOL ReadFileScatter (HANDLE hFile, FILE_SEGMENT_ELEMENT aSegmentArray[], DWORD nNumberOfBytesToRead, LPDWORD lpReserved, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL SetFileTime (HANDLE hFile, const FILETIME *lpCreationTime, const FILETIME *lpLastAccessTime, const FILETIME *lpLastWriteTime);
|
|
__attribute__((dllimport)) WINBOOL SetFileValidData (HANDLE hFile, LONGLONG ValidDataLength);
|
|
__attribute__((dllimport)) WINBOOL UnlockFile (HANDLE hFile, DWORD dwFileOffsetLow, DWORD dwFileOffsetHigh, DWORD nNumberOfBytesToUnlockLow, DWORD nNumberOfBytesToUnlockHigh);
|
|
__attribute__((dllimport)) WINBOOL WriteFileEx (HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) WINBOOL WriteFileGather (HANDLE hFile, FILE_SEGMENT_ELEMENT aSegmentArray[], DWORD nNumberOfBytesToWrite, LPDWORD lpReserved, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL GetVolumeNameForVolumeMountPointW (LPCWSTR lpszVolumeMountPoint, LPWSTR lpszVolumeName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL GetVolumePathNamesForVolumeNameW (LPCWSTR lpszVolumeName, LPWCH lpszVolumePathNames, DWORD cchBufferLength, PDWORD lpcchReturnLength);
|
|
__attribute__((dllimport)) DWORD GetTempPathA (DWORD nBufferLength, LPSTR lpBuffer);
|
|
__attribute__((dllimport)) DWORD GetTempPathW (DWORD nBufferLength, LPWSTR lpBuffer);
|
|
typedef struct _WIN32_FILE_ATTRIBUTE_DATA {
|
|
DWORD dwFileAttributes;
|
|
FILETIME ftCreationTime;
|
|
FILETIME ftLastAccessTime;
|
|
FILETIME ftLastWriteTime;
|
|
DWORD nFileSizeHigh;
|
|
DWORD nFileSizeLow;
|
|
} WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
|
|
__attribute__((dllimport)) WINBOOL CreateDirectoryA (LPCSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL CreateDirectoryW (LPCWSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL DeleteFileA (LPCSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL DeleteFileW (LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL FindClose (HANDLE hFindFile);
|
|
__attribute__((dllimport)) HANDLE FindFirstFileExA (LPCSTR lpFileName, FINDEX_INFO_LEVELS fInfoLevelId, LPVOID lpFindFileData, FINDEX_SEARCH_OPS fSearchOp, LPVOID lpSearchFilter, DWORD dwAdditionalFlags);
|
|
__attribute__((dllimport)) HANDLE FindFirstFileExW (LPCWSTR lpFileName, FINDEX_INFO_LEVELS fInfoLevelId, LPVOID lpFindFileData, FINDEX_SEARCH_OPS fSearchOp, LPVOID lpSearchFilter, DWORD dwAdditionalFlags);
|
|
__attribute__((dllimport)) WINBOOL FindNextFileA (HANDLE hFindFile, LPWIN32_FIND_DATAA lpFindFileData);
|
|
__attribute__((dllimport)) WINBOOL FindNextFileW (HANDLE hFindFile, LPWIN32_FIND_DATAW lpFindFileData);
|
|
__attribute__((dllimport)) WINBOOL FlushFileBuffers (HANDLE hFile);
|
|
__attribute__((dllimport)) WINBOOL GetDiskFreeSpaceExA (LPCSTR lpDirectoryName, PULARGE_INTEGER lpFreeBytesAvailableToCaller, PULARGE_INTEGER lpTotalNumberOfBytes, PULARGE_INTEGER lpTotalNumberOfFreeBytes);
|
|
__attribute__((dllimport)) WINBOOL GetDiskFreeSpaceExW (LPCWSTR lpDirectoryName, PULARGE_INTEGER lpFreeBytesAvailableToCaller, PULARGE_INTEGER lpTotalNumberOfBytes, PULARGE_INTEGER lpTotalNumberOfFreeBytes);
|
|
__attribute__((dllimport)) DWORD GetFileType (HANDLE hFile);
|
|
__attribute__((dllimport)) WINBOOL GetFileAttributesExA (LPCSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, LPVOID lpFileInformation);
|
|
__attribute__((dllimport)) WINBOOL GetFileAttributesExW (LPCWSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, LPVOID lpFileInformation);
|
|
__attribute__((dllimport)) WINBOOL LockFileEx (HANDLE hFile, DWORD dwFlags, DWORD dwReserved, DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL ReadFile (HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL RemoveDirectoryA (LPCSTR lpPathName);
|
|
__attribute__((dllimport)) WINBOOL RemoveDirectoryW (LPCWSTR lpPathName);
|
|
__attribute__((dllimport)) WINBOOL SetEndOfFile (HANDLE hFile);
|
|
__attribute__((dllimport)) WINBOOL SetFileAttributesA (LPCSTR lpFileName, DWORD dwFileAttributes);
|
|
__attribute__((dllimport)) WINBOOL SetFileAttributesW (LPCWSTR lpFileName, DWORD dwFileAttributes);
|
|
__attribute__((dllimport)) WINBOOL SetFilePointerEx (HANDLE hFile, LARGE_INTEGER liDistanceToMove, PLARGE_INTEGER lpNewFilePointer, DWORD dwMoveMethod);
|
|
__attribute__((dllimport)) WINBOOL UnlockFileEx (HANDLE hFile, DWORD dwReserved, DWORD nNumberOfBytesToUnlockLow, DWORD nNumberOfBytesToUnlockHigh, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL WriteFile (HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL CloseHandle (HANDLE hObject);
|
|
__attribute__((dllimport)) WINBOOL DuplicateHandle (HANDLE hSourceProcessHandle, HANDLE hSourceHandle, HANDLE hTargetProcessHandle, LPHANDLE lpTargetHandle, DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwOptions);
|
|
__attribute__((dllimport)) WINBOOL GetHandleInformation (HANDLE hObject, LPDWORD lpdwFlags);
|
|
__attribute__((dllimport)) WINBOOL SetHandleInformation (HANDLE hObject, DWORD dwMask, DWORD dwFlags);
|
|
typedef struct _HEAP_SUMMARY {
|
|
DWORD cb;
|
|
SIZE_T cbAllocated;
|
|
SIZE_T cbCommitted;
|
|
SIZE_T cbReserved;
|
|
SIZE_T cbMaxReserve;
|
|
} HEAP_SUMMARY,*PHEAP_SUMMARY;
|
|
typedef PHEAP_SUMMARY LPHEAP_SUMMARY;
|
|
__attribute__((dllimport)) HANDLE HeapCreate (DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize);
|
|
__attribute__((dllimport)) WINBOOL HeapDestroy (HANDLE hHeap);
|
|
__attribute__((dllimport)) WINBOOL HeapValidate (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);
|
|
__attribute__((dllimport)) SIZE_T HeapCompact (HANDLE hHeap, DWORD dwFlags);
|
|
WINBOOL HeapSummary (HANDLE hHeap, DWORD dwFlags, LPHEAP_SUMMARY lpSummary);
|
|
__attribute__((dllimport)) DWORD GetProcessHeaps (DWORD NumberOfHeaps, PHANDLE ProcessHeaps);
|
|
__attribute__((dllimport)) WINBOOL HeapLock (HANDLE hHeap);
|
|
__attribute__((dllimport)) WINBOOL HeapUnlock (HANDLE hHeap);
|
|
__attribute__((dllimport)) WINBOOL HeapWalk (HANDLE hHeap, LPPROCESS_HEAP_ENTRY lpEntry);
|
|
__attribute__((dllimport)) WINBOOL HeapSetInformation (HANDLE HeapHandle, HEAP_INFORMATION_CLASS HeapInformationClass, PVOID HeapInformation, SIZE_T HeapInformationLength);
|
|
__attribute__((dllimport)) WINBOOL HeapQueryInformation (HANDLE HeapHandle, HEAP_INFORMATION_CLASS HeapInformationClass, PVOID HeapInformation, SIZE_T HeapInformationLength, PSIZE_T ReturnLength);
|
|
__attribute__((dllimport)) LPVOID HeapAlloc (HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes);
|
|
__attribute__((dllimport)) LPVOID HeapReAlloc (HANDLE hHeap, DWORD dwFlags, LPVOID lpMem, SIZE_T dwBytes);
|
|
__attribute__((dllimport)) WINBOOL HeapFree (HANDLE hHeap, DWORD dwFlags, LPVOID lpMem);
|
|
__attribute__((dllimport)) SIZE_T HeapSize (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);
|
|
__attribute__((dllimport)) HANDLE GetProcessHeap (void);
|
|
__attribute__((dllimport)) WINBOOL GetOverlappedResult (HANDLE hFile, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, WINBOOL bWait);
|
|
__attribute__((dllimport)) HANDLE CreateIoCompletionPort (HANDLE FileHandle, HANDLE ExistingCompletionPort, ULONG_PTR CompletionKey, DWORD NumberOfConcurrentThreads);
|
|
__attribute__((dllimport)) WINBOOL GetQueuedCompletionStatus (HANDLE CompletionPort, LPDWORD lpNumberOfBytesTransferred, PULONG_PTR lpCompletionKey, LPOVERLAPPED *lpOverlapped, DWORD dwMilliseconds);
|
|
__attribute__((dllimport)) WINBOOL PostQueuedCompletionStatus (HANDLE CompletionPort, DWORD dwNumberOfBytesTransferred, ULONG_PTR dwCompletionKey, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL DeviceIoControl (HANDLE hDevice, DWORD dwIoControlCode, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL CancelIo (HANDLE hFile);
|
|
__attribute__((dllimport)) WINBOOL GetOverlappedResultEx (HANDLE hFile, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, DWORD dwMilliseconds, WINBOOL bAlertable);
|
|
__attribute__((dllimport)) void InitializeSListHead (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) PSLIST_ENTRY InterlockedPopEntrySList (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) PSLIST_ENTRY InterlockedPushEntrySList (PSLIST_HEADER ListHead, PSLIST_ENTRY ListEntry);
|
|
__attribute__((dllimport)) PSLIST_ENTRY InterlockedFlushSList (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) USHORT QueryDepthSList (PSLIST_HEADER ListHead);
|
|
__attribute__((dllimport)) WINBOOL IsProcessInJob (HANDLE ProcessHandle, HANDLE JobHandle, PBOOL Result);
|
|
typedef struct tagENUMUILANG {
|
|
ULONG NumOfEnumUILang;
|
|
ULONG SizeOfEnumUIBuffer;
|
|
LANGID *pEnumUIBuffer;
|
|
} ENUMUILANG, *PENUMUILANG;
|
|
typedef WINBOOL ( *ENUMRESLANGPROCA) (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, WORD wLanguage, LONG_PTR lParam);
|
|
typedef WINBOOL ( *ENUMRESLANGPROCW) (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage, LONG_PTR lParam);
|
|
typedef WINBOOL ( *ENUMRESNAMEPROCA) (HMODULE hModule, LPCSTR lpType, LPSTR lpName, LONG_PTR lParam);
|
|
typedef WINBOOL ( *ENUMRESNAMEPROCW) (HMODULE hModule, LPCWSTR lpType, LPWSTR lpName, LONG_PTR lParam);
|
|
typedef WINBOOL ( *ENUMRESTYPEPROCA) (HMODULE hModule, LPSTR lpType, LONG_PTR lParam);
|
|
typedef WINBOOL ( *ENUMRESTYPEPROCW) (HMODULE hModule, LPWSTR lpType, LONG_PTR lParam);
|
|
typedef WINBOOL ( *PGET_MODULE_HANDLE_EXA) (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
|
|
typedef WINBOOL ( *PGET_MODULE_HANDLE_EXW) (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
|
|
typedef PVOID DLL_DIRECTORY_COOKIE, *PDLL_DIRECTORY_COOKIE;
|
|
__attribute__((dllimport)) WINBOOL EnumResourceNamesW(HMODULE hModule, LPCWSTR lpType, ENUMRESNAMEPROCW lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) HRSRC FindResourceW(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
|
|
__attribute__((dllimport)) HRSRC FindResourceExW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage);
|
|
__attribute__((dllimport)) __attribute__((noreturn)) void FreeLibraryAndExitThread (HMODULE hLibModule, DWORD dwExitCode);
|
|
__attribute__((dllimport)) WINBOOL FreeResource (HGLOBAL hResData);
|
|
__attribute__((dllimport)) HMODULE GetModuleHandleA (LPCSTR lpModuleName);
|
|
__attribute__((dllimport)) HMODULE GetModuleHandleW (LPCWSTR lpModuleName);
|
|
__attribute__((dllimport)) HMODULE LoadLibraryA(LPCSTR lpLibFileName);
|
|
__attribute__((dllimport)) HMODULE LoadLibraryW(LPCWSTR lpLibFileName);
|
|
__attribute__((dllimport)) HMODULE LoadLibraryExA (LPCSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
|
|
__attribute__((dllimport)) HMODULE LoadLibraryExW (LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
|
|
__attribute__((dllimport)) HGLOBAL LoadResource (HMODULE hModule, HRSRC hResInfo);
|
|
__attribute__((dllimport)) int LoadStringA (HINSTANCE hInstance, UINT uID, LPSTR lpBuffer, int cchBufferMax);
|
|
__attribute__((dllimport)) int LoadStringW (HINSTANCE hInstance, UINT uID, LPWSTR lpBuffer, int cchBufferMax);
|
|
__attribute__((dllimport)) LPVOID LockResource (HGLOBAL hResData);
|
|
__attribute__((dllimport)) DWORD SizeofResource (HMODULE hModule, HRSRC hResInfo);
|
|
__attribute__((dllimport)) DLL_DIRECTORY_COOKIE AddDllDirectory (PCWSTR NewDirectory);
|
|
__attribute__((dllimport)) WINBOOL RemoveDllDirectory (DLL_DIRECTORY_COOKIE Cookie);
|
|
__attribute__((dllimport)) WINBOOL SetDefaultDllDirectories (DWORD DirectoryFlags);
|
|
__attribute__((dllimport)) WINBOOL GetModuleHandleExA (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
|
|
__attribute__((dllimport)) WINBOOL GetModuleHandleExW (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceLanguagesA(HMODULE hModule,LPCSTR lpType,LPCSTR lpName,ENUMRESLANGPROCA lpEnumFunc,LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceLanguagesW(HMODULE hModule,LPCWSTR lpType,LPCWSTR lpName,ENUMRESLANGPROCW lpEnumFunc,LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL DisableThreadLibraryCalls (HMODULE hLibModule);
|
|
__attribute__((dllimport)) WINBOOL FreeLibrary (HMODULE hLibModule);
|
|
__attribute__((dllimport)) FARPROC GetProcAddress (HMODULE hModule, LPCSTR lpProcName);
|
|
__attribute__((dllimport)) DWORD GetModuleFileNameA (HMODULE hModule, LPSTR lpFilename, DWORD nSize);
|
|
__attribute__((dllimport)) DWORD GetModuleFileNameW (HMODULE hModule, LPWSTR lpFilename, DWORD nSize);
|
|
typedef struct _REDIRECTION_FUNCTION_DESCRIPTOR {
|
|
PCSTR DllName;
|
|
PCSTR FunctionName;
|
|
PVOID RedirectionTarget;
|
|
} REDIRECTION_FUNCTION_DESCRIPTOR, *PREDIRECTION_FUNCTION_DESCRIPTOR;
|
|
typedef const REDIRECTION_FUNCTION_DESCRIPTOR *PCREDIRECTION_FUNCTION_DESCRIPTOR;
|
|
typedef struct _REDIRECTION_DESCRIPTOR {
|
|
ULONG Version;
|
|
ULONG FunctionCount;
|
|
PCREDIRECTION_FUNCTION_DESCRIPTOR Redirections;
|
|
} REDIRECTION_DESCRIPTOR, *PREDIRECTION_DESCRIPTOR;
|
|
typedef const REDIRECTION_DESCRIPTOR *PCREDIRECTION_DESCRIPTOR;
|
|
typedef enum _MEMORY_RESOURCE_NOTIFICATION_TYPE {
|
|
LowMemoryResourceNotification,
|
|
HighMemoryResourceNotification
|
|
} MEMORY_RESOURCE_NOTIFICATION_TYPE;
|
|
__attribute__((dllimport)) WINBOOL VirtualFree (LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
|
|
__attribute__((dllimport)) SIZE_T VirtualQuery (LPCVOID lpAddress, PMEMORY_BASIC_INFORMATION lpBuffer, SIZE_T dwLength);
|
|
__attribute__((dllimport)) WINBOOL FlushViewOfFile (LPCVOID lpBaseAddress, SIZE_T dwNumberOfBytesToFlush);
|
|
__attribute__((dllimport)) WINBOOL UnmapViewOfFile (LPCVOID lpBaseAddress);
|
|
__attribute__((dllimport)) HANDLE CreateFileMappingFromApp (HANDLE hFile, PSECURITY_ATTRIBUTES SecurityAttributes, ULONG PageProtection, ULONG64 MaximumSize, PCWSTR Name);
|
|
__attribute__((dllimport)) PVOID MapViewOfFileFromApp (HANDLE hFileMappingObject, ULONG DesiredAccess, ULONG64 FileOffset, SIZE_T NumberOfBytesToMap);
|
|
__attribute__((dllimport)) WINBOOL VirtualProtect (LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect);
|
|
__attribute__((dllimport)) LPVOID VirtualAlloc (LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
|
|
__attribute__((dllimport)) LPVOID VirtualAllocEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
|
|
__attribute__((dllimport)) WINBOOL VirtualFreeEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
|
|
__attribute__((dllimport)) WINBOOL VirtualProtectEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect);
|
|
__attribute__((dllimport)) SIZE_T VirtualQueryEx (HANDLE hProcess, LPCVOID lpAddress, PMEMORY_BASIC_INFORMATION lpBuffer, SIZE_T dwLength);
|
|
__attribute__((dllimport)) WINBOOL ReadProcessMemory (HANDLE hProcess, LPCVOID lpBaseAddress, LPVOID lpBuffer, SIZE_T nSize, SIZE_T *lpNumberOfBytesRead);
|
|
__attribute__((dllimport)) WINBOOL WriteProcessMemory (HANDLE hProcess, LPVOID lpBaseAddress, LPCVOID lpBuffer, SIZE_T nSize, SIZE_T *lpNumberOfBytesWritten);
|
|
__attribute__((dllimport)) HANDLE CreateFileMappingW (HANDLE hFile, LPSECURITY_ATTRIBUTES lpFileMappingAttributes, DWORD flProtect, DWORD dwMaximumSizeHigh, DWORD dwMaximumSizeLow, LPCWSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenFileMappingW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
|
|
__attribute__((dllimport)) LPVOID MapViewOfFile (HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD dwFileOffsetLow, SIZE_T dwNumberOfBytesToMap);
|
|
__attribute__((dllimport)) LPVOID MapViewOfFileEx (HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD dwFileOffsetLow, SIZE_T dwNumberOfBytesToMap, LPVOID lpBaseAddress);
|
|
__attribute__((dllimport)) SIZE_T GetLargePageMinimum (void);
|
|
__attribute__((dllimport)) WINBOOL GetProcessWorkingSetSizeEx (HANDLE hProcess, PSIZE_T lpMinimumWorkingSetSize, PSIZE_T lpMaximumWorkingSetSize, PDWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL SetProcessWorkingSetSizeEx (HANDLE hProcess, SIZE_T dwMinimumWorkingSetSize, SIZE_T dwMaximumWorkingSetSize, DWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL VirtualLock (LPVOID lpAddress, SIZE_T dwSize);
|
|
__attribute__((dllimport)) WINBOOL VirtualUnlock (LPVOID lpAddress, SIZE_T dwSize);
|
|
__attribute__((dllimport)) UINT GetWriteWatch (DWORD dwFlags, PVOID lpBaseAddress, SIZE_T dwRegionSize, PVOID *lpAddresses, ULONG_PTR *lpdwCount, LPDWORD lpdwGranularity);
|
|
__attribute__((dllimport)) UINT ResetWriteWatch (LPVOID lpBaseAddress, SIZE_T dwRegionSize);
|
|
__attribute__((dllimport)) HANDLE CreateMemoryResourceNotification (MEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType);
|
|
__attribute__((dllimport)) WINBOOL QueryMemoryResourceNotification (HANDLE ResourceNotificationHandle, PBOOL ResourceState);
|
|
__attribute__((dllimport)) WINBOOL GetSystemFileCacheSize (PSIZE_T lpMinimumFileCacheSize, PSIZE_T lpMaximumFileCacheSize, PDWORD lpFlags);
|
|
__attribute__((dllimport)) WINBOOL SetSystemFileCacheSize (SIZE_T MinimumFileCacheSize, SIZE_T MaximumFileCacheSize, DWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL ImpersonateNamedPipeClient (HANDLE hNamedPipe);
|
|
__attribute__((dllimport)) WINBOOL CreatePipe (PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL ConnectNamedPipe (HANDLE hNamedPipe, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) WINBOOL DisconnectNamedPipe (HANDLE hNamedPipe);
|
|
__attribute__((dllimport)) WINBOOL SetNamedPipeHandleState (HANDLE hNamedPipe, LPDWORD lpMode, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout);
|
|
__attribute__((dllimport)) WINBOOL PeekNamedPipe (HANDLE hNamedPipe, LPVOID lpBuffer, DWORD nBufferSize, LPDWORD lpBytesRead, LPDWORD lpTotalBytesAvail, LPDWORD lpBytesLeftThisMessage);
|
|
__attribute__((dllimport)) WINBOOL TransactNamedPipe (HANDLE hNamedPipe, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) HANDLE CreateNamedPipeW (LPCWSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL WaitNamedPipeW (LPCWSTR lpNamedPipeName, DWORD nTimeOut);
|
|
__attribute__((dllimport)) HANDLE CreatePrivateNamespaceW (LPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes, LPVOID lpBoundaryDescriptor, LPCWSTR lpAliasPrefix);
|
|
__attribute__((dllimport)) HANDLE OpenPrivateNamespaceW (LPVOID lpBoundaryDescriptor, LPCWSTR lpAliasPrefix);
|
|
__attribute__((dllimport)) BOOLEAN ClosePrivateNamespace (HANDLE Handle, ULONG Flags);
|
|
__attribute__((dllimport)) HANDLE CreateBoundaryDescriptorW (LPCWSTR Name, ULONG Flags);
|
|
__attribute__((dllimport)) WINBOOL AddSIDToBoundaryDescriptor (HANDLE *BoundaryDescriptor, PSID RequiredSid);
|
|
__attribute__((dllimport)) void DeleteBoundaryDescriptor (HANDLE BoundaryDescriptor);
|
|
__attribute__((dllimport)) WINBOOL SetEnvironmentStringsW (LPWCH NewEnvironment);
|
|
__attribute__((dllimport)) LPSTR GetCommandLineA (void);
|
|
__attribute__((dllimport)) LPWSTR GetCommandLineW (void);
|
|
__attribute__((dllimport)) WINBOOL SetCurrentDirectoryA (LPCSTR lpPathName);
|
|
__attribute__((dllimport)) WINBOOL SetCurrentDirectoryW (LPCWSTR lpPathName);
|
|
__attribute__((dllimport)) DWORD GetCurrentDirectoryA (DWORD nBufferLength, LPSTR lpBuffer);
|
|
__attribute__((dllimport)) DWORD GetCurrentDirectoryW (DWORD nBufferLength, LPWSTR lpBuffer);
|
|
__attribute__((dllimport)) DWORD SearchPathW (LPCWSTR lpPath, LPCWSTR lpFileName, LPCWSTR lpExtension, DWORD nBufferLength, LPWSTR lpBuffer, LPWSTR *lpFilePart);
|
|
__attribute__((dllimport)) DWORD SearchPathA (LPCSTR lpPath, LPCSTR lpFileName, LPCSTR lpExtension, DWORD nBufferLength, LPSTR lpBuffer, LPSTR *lpFilePart);
|
|
__attribute__((dllimport)) WINBOOL NeedCurrentDirectoryForExePathA (LPCSTR ExeName);
|
|
__attribute__((dllimport)) WINBOOL NeedCurrentDirectoryForExePathW (LPCWSTR ExeName);
|
|
__attribute__((dllimport)) LPCH GetEnvironmentStrings (void);
|
|
__attribute__((dllimport)) LPWCH GetEnvironmentStringsW (void);
|
|
__attribute__((dllimport)) HANDLE GetStdHandle (DWORD nStdHandle);
|
|
__attribute__((dllimport)) DWORD ExpandEnvironmentStringsA (LPCSTR lpSrc, LPSTR lpDst, DWORD nSize);
|
|
__attribute__((dllimport)) DWORD ExpandEnvironmentStringsW (LPCWSTR lpSrc, LPWSTR lpDst, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL FreeEnvironmentStringsA (LPCH penv);
|
|
__attribute__((dllimport)) WINBOOL FreeEnvironmentStringsW (LPWCH penv);
|
|
__attribute__((dllimport)) DWORD GetEnvironmentVariableA (LPCSTR lpName, LPSTR lpBuffer, DWORD nSize);
|
|
__attribute__((dllimport)) DWORD GetEnvironmentVariableW (LPCWSTR lpName, LPWSTR lpBuffer, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL SetEnvironmentVariableA (LPCSTR lpName, LPCSTR lpValue);
|
|
__attribute__((dllimport)) WINBOOL SetEnvironmentVariableW (LPCWSTR lpName, LPCWSTR lpValue);
|
|
__attribute__((dllimport)) WINBOOL SetStdHandle (DWORD nStdHandle, HANDLE hHandle);
|
|
__attribute__((dllimport)) WINBOOL TerminateProcess (HANDLE hProcess, UINT uExitCode);
|
|
__attribute__((dllimport)) HANDLE OpenProcess (DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwProcessId);
|
|
__attribute__((dllimport)) DWORD QueueUserAPC (PAPCFUNC pfnAPC, HANDLE hThread, ULONG_PTR dwData);
|
|
__attribute__((dllimport)) WINBOOL GetProcessTimes (HANDLE hProcess, LPFILETIME lpCreationTime, LPFILETIME lpExitTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime);
|
|
__attribute__((dllimport)) __attribute__((noreturn)) void ExitProcess (UINT uExitCode);
|
|
__attribute__((dllimport)) WINBOOL GetExitCodeProcess (HANDLE hProcess, LPDWORD lpExitCode);
|
|
__attribute__((dllimport)) WINBOOL SwitchToThread (void);
|
|
__attribute__((dllimport)) HANDLE OpenThread (DWORD dwDesiredAccess, WINBOOL bInheritHandle, DWORD dwThreadId);
|
|
__attribute__((dllimport)) WINBOOL SetThreadPriorityBoost (HANDLE hThread, WINBOOL bDisablePriorityBoost);
|
|
__attribute__((dllimport)) WINBOOL GetThreadPriorityBoost (HANDLE hThread, PBOOL pDisablePriorityBoost);
|
|
__attribute__((dllimport)) WINBOOL SetThreadToken (PHANDLE Thread, HANDLE Token);
|
|
__attribute__((dllimport)) WINBOOL OpenProcessToken (HANDLE ProcessHandle, DWORD DesiredAccess, PHANDLE TokenHandle);
|
|
__attribute__((dllimport)) WINBOOL OpenThreadToken (HANDLE ThreadHandle, DWORD DesiredAccess, WINBOOL OpenAsSelf, PHANDLE TokenHandle);
|
|
__attribute__((dllimport)) WINBOOL SetPriorityClass (HANDLE hProcess, DWORD dwPriorityClass);
|
|
__attribute__((dllimport)) DWORD GetPriorityClass (HANDLE hProcess);
|
|
__attribute__((dllimport)) DWORD GetProcessId (HANDLE Process);
|
|
__attribute__((dllimport)) DWORD GetThreadId (HANDLE Thread);
|
|
__attribute__((dllimport)) WINBOOL GetThreadContext (HANDLE hThread, LPCONTEXT lpContext);
|
|
__attribute__((dllimport)) WINBOOL FlushInstructionCache (HANDLE hProcess, LPCVOID lpBaseAddress, SIZE_T dwSize);
|
|
__attribute__((dllimport)) WINBOOL GetThreadTimes (HANDLE hThread, LPFILETIME lpCreationTime, LPFILETIME lpExitTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime);
|
|
__attribute__((dllimport)) DWORD GetCurrentProcessorNumber (void);
|
|
typedef struct _PROCESS_INFORMATION {
|
|
HANDLE hProcess;
|
|
HANDLE hThread;
|
|
DWORD dwProcessId;
|
|
DWORD dwThreadId;
|
|
} PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION;
|
|
typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC_THREAD_ATTRIBUTE_LIST;
|
|
typedef struct _STARTUPINFOA {
|
|
DWORD cb;
|
|
LPSTR lpReserved;
|
|
LPSTR lpDesktop;
|
|
LPSTR lpTitle;
|
|
DWORD dwX;
|
|
DWORD dwY;
|
|
DWORD dwXSize;
|
|
DWORD dwYSize;
|
|
DWORD dwXCountChars;
|
|
DWORD dwYCountChars;
|
|
DWORD dwFillAttribute;
|
|
DWORD dwFlags;
|
|
WORD wShowWindow;
|
|
WORD cbReserved2;
|
|
LPBYTE lpReserved2;
|
|
HANDLE hStdInput;
|
|
HANDLE hStdOutput;
|
|
HANDLE hStdError;
|
|
} STARTUPINFOA, *LPSTARTUPINFOA;
|
|
typedef struct _STARTUPINFOW {
|
|
DWORD cb;
|
|
LPWSTR lpReserved;
|
|
LPWSTR lpDesktop;
|
|
LPWSTR lpTitle;
|
|
DWORD dwX;
|
|
DWORD dwY;
|
|
DWORD dwXSize;
|
|
DWORD dwYSize;
|
|
DWORD dwXCountChars;
|
|
DWORD dwYCountChars;
|
|
DWORD dwFillAttribute;
|
|
DWORD dwFlags;
|
|
WORD wShowWindow;
|
|
WORD cbReserved2;
|
|
LPBYTE lpReserved2;
|
|
HANDLE hStdInput;
|
|
HANDLE hStdOutput;
|
|
HANDLE hStdError;
|
|
} STARTUPINFOW, *LPSTARTUPINFOW;
|
|
typedef STARTUPINFOA STARTUPINFO;
|
|
typedef LPSTARTUPINFOA LPSTARTUPINFO;
|
|
__attribute__((dllimport)) HANDLE CreateRemoteThread (HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId);
|
|
__attribute__((dllimport)) WINBOOL TerminateThread (HANDLE hThread, DWORD dwExitCode);
|
|
__attribute__((dllimport)) WINBOOL SetProcessShutdownParameters (DWORD dwLevel, DWORD dwFlags);
|
|
__attribute__((dllimport)) DWORD GetProcessVersion (DWORD ProcessId);
|
|
__attribute__((dllimport)) void GetStartupInfoW (LPSTARTUPINFOW lpStartupInfo);
|
|
__attribute__((dllimport)) WINBOOL SetThreadStackGuarantee (PULONG StackSizeInBytes);
|
|
__attribute__((dllimport)) WINBOOL ProcessIdToSessionId (DWORD dwProcessId, DWORD *pSessionId);
|
|
__attribute__((dllimport)) HANDLE CreateRemoteThreadEx (HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList, LPDWORD lpThreadId);
|
|
__attribute__((dllimport)) WINBOOL SetThreadContext (HANDLE hThread, const CONTEXT *lpContext);
|
|
__attribute__((dllimport)) WINBOOL GetProcessHandleCount (HANDLE hProcess, PDWORD pdwHandleCount);
|
|
__attribute__((dllimport)) WINBOOL CreateProcessA (LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
|
|
__attribute__((dllimport)) WINBOOL CreateProcessW (LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
|
|
__attribute__((dllimport)) WINBOOL CreateProcessAsUserW (HANDLE hToken, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
|
|
__attribute__((dllimport)) HANDLE GetCurrentProcess (void);
|
|
__attribute__((dllimport)) DWORD GetCurrentProcessId (void);
|
|
__attribute__((dllimport)) HANDLE GetCurrentThread (void);
|
|
__attribute__((dllimport)) DWORD GetCurrentThreadId (void);
|
|
WINBOOL IsProcessorFeaturePresent (DWORD ProcessorFeature);
|
|
__attribute__((dllimport)) HANDLE CreateThread (LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId);
|
|
__attribute__((dllimport)) WINBOOL SetThreadPriority (HANDLE hThread, int nPriority);
|
|
__attribute__((dllimport)) int GetThreadPriority (HANDLE hThread);
|
|
__attribute__((dllimport)) __attribute__((noreturn)) void ExitThread (DWORD dwExitCode);
|
|
__attribute__((dllimport)) WINBOOL GetExitCodeThread (HANDLE hThread, LPDWORD lpExitCode);
|
|
__attribute__((dllimport)) DWORD SuspendThread (HANDLE hThread);
|
|
__attribute__((dllimport)) DWORD ResumeThread (HANDLE hThread);
|
|
__attribute__((dllimport)) DWORD TlsAlloc (void);
|
|
__attribute__((dllimport)) LPVOID TlsGetValue (DWORD dwTlsIndex);
|
|
__attribute__((dllimport)) WINBOOL TlsSetValue (DWORD dwTlsIndex, LPVOID lpTlsValue);
|
|
__attribute__((dllimport)) WINBOOL TlsFree (DWORD dwTlsIndex);
|
|
__attribute__((dllimport)) WINBOOL QueryPerformanceCounter (LARGE_INTEGER *lpPerformanceCount);
|
|
__attribute__((dllimport)) WINBOOL QueryPerformanceFrequency (LARGE_INTEGER *lpFrequency);
|
|
__attribute__((dllimport)) WINBOOL AccessCheck (PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckAndAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPWSTR ObjectTypeName, LPWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByType (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID PrincipalSelfSid, HANDLE ClientToken, DWORD DesiredAccess, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeResultList (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID PrincipalSelfSid, HANDLE ClientToken, DWORD DesiredAccess, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccessList, LPDWORD AccessStatusList);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeAndAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPCWSTR ObjectTypeName, LPCWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeResultListAndAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPCWSTR ObjectTypeName, LPCWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccessList, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeResultListAndAuditAlarmByHandleW (LPCWSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, LPCWSTR ObjectTypeName, LPCWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccessList, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AddAccessAllowedAce (PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL AddAccessAllowedAceEx (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL AddAccessAllowedObjectAce (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, GUID *ObjectTypeGuid, GUID *InheritedObjectTypeGuid, PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL AddAccessDeniedAce (PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL AddAccessDeniedAceEx (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL AddAccessDeniedObjectAce (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, GUID *ObjectTypeGuid, GUID *InheritedObjectTypeGuid, PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL AddAce (PACL pAcl, DWORD dwAceRevision, DWORD dwStartingAceIndex, LPVOID pAceList, DWORD nAceListLength);
|
|
__attribute__((dllimport)) WINBOOL AddAuditAccessAce (PACL pAcl, DWORD dwAceRevision, DWORD dwAccessMask, PSID pSid, WINBOOL bAuditSuccess, WINBOOL bAuditFailure);
|
|
__attribute__((dllimport)) WINBOOL AddAuditAccessAceEx (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD dwAccessMask, PSID pSid, WINBOOL bAuditSuccess, WINBOOL bAuditFailure);
|
|
__attribute__((dllimport)) WINBOOL AddAuditAccessObjectAce (PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, GUID *ObjectTypeGuid, GUID *InheritedObjectTypeGuid, PSID pSid, WINBOOL bAuditSuccess, WINBOOL bAuditFailure);
|
|
__attribute__((dllimport)) WINBOOL AdjustTokenGroups (HANDLE TokenHandle, WINBOOL ResetToDefault, PTOKEN_GROUPS NewState, DWORD BufferLength, PTOKEN_GROUPS PreviousState, PDWORD ReturnLength);
|
|
__attribute__((dllimport)) WINBOOL AdjustTokenPrivileges (HANDLE TokenHandle, WINBOOL DisableAllPrivileges, PTOKEN_PRIVILEGES NewState, DWORD BufferLength, PTOKEN_PRIVILEGES PreviousState, PDWORD ReturnLength);
|
|
__attribute__((dllimport)) WINBOOL AllocateAndInitializeSid (PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount, DWORD nSubAuthority0, DWORD nSubAuthority1, DWORD nSubAuthority2, DWORD nSubAuthority3, DWORD nSubAuthority4, DWORD nSubAuthority5, DWORD nSubAuthority6, DWORD nSubAuthority7, PSID *pSid);
|
|
__attribute__((dllimport)) WINBOOL AllocateLocallyUniqueId (PLUID Luid);
|
|
__attribute__((dllimport)) WINBOOL AreAllAccessesGranted (DWORD GrantedAccess, DWORD DesiredAccess);
|
|
__attribute__((dllimport)) WINBOOL AreAnyAccessesGranted (DWORD GrantedAccess, DWORD DesiredAccess);
|
|
__attribute__((dllimport)) WINBOOL CheckTokenMembership (HANDLE TokenHandle, PSID SidToCheck, PBOOL IsMember);
|
|
__attribute__((dllimport)) WINBOOL ConvertToAutoInheritPrivateObjectSecurity (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CurrentSecurityDescriptor, PSECURITY_DESCRIPTOR *NewSecurityDescriptor, GUID *ObjectType, BOOLEAN IsDirectoryObject, PGENERIC_MAPPING GenericMapping);
|
|
__attribute__((dllimport)) WINBOOL CopySid (DWORD nDestinationSidLength, PSID pDestinationSid, PSID pSourceSid);
|
|
__attribute__((dllimport)) WINBOOL CreatePrivateObjectSecurity (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR *NewDescriptor, WINBOOL IsDirectoryObject, HANDLE Token, PGENERIC_MAPPING GenericMapping);
|
|
__attribute__((dllimport)) WINBOOL CreatePrivateObjectSecurityEx (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR *NewDescriptor, GUID *ObjectType, WINBOOL IsContainerObject, ULONG AutoInheritFlags, HANDLE Token, PGENERIC_MAPPING GenericMapping);
|
|
__attribute__((dllimport)) WINBOOL CreatePrivateObjectSecurityWithMultipleInheritance (PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR *NewDescriptor, GUID **ObjectTypes, ULONG GuidCount, WINBOOL IsContainerObject, ULONG AutoInheritFlags, HANDLE Token, PGENERIC_MAPPING GenericMapping);
|
|
__attribute__((dllimport)) WINBOOL CreateRestrictedToken (HANDLE ExistingTokenHandle, DWORD Flags, DWORD DisableSidCount, PSID_AND_ATTRIBUTES SidsToDisable, DWORD DeletePrivilegeCount, PLUID_AND_ATTRIBUTES PrivilegesToDelete, DWORD RestrictedSidCount, PSID_AND_ATTRIBUTES SidsToRestrict, PHANDLE NewTokenHandle);
|
|
__attribute__((dllimport)) WINBOOL CreateWellKnownSid (WELL_KNOWN_SID_TYPE WellKnownSidType, PSID DomainSid, PSID pSid, DWORD *cbSid);
|
|
__attribute__((dllimport)) WINBOOL EqualDomainSid (PSID pSid1, PSID pSid2, WINBOOL *pfEqual);
|
|
__attribute__((dllimport)) WINBOOL DeleteAce (PACL pAcl, DWORD dwAceIndex);
|
|
__attribute__((dllimport)) WINBOOL DestroyPrivateObjectSecurity (PSECURITY_DESCRIPTOR *ObjectDescriptor);
|
|
__attribute__((dllimport)) WINBOOL DuplicateToken (HANDLE ExistingTokenHandle, SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, PHANDLE DuplicateTokenHandle);
|
|
__attribute__((dllimport)) WINBOOL DuplicateTokenEx (HANDLE hExistingToken, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpTokenAttributes, SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, TOKEN_TYPE TokenType, PHANDLE phNewToken);
|
|
__attribute__((dllimport)) WINBOOL EqualPrefixSid (PSID pSid1, PSID pSid2);
|
|
__attribute__((dllimport)) WINBOOL EqualSid (PSID pSid1, PSID pSid2);
|
|
__attribute__((dllimport)) WINBOOL FindFirstFreeAce (PACL pAcl, LPVOID *pAce);
|
|
__attribute__((dllimport)) PVOID FreeSid (PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL GetAce (PACL pAcl, DWORD dwAceIndex, LPVOID *pAce);
|
|
__attribute__((dllimport)) WINBOOL GetAclInformation (PACL pAcl, LPVOID pAclInformation, DWORD nAclInformationLength, ACL_INFORMATION_CLASS dwAclInformationClass);
|
|
__attribute__((dllimport)) WINBOOL GetFileSecurityW (LPCWSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
|
|
__attribute__((dllimport)) WINBOOL GetKernelObjectSecurity (HANDLE Handle, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
|
|
__attribute__((dllimport)) DWORD GetLengthSid (PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL GetPrivateObjectSecurity (PSECURITY_DESCRIPTOR ObjectDescriptor, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ResultantDescriptor, DWORD DescriptorLength, PDWORD ReturnLength);
|
|
__attribute__((dllimport)) WINBOOL GetSecurityDescriptorControl (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision);
|
|
__attribute__((dllimport)) WINBOOL GetSecurityDescriptorDacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL *pDacl, LPBOOL lpbDaclDefaulted);
|
|
__attribute__((dllimport)) WINBOOL GetSecurityDescriptorGroup (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID *pGroup, LPBOOL lpbGroupDefaulted);
|
|
__attribute__((dllimport)) DWORD GetSecurityDescriptorLength (PSECURITY_DESCRIPTOR pSecurityDescriptor);
|
|
__attribute__((dllimport)) WINBOOL GetSecurityDescriptorOwner (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID *pOwner, LPBOOL lpbOwnerDefaulted);
|
|
__attribute__((dllimport)) DWORD GetSecurityDescriptorRMControl (PSECURITY_DESCRIPTOR SecurityDescriptor, PUCHAR RMControl);
|
|
__attribute__((dllimport)) WINBOOL GetSecurityDescriptorSacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL *pSacl, LPBOOL lpbSaclDefaulted);
|
|
__attribute__((dllimport)) PSID_IDENTIFIER_AUTHORITY GetSidIdentifierAuthority (PSID pSid);
|
|
__attribute__((dllimport)) DWORD GetSidLengthRequired (UCHAR nSubAuthorityCount);
|
|
__attribute__((dllimport)) PDWORD GetSidSubAuthority (PSID pSid, DWORD nSubAuthority);
|
|
__attribute__((dllimport)) PUCHAR GetSidSubAuthorityCount (PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL GetTokenInformation (HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength, PDWORD ReturnLength);
|
|
__attribute__((dllimport)) WINBOOL GetWindowsAccountDomainSid (PSID pSid, PSID pDomainSid, DWORD *cbDomainSid);
|
|
__attribute__((dllimport)) WINBOOL ImpersonateAnonymousToken (HANDLE ThreadHandle);
|
|
__attribute__((dllimport)) WINBOOL ImpersonateLoggedOnUser (HANDLE hToken);
|
|
__attribute__((dllimport)) WINBOOL ImpersonateSelf (SECURITY_IMPERSONATION_LEVEL ImpersonationLevel);
|
|
__attribute__((dllimport)) WINBOOL InitializeAcl (PACL pAcl, DWORD nAclLength, DWORD dwAclRevision);
|
|
__attribute__((dllimport)) WINBOOL InitializeSecurityDescriptor (PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision);
|
|
__attribute__((dllimport)) WINBOOL InitializeSid (PSID Sid, PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount);
|
|
__attribute__((dllimport)) WINBOOL IsTokenRestricted (HANDLE TokenHandle);
|
|
__attribute__((dllimport)) WINBOOL IsValidAcl (PACL pAcl);
|
|
__attribute__((dllimport)) WINBOOL IsValidSecurityDescriptor (PSECURITY_DESCRIPTOR pSecurityDescriptor);
|
|
__attribute__((dllimport)) WINBOOL IsValidSid (PSID pSid);
|
|
__attribute__((dllimport)) WINBOOL IsWellKnownSid (PSID pSid, WELL_KNOWN_SID_TYPE WellKnownSidType);
|
|
__attribute__((dllimport)) WINBOOL MakeAbsoluteSD (PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, LPDWORD lpdwAbsoluteSecurityDescriptorSize, PACL pDacl, LPDWORD lpdwDaclSize, PACL pSacl, LPDWORD lpdwSaclSize, PSID pOwner, LPDWORD lpdwOwnerSize, PSID pPrimaryGroup, LPDWORD lpdwPrimaryGroupSize);
|
|
__attribute__((dllimport)) WINBOOL MakeSelfRelativeSD (PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, LPDWORD lpdwBufferLength);
|
|
__attribute__((dllimport)) void MapGenericMask (PDWORD AccessMask, PGENERIC_MAPPING GenericMapping);
|
|
__attribute__((dllimport)) WINBOOL ObjectCloseAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL ObjectDeleteAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL ObjectOpenAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, LPWSTR ObjectTypeName, LPWSTR ObjectName, PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, DWORD GrantedAccess, PPRIVILEGE_SET Privileges, WINBOOL ObjectCreation, WINBOOL AccessGranted, LPBOOL GenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL ObjectPrivilegeAuditAlarmW (LPCWSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, DWORD DesiredAccess, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
|
|
__attribute__((dllimport)) WINBOOL PrivilegeCheck (HANDLE ClientToken, PPRIVILEGE_SET RequiredPrivileges, LPBOOL pfResult);
|
|
__attribute__((dllimport)) WINBOOL PrivilegedServiceAuditAlarmW (LPCWSTR SubsystemName, LPCWSTR ServiceName, HANDLE ClientToken, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
|
|
__attribute__((dllimport)) WINBOOL RevertToSelf (void);
|
|
__attribute__((dllimport)) WINBOOL SetAclInformation (PACL pAcl, LPVOID pAclInformation, DWORD nAclInformationLength, ACL_INFORMATION_CLASS dwAclInformationClass);
|
|
__attribute__((dllimport)) WINBOOL SetFileSecurityW (LPCWSTR lpFileName, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor);
|
|
__attribute__((dllimport)) WINBOOL SetKernelObjectSecurity (HANDLE Handle, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR SecurityDescriptor);
|
|
__attribute__((dllimport)) WINBOOL SetPrivateObjectSecurity (SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ModificationDescriptor, PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, PGENERIC_MAPPING GenericMapping, HANDLE Token);
|
|
__attribute__((dllimport)) WINBOOL SetPrivateObjectSecurityEx (SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ModificationDescriptor, PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, ULONG AutoInheritFlags, PGENERIC_MAPPING GenericMapping, HANDLE Token);
|
|
__attribute__((dllimport)) WINBOOL SetSecurityDescriptorControl (PSECURITY_DESCRIPTOR pSecurityDescriptor, SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest, SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet);
|
|
__attribute__((dllimport)) WINBOOL SetSecurityDescriptorDacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, WINBOOL bDaclPresent, PACL pDacl, WINBOOL bDaclDefaulted);
|
|
__attribute__((dllimport)) WINBOOL SetSecurityDescriptorGroup (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pGroup, WINBOOL bGroupDefaulted);
|
|
__attribute__((dllimport)) WINBOOL SetSecurityDescriptorOwner (PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pOwner, WINBOOL bOwnerDefaulted);
|
|
__attribute__((dllimport)) DWORD SetSecurityDescriptorRMControl (PSECURITY_DESCRIPTOR SecurityDescriptor, PUCHAR RMControl);
|
|
__attribute__((dllimport)) WINBOOL SetSecurityDescriptorSacl (PSECURITY_DESCRIPTOR pSecurityDescriptor, WINBOOL bSaclPresent, PACL pSacl, WINBOOL bSaclDefaulted);
|
|
__attribute__((dllimport)) WINBOOL SetTokenInformation (HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength);
|
|
typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
|
|
typedef RTL_RUN_ONCE INIT_ONCE;
|
|
typedef PRTL_RUN_ONCE PINIT_ONCE;
|
|
typedef PRTL_RUN_ONCE LPINIT_ONCE;
|
|
typedef WINBOOL ( *PINIT_ONCE_FN) (PINIT_ONCE InitOnce, PVOID Parameter, PVOID *Context);
|
|
typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
|
|
__attribute__((dllimport)) void EnterCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
|
|
__attribute__((dllimport)) void LeaveCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
|
|
__attribute__((dllimport)) WINBOOL TryEnterCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
|
|
__attribute__((dllimport)) void DeleteCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
|
|
__attribute__((dllimport)) WINBOOL SetEvent (HANDLE hEvent);
|
|
__attribute__((dllimport)) WINBOOL ResetEvent (HANDLE hEvent);
|
|
__attribute__((dllimport)) WINBOOL ReleaseSemaphore (HANDLE hSemaphore, LONG lReleaseCount, LPLONG lpPreviousCount);
|
|
__attribute__((dllimport)) WINBOOL ReleaseMutex (HANDLE hMutex);
|
|
__attribute__((dllimport)) DWORD WaitForSingleObjectEx (HANDLE hHandle, DWORD dwMilliseconds, WINBOOL bAlertable);
|
|
__attribute__((dllimport)) DWORD WaitForMultipleObjectsEx (DWORD nCount, const HANDLE *lpHandles, WINBOOL bWaitAll, DWORD dwMilliseconds, WINBOOL bAlertable);
|
|
__attribute__((dllimport)) HANDLE OpenMutexW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenEventA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenEventW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenSemaphoreW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
|
|
WINBOOL WaitOnAddress (volatile void *Address, PVOID CompareAddress, SIZE_T AddressSize, DWORD dwMilliseconds);
|
|
void WakeByAddressSingle (PVOID Address);
|
|
void WakeByAddressAll (PVOID Address);
|
|
typedef void ( *PTIMERAPCROUTINE) (LPVOID lpArgToCompletionRoutine, DWORD dwTimerLowValue, DWORD dwTimerHighValue);
|
|
typedef RTL_BARRIER SYNCHRONIZATION_BARRIER;
|
|
typedef PRTL_BARRIER PSYNCHRONIZATION_BARRIER;
|
|
typedef PRTL_BARRIER LPSYNCHRONIZATION_BARRIER;
|
|
__attribute__((dllimport)) void InitializeCriticalSection (LPCRITICAL_SECTION lpCriticalSection);
|
|
__attribute__((dllimport)) WINBOOL InitializeCriticalSectionAndSpinCount (LPCRITICAL_SECTION lpCriticalSection, DWORD dwSpinCount);
|
|
__attribute__((dllimport)) DWORD SetCriticalSectionSpinCount (LPCRITICAL_SECTION lpCriticalSection, DWORD dwSpinCount);
|
|
__attribute__((dllimport)) DWORD WaitForSingleObject (HANDLE hHandle, DWORD dwMilliseconds);
|
|
__attribute__((dllimport)) DWORD SleepEx (DWORD dwMilliseconds, WINBOOL bAlertable);
|
|
__attribute__((dllimport)) HANDLE CreateMutexA (LPSECURITY_ATTRIBUTES lpMutexAttributes, WINBOOL bInitialOwner, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE CreateMutexW (LPSECURITY_ATTRIBUTES lpMutexAttributes, WINBOOL bInitialOwner, LPCWSTR lpName);
|
|
__attribute__((dllimport)) HANDLE CreateEventA (LPSECURITY_ATTRIBUTES lpEventAttributes, WINBOOL bManualReset, WINBOOL bInitialState, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE CreateEventW (LPSECURITY_ATTRIBUTES lpEventAttributes, WINBOOL bManualReset, WINBOOL bInitialState, LPCWSTR lpName);
|
|
__attribute__((dllimport)) WINBOOL SetWaitableTimer (HANDLE hTimer, const LARGE_INTEGER *lpDueTime, LONG lPeriod, PTIMERAPCROUTINE pfnCompletionRoutine, LPVOID lpArgToCompletionRoutine, WINBOOL fResume);
|
|
__attribute__((dllimport)) WINBOOL CancelWaitableTimer (HANDLE hTimer);
|
|
__attribute__((dllimport)) HANDLE OpenWaitableTimerW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpTimerName);
|
|
WINBOOL EnterSynchronizationBarrier (LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags);
|
|
WINBOOL InitializeSynchronizationBarrier (LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount);
|
|
WINBOOL DeleteSynchronizationBarrier (LPSYNCHRONIZATION_BARRIER lpBarrier);
|
|
__attribute__((dllimport)) void Sleep (DWORD dwMilliseconds);
|
|
__attribute__((dllimport)) DWORD SignalObjectAndWait (HANDLE hObjectToSignal, HANDLE hObjectToWaitOn, DWORD dwMilliseconds, WINBOOL bAlertable);
|
|
typedef struct _SYSTEM_INFO {
|
|
__extension__ union {
|
|
DWORD dwOemId;
|
|
__extension__ struct {
|
|
WORD wProcessorArchitecture;
|
|
WORD wReserved;
|
|
} ;
|
|
} ;
|
|
DWORD dwPageSize;
|
|
LPVOID lpMinimumApplicationAddress;
|
|
LPVOID lpMaximumApplicationAddress;
|
|
DWORD_PTR dwActiveProcessorMask;
|
|
DWORD dwNumberOfProcessors;
|
|
DWORD dwProcessorType;
|
|
DWORD dwAllocationGranularity;
|
|
WORD wProcessorLevel;
|
|
WORD wProcessorRevision;
|
|
} SYSTEM_INFO, *LPSYSTEM_INFO;
|
|
__attribute__((dllimport)) void GetSystemTime (LPSYSTEMTIME lpSystemTime);
|
|
__attribute__((dllimport)) void GetSystemTimeAsFileTime (LPFILETIME lpSystemTimeAsFileTime);
|
|
__attribute__((dllimport)) void GetLocalTime (LPSYSTEMTIME lpSystemTime);
|
|
__attribute__((dllimport)) void GetNativeSystemInfo (LPSYSTEM_INFO lpSystemInfo);
|
|
typedef struct _MEMORYSTATUSEX {
|
|
DWORD dwLength;
|
|
DWORD dwMemoryLoad;
|
|
DWORDLONG ullTotalPhys;
|
|
DWORDLONG ullAvailPhys;
|
|
DWORDLONG ullTotalPageFile;
|
|
DWORDLONG ullAvailPageFile;
|
|
DWORDLONG ullTotalVirtual;
|
|
DWORDLONG ullAvailVirtual;
|
|
DWORDLONG ullAvailExtendedVirtual;
|
|
} MEMORYSTATUSEX,*LPMEMORYSTATUSEX;
|
|
__attribute__((dllimport)) void GetSystemInfo (LPSYSTEM_INFO lpSystemInfo);
|
|
__attribute__((dllimport)) WINBOOL GlobalMemoryStatusEx (LPMEMORYSTATUSEX lpBuffer);
|
|
__attribute__((dllimport)) DWORD GetTickCount (void);
|
|
__attribute__((dllimport)) void GetSystemTimePreciseAsFileTime (LPFILETIME lpSystemTimeAsFileTime);
|
|
__attribute__((dllimport)) WINBOOL GetVersionExA (LPOSVERSIONINFOA lpVersionInformation);
|
|
__attribute__((dllimport)) WINBOOL GetVersionExW (LPOSVERSIONINFOW lpVersionInformation);
|
|
typedef enum _COMPUTER_NAME_FORMAT {
|
|
ComputerNameNetBIOS,
|
|
ComputerNameDnsHostname,
|
|
ComputerNameDnsDomain,
|
|
ComputerNameDnsFullyQualified,
|
|
ComputerNamePhysicalNetBIOS,
|
|
ComputerNamePhysicalDnsHostname,
|
|
ComputerNamePhysicalDnsDomain,
|
|
ComputerNamePhysicalDnsFullyQualified,
|
|
ComputerNameMax
|
|
} COMPUTER_NAME_FORMAT;
|
|
__attribute__((dllimport)) DWORD GetVersion (void);
|
|
__attribute__((dllimport)) WINBOOL SetLocalTime (const SYSTEMTIME *lpSystemTime);
|
|
__attribute__((dllimport)) WINBOOL GetSystemTimeAdjustment (PDWORD lpTimeAdjustment, PDWORD lpTimeIncrement, PBOOL lpTimeAdjustmentDisabled);
|
|
__attribute__((dllimport)) UINT GetSystemDirectoryA (LPSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) UINT GetSystemDirectoryW (LPWSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) UINT GetWindowsDirectoryA (LPSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) UINT GetWindowsDirectoryW (LPWSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) UINT GetSystemWindowsDirectoryA (LPSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) UINT GetSystemWindowsDirectoryW (LPWSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) WINBOOL GetComputerNameExA (COMPUTER_NAME_FORMAT NameType, LPSTR lpBuffer, LPDWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL GetComputerNameExW (COMPUTER_NAME_FORMAT NameType, LPWSTR lpBuffer, LPDWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL SetComputerNameExW (COMPUTER_NAME_FORMAT NameType, LPCWSTR lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL SetSystemTime (const SYSTEMTIME *lpSystemTime);
|
|
__attribute__((dllimport)) WINBOOL GetLogicalProcessorInformation (PSYSTEM_LOGICAL_PROCESSOR_INFORMATION Buffer, PDWORD ReturnedLength);
|
|
__attribute__((dllimport)) ULONGLONG VerSetConditionMask (ULONGLONG ConditionMask, ULONG TypeMask, UCHAR Condition);
|
|
__attribute__((dllimport)) UINT EnumSystemFirmwareTables (DWORD FirmwareTableProviderSignature, PVOID pFirmwareTableEnumBuffer, DWORD BufferSize);
|
|
__attribute__((dllimport)) UINT GetSystemFirmwareTable (DWORD FirmwareTableProviderSignature, DWORD FirmwareTableID, PVOID pFirmwareTableBuffer, DWORD BufferSize);
|
|
__attribute__((dllimport)) WINBOOL GetNumaHighestNodeNumber (PULONG HighestNodeNumber);
|
|
typedef void ( *PTP_WIN32_IO_CALLBACK) (PTP_CALLBACK_INSTANCE Instance, PVOID Context, PVOID Overlapped, ULONG IoResult, ULONG_PTR NumberOfBytesTransferred, PTP_IO Io);
|
|
__attribute__((dllimport)) WINBOOL CreateTimerQueueTimer (PHANDLE phNewTimer, HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, ULONG Flags);
|
|
__attribute__((dllimport)) WINBOOL DeleteTimerQueueTimer (HANDLE TimerQueue, HANDLE Timer, HANDLE CompletionEvent);
|
|
__attribute__((dllimport)) WINBOOL QueueUserWorkItem (LPTHREAD_START_ROUTINE Function, PVOID Context, ULONG Flags);
|
|
__attribute__((dllimport)) WINBOOL UnregisterWaitEx (HANDLE WaitHandle, HANDLE CompletionEvent);
|
|
__attribute__((dllimport)) HANDLE CreateTimerQueue (void);
|
|
__attribute__((dllimport)) WINBOOL ChangeTimerQueueTimer (HANDLE TimerQueue, HANDLE Timer, ULONG DueTime, ULONG Period);
|
|
__attribute__((dllimport)) WINBOOL DeleteTimerQueueEx (HANDLE TimerQueue, HANDLE CompletionEvent);
|
|
__attribute__((dllimport)) PVOID EncodePointer (PVOID Ptr);
|
|
__attribute__((dllimport)) PVOID DecodePointer (PVOID Ptr);
|
|
__attribute__((dllimport)) PVOID EncodeSystemPointer (PVOID Ptr);
|
|
__attribute__((dllimport)) PVOID DecodeSystemPointer (PVOID Ptr);
|
|
__attribute__((dllimport)) WINBOOL Beep (DWORD dwFreq, DWORD dwDuration);
|
|
__attribute__((dllimport)) WINBOOL Wow64DisableWow64FsRedirection (PVOID *OldValue);
|
|
__attribute__((dllimport)) WINBOOL Wow64RevertWow64FsRedirection (PVOID OlValue);
|
|
__attribute__((dllimport)) WINBOOL IsWow64Process (HANDLE hProcess, PBOOL Wow64Process);
|
|
|
|
|
|
typedef void ( *PFIBER_START_ROUTINE) (LPVOID lpFiberParameter);
|
|
typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE;
|
|
typedef LPVOID LPLDT_ENTRY;
|
|
typedef struct _COMMPROP {
|
|
WORD wPacketLength;
|
|
WORD wPacketVersion;
|
|
DWORD dwServiceMask;
|
|
DWORD dwReserved1;
|
|
DWORD dwMaxTxQueue;
|
|
DWORD dwMaxRxQueue;
|
|
DWORD dwMaxBaud;
|
|
DWORD dwProvSubType;
|
|
DWORD dwProvCapabilities;
|
|
DWORD dwSettableParams;
|
|
DWORD dwSettableBaud;
|
|
WORD wSettableData;
|
|
WORD wSettableStopParity;
|
|
DWORD dwCurrentTxQueue;
|
|
DWORD dwCurrentRxQueue;
|
|
DWORD dwProvSpec1;
|
|
DWORD dwProvSpec2;
|
|
WCHAR wcProvChar[1];
|
|
} COMMPROP,*LPCOMMPROP;
|
|
typedef struct _COMSTAT {
|
|
DWORD fCtsHold : 1;
|
|
DWORD fDsrHold : 1;
|
|
DWORD fRlsdHold : 1;
|
|
DWORD fXoffHold : 1;
|
|
DWORD fXoffSent : 1;
|
|
DWORD fEof : 1;
|
|
DWORD fTxim : 1;
|
|
DWORD fReserved : 25;
|
|
DWORD cbInQue;
|
|
DWORD cbOutQue;
|
|
} COMSTAT,*LPCOMSTAT;
|
|
typedef struct _DCB {
|
|
DWORD DCBlength;
|
|
DWORD BaudRate;
|
|
DWORD fBinary: 1;
|
|
DWORD fParity: 1;
|
|
DWORD fOutxCtsFlow:1;
|
|
DWORD fOutxDsrFlow:1;
|
|
DWORD fDtrControl:2;
|
|
DWORD fDsrSensitivity:1;
|
|
DWORD fTXContinueOnXoff: 1;
|
|
DWORD fOutX: 1;
|
|
DWORD fInX: 1;
|
|
DWORD fErrorChar: 1;
|
|
DWORD fNull: 1;
|
|
DWORD fRtsControl:2;
|
|
DWORD fAbortOnError:1;
|
|
DWORD fDummy2:17;
|
|
WORD wReserved;
|
|
WORD XonLim;
|
|
WORD XoffLim;
|
|
BYTE ByteSize;
|
|
BYTE Parity;
|
|
BYTE StopBits;
|
|
char XonChar;
|
|
char XoffChar;
|
|
char ErrorChar;
|
|
char EofChar;
|
|
char EvtChar;
|
|
WORD wReserved1;
|
|
} DCB,*LPDCB;
|
|
typedef struct _COMMTIMEOUTS {
|
|
DWORD ReadIntervalTimeout;
|
|
DWORD ReadTotalTimeoutMultiplier;
|
|
DWORD ReadTotalTimeoutConstant;
|
|
DWORD WriteTotalTimeoutMultiplier;
|
|
DWORD WriteTotalTimeoutConstant;
|
|
} COMMTIMEOUTS,*LPCOMMTIMEOUTS;
|
|
typedef struct _COMMCONFIG {
|
|
DWORD dwSize;
|
|
WORD wVersion;
|
|
WORD wReserved;
|
|
DCB dcb;
|
|
DWORD dwProviderSubType;
|
|
DWORD dwProviderOffset;
|
|
DWORD dwProviderSize;
|
|
WCHAR wcProviderData[1];
|
|
} COMMCONFIG,*LPCOMMCONFIG;
|
|
typedef struct _MEMORYSTATUS {
|
|
DWORD dwLength;
|
|
DWORD dwMemoryLoad;
|
|
SIZE_T dwTotalPhys;
|
|
SIZE_T dwAvailPhys;
|
|
SIZE_T dwTotalPageFile;
|
|
SIZE_T dwAvailPageFile;
|
|
SIZE_T dwTotalVirtual;
|
|
SIZE_T dwAvailVirtual;
|
|
} MEMORYSTATUS,*LPMEMORYSTATUS;
|
|
typedef struct _JIT_DEBUG_INFO {
|
|
DWORD dwSize;
|
|
DWORD dwProcessorArchitecture;
|
|
DWORD dwThreadID;
|
|
DWORD dwReserved0;
|
|
ULONG64 lpExceptionAddress;
|
|
ULONG64 lpExceptionRecord;
|
|
ULONG64 lpContextRecord;
|
|
} JIT_DEBUG_INFO,*LPJIT_DEBUG_INFO;
|
|
typedef JIT_DEBUG_INFO JIT_DEBUG_INFO32, *LPJIT_DEBUG_INFO32;
|
|
typedef JIT_DEBUG_INFO JIT_DEBUG_INFO64, *LPJIT_DEBUG_INFO64;
|
|
typedef PEXCEPTION_RECORD LPEXCEPTION_RECORD;
|
|
typedef PEXCEPTION_POINTERS LPEXCEPTION_POINTERS;
|
|
typedef struct _OFSTRUCT {
|
|
BYTE cBytes;
|
|
BYTE fFixedDisk;
|
|
WORD nErrCode;
|
|
WORD Reserved1;
|
|
WORD Reserved2;
|
|
CHAR szPathName[128];
|
|
} OFSTRUCT, *LPOFSTRUCT,*POFSTRUCT;
|
|
LONG __attribute__((__cdecl__)) _InterlockedAnd(LONG volatile *Destination, LONG Value);
|
|
LONG __attribute__((__cdecl__)) _InterlockedOr(LONG volatile *Destination, LONG Value);
|
|
LONG __attribute__((__cdecl__)) _InterlockedXor(LONG volatile *Destination, LONG Value);
|
|
char __attribute__((__cdecl__)) _InterlockedAnd8(char volatile *Destination, char Value);
|
|
char __attribute__((__cdecl__)) _InterlockedOr8(char volatile *Destination, char Value);
|
|
char __attribute__((__cdecl__)) _InterlockedXor8(char volatile *Destination, char Value);
|
|
SHORT __attribute__((__cdecl__)) _InterlockedAnd16(SHORT volatile *Destination, SHORT Value);
|
|
SHORT __attribute__((__cdecl__)) _InterlockedOr16(SHORT volatile *Destination, SHORT Value);
|
|
SHORT __attribute__((__cdecl__)) _InterlockedXor16(SHORT volatile *Destination, SHORT Value);
|
|
__attribute__((dllimport)) HLOCAL LocalAlloc (UINT uFlags, SIZE_T uBytes);
|
|
__attribute__((dllimport)) HLOCAL LocalFree (HLOCAL hMem);
|
|
int WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd);
|
|
int wWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd);
|
|
__attribute__((dllimport)) HGLOBAL GlobalAlloc (UINT uFlags, SIZE_T dwBytes);
|
|
__attribute__((dllimport)) HGLOBAL GlobalReAlloc (HGLOBAL hMem, SIZE_T dwBytes, UINT uFlags);
|
|
__attribute__((dllimport)) SIZE_T GlobalSize (HGLOBAL hMem);
|
|
__attribute__((dllimport)) UINT GlobalFlags (HGLOBAL hMem);
|
|
__attribute__((dllimport)) LPVOID GlobalLock (HGLOBAL hMem);
|
|
__attribute__((dllimport)) HGLOBAL GlobalHandle (LPCVOID pMem);
|
|
__attribute__((dllimport)) WINBOOL GlobalUnlock (HGLOBAL hMem);
|
|
__attribute__((dllimport)) HGLOBAL GlobalFree (HGLOBAL hMem);
|
|
__attribute__((dllimport)) SIZE_T GlobalCompact (DWORD dwMinFree);
|
|
__attribute__((dllimport)) void GlobalFix (HGLOBAL hMem);
|
|
__attribute__((dllimport)) void GlobalUnfix (HGLOBAL hMem);
|
|
__attribute__((dllimport)) LPVOID GlobalWire (HGLOBAL hMem);
|
|
__attribute__((dllimport)) WINBOOL GlobalUnWire (HGLOBAL hMem);
|
|
__attribute__((dllimport)) void GlobalMemoryStatus (LPMEMORYSTATUS lpBuffer);
|
|
__attribute__((dllimport)) HLOCAL LocalReAlloc (HLOCAL hMem, SIZE_T uBytes, UINT uFlags);
|
|
__attribute__((dllimport)) LPVOID LocalLock (HLOCAL hMem);
|
|
__attribute__((dllimport)) HLOCAL LocalHandle (LPCVOID pMem);
|
|
__attribute__((dllimport)) WINBOOL LocalUnlock (HLOCAL hMem);
|
|
__attribute__((dllimport)) SIZE_T LocalSize (HLOCAL hMem);
|
|
__attribute__((dllimport)) UINT LocalFlags (HLOCAL hMem);
|
|
__attribute__((dllimport)) SIZE_T LocalShrink (HLOCAL hMem, UINT cbNewSize);
|
|
__attribute__((dllimport)) SIZE_T LocalCompact (UINT uMinFree);
|
|
__attribute__((dllimport)) WINBOOL GetBinaryTypeA (LPCSTR lpApplicationName, LPDWORD lpBinaryType);
|
|
__attribute__((dllimport)) WINBOOL GetBinaryTypeW (LPCWSTR lpApplicationName, LPDWORD lpBinaryType);
|
|
__attribute__((dllimport)) DWORD GetShortPathNameA (LPCSTR lpszLongPath, LPSTR lpszShortPath, DWORD cchBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetProcessAffinityMask (HANDLE hProcess, PDWORD_PTR lpProcessAffinityMask, PDWORD_PTR lpSystemAffinityMask);
|
|
__attribute__((dllimport)) WINBOOL SetProcessAffinityMask (HANDLE hProcess, DWORD_PTR dwProcessAffinityMask);
|
|
__attribute__((dllimport)) WINBOOL GetProcessIoCounters (HANDLE hProcess, PIO_COUNTERS lpIoCounters);
|
|
__attribute__((dllimport)) WINBOOL GetProcessWorkingSetSize (HANDLE hProcess, PSIZE_T lpMinimumWorkingSetSize, PSIZE_T lpMaximumWorkingSetSize);
|
|
__attribute__((dllimport)) WINBOOL SetProcessWorkingSetSize (HANDLE hProcess, SIZE_T dwMinimumWorkingSetSize, SIZE_T dwMaximumWorkingSetSize);
|
|
__attribute__((dllimport)) void FatalExit (int ExitCode);
|
|
__attribute__((dllimport)) WINBOOL SetEnvironmentStringsA (LPCH NewEnvironment);
|
|
__attribute__((dllimport)) void RaiseFailFastException (PEXCEPTION_RECORD pExceptionRecord, PCONTEXT pContextRecord, DWORD dwFlags);
|
|
__attribute__((dllimport)) DWORD SetThreadIdealProcessor (HANDLE hThread, DWORD dwIdealProcessor);
|
|
__attribute__((dllimport)) LPVOID CreateFiber (SIZE_T dwStackSize, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter);
|
|
__attribute__((dllimport)) LPVOID CreateFiberEx (SIZE_T dwStackCommitSize, SIZE_T dwStackReserveSize, DWORD dwFlags, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter);
|
|
__attribute__((dllimport)) void DeleteFiber (LPVOID lpFiber);
|
|
__attribute__((dllimport)) LPVOID ConvertThreadToFiber (LPVOID lpParameter);
|
|
__attribute__((dllimport)) LPVOID ConvertThreadToFiberEx (LPVOID lpParameter, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL ConvertFiberToThread (void);
|
|
__attribute__((dllimport)) void SwitchToFiber (LPVOID lpFiber);
|
|
__attribute__((dllimport)) DWORD_PTR SetThreadAffinityMask (HANDLE hThread, DWORD_PTR dwThreadAffinityMask);
|
|
typedef enum _THREAD_INFORMATION_CLASS {
|
|
ThreadMemoryPriority,
|
|
ThreadAbsoluteCpuPriority,
|
|
ThreadInformationClassMax
|
|
} THREAD_INFORMATION_CLASS;
|
|
typedef enum _PROCESS_INFORMATION_CLASS {
|
|
ProcessMemoryPriority,
|
|
ProcessInformationClassMax
|
|
} PROCESS_INFORMATION_CLASS;
|
|
__attribute__((dllimport)) WINBOOL SetProcessPriorityBoost (HANDLE hProcess, WINBOOL bDisablePriorityBoost);
|
|
__attribute__((dllimport)) WINBOOL GetProcessPriorityBoost (HANDLE hProcess, PBOOL pDisablePriorityBoost);
|
|
__attribute__((dllimport)) WINBOOL RequestWakeupLatency (LATENCY_TIME latency);
|
|
__attribute__((dllimport)) WINBOOL IsSystemResumeAutomatic (void);
|
|
__attribute__((dllimport)) WINBOOL GetThreadIOPendingFlag (HANDLE hThread, PBOOL lpIOIsPending);
|
|
__attribute__((dllimport)) WINBOOL GetThreadSelectorEntry (HANDLE hThread, DWORD dwSelector, LPLDT_ENTRY lpSelectorEntry);
|
|
__attribute__((dllimport)) EXECUTION_STATE SetThreadExecutionState (EXECUTION_STATE esFlags);
|
|
__attribute__((dllimport)) DWORD GetThreadErrorMode (void);
|
|
__attribute__((dllimport)) WINBOOL SetThreadErrorMode (DWORD dwNewMode, LPDWORD lpOldMode);
|
|
__attribute__((dllimport)) WINBOOL DebugSetProcessKillOnExit (WINBOOL KillOnExit);
|
|
__attribute__((dllimport)) WINBOOL DebugBreakProcess (HANDLE Process);
|
|
__attribute__((dllimport)) DWORD WaitForMultipleObjects (DWORD nCount, const HANDLE *lpHandles, WINBOOL bWaitAll, DWORD dwMilliseconds);
|
|
typedef enum _DEP_SYSTEM_POLICY_TYPE {
|
|
DEPPolicyAlwaysOff = 0,
|
|
DEPPolicyAlwaysOn,
|
|
DEPPolicyOptIn,
|
|
DEPPolicyOptOut,
|
|
DEPTotalPolicyCount
|
|
} DEP_SYSTEM_POLICY_TYPE;
|
|
__attribute__((dllimport)) WINBOOL PulseEvent (HANDLE hEvent);
|
|
__attribute__((dllimport)) ATOM GlobalDeleteAtom (ATOM nAtom);
|
|
__attribute__((dllimport)) WINBOOL InitAtomTable (DWORD nSize);
|
|
__attribute__((dllimport)) ATOM DeleteAtom (ATOM nAtom);
|
|
__attribute__((dllimport)) UINT SetHandleCount (UINT uNumber);
|
|
__attribute__((dllimport)) WINBOOL RequestDeviceWakeup (HANDLE hDevice);
|
|
__attribute__((dllimport)) WINBOOL CancelDeviceWakeupRequest (HANDLE hDevice);
|
|
__attribute__((dllimport)) WINBOOL GetDevicePowerState (HANDLE hDevice, WINBOOL *pfOn);
|
|
__attribute__((dllimport)) WINBOOL SetMessageWaitingIndicator (HANDLE hMsgIndicator, ULONG ulMsgCount);
|
|
__attribute__((dllimport)) WINBOOL SetFileShortNameA (HANDLE hFile, LPCSTR lpShortName);
|
|
__attribute__((dllimport)) WINBOOL SetFileShortNameW (HANDLE hFile, LPCWSTR lpShortName);
|
|
__attribute__((dllimport)) DWORD LoadModule (LPCSTR lpModuleName, LPVOID lpParameterBlock);
|
|
__attribute__((dllimport)) UINT WinExec (LPCSTR lpCmdLine, UINT uCmdShow);
|
|
__attribute__((dllimport)) WINBOOL ClearCommBreak (HANDLE hFile);
|
|
__attribute__((dllimport)) WINBOOL ClearCommError (HANDLE hFile, LPDWORD lpErrors, LPCOMSTAT lpStat);
|
|
__attribute__((dllimport)) WINBOOL SetupComm (HANDLE hFile, DWORD dwInQueue, DWORD dwOutQueue);
|
|
__attribute__((dllimport)) WINBOOL EscapeCommFunction (HANDLE hFile, DWORD dwFunc);
|
|
__attribute__((dllimport)) WINBOOL GetCommConfig (HANDLE hCommDev, LPCOMMCONFIG lpCC, LPDWORD lpdwSize);
|
|
__attribute__((dllimport)) WINBOOL GetCommMask (HANDLE hFile, LPDWORD lpEvtMask);
|
|
__attribute__((dllimport)) WINBOOL GetCommProperties (HANDLE hFile, LPCOMMPROP lpCommProp);
|
|
__attribute__((dllimport)) WINBOOL GetCommModemStatus (HANDLE hFile, LPDWORD lpModemStat);
|
|
__attribute__((dllimport)) WINBOOL GetCommState (HANDLE hFile, LPDCB lpDCB);
|
|
__attribute__((dllimport)) WINBOOL GetCommTimeouts (HANDLE hFile, LPCOMMTIMEOUTS lpCommTimeouts);
|
|
__attribute__((dllimport)) WINBOOL PurgeComm (HANDLE hFile, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL SetCommBreak (HANDLE hFile);
|
|
__attribute__((dllimport)) WINBOOL SetCommConfig (HANDLE hCommDev, LPCOMMCONFIG lpCC, DWORD dwSize);
|
|
__attribute__((dllimport)) WINBOOL SetCommMask (HANDLE hFile, DWORD dwEvtMask);
|
|
__attribute__((dllimport)) WINBOOL SetCommState (HANDLE hFile, LPDCB lpDCB);
|
|
__attribute__((dllimport)) WINBOOL SetCommTimeouts (HANDLE hFile, LPCOMMTIMEOUTS lpCommTimeouts);
|
|
__attribute__((dllimport)) WINBOOL TransmitCommChar (HANDLE hFile, char cChar);
|
|
__attribute__((dllimport)) WINBOOL WaitCommEvent (HANDLE hFile, LPDWORD lpEvtMask, LPOVERLAPPED lpOverlapped);
|
|
__attribute__((dllimport)) DWORD SetTapePosition (HANDLE hDevice, DWORD dwPositionMethod, DWORD dwPartition, DWORD dwOffsetLow, DWORD dwOffsetHigh, WINBOOL bImmediate);
|
|
__attribute__((dllimport)) DWORD GetTapePosition (HANDLE hDevice, DWORD dwPositionType, LPDWORD lpdwPartition, LPDWORD lpdwOffsetLow, LPDWORD lpdwOffsetHigh);
|
|
__attribute__((dllimport)) DWORD PrepareTape (HANDLE hDevice, DWORD dwOperation, WINBOOL bImmediate);
|
|
__attribute__((dllimport)) DWORD EraseTape (HANDLE hDevice, DWORD dwEraseType, WINBOOL bImmediate);
|
|
__attribute__((dllimport)) DWORD CreateTapePartition (HANDLE hDevice, DWORD dwPartitionMethod, DWORD dwCount, DWORD dwSize);
|
|
__attribute__((dllimport)) DWORD WriteTapemark (HANDLE hDevice, DWORD dwTapemarkType, DWORD dwTapemarkCount, WINBOOL bImmediate);
|
|
__attribute__((dllimport)) DWORD GetTapeStatus (HANDLE hDevice);
|
|
__attribute__((dllimport)) DWORD GetTapeParameters (HANDLE hDevice, DWORD dwOperation, LPDWORD lpdwSize, LPVOID lpTapeInformation);
|
|
__attribute__((dllimport)) DWORD SetTapeParameters (HANDLE hDevice, DWORD dwOperation, LPVOID lpTapeInformation);
|
|
__attribute__((dllimport)) DEP_SYSTEM_POLICY_TYPE GetSystemDEPPolicy (void);
|
|
__attribute__((dllimport)) WINBOOL GetSystemRegistryQuota (PDWORD pdwQuotaAllowed, PDWORD pdwQuotaUsed);
|
|
WINBOOL GetSystemTimes (LPFILETIME lpIdleTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime);
|
|
__attribute__((dllimport)) WINBOOL FileTimeToDosDateTime (const FILETIME *lpFileTime, LPWORD lpFatDate, LPWORD lpFatTime);
|
|
__attribute__((dllimport)) WINBOOL DosDateTimeToFileTime (WORD wFatDate, WORD wFatTime, LPFILETIME lpFileTime);
|
|
__attribute__((dllimport)) WINBOOL SetSystemTimeAdjustment (DWORD dwTimeAdjustment, WINBOOL bTimeAdjustmentDisabled);
|
|
__attribute__((dllimport)) int MulDiv (int nNumber, int nNumerator, int nDenominator);
|
|
__attribute__((dllimport)) DWORD FormatMessageA (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPSTR lpBuffer, DWORD nSize, va_list *Arguments);
|
|
__attribute__((dllimport)) DWORD FormatMessageW (DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPWSTR lpBuffer, DWORD nSize, va_list *Arguments);
|
|
typedef DWORD ( *PFE_EXPORT_FUNC) (PBYTE pbData, PVOID pvCallbackContext, ULONG ulLength);
|
|
typedef DWORD ( *PFE_IMPORT_FUNC) (PBYTE pbData, PVOID pvCallbackContext, PULONG ulLength);
|
|
__attribute__((dllimport)) WINBOOL GetNamedPipeInfo (HANDLE hNamedPipe, LPDWORD lpFlags, LPDWORD lpOutBufferSize, LPDWORD lpInBufferSize, LPDWORD lpMaxInstances);
|
|
__attribute__((dllimport)) HANDLE CreateMailslotA (LPCSTR lpName, DWORD nMaxMessageSize, DWORD lReadTimeout, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) HANDLE CreateMailslotW (LPCWSTR lpName, DWORD nMaxMessageSize, DWORD lReadTimeout, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL GetMailslotInfo (HANDLE hMailslot, LPDWORD lpMaxMessageSize, LPDWORD lpNextSize, LPDWORD lpMessageCount, LPDWORD lpReadTimeout);
|
|
__attribute__((dllimport)) WINBOOL SetMailslotInfo (HANDLE hMailslot, DWORD lReadTimeout);
|
|
__attribute__((dllimport)) WINBOOL EncryptFileA (LPCSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL EncryptFileW (LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL DecryptFileA (LPCSTR lpFileName, DWORD dwReserved);
|
|
__attribute__((dllimport)) WINBOOL DecryptFileW (LPCWSTR lpFileName, DWORD dwReserved);
|
|
__attribute__((dllimport)) WINBOOL FileEncryptionStatusA (LPCSTR lpFileName, LPDWORD lpStatus);
|
|
__attribute__((dllimport)) WINBOOL FileEncryptionStatusW (LPCWSTR lpFileName, LPDWORD lpStatus);
|
|
__attribute__((dllimport)) DWORD OpenEncryptedFileRawA (LPCSTR lpFileName, ULONG ulFlags, PVOID *pvContext);
|
|
__attribute__((dllimport)) DWORD OpenEncryptedFileRawW (LPCWSTR lpFileName, ULONG ulFlags, PVOID *pvContext);
|
|
__attribute__((dllimport)) DWORD ReadEncryptedFileRaw (PFE_EXPORT_FUNC pfExportCallback, PVOID pvCallbackContext, PVOID pvContext);
|
|
__attribute__((dllimport)) DWORD WriteEncryptedFileRaw (PFE_IMPORT_FUNC pfImportCallback, PVOID pvCallbackContext, PVOID pvContext);
|
|
__attribute__((dllimport)) void CloseEncryptedFileRaw (PVOID pvContext);
|
|
__attribute__((dllimport)) int lstrcmpA (LPCSTR lpString1, LPCSTR lpString2);
|
|
__attribute__((dllimport)) int lstrcmpW (LPCWSTR lpString1, LPCWSTR lpString2);
|
|
__attribute__((dllimport)) int lstrcmpiA (LPCSTR lpString1, LPCSTR lpString2);
|
|
__attribute__((dllimport)) int lstrcmpiW (LPCWSTR lpString1, LPCWSTR lpString2);
|
|
__attribute__((dllimport)) LPSTR lstrcpynA (LPSTR lpString1, LPCSTR lpString2, int iMaxLength);
|
|
__attribute__((dllimport)) LPWSTR lstrcpynW (LPWSTR lpString1, LPCWSTR lpString2, int iMaxLength);
|
|
__attribute__((dllimport)) LPSTR lstrcpyA (LPSTR lpString1, LPCSTR lpString2);
|
|
__attribute__((dllimport)) LPWSTR lstrcpyW (LPWSTR lpString1, LPCWSTR lpString2);
|
|
__attribute__((dllimport)) LPSTR lstrcatA (LPSTR lpString1, LPCSTR lpString2);
|
|
__attribute__((dllimport)) LPWSTR lstrcatW (LPWSTR lpString1, LPCWSTR lpString2);
|
|
__attribute__((dllimport)) int lstrlenA (LPCSTR lpString);
|
|
__attribute__((dllimport)) int lstrlenW (LPCWSTR lpString);
|
|
__attribute__((dllimport)) HFILE OpenFile (LPCSTR lpFileName, LPOFSTRUCT lpReOpenBuff, UINT uStyle);
|
|
__attribute__((dllimport)) HFILE _lopen (LPCSTR lpPathName, int iReadWrite);
|
|
__attribute__((dllimport)) HFILE _lcreat (LPCSTR lpPathName, int iAttribute);
|
|
__attribute__((dllimport)) UINT _lread (HFILE hFile, LPVOID lpBuffer, UINT uBytes);
|
|
__attribute__((dllimport)) UINT _lwrite (HFILE hFile, LPCCH lpBuffer, UINT uBytes);
|
|
__attribute__((dllimport)) long _hread (HFILE hFile, LPVOID lpBuffer, long lBytes);
|
|
__attribute__((dllimport)) long _hwrite (HFILE hFile, LPCCH lpBuffer, long lBytes);
|
|
__attribute__((dllimport)) HFILE _lclose (HFILE hFile);
|
|
__attribute__((dllimport)) LONG _llseek (HFILE hFile, LONG lOffset, int iOrigin);
|
|
__attribute__((dllimport)) WINBOOL IsTextUnicode (const void *lpv, int iSize, LPINT lpiResult);
|
|
__attribute__((dllimport)) DWORD SignalObjectAndWait (HANDLE hObjectToSignal, HANDLE hObjectToWaitOn, DWORD dwMilliseconds, WINBOOL bAlertable);
|
|
__attribute__((dllimport)) WINBOOL BackupRead (HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, WINBOOL bAbort, WINBOOL bProcessSecurity, LPVOID *lpContext);
|
|
__attribute__((dllimport)) WINBOOL BackupSeek (HANDLE hFile, DWORD dwLowBytesToSeek, DWORD dwHighBytesToSeek, LPDWORD lpdwLowByteSeeked, LPDWORD lpdwHighByteSeeked, LPVOID *lpContext);
|
|
__attribute__((dllimport)) WINBOOL BackupWrite (HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, WINBOOL bAbort, WINBOOL bProcessSecurity, LPVOID *lpContext);
|
|
typedef struct _WIN32_STREAM_ID {
|
|
DWORD dwStreamId;
|
|
DWORD dwStreamAttributes;
|
|
LARGE_INTEGER Size;
|
|
DWORD dwStreamNameSize;
|
|
WCHAR cStreamName[1];
|
|
} WIN32_STREAM_ID,*LPWIN32_STREAM_ID;
|
|
__attribute__((dllimport)) HANDLE CreateSemaphoreW (LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName);
|
|
__attribute__((dllimport)) HMODULE LoadLibraryW (LPCWSTR lpLibFileName);
|
|
__attribute__((dllimport)) HANDLE OpenMutexA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE CreateSemaphoreA (LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenSemaphoreA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE CreateWaitableTimerA (LPSECURITY_ATTRIBUTES lpTimerAttributes, WINBOOL bManualReset, LPCSTR lpTimerName);
|
|
__attribute__((dllimport)) HANDLE CreateWaitableTimerW (LPSECURITY_ATTRIBUTES lpTimerAttributes, WINBOOL bManualReset, LPCWSTR lpTimerName);
|
|
__attribute__((dllimport)) HANDLE OpenWaitableTimerA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpTimerName);
|
|
__attribute__((dllimport)) HANDLE CreateFileMappingA (HANDLE hFile, LPSECURITY_ATTRIBUTES lpFileMappingAttributes, DWORD flProtect, DWORD dwMaximumSizeHigh, DWORD dwMaximumSizeLow, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenFileMappingA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
|
|
__attribute__((dllimport)) DWORD GetLogicalDriveStringsA (DWORD nBufferLength, LPSTR lpBuffer);
|
|
__attribute__((dllimport)) HMODULE LoadLibraryA (LPCSTR lpLibFileName);
|
|
__attribute__((dllimport)) WINBOOL GetProcessShutdownParameters (LPDWORD lpdwLevel, LPDWORD lpdwFlags);
|
|
__attribute__((dllimport)) void FatalAppExitA (UINT uAction, LPCSTR lpMessageText);
|
|
__attribute__((dllimport)) void FatalAppExitW (UINT uAction, LPCWSTR lpMessageText);
|
|
__attribute__((dllimport)) void GetStartupInfoA (LPSTARTUPINFOA lpStartupInfo);
|
|
__attribute__((dllimport)) DWORD GetFirmwareEnvironmentVariableA (LPCSTR lpName, LPCSTR lpGuid, PVOID pBuffer, DWORD nSize);
|
|
__attribute__((dllimport)) DWORD GetFirmwareEnvironmentVariableW (LPCWSTR lpName, LPCWSTR lpGuid, PVOID pBuffer, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL SetFirmwareEnvironmentVariableA (LPCSTR lpName, LPCSTR lpGuid, PVOID pValue, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL SetFirmwareEnvironmentVariableW (LPCWSTR lpName, LPCWSTR lpGuid, PVOID pValue, DWORD nSize);
|
|
__attribute__((dllimport)) HRSRC FindResourceA (HMODULE hModule, LPCSTR lpName, LPCSTR lpType);
|
|
__attribute__((dllimport)) HRSRC FindResourceW (HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
|
|
__attribute__((dllimport)) HRSRC FindResourceExA (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, WORD wLanguage);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceTypesA (HMODULE hModule, ENUMRESTYPEPROCA lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceTypesW (HMODULE hModule, ENUMRESTYPEPROCW lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceNamesA (HMODULE hModule, LPCSTR lpType, ENUMRESNAMEPROCA lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceNamesW (HMODULE hModule, LPCWSTR lpType, ENUMRESNAMEPROCW lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceLanguagesA (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, ENUMRESLANGPROCA lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumResourceLanguagesW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, ENUMRESLANGPROCW lpEnumFunc, LONG_PTR lParam);
|
|
__attribute__((dllimport)) HANDLE BeginUpdateResourceA (LPCSTR pFileName, WINBOOL bDeleteExistingResources);
|
|
__attribute__((dllimport)) HANDLE BeginUpdateResourceW (LPCWSTR pFileName, WINBOOL bDeleteExistingResources);
|
|
__attribute__((dllimport)) WINBOOL UpdateResourceA (HANDLE hUpdate, LPCSTR lpType, LPCSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cb);
|
|
__attribute__((dllimport)) WINBOOL UpdateResourceW (HANDLE hUpdate, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cb);
|
|
__attribute__((dllimport)) WINBOOL EndUpdateResourceA (HANDLE hUpdate, WINBOOL fDiscard);
|
|
__attribute__((dllimport)) WINBOOL EndUpdateResourceW (HANDLE hUpdate, WINBOOL fDiscard);
|
|
__attribute__((dllimport)) ATOM GlobalAddAtomA (LPCSTR lpString);
|
|
__attribute__((dllimport)) ATOM GlobalAddAtomW (LPCWSTR lpString);
|
|
__attribute__((dllimport)) ATOM GlobalAddAtomExA (LPCSTR lpString, DWORD Flags);
|
|
__attribute__((dllimport)) ATOM GlobalAddAtomExW (LPCWSTR lpString, DWORD Flags);
|
|
__attribute__((dllimport)) ATOM GlobalFindAtomA (LPCSTR lpString);
|
|
__attribute__((dllimport)) ATOM GlobalFindAtomW (LPCWSTR lpString);
|
|
__attribute__((dllimport)) UINT GlobalGetAtomNameA (ATOM nAtom, LPSTR lpBuffer, int nSize);
|
|
__attribute__((dllimport)) UINT GlobalGetAtomNameW (ATOM nAtom, LPWSTR lpBuffer, int nSize);
|
|
__attribute__((dllimport)) ATOM AddAtomA (LPCSTR lpString);
|
|
__attribute__((dllimport)) ATOM AddAtomW (LPCWSTR lpString);
|
|
__attribute__((dllimport)) ATOM FindAtomA (LPCSTR lpString);
|
|
__attribute__((dllimport)) ATOM FindAtomW (LPCWSTR lpString);
|
|
__attribute__((dllimport)) UINT GetAtomNameA (ATOM nAtom, LPSTR lpBuffer, int nSize);
|
|
__attribute__((dllimport)) UINT GetAtomNameW (ATOM nAtom, LPWSTR lpBuffer, int nSize);
|
|
__attribute__((dllimport)) UINT GetProfileIntA (LPCSTR lpAppName, LPCSTR lpKeyName, INT nDefault);
|
|
__attribute__((dllimport)) UINT GetProfileIntW (LPCWSTR lpAppName, LPCWSTR lpKeyName, INT nDefault);
|
|
__attribute__((dllimport)) DWORD GetProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize);
|
|
__attribute__((dllimport)) DWORD GetProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpDefault, LPWSTR lpReturnedString, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL WriteProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpString);
|
|
__attribute__((dllimport)) WINBOOL WriteProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpString);
|
|
__attribute__((dllimport)) DWORD GetProfileSectionA (LPCSTR lpAppName, LPSTR lpReturnedString, DWORD nSize);
|
|
__attribute__((dllimport)) DWORD GetProfileSectionW (LPCWSTR lpAppName, LPWSTR lpReturnedString, DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL WriteProfileSectionA (LPCSTR lpAppName, LPCSTR lpString);
|
|
__attribute__((dllimport)) WINBOOL WriteProfileSectionW (LPCWSTR lpAppName, LPCWSTR lpString);
|
|
__attribute__((dllimport)) UINT GetPrivateProfileIntA (LPCSTR lpAppName, LPCSTR lpKeyName, INT nDefault, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) UINT GetPrivateProfileIntW (LPCWSTR lpAppName, LPCWSTR lpKeyName, INT nDefault, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetPrivateProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetPrivateProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpDefault, LPWSTR lpReturnedString, DWORD nSize, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL WritePrivateProfileStringA (LPCSTR lpAppName, LPCSTR lpKeyName, LPCSTR lpString, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL WritePrivateProfileStringW (LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpString, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetPrivateProfileSectionA (LPCSTR lpAppName, LPSTR lpReturnedString, DWORD nSize, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetPrivateProfileSectionW (LPCWSTR lpAppName, LPWSTR lpReturnedString, DWORD nSize, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL WritePrivateProfileSectionA (LPCSTR lpAppName, LPCSTR lpString, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL WritePrivateProfileSectionW (LPCWSTR lpAppName, LPCWSTR lpString, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetPrivateProfileSectionNamesA (LPSTR lpszReturnBuffer, DWORD nSize, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) DWORD GetPrivateProfileSectionNamesW (LPWSTR lpszReturnBuffer, DWORD nSize, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL GetPrivateProfileStructA (LPCSTR lpszSection, LPCSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCSTR szFile);
|
|
__attribute__((dllimport)) WINBOOL GetPrivateProfileStructW (LPCWSTR lpszSection, LPCWSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCWSTR szFile);
|
|
__attribute__((dllimport)) WINBOOL WritePrivateProfileStructA (LPCSTR lpszSection, LPCSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCSTR szFile);
|
|
__attribute__((dllimport)) WINBOOL WritePrivateProfileStructW (LPCWSTR lpszSection, LPCWSTR lpszKey, LPVOID lpStruct, UINT uSizeStruct, LPCWSTR szFile);
|
|
__attribute__((dllimport)) UINT GetSystemWow64DirectoryA (LPSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) UINT GetSystemWow64DirectoryW (LPWSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) BOOLEAN Wow64EnableWow64FsRedirection (BOOLEAN Wow64FsEnableRedirection);
|
|
typedef UINT ( *PGET_SYSTEM_WOW64_DIRECTORY_A) (LPSTR lpBuffer, UINT uSize);
|
|
typedef UINT ( *PGET_SYSTEM_WOW64_DIRECTORY_W) (LPWSTR lpBuffer, UINT uSize);
|
|
__attribute__((dllimport)) WINBOOL SetDllDirectoryA (LPCSTR lpPathName);
|
|
__attribute__((dllimport)) WINBOOL SetDllDirectoryW (LPCWSTR lpPathName);
|
|
__attribute__((dllimport)) DWORD GetDllDirectoryA (DWORD nBufferLength, LPSTR lpBuffer);
|
|
__attribute__((dllimport)) DWORD GetDllDirectoryW (DWORD nBufferLength, LPWSTR lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL SetSearchPathMode (DWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL CreateDirectoryExA (LPCSTR lpTemplateDirectory, LPCSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL CreateDirectoryExW (LPCWSTR lpTemplateDirectory, LPCWSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL DefineDosDeviceA (DWORD dwFlags, LPCSTR lpDeviceName, LPCSTR lpTargetPath);
|
|
__attribute__((dllimport)) DWORD QueryDosDeviceA (LPCSTR lpDeviceName, LPSTR lpTargetPath, DWORD ucchMax);
|
|
__attribute__((dllimport)) HANDLE ReOpenFile (HANDLE hOriginalFile, DWORD dwDesiredAccess, DWORD dwShareMode, DWORD dwFlagsAndAttributes);
|
|
__attribute__((dllimport)) DWORD GetCompressedFileSizeA (LPCSTR lpFileName, LPDWORD lpFileSizeHigh);
|
|
__attribute__((dllimport)) DWORD GetCompressedFileSizeW (LPCWSTR lpFileName, LPDWORD lpFileSizeHigh);
|
|
typedef DWORD ( *LPPROGRESS_ROUTINE) (LARGE_INTEGER TotalFileSize, LARGE_INTEGER TotalBytesTransferred, LARGE_INTEGER StreamSize, LARGE_INTEGER StreamBytesTransferred, DWORD dwStreamNumber, DWORD dwCallbackReason, HANDLE hSourceFile, HANDLE hDestinationFile, LPVOID lpData);
|
|
__attribute__((dllimport)) WINBOOL CopyFileExA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL pbCancel, DWORD dwCopyFlags);
|
|
__attribute__((dllimport)) WINBOOL CopyFileExW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL pbCancel, DWORD dwCopyFlags);
|
|
__attribute__((dllimport)) WINBOOL CheckNameLegalDOS8Dot3A (LPCSTR lpName, LPSTR lpOemName, DWORD OemNameSize, PBOOL pbNameContainsSpaces, PBOOL pbNameLegal);
|
|
__attribute__((dllimport)) WINBOOL CheckNameLegalDOS8Dot3W (LPCWSTR lpName, LPSTR lpOemName, DWORD OemNameSize, PBOOL pbNameContainsSpaces, PBOOL pbNameLegal);
|
|
__attribute__((dllimport)) WINBOOL CopyFileA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, WINBOOL bFailIfExists);
|
|
__attribute__((dllimport)) WINBOOL CopyFileW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, WINBOOL bFailIfExists);
|
|
__attribute__((dllimport)) WINBOOL MoveFileA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName);
|
|
__attribute__((dllimport)) WINBOOL MoveFileW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName);
|
|
__attribute__((dllimport)) WINBOOL MoveFileExA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL MoveFileExW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL MoveFileWithProgressA (LPCSTR lpExistingFileName, LPCSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL MoveFileWithProgressW (LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL GetNamedPipeClientComputerNameA (HANDLE Pipe, LPSTR ClientComputerName, ULONG ClientComputerNameLength);
|
|
__attribute__((dllimport)) WINBOOL GetNamedPipeHandleStateA (HANDLE hNamedPipe, LPDWORD lpState, LPDWORD lpCurInstances, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout, LPSTR lpUserName, DWORD nMaxUserNameSize);
|
|
__attribute__((dllimport)) WINBOOL WaitNamedPipeA (LPCSTR lpNamedPipeName, DWORD nTimeOut);
|
|
__attribute__((dllimport)) WINBOOL CallNamedPipeA (LPCSTR lpNamedPipeName, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, DWORD nTimeOut);
|
|
__attribute__((dllimport)) WINBOOL CallNamedPipeW (LPCWSTR lpNamedPipeName, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, DWORD nTimeOut);
|
|
__attribute__((dllimport)) HANDLE CreateNamedPipeA (LPCSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL ReplaceFileA (LPCSTR lpReplacedFileName, LPCSTR lpReplacementFileName, LPCSTR lpBackupFileName, DWORD dwReplaceFlags, LPVOID lpExclude, LPVOID lpReserved);
|
|
__attribute__((dllimport)) WINBOOL ReplaceFileW (LPCWSTR lpReplacedFileName, LPCWSTR lpReplacementFileName, LPCWSTR lpBackupFileName, DWORD dwReplaceFlags, LPVOID lpExclude, LPVOID lpReserved);
|
|
__attribute__((dllimport)) WINBOOL CreateHardLinkA (LPCSTR lpFileName, LPCSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) WINBOOL CreateHardLinkW (LPCWSTR lpFileName, LPCWSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
typedef enum _STREAM_INFO_LEVELS {
|
|
FindStreamInfoStandard,
|
|
FindStreamInfoMaxInfoLevel
|
|
} STREAM_INFO_LEVELS;
|
|
typedef struct _WIN32_FIND_STREAM_DATA {
|
|
LARGE_INTEGER StreamSize;
|
|
WCHAR cStreamName[260 + 36];
|
|
} WIN32_FIND_STREAM_DATA,*PWIN32_FIND_STREAM_DATA;
|
|
__attribute__((dllimport)) HANDLE FindFirstStreamW (LPCWSTR lpFileName, STREAM_INFO_LEVELS InfoLevel, LPVOID lpFindStreamData, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL FindNextStreamW (HANDLE hFindStream, LPVOID lpFindStreamData);
|
|
__attribute__((dllimport)) WINBOOL GetNamedPipeHandleStateW (HANDLE hNamedPipe, LPDWORD lpState, LPDWORD lpCurInstances, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout, LPWSTR lpUserName, DWORD nMaxUserNameSize);
|
|
__attribute__((dllimport)) WINBOOL SetVolumeLabelA (LPCSTR lpRootPathName, LPCSTR lpVolumeName);
|
|
__attribute__((dllimport)) WINBOOL SetVolumeLabelW (LPCWSTR lpRootPathName, LPCWSTR lpVolumeName);
|
|
__attribute__((dllimport)) void SetFileApisToOEM (void);
|
|
__attribute__((dllimport)) void SetFileApisToANSI (void);
|
|
__attribute__((dllimport)) WINBOOL AreFileApisANSI (void);
|
|
__attribute__((dllimport)) WINBOOL GetVolumeInformationA (LPCSTR lpRootPathName, LPSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize);
|
|
__attribute__((dllimport)) WINBOOL ClearEventLogA (HANDLE hEventLog, LPCSTR lpBackupFileName);
|
|
__attribute__((dllimport)) WINBOOL ClearEventLogW (HANDLE hEventLog, LPCWSTR lpBackupFileName);
|
|
__attribute__((dllimport)) WINBOOL BackupEventLogA (HANDLE hEventLog, LPCSTR lpBackupFileName);
|
|
__attribute__((dllimport)) WINBOOL BackupEventLogW (HANDLE hEventLog, LPCWSTR lpBackupFileName);
|
|
__attribute__((dllimport)) WINBOOL CloseEventLog (HANDLE hEventLog);
|
|
__attribute__((dllimport)) WINBOOL DeregisterEventSource (HANDLE hEventLog);
|
|
__attribute__((dllimport)) WINBOOL NotifyChangeEventLog (HANDLE hEventLog, HANDLE hEvent);
|
|
__attribute__((dllimport)) WINBOOL GetNumberOfEventLogRecords (HANDLE hEventLog, PDWORD NumberOfRecords);
|
|
__attribute__((dllimport)) WINBOOL GetOldestEventLogRecord (HANDLE hEventLog, PDWORD OldestRecord);
|
|
__attribute__((dllimport)) HANDLE OpenEventLogA (LPCSTR lpUNCServerName, LPCSTR lpSourceName);
|
|
__attribute__((dllimport)) HANDLE OpenEventLogW (LPCWSTR lpUNCServerName, LPCWSTR lpSourceName);
|
|
__attribute__((dllimport)) HANDLE RegisterEventSourceA (LPCSTR lpUNCServerName, LPCSTR lpSourceName);
|
|
__attribute__((dllimport)) HANDLE RegisterEventSourceW (LPCWSTR lpUNCServerName, LPCWSTR lpSourceName);
|
|
__attribute__((dllimport)) HANDLE OpenBackupEventLogA (LPCSTR lpUNCServerName, LPCSTR lpFileName);
|
|
__attribute__((dllimport)) HANDLE OpenBackupEventLogW (LPCWSTR lpUNCServerName, LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL ReadEventLogA (HANDLE hEventLog, DWORD dwReadFlags, DWORD dwRecordOffset, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, DWORD *pnBytesRead, DWORD *pnMinNumberOfBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL ReadEventLogW (HANDLE hEventLog, DWORD dwReadFlags, DWORD dwRecordOffset, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, DWORD *pnBytesRead, DWORD *pnMinNumberOfBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL ReportEventA (HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dwEventID, PSID lpUserSid, WORD wNumStrings, DWORD dwDataSize, LPCSTR *lpStrings, LPVOID lpRawData);
|
|
__attribute__((dllimport)) WINBOOL ReportEventW (HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dwEventID, PSID lpUserSid, WORD wNumStrings, DWORD dwDataSize, LPCWSTR *lpStrings, LPVOID lpRawData);
|
|
typedef struct _EVENTLOG_FULL_INFORMATION {
|
|
DWORD dwFull;
|
|
} EVENTLOG_FULL_INFORMATION,*LPEVENTLOG_FULL_INFORMATION;
|
|
__attribute__((dllimport)) WINBOOL GetEventLogInformation (HANDLE hEventLog, DWORD dwInfoLevel, LPVOID lpBuffer, DWORD cbBufSize, LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL ReadDirectoryChangesW (HANDLE hDirectory, LPVOID lpBuffer, DWORD nBufferLength, WINBOOL bWatchSubtree, DWORD dwNotifyFilter, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckAndAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPSTR ObjectTypeName, LPSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeAndAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPCSTR ObjectTypeName, LPCSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeResultListAndAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPCSTR ObjectTypeName, LPCSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL AccessCheckByTypeResultListAndAuditAlarmByHandleA (LPCSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, LPCSTR ObjectTypeName, LPCSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping, WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPDWORD AccessStatusList, LPBOOL pfGenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL ObjectOpenAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, LPSTR ObjectTypeName, LPSTR ObjectName, PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, DWORD GrantedAccess, PPRIVILEGE_SET Privileges, WINBOOL ObjectCreation, WINBOOL AccessGranted, LPBOOL GenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL ObjectPrivilegeAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, DWORD DesiredAccess, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
|
|
__attribute__((dllimport)) WINBOOL ObjectCloseAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL ObjectDeleteAuditAlarmA (LPCSTR SubsystemName, LPVOID HandleId, WINBOOL GenerateOnClose);
|
|
__attribute__((dllimport)) WINBOOL PrivilegedServiceAuditAlarmA (LPCSTR SubsystemName, LPCSTR ServiceName, HANDLE ClientToken, PPRIVILEGE_SET Privileges, WINBOOL AccessGranted);
|
|
__attribute__((dllimport)) WINBOOL SetFileSecurityA (LPCSTR lpFileName, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor);
|
|
__attribute__((dllimport)) WINBOOL GetFileSecurityA (LPCSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
|
|
__attribute__((dllimport)) WINBOOL IsBadReadPtr (const void *lp, UINT_PTR ucb);
|
|
__attribute__((dllimport)) WINBOOL IsBadWritePtr (LPVOID lp, UINT_PTR ucb);
|
|
__attribute__((dllimport)) WINBOOL IsBadHugeReadPtr (const void *lp, UINT_PTR ucb);
|
|
__attribute__((dllimport)) WINBOOL IsBadHugeWritePtr (LPVOID lp, UINT_PTR ucb);
|
|
__attribute__((dllimport)) WINBOOL IsBadCodePtr (FARPROC lpfn);
|
|
__attribute__((dllimport)) WINBOOL IsBadStringPtrA (LPCSTR lpsz, UINT_PTR ucchMax);
|
|
__attribute__((dllimport)) WINBOOL IsBadStringPtrW (LPCWSTR lpsz, UINT_PTR ucchMax);
|
|
__attribute__((dllimport)) WINBOOL LookupAccountSidA (LPCSTR lpSystemName, PSID Sid, LPSTR Name, LPDWORD cchName, LPSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
|
|
__attribute__((dllimport)) WINBOOL LookupAccountSidW (LPCWSTR lpSystemName, PSID Sid, LPWSTR Name, LPDWORD cchName, LPWSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
|
|
__attribute__((dllimport)) WINBOOL LookupAccountNameA (LPCSTR lpSystemName, LPCSTR lpAccountName, PSID Sid, LPDWORD cbSid, LPSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
|
|
__attribute__((dllimport)) WINBOOL LookupAccountNameW (LPCWSTR lpSystemName, LPCWSTR lpAccountName, PSID Sid, LPDWORD cbSid, LPWSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse);
|
|
__attribute__((dllimport)) WINBOOL LookupPrivilegeValueA (LPCSTR lpSystemName, LPCSTR lpName, PLUID lpLuid);
|
|
__attribute__((dllimport)) WINBOOL LookupPrivilegeValueW (LPCWSTR lpSystemName, LPCWSTR lpName, PLUID lpLuid);
|
|
__attribute__((dllimport)) WINBOOL LookupPrivilegeNameA (LPCSTR lpSystemName, PLUID lpLuid, LPSTR lpName, LPDWORD cchName);
|
|
__attribute__((dllimport)) WINBOOL LookupPrivilegeNameW (LPCWSTR lpSystemName, PLUID lpLuid, LPWSTR lpName, LPDWORD cchName);
|
|
__attribute__((dllimport)) WINBOOL LookupPrivilegeDisplayNameA (LPCSTR lpSystemName, LPCSTR lpName, LPSTR lpDisplayName, LPDWORD cchDisplayName, LPDWORD lpLanguageId);
|
|
__attribute__((dllimport)) WINBOOL LookupPrivilegeDisplayNameW (LPCWSTR lpSystemName, LPCWSTR lpName, LPWSTR lpDisplayName, LPDWORD cchDisplayName, LPDWORD lpLanguageId);
|
|
__attribute__((dllimport)) WINBOOL BuildCommDCBA (LPCSTR lpDef, LPDCB lpDCB);
|
|
__attribute__((dllimport)) WINBOOL BuildCommDCBW (LPCWSTR lpDef, LPDCB lpDCB);
|
|
__attribute__((dllimport)) WINBOOL BuildCommDCBAndTimeoutsA (LPCSTR lpDef, LPDCB lpDCB, LPCOMMTIMEOUTS lpCommTimeouts);
|
|
__attribute__((dllimport)) WINBOOL BuildCommDCBAndTimeoutsW (LPCWSTR lpDef, LPDCB lpDCB, LPCOMMTIMEOUTS lpCommTimeouts);
|
|
__attribute__((dllimport)) WINBOOL CommConfigDialogA (LPCSTR lpszName, HWND hWnd, LPCOMMCONFIG lpCC);
|
|
__attribute__((dllimport)) WINBOOL CommConfigDialogW (LPCWSTR lpszName, HWND hWnd, LPCOMMCONFIG lpCC);
|
|
__attribute__((dllimport)) WINBOOL GetDefaultCommConfigA (LPCSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize);
|
|
__attribute__((dllimport)) WINBOOL GetDefaultCommConfigW (LPCWSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize);
|
|
__attribute__((dllimport)) WINBOOL SetDefaultCommConfigA (LPCSTR lpszName, LPCOMMCONFIG lpCC, DWORD dwSize);
|
|
__attribute__((dllimport)) WINBOOL SetDefaultCommConfigW (LPCWSTR lpszName, LPCOMMCONFIG lpCC, DWORD dwSize);
|
|
__attribute__((dllimport)) WINBOOL GetComputerNameA (LPSTR lpBuffer, LPDWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL GetComputerNameW (LPWSTR lpBuffer, LPDWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL SetComputerNameA (LPCSTR lpComputerName);
|
|
__attribute__((dllimport)) WINBOOL SetComputerNameW (LPCWSTR lpComputerName);
|
|
__attribute__((dllimport)) WINBOOL SetComputerNameExA (COMPUTER_NAME_FORMAT NameType, LPCTSTR lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL DnsHostnameToComputerNameA (LPCSTR Hostname, LPSTR ComputerName, LPDWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL DnsHostnameToComputerNameW (LPCWSTR Hostname, LPWSTR ComputerName, LPDWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL GetUserNameA (LPSTR lpBuffer, LPDWORD pcbBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetUserNameW (LPWSTR lpBuffer, LPDWORD pcbBuffer);
|
|
__attribute__((dllimport)) WINBOOL LogonUserA (LPCSTR lpszUsername, LPCSTR lpszDomain, LPCSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken);
|
|
__attribute__((dllimport)) WINBOOL LogonUserW (LPCWSTR lpszUsername, LPCWSTR lpszDomain, LPCWSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken);
|
|
__attribute__((dllimport)) WINBOOL LogonUserExA (LPCSTR lpszUsername, LPCSTR lpszDomain, LPCSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken, PSID *ppLogonSid, PVOID *ppProfileBuffer, LPDWORD pdwProfileLength, PQUOTA_LIMITS pQuotaLimits);
|
|
__attribute__((dllimport)) WINBOOL LogonUserExW (LPCWSTR lpszUsername, LPCWSTR lpszDomain, LPCWSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken, PSID *ppLogonSid, PVOID *ppProfileBuffer, LPDWORD pdwProfileLength, PQUOTA_LIMITS pQuotaLimits);
|
|
__attribute__((dllimport)) WINBOOL CreateProcessAsUserA (HANDLE hToken, LPCSTR lpApplicationName, LPSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, WINBOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCSTR lpCurrentDirectory, LPSTARTUPINFOA lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
|
|
__attribute__((dllimport)) WINBOOL CreateProcessWithLogonW (LPCWSTR lpUsername, LPCWSTR lpDomain, LPCWSTR lpPassword, DWORD dwLogonFlags, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
|
|
__attribute__((dllimport)) WINBOOL CreateProcessWithTokenW (HANDLE hToken, DWORD dwLogonFlags, LPCWSTR lpApplicationName, LPWSTR lpCommandLine, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation);
|
|
__attribute__((dllimport)) WINBOOL IsTokenUntrusted (HANDLE TokenHandle);
|
|
__attribute__((dllimport)) WINBOOL RegisterWaitForSingleObject (PHANDLE phNewWaitObject, HANDLE hObject, WAITORTIMERCALLBACK Callback, PVOID Context, ULONG dwMilliseconds, ULONG dwFlags);
|
|
__attribute__((dllimport)) WINBOOL UnregisterWait (HANDLE WaitHandle);
|
|
__attribute__((dllimport)) WINBOOL BindIoCompletionCallback (HANDLE FileHandle, LPOVERLAPPED_COMPLETION_ROUTINE Function, ULONG Flags);
|
|
__attribute__((dllimport)) HANDLE SetTimerQueueTimer (HANDLE TimerQueue, WAITORTIMERCALLBACK Callback, PVOID Parameter, DWORD DueTime, DWORD Period, WINBOOL PreferIo);
|
|
__attribute__((dllimport)) WINBOOL CancelTimerQueueTimer (HANDLE TimerQueue, HANDLE Timer);
|
|
__attribute__((dllimport)) WINBOOL DeleteTimerQueue (HANDLE TimerQueue);
|
|
__attribute__((dllimport)) HANDLE CreatePrivateNamespaceA (LPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes, LPVOID lpBoundaryDescriptor, LPCSTR lpAliasPrefix);
|
|
__attribute__((dllimport)) HANDLE OpenPrivateNamespaceA (LPVOID lpBoundaryDescriptor, LPCSTR lpAliasPrefix);
|
|
__attribute__((dllimport)) HANDLE CreateBoundaryDescriptorA (LPCSTR Name, ULONG Flags);
|
|
__attribute__((dllimport)) WINBOOL AddIntegrityLabelToBoundaryDescriptor (HANDLE *BoundaryDescriptor, PSID IntegrityLabel);
|
|
typedef struct tagHW_PROFILE_INFOA {
|
|
DWORD dwDockInfo;
|
|
CHAR szHwProfileGuid[39];
|
|
CHAR szHwProfileName[80];
|
|
} HW_PROFILE_INFOA,*LPHW_PROFILE_INFOA;
|
|
typedef struct tagHW_PROFILE_INFOW {
|
|
DWORD dwDockInfo;
|
|
WCHAR szHwProfileGuid[39];
|
|
WCHAR szHwProfileName[80];
|
|
} HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW;
|
|
typedef HW_PROFILE_INFOA HW_PROFILE_INFO;
|
|
typedef LPHW_PROFILE_INFOA LPHW_PROFILE_INFO;
|
|
__attribute__((dllimport)) WINBOOL GetCurrentHwProfileA (LPHW_PROFILE_INFOA lpHwProfileInfo);
|
|
__attribute__((dllimport)) WINBOOL GetCurrentHwProfileW (LPHW_PROFILE_INFOW lpHwProfileInfo);
|
|
__attribute__((dllimport)) WINBOOL VerifyVersionInfoA (LPOSVERSIONINFOEXA lpVersionInformation, DWORD dwTypeMask, DWORDLONG dwlConditionMask);
|
|
__attribute__((dllimport)) WINBOOL VerifyVersionInfoW (LPOSVERSIONINFOEXW lpVersionInformation, DWORD dwTypeMask, DWORDLONG dwlConditionMask);
|
|
typedef struct _TIME_ZONE_INFORMATION {
|
|
LONG Bias;
|
|
WCHAR StandardName[32];
|
|
SYSTEMTIME StandardDate;
|
|
LONG StandardBias;
|
|
WCHAR DaylightName[32];
|
|
SYSTEMTIME DaylightDate;
|
|
LONG DaylightBias;
|
|
} TIME_ZONE_INFORMATION,*PTIME_ZONE_INFORMATION,*LPTIME_ZONE_INFORMATION;
|
|
typedef struct _TIME_DYNAMIC_ZONE_INFORMATION {
|
|
LONG Bias;
|
|
WCHAR StandardName[32];
|
|
SYSTEMTIME StandardDate;
|
|
LONG StandardBias;
|
|
WCHAR DaylightName[32];
|
|
SYSTEMTIME DaylightDate;
|
|
LONG DaylightBias;
|
|
WCHAR TimeZoneKeyName[128];
|
|
BOOLEAN DynamicDaylightTimeDisabled;
|
|
} DYNAMIC_TIME_ZONE_INFORMATION,*PDYNAMIC_TIME_ZONE_INFORMATION;
|
|
__attribute__((dllimport)) WINBOOL SystemTimeToTzSpecificLocalTime (const TIME_ZONE_INFORMATION *lpTimeZoneInformation, const SYSTEMTIME *lpUniversalTime, LPSYSTEMTIME lpLocalTime);
|
|
__attribute__((dllimport)) WINBOOL TzSpecificLocalTimeToSystemTime (const TIME_ZONE_INFORMATION *lpTimeZoneInformation, const SYSTEMTIME *lpLocalTime, LPSYSTEMTIME lpUniversalTime);
|
|
__attribute__((dllimport)) WINBOOL FileTimeToSystemTime (const FILETIME *lpFileTime, LPSYSTEMTIME lpSystemTime);
|
|
__attribute__((dllimport)) WINBOOL SystemTimeToFileTime (const SYSTEMTIME *lpSystemTime, LPFILETIME lpFileTime);
|
|
__attribute__((dllimport)) DWORD GetTimeZoneInformation (LPTIME_ZONE_INFORMATION lpTimeZoneInformation);
|
|
__attribute__((dllimport)) WINBOOL SetTimeZoneInformation (const TIME_ZONE_INFORMATION *lpTimeZoneInformation);
|
|
typedef struct _SYSTEM_POWER_STATUS {
|
|
BYTE ACLineStatus;
|
|
BYTE BatteryFlag;
|
|
BYTE BatteryLifePercent;
|
|
BYTE Reserved1;
|
|
DWORD BatteryLifeTime;
|
|
DWORD BatteryFullLifeTime;
|
|
} SYSTEM_POWER_STATUS,*LPSYSTEM_POWER_STATUS;
|
|
__attribute__((dllimport)) WINBOOL GetSystemPowerStatus (LPSYSTEM_POWER_STATUS lpSystemPowerStatus);
|
|
__attribute__((dllimport)) WINBOOL SetSystemPowerState (WINBOOL fSuspend, WINBOOL fForce);
|
|
__attribute__((dllimport)) WINBOOL AllocateUserPhysicalPages (HANDLE hProcess, PULONG_PTR NumberOfPages, PULONG_PTR PageArray);
|
|
__attribute__((dllimport)) WINBOOL FreeUserPhysicalPages (HANDLE hProcess, PULONG_PTR NumberOfPages, PULONG_PTR PageArray);
|
|
__attribute__((dllimport)) WINBOOL MapUserPhysicalPages (PVOID VirtualAddress, ULONG_PTR NumberOfPages, PULONG_PTR PageArray);
|
|
__attribute__((dllimport)) WINBOOL MapUserPhysicalPagesScatter (PVOID *VirtualAddresses, ULONG_PTR NumberOfPages, PULONG_PTR PageArray);
|
|
__attribute__((dllimport)) HANDLE CreateJobObjectA (LPSECURITY_ATTRIBUTES lpJobAttributes, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE CreateJobObjectW (LPSECURITY_ATTRIBUTES lpJobAttributes, LPCWSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenJobObjectA (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCSTR lpName);
|
|
__attribute__((dllimport)) HANDLE OpenJobObjectW (DWORD dwDesiredAccess, WINBOOL bInheritHandle, LPCWSTR lpName);
|
|
__attribute__((dllimport)) WINBOOL AssignProcessToJobObject (HANDLE hJob, HANDLE hProcess);
|
|
__attribute__((dllimport)) WINBOOL TerminateJobObject (HANDLE hJob, UINT uExitCode);
|
|
__attribute__((dllimport)) WINBOOL QueryInformationJobObject (HANDLE hJob, JOBOBJECTINFOCLASS JobObjectInformationClass, LPVOID lpJobObjectInformation, DWORD cbJobObjectInformationLength, LPDWORD lpReturnLength);
|
|
__attribute__((dllimport)) WINBOOL SetInformationJobObject (HANDLE hJob, JOBOBJECTINFOCLASS JobObjectInformationClass, LPVOID lpJobObjectInformation, DWORD cbJobObjectInformationLength);
|
|
__attribute__((dllimport)) WINBOOL CreateJobSet (ULONG NumJob, PJOB_SET_ARRAY UserJobSet, ULONG Flags);
|
|
__attribute__((dllimport)) HANDLE FindFirstVolumeA (LPSTR lpszVolumeName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL FindNextVolumeA (HANDLE hFindVolume, LPSTR lpszVolumeName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) HANDLE FindFirstVolumeMountPointA (LPCSTR lpszRootPathName, LPSTR lpszVolumeMountPoint, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) HANDLE FindFirstVolumeMountPointW (LPCWSTR lpszRootPathName, LPWSTR lpszVolumeMountPoint, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL FindNextVolumeMountPointA (HANDLE hFindVolumeMountPoint, LPSTR lpszVolumeMountPoint, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL FindNextVolumeMountPointW (HANDLE hFindVolumeMountPoint, LPWSTR lpszVolumeMountPoint, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL FindVolumeMountPointClose (HANDLE hFindVolumeMountPoint);
|
|
__attribute__((dllimport)) WINBOOL SetVolumeMountPointA (LPCSTR lpszVolumeMountPoint, LPCSTR lpszVolumeName);
|
|
__attribute__((dllimport)) WINBOOL SetVolumeMountPointW (LPCWSTR lpszVolumeMountPoint, LPCWSTR lpszVolumeName);
|
|
__attribute__((dllimport)) WINBOOL DeleteVolumeMountPointA (LPCSTR lpszVolumeMountPoint);
|
|
__attribute__((dllimport)) WINBOOL GetVolumeNameForVolumeMountPointA (LPCSTR lpszVolumeMountPoint, LPSTR lpszVolumeName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL GetVolumePathNameA (LPCSTR lpszFileName, LPSTR lpszVolumePathName, DWORD cchBufferLength);
|
|
__attribute__((dllimport)) WINBOOL GetVolumePathNamesForVolumeNameA (LPCSTR lpszVolumeName, LPCH lpszVolumePathNames, DWORD cchBufferLength, PDWORD lpcchReturnLength);
|
|
typedef struct tagACTCTXA {
|
|
ULONG cbSize;
|
|
DWORD dwFlags;
|
|
LPCSTR lpSource;
|
|
USHORT wProcessorArchitecture;
|
|
LANGID wLangId;
|
|
LPCSTR lpAssemblyDirectory;
|
|
LPCSTR lpResourceName;
|
|
LPCSTR lpApplicationName;
|
|
HMODULE hModule;
|
|
} ACTCTXA,*PACTCTXA;
|
|
typedef struct tagACTCTXW {
|
|
ULONG cbSize;
|
|
DWORD dwFlags;
|
|
LPCWSTR lpSource;
|
|
USHORT wProcessorArchitecture;
|
|
LANGID wLangId;
|
|
LPCWSTR lpAssemblyDirectory;
|
|
LPCWSTR lpResourceName;
|
|
LPCWSTR lpApplicationName;
|
|
HMODULE hModule;
|
|
} ACTCTXW,*PACTCTXW;
|
|
typedef ACTCTXA ACTCTX;
|
|
typedef PACTCTXA PACTCTX;
|
|
typedef const ACTCTXA *PCACTCTXA;
|
|
typedef const ACTCTXW *PCACTCTXW;
|
|
typedef PCACTCTXA PCACTCTX;
|
|
__attribute__((dllimport)) HANDLE CreateActCtxA (PCACTCTXA pActCtx);
|
|
__attribute__((dllimport)) HANDLE CreateActCtxW (PCACTCTXW pActCtx);
|
|
__attribute__((dllimport)) void AddRefActCtx (HANDLE hActCtx);
|
|
__attribute__((dllimport)) void ReleaseActCtx (HANDLE hActCtx);
|
|
__attribute__((dllimport)) WINBOOL ZombifyActCtx (HANDLE hActCtx);
|
|
__attribute__((dllimport)) WINBOOL ActivateActCtx (HANDLE hActCtx, ULONG_PTR *lpCookie);
|
|
__attribute__((dllimport)) WINBOOL DeactivateActCtx (DWORD dwFlags, ULONG_PTR ulCookie);
|
|
__attribute__((dllimport)) WINBOOL GetCurrentActCtx (HANDLE *lphActCtx);
|
|
typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
|
|
ULONG cbSize;
|
|
ULONG ulDataFormatVersion;
|
|
PVOID lpData;
|
|
ULONG ulLength;
|
|
PVOID lpSectionGlobalData;
|
|
ULONG ulSectionGlobalDataLength;
|
|
PVOID lpSectionBase;
|
|
ULONG ulSectionTotalLength;
|
|
HANDLE hActCtx;
|
|
ULONG ulAssemblyRosterIndex;
|
|
} ACTCTX_SECTION_KEYED_DATA_2600,*PACTCTX_SECTION_KEYED_DATA_2600;
|
|
typedef const ACTCTX_SECTION_KEYED_DATA_2600 *PCACTCTX_SECTION_KEYED_DATA_2600;
|
|
typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
|
|
PVOID lpInformation;
|
|
PVOID lpSectionBase;
|
|
ULONG ulSectionLength;
|
|
PVOID lpSectionGlobalDataBase;
|
|
ULONG ulSectionGlobalDataLength;
|
|
} ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA,*PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
|
|
typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
|
|
typedef struct tagACTCTX_SECTION_KEYED_DATA {
|
|
ULONG cbSize;
|
|
ULONG ulDataFormatVersion;
|
|
PVOID lpData;
|
|
ULONG ulLength;
|
|
PVOID lpSectionGlobalData;
|
|
ULONG ulSectionGlobalDataLength;
|
|
PVOID lpSectionBase;
|
|
ULONG ulSectionTotalLength;
|
|
HANDLE hActCtx;
|
|
ULONG ulAssemblyRosterIndex;
|
|
ULONG ulFlags;
|
|
ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
|
|
} ACTCTX_SECTION_KEYED_DATA,*PACTCTX_SECTION_KEYED_DATA;
|
|
typedef const ACTCTX_SECTION_KEYED_DATA *PCACTCTX_SECTION_KEYED_DATA;
|
|
__attribute__((dllimport)) WINBOOL FindActCtxSectionStringA (DWORD dwFlags, const GUID *lpExtensionGuid, ULONG ulSectionId, LPCSTR lpStringToFind, PACTCTX_SECTION_KEYED_DATA ReturnedData);
|
|
__attribute__((dllimport)) WINBOOL FindActCtxSectionStringW (DWORD dwFlags, const GUID *lpExtensionGuid, ULONG ulSectionId, LPCWSTR lpStringToFind, PACTCTX_SECTION_KEYED_DATA ReturnedData);
|
|
__attribute__((dllimport)) WINBOOL FindActCtxSectionGuid (DWORD dwFlags, const GUID *lpExtensionGuid, ULONG ulSectionId, const GUID *lpGuidToFind, PACTCTX_SECTION_KEYED_DATA ReturnedData);
|
|
typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
|
|
HANDLE hActCtx;
|
|
DWORD dwFlags;
|
|
} ACTIVATION_CONTEXT_BASIC_INFORMATION,*PACTIVATION_CONTEXT_BASIC_INFORMATION;
|
|
typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION;
|
|
__attribute__((dllimport)) WINBOOL QueryActCtxW (DWORD dwFlags, HANDLE hActCtx, PVOID pvSubInstance, ULONG ulInfoClass, PVOID pvBuffer, SIZE_T cbBuffer, SIZE_T *pcbWrittenOrRequired);
|
|
typedef WINBOOL ( *PQUERYACTCTXW_FUNC) (DWORD dwFlags, HANDLE hActCtx, PVOID pvSubInstance, ULONG ulInfoClass, PVOID pvBuffer, SIZE_T cbBuffer, SIZE_T *pcbWrittenOrRequired);
|
|
__attribute__((dllimport)) DWORD WTSGetActiveConsoleSessionId (void);
|
|
__attribute__((dllimport)) WINBOOL GetNumaProcessorNode (UCHAR Processor, PUCHAR NodeNumber);
|
|
__attribute__((dllimport)) WINBOOL GetNumaNodeProcessorMask (UCHAR Node, PULONGLONG ProcessorMask);
|
|
__attribute__((dllimport)) WINBOOL GetNumaAvailableMemoryNode (UCHAR Node, PULONGLONG AvailableBytes);
|
|
typedef DWORD ( *APPLICATION_RECOVERY_CALLBACK) (PVOID pvParameter);
|
|
__attribute__((dllimport)) WINBOOL CopyContext (PCONTEXT Destination, DWORD ContextFlags, PCONTEXT Source);
|
|
__attribute__((dllimport)) WINBOOL InitializeContext (PVOID Buffer, DWORD ContextFlags, PCONTEXT *Context, PDWORD ContextLength);
|
|
__attribute__((dllimport)) DWORD64 GetEnabledXStateFeatures (void);
|
|
__attribute__((dllimport)) WINBOOL GetXStateFeaturesMask (PCONTEXT Context, PDWORD64 FeatureMask);
|
|
__attribute__((dllimport)) PVOID LocateXStateFeature (PCONTEXT Context, DWORD FeatureId, PDWORD Length);
|
|
__attribute__((dllimport)) WINBOOL SetXStateFeaturesMask (PCONTEXT Context, DWORD64 FeatureMask);
|
|
typedef struct _DRAWPATRECT {
|
|
POINT ptPosition;
|
|
POINT ptSize;
|
|
WORD wStyle;
|
|
WORD wPattern;
|
|
} DRAWPATRECT,*PDRAWPATRECT;
|
|
typedef struct _PSINJECTDATA {
|
|
DWORD DataBytes;
|
|
WORD InjectionPoint;
|
|
WORD PageNumber;
|
|
} PSINJECTDATA,*PPSINJECTDATA;
|
|
typedef struct _PSFEATURE_OUTPUT {
|
|
WINBOOL bPageIndependent;
|
|
WINBOOL bSetPageDevice;
|
|
} PSFEATURE_OUTPUT,*PPSFEATURE_OUTPUT;
|
|
typedef struct _PSFEATURE_CUSTPAPER {
|
|
LONG lOrientation;
|
|
LONG lWidth;
|
|
LONG lHeight;
|
|
LONG lWidthOffset;
|
|
LONG lHeightOffset;
|
|
} PSFEATURE_CUSTPAPER,*PPSFEATURE_CUSTPAPER;
|
|
typedef struct tagXFORM {
|
|
FLOAT eM11;
|
|
FLOAT eM12;
|
|
FLOAT eM21;
|
|
FLOAT eM22;
|
|
FLOAT eDx;
|
|
FLOAT eDy;
|
|
} XFORM,*PXFORM,*LPXFORM;
|
|
typedef struct tagBITMAP {
|
|
LONG bmType;
|
|
LONG bmWidth;
|
|
LONG bmHeight;
|
|
LONG bmWidthBytes;
|
|
WORD bmPlanes;
|
|
WORD bmBitsPixel;
|
|
LPVOID bmBits;
|
|
} BITMAP,*PBITMAP,*NPBITMAP,*LPBITMAP;
|
|
#pragma pack(push,1)
|
|
typedef struct tagRGBTRIPLE {
|
|
BYTE rgbtBlue;
|
|
BYTE rgbtGreen;
|
|
BYTE rgbtRed;
|
|
} RGBTRIPLE;
|
|
#pragma pack(pop)
|
|
typedef struct tagRGBQUAD {
|
|
BYTE rgbBlue;
|
|
BYTE rgbGreen;
|
|
BYTE rgbRed;
|
|
BYTE rgbReserved;
|
|
} RGBQUAD;
|
|
typedef RGBQUAD *LPRGBQUAD;
|
|
typedef LONG LCSCSTYPE;
|
|
typedef LONG LCSGAMUTMATCH;
|
|
typedef long FXPT16DOT16,*LPFXPT16DOT16;
|
|
typedef long FXPT2DOT30,*LPFXPT2DOT30;
|
|
typedef struct tagCIEXYZ {
|
|
FXPT2DOT30 ciexyzX;
|
|
FXPT2DOT30 ciexyzY;
|
|
FXPT2DOT30 ciexyzZ;
|
|
} CIEXYZ;
|
|
typedef CIEXYZ *LPCIEXYZ;
|
|
typedef struct tagICEXYZTRIPLE {
|
|
CIEXYZ ciexyzRed;
|
|
CIEXYZ ciexyzGreen;
|
|
CIEXYZ ciexyzBlue;
|
|
} CIEXYZTRIPLE;
|
|
typedef CIEXYZTRIPLE *LPCIEXYZTRIPLE;
|
|
typedef struct tagLOGCOLORSPACEA {
|
|
DWORD lcsSignature;
|
|
DWORD lcsVersion;
|
|
DWORD lcsSize;
|
|
LCSCSTYPE lcsCSType;
|
|
LCSGAMUTMATCH lcsIntent;
|
|
CIEXYZTRIPLE lcsEndpoints;
|
|
DWORD lcsGammaRed;
|
|
DWORD lcsGammaGreen;
|
|
DWORD lcsGammaBlue;
|
|
CHAR lcsFilename[260];
|
|
} LOGCOLORSPACEA,*LPLOGCOLORSPACEA;
|
|
typedef struct tagLOGCOLORSPACEW {
|
|
DWORD lcsSignature;
|
|
DWORD lcsVersion;
|
|
DWORD lcsSize;
|
|
LCSCSTYPE lcsCSType;
|
|
LCSGAMUTMATCH lcsIntent;
|
|
CIEXYZTRIPLE lcsEndpoints;
|
|
DWORD lcsGammaRed;
|
|
DWORD lcsGammaGreen;
|
|
DWORD lcsGammaBlue;
|
|
WCHAR lcsFilename[260];
|
|
} LOGCOLORSPACEW,*LPLOGCOLORSPACEW;
|
|
typedef LOGCOLORSPACEA LOGCOLORSPACE;
|
|
typedef LPLOGCOLORSPACEA LPLOGCOLORSPACE;
|
|
typedef struct tagBITMAPCOREHEADER {
|
|
DWORD bcSize;
|
|
WORD bcWidth;
|
|
WORD bcHeight;
|
|
WORD bcPlanes;
|
|
WORD bcBitCount;
|
|
} BITMAPCOREHEADER,*LPBITMAPCOREHEADER,*PBITMAPCOREHEADER;
|
|
typedef struct tagBITMAPINFOHEADER {
|
|
DWORD biSize;
|
|
LONG biWidth;
|
|
LONG biHeight;
|
|
WORD biPlanes;
|
|
WORD biBitCount;
|
|
DWORD biCompression;
|
|
DWORD biSizeImage;
|
|
LONG biXPelsPerMeter;
|
|
LONG biYPelsPerMeter;
|
|
DWORD biClrUsed;
|
|
DWORD biClrImportant;
|
|
} BITMAPINFOHEADER,*LPBITMAPINFOHEADER,*PBITMAPINFOHEADER;
|
|
typedef struct {
|
|
DWORD bV4Size;
|
|
LONG bV4Width;
|
|
LONG bV4Height;
|
|
WORD bV4Planes;
|
|
WORD bV4BitCount;
|
|
DWORD bV4V4Compression;
|
|
DWORD bV4SizeImage;
|
|
LONG bV4XPelsPerMeter;
|
|
LONG bV4YPelsPerMeter;
|
|
DWORD bV4ClrUsed;
|
|
DWORD bV4ClrImportant;
|
|
DWORD bV4RedMask;
|
|
DWORD bV4GreenMask;
|
|
DWORD bV4BlueMask;
|
|
DWORD bV4AlphaMask;
|
|
DWORD bV4CSType;
|
|
CIEXYZTRIPLE bV4Endpoints;
|
|
DWORD bV4GammaRed;
|
|
DWORD bV4GammaGreen;
|
|
DWORD bV4GammaBlue;
|
|
} BITMAPV4HEADER,*LPBITMAPV4HEADER,*PBITMAPV4HEADER;
|
|
typedef struct {
|
|
DWORD bV5Size;
|
|
LONG bV5Width;
|
|
LONG bV5Height;
|
|
WORD bV5Planes;
|
|
WORD bV5BitCount;
|
|
DWORD bV5Compression;
|
|
DWORD bV5SizeImage;
|
|
LONG bV5XPelsPerMeter;
|
|
LONG bV5YPelsPerMeter;
|
|
DWORD bV5ClrUsed;
|
|
DWORD bV5ClrImportant;
|
|
DWORD bV5RedMask;
|
|
DWORD bV5GreenMask;
|
|
DWORD bV5BlueMask;
|
|
DWORD bV5AlphaMask;
|
|
DWORD bV5CSType;
|
|
CIEXYZTRIPLE bV5Endpoints;
|
|
DWORD bV5GammaRed;
|
|
DWORD bV5GammaGreen;
|
|
DWORD bV5GammaBlue;
|
|
DWORD bV5Intent;
|
|
DWORD bV5ProfileData;
|
|
DWORD bV5ProfileSize;
|
|
DWORD bV5Reserved;
|
|
} BITMAPV5HEADER,*LPBITMAPV5HEADER,*PBITMAPV5HEADER;
|
|
typedef struct tagBITMAPINFO {
|
|
BITMAPINFOHEADER bmiHeader;
|
|
RGBQUAD bmiColors[1];
|
|
} BITMAPINFO,*LPBITMAPINFO,*PBITMAPINFO;
|
|
typedef struct tagBITMAPCOREINFO {
|
|
BITMAPCOREHEADER bmciHeader;
|
|
RGBTRIPLE bmciColors[1];
|
|
} BITMAPCOREINFO,*LPBITMAPCOREINFO,*PBITMAPCOREINFO;
|
|
#pragma pack(push,2)
|
|
typedef struct tagBITMAPFILEHEADER {
|
|
WORD bfType;
|
|
DWORD bfSize;
|
|
WORD bfReserved1;
|
|
WORD bfReserved2;
|
|
DWORD bfOffBits;
|
|
} BITMAPFILEHEADER,*LPBITMAPFILEHEADER,*PBITMAPFILEHEADER;
|
|
#pragma pack(pop)
|
|
typedef struct tagFONTSIGNATURE {
|
|
DWORD fsUsb[4];
|
|
DWORD fsCsb[2];
|
|
} FONTSIGNATURE,*PFONTSIGNATURE,*LPFONTSIGNATURE;
|
|
typedef struct tagCHARSETINFO {
|
|
UINT ciCharset;
|
|
UINT ciACP;
|
|
FONTSIGNATURE fs;
|
|
} CHARSETINFO,*PCHARSETINFO,*NPCHARSETINFO,*LPCHARSETINFO;
|
|
typedef struct tagLOCALESIGNATURE {
|
|
DWORD lsUsb[4];
|
|
DWORD lsCsbDefault[2];
|
|
DWORD lsCsbSupported[2];
|
|
} LOCALESIGNATURE,*PLOCALESIGNATURE,*LPLOCALESIGNATURE;
|
|
typedef struct tagHANDLETABLE {
|
|
HGDIOBJ objectHandle[1];
|
|
} HANDLETABLE,*PHANDLETABLE,*LPHANDLETABLE;
|
|
typedef struct tagMETARECORD {
|
|
DWORD rdSize;
|
|
WORD rdFunction;
|
|
WORD rdParm[1];
|
|
} METARECORD;
|
|
typedef struct tagMETARECORD *PMETARECORD;
|
|
typedef struct tagMETARECORD *LPMETARECORD;
|
|
typedef struct tagMETAFILEPICT {
|
|
LONG mm;
|
|
LONG xExt;
|
|
LONG yExt;
|
|
HMETAFILE hMF;
|
|
} METAFILEPICT,*LPMETAFILEPICT;
|
|
#pragma pack(push,2)
|
|
typedef struct tagMETAHEADER {
|
|
WORD mtType;
|
|
WORD mtHeaderSize;
|
|
WORD mtVersion;
|
|
DWORD mtSize;
|
|
WORD mtNoObjects;
|
|
DWORD mtMaxRecord;
|
|
WORD mtNoParameters;
|
|
} METAHEADER;
|
|
typedef struct tagMETAHEADER *PMETAHEADER;
|
|
typedef struct tagMETAHEADER *LPMETAHEADER;
|
|
#pragma pack(pop)
|
|
typedef struct tagENHMETARECORD {
|
|
DWORD iType;
|
|
DWORD nSize;
|
|
DWORD dParm[1];
|
|
} ENHMETARECORD,*PENHMETARECORD,*LPENHMETARECORD;
|
|
typedef struct tagENHMETAHEADER {
|
|
DWORD iType;
|
|
DWORD nSize;
|
|
RECTL rclBounds;
|
|
RECTL rclFrame;
|
|
DWORD dSignature;
|
|
DWORD nVersion;
|
|
DWORD nBytes;
|
|
DWORD nRecords;
|
|
WORD nHandles;
|
|
WORD sReserved;
|
|
DWORD nDescription;
|
|
DWORD offDescription;
|
|
DWORD nPalEntries;
|
|
SIZEL szlDevice;
|
|
SIZEL szlMillimeters;
|
|
DWORD cbPixelFormat;
|
|
DWORD offPixelFormat;
|
|
DWORD bOpenGL;
|
|
SIZEL szlMicrometers;
|
|
} ENHMETAHEADER,*PENHMETAHEADER,*LPENHMETAHEADER;
|
|
typedef BYTE BCHAR;
|
|
#pragma pack(push,4)
|
|
typedef struct tagTEXTMETRICA {
|
|
LONG tmHeight;
|
|
LONG tmAscent;
|
|
LONG tmDescent;
|
|
LONG tmInternalLeading;
|
|
LONG tmExternalLeading;
|
|
LONG tmAveCharWidth;
|
|
LONG tmMaxCharWidth;
|
|
LONG tmWeight;
|
|
LONG tmOverhang;
|
|
LONG tmDigitizedAspectX;
|
|
LONG tmDigitizedAspectY;
|
|
BYTE tmFirstChar;
|
|
BYTE tmLastChar;
|
|
BYTE tmDefaultChar;
|
|
BYTE tmBreakChar;
|
|
BYTE tmItalic;
|
|
BYTE tmUnderlined;
|
|
BYTE tmStruckOut;
|
|
BYTE tmPitchAndFamily;
|
|
BYTE tmCharSet;
|
|
} TEXTMETRICA,*PTEXTMETRICA,*NPTEXTMETRICA,*LPTEXTMETRICA;
|
|
typedef struct tagTEXTMETRICW {
|
|
LONG tmHeight;
|
|
LONG tmAscent;
|
|
LONG tmDescent;
|
|
LONG tmInternalLeading;
|
|
LONG tmExternalLeading;
|
|
LONG tmAveCharWidth;
|
|
LONG tmMaxCharWidth;
|
|
LONG tmWeight;
|
|
LONG tmOverhang;
|
|
LONG tmDigitizedAspectX;
|
|
LONG tmDigitizedAspectY;
|
|
WCHAR tmFirstChar;
|
|
WCHAR tmLastChar;
|
|
WCHAR tmDefaultChar;
|
|
WCHAR tmBreakChar;
|
|
BYTE tmItalic;
|
|
BYTE tmUnderlined;
|
|
BYTE tmStruckOut;
|
|
BYTE tmPitchAndFamily;
|
|
BYTE tmCharSet;
|
|
} TEXTMETRICW,*PTEXTMETRICW,*NPTEXTMETRICW,*LPTEXTMETRICW;
|
|
typedef TEXTMETRICA TEXTMETRIC;
|
|
typedef PTEXTMETRICA PTEXTMETRIC;
|
|
typedef NPTEXTMETRICA NPTEXTMETRIC;
|
|
typedef LPTEXTMETRICA LPTEXTMETRIC;
|
|
#pragma pack(pop)
|
|
#pragma pack(push,4)
|
|
typedef struct tagNEWTEXTMETRICA {
|
|
LONG tmHeight;
|
|
LONG tmAscent;
|
|
LONG tmDescent;
|
|
LONG tmInternalLeading;
|
|
LONG tmExternalLeading;
|
|
LONG tmAveCharWidth;
|
|
LONG tmMaxCharWidth;
|
|
LONG tmWeight;
|
|
LONG tmOverhang;
|
|
LONG tmDigitizedAspectX;
|
|
LONG tmDigitizedAspectY;
|
|
BYTE tmFirstChar;
|
|
BYTE tmLastChar;
|
|
BYTE tmDefaultChar;
|
|
BYTE tmBreakChar;
|
|
BYTE tmItalic;
|
|
BYTE tmUnderlined;
|
|
BYTE tmStruckOut;
|
|
BYTE tmPitchAndFamily;
|
|
BYTE tmCharSet;
|
|
DWORD ntmFlags;
|
|
UINT ntmSizeEM;
|
|
UINT ntmCellHeight;
|
|
UINT ntmAvgWidth;
|
|
} NEWTEXTMETRICA,*PNEWTEXTMETRICA,*NPNEWTEXTMETRICA,*LPNEWTEXTMETRICA;
|
|
typedef struct tagNEWTEXTMETRICW {
|
|
LONG tmHeight;
|
|
LONG tmAscent;
|
|
LONG tmDescent;
|
|
LONG tmInternalLeading;
|
|
LONG tmExternalLeading;
|
|
LONG tmAveCharWidth;
|
|
LONG tmMaxCharWidth;
|
|
LONG tmWeight;
|
|
LONG tmOverhang;
|
|
LONG tmDigitizedAspectX;
|
|
LONG tmDigitizedAspectY;
|
|
WCHAR tmFirstChar;
|
|
WCHAR tmLastChar;
|
|
WCHAR tmDefaultChar;
|
|
WCHAR tmBreakChar;
|
|
BYTE tmItalic;
|
|
BYTE tmUnderlined;
|
|
BYTE tmStruckOut;
|
|
BYTE tmPitchAndFamily;
|
|
BYTE tmCharSet;
|
|
DWORD ntmFlags;
|
|
UINT ntmSizeEM;
|
|
UINT ntmCellHeight;
|
|
UINT ntmAvgWidth;
|
|
} NEWTEXTMETRICW,*PNEWTEXTMETRICW,*NPNEWTEXTMETRICW,*LPNEWTEXTMETRICW;
|
|
typedef NEWTEXTMETRICA NEWTEXTMETRIC;
|
|
typedef PNEWTEXTMETRICA PNEWTEXTMETRIC;
|
|
typedef NPNEWTEXTMETRICA NPNEWTEXTMETRIC;
|
|
typedef LPNEWTEXTMETRICA LPNEWTEXTMETRIC;
|
|
#pragma pack(pop)
|
|
typedef struct tagNEWTEXTMETRICEXA {
|
|
NEWTEXTMETRICA ntmTm;
|
|
FONTSIGNATURE ntmFontSig;
|
|
} NEWTEXTMETRICEXA;
|
|
typedef struct tagNEWTEXTMETRICEXW {
|
|
NEWTEXTMETRICW ntmTm;
|
|
FONTSIGNATURE ntmFontSig;
|
|
} NEWTEXTMETRICEXW;
|
|
typedef NEWTEXTMETRICEXA NEWTEXTMETRICEX;
|
|
typedef struct tagPELARRAY {
|
|
LONG paXCount;
|
|
LONG paYCount;
|
|
LONG paXExt;
|
|
LONG paYExt;
|
|
BYTE paRGBs;
|
|
} PELARRAY,*PPELARRAY,*NPPELARRAY,*LPPELARRAY;
|
|
typedef struct tagLOGBRUSH {
|
|
UINT lbStyle;
|
|
COLORREF lbColor;
|
|
ULONG_PTR lbHatch;
|
|
} LOGBRUSH,*PLOGBRUSH,*NPLOGBRUSH,*LPLOGBRUSH;
|
|
typedef struct tagLOGBRUSH32 {
|
|
UINT lbStyle;
|
|
COLORREF lbColor;
|
|
ULONG lbHatch;
|
|
} LOGBRUSH32,*PLOGBRUSH32,*NPLOGBRUSH32,*LPLOGBRUSH32;
|
|
typedef LOGBRUSH PATTERN;
|
|
typedef PATTERN *PPATTERN;
|
|
typedef PATTERN *NPPATTERN;
|
|
typedef PATTERN *LPPATTERN;
|
|
typedef struct tagLOGPEN {
|
|
UINT lopnStyle;
|
|
POINT lopnWidth;
|
|
COLORREF lopnColor;
|
|
} LOGPEN,*PLOGPEN,*NPLOGPEN,*LPLOGPEN;
|
|
typedef struct tagEXTLOGPEN {
|
|
DWORD elpPenStyle;
|
|
DWORD elpWidth;
|
|
UINT elpBrushStyle;
|
|
COLORREF elpColor;
|
|
ULONG_PTR elpHatch;
|
|
DWORD elpNumEntries;
|
|
DWORD elpStyleEntry[1];
|
|
} EXTLOGPEN,*PEXTLOGPEN,*NPEXTLOGPEN,*LPEXTLOGPEN;
|
|
typedef struct tagEXTLOGPEN32 {
|
|
DWORD elpPenStyle;
|
|
DWORD elpWidth;
|
|
UINT elpBrushStyle;
|
|
COLORREF elpColor;
|
|
ULONG elpHatch;
|
|
DWORD elpNumEntries;
|
|
DWORD elpStyleEntry[1];
|
|
} EXTLOGPEN32, *PEXTLOGPEN32, *NPEXTLOGPEN32, *LPEXTLOGPEN32;
|
|
typedef struct tagPALETTEENTRY {
|
|
BYTE peRed;
|
|
BYTE peGreen;
|
|
BYTE peBlue;
|
|
BYTE peFlags;
|
|
} PALETTEENTRY,*PPALETTEENTRY,*LPPALETTEENTRY;
|
|
typedef struct tagLOGPALETTE {
|
|
WORD palVersion;
|
|
WORD palNumEntries;
|
|
PALETTEENTRY palPalEntry[1];
|
|
} LOGPALETTE,*PLOGPALETTE,*NPLOGPALETTE,*LPLOGPALETTE;
|
|
typedef struct tagLOGFONTA {
|
|
LONG lfHeight;
|
|
LONG lfWidth;
|
|
LONG lfEscapement;
|
|
LONG lfOrientation;
|
|
LONG lfWeight;
|
|
BYTE lfItalic;
|
|
BYTE lfUnderline;
|
|
BYTE lfStrikeOut;
|
|
BYTE lfCharSet;
|
|
BYTE lfOutPrecision;
|
|
BYTE lfClipPrecision;
|
|
BYTE lfQuality;
|
|
BYTE lfPitchAndFamily;
|
|
CHAR lfFaceName[32];
|
|
} LOGFONTA,*PLOGFONTA,*NPLOGFONTA,*LPLOGFONTA;
|
|
typedef struct tagLOGFONTW {
|
|
LONG lfHeight;
|
|
LONG lfWidth;
|
|
LONG lfEscapement;
|
|
LONG lfOrientation;
|
|
LONG lfWeight;
|
|
BYTE lfItalic;
|
|
BYTE lfUnderline;
|
|
BYTE lfStrikeOut;
|
|
BYTE lfCharSet;
|
|
BYTE lfOutPrecision;
|
|
BYTE lfClipPrecision;
|
|
BYTE lfQuality;
|
|
BYTE lfPitchAndFamily;
|
|
WCHAR lfFaceName[32];
|
|
} LOGFONTW,*PLOGFONTW,*NPLOGFONTW,*LPLOGFONTW;
|
|
typedef LOGFONTA LOGFONT;
|
|
typedef PLOGFONTA PLOGFONT;
|
|
typedef NPLOGFONTA NPLOGFONT;
|
|
typedef LPLOGFONTA LPLOGFONT;
|
|
typedef struct tagENUMLOGFONTA {
|
|
LOGFONTA elfLogFont;
|
|
BYTE elfFullName[64];
|
|
BYTE elfStyle[32];
|
|
} ENUMLOGFONTA,*LPENUMLOGFONTA;
|
|
typedef struct tagENUMLOGFONTW {
|
|
LOGFONTW elfLogFont;
|
|
WCHAR elfFullName[64];
|
|
WCHAR elfStyle[32];
|
|
} ENUMLOGFONTW,*LPENUMLOGFONTW;
|
|
typedef ENUMLOGFONTA ENUMLOGFONT;
|
|
typedef LPENUMLOGFONTA LPENUMLOGFONT;
|
|
typedef struct tagENUMLOGFONTEXA {
|
|
LOGFONTA elfLogFont;
|
|
BYTE elfFullName[64];
|
|
BYTE elfStyle[32];
|
|
BYTE elfScript[32];
|
|
} ENUMLOGFONTEXA,*LPENUMLOGFONTEXA;
|
|
typedef struct tagENUMLOGFONTEXW {
|
|
LOGFONTW elfLogFont;
|
|
WCHAR elfFullName[64];
|
|
WCHAR elfStyle[32];
|
|
WCHAR elfScript[32];
|
|
} ENUMLOGFONTEXW,*LPENUMLOGFONTEXW;
|
|
typedef ENUMLOGFONTEXA ENUMLOGFONTEX;
|
|
typedef LPENUMLOGFONTEXA LPENUMLOGFONTEX;
|
|
typedef struct tagPANOSE {
|
|
BYTE bFamilyType;
|
|
BYTE bSerifStyle;
|
|
BYTE bWeight;
|
|
BYTE bProportion;
|
|
BYTE bContrast;
|
|
BYTE bStrokeVariation;
|
|
BYTE bArmStyle;
|
|
BYTE bLetterform;
|
|
BYTE bMidline;
|
|
BYTE bXHeight;
|
|
} PANOSE,*LPPANOSE;
|
|
typedef struct tagEXTLOGFONTA {
|
|
LOGFONTA elfLogFont;
|
|
BYTE elfFullName[64];
|
|
BYTE elfStyle[32];
|
|
DWORD elfVersion;
|
|
DWORD elfStyleSize;
|
|
DWORD elfMatch;
|
|
DWORD elfReserved;
|
|
BYTE elfVendorId[4];
|
|
DWORD elfCulture;
|
|
PANOSE elfPanose;
|
|
} EXTLOGFONTA,*PEXTLOGFONTA,*NPEXTLOGFONTA,*LPEXTLOGFONTA;
|
|
typedef struct tagEXTLOGFONTW {
|
|
LOGFONTW elfLogFont;
|
|
WCHAR elfFullName[64];
|
|
WCHAR elfStyle[32];
|
|
DWORD elfVersion;
|
|
DWORD elfStyleSize;
|
|
DWORD elfMatch;
|
|
DWORD elfReserved;
|
|
BYTE elfVendorId[4];
|
|
DWORD elfCulture;
|
|
PANOSE elfPanose;
|
|
} EXTLOGFONTW,*PEXTLOGFONTW,*NPEXTLOGFONTW,*LPEXTLOGFONTW;
|
|
typedef EXTLOGFONTA EXTLOGFONT;
|
|
typedef PEXTLOGFONTA PEXTLOGFONT;
|
|
typedef NPEXTLOGFONTA NPEXTLOGFONT;
|
|
typedef LPEXTLOGFONTA LPEXTLOGFONT;
|
|
typedef struct _devicemodeA {
|
|
BYTE dmDeviceName[32];
|
|
WORD dmSpecVersion;
|
|
WORD dmDriverVersion;
|
|
WORD dmSize;
|
|
WORD dmDriverExtra;
|
|
DWORD dmFields;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
short dmOrientation;
|
|
short dmPaperSize;
|
|
short dmPaperLength;
|
|
short dmPaperWidth;
|
|
short dmScale;
|
|
short dmCopies;
|
|
short dmDefaultSource;
|
|
short dmPrintQuality;
|
|
};
|
|
struct {
|
|
POINTL dmPosition;
|
|
DWORD dmDisplayOrientation;
|
|
DWORD dmDisplayFixedOutput;
|
|
};
|
|
};
|
|
short dmColor;
|
|
short dmDuplex;
|
|
short dmYResolution;
|
|
short dmTTOption;
|
|
short dmCollate;
|
|
BYTE dmFormName[32];
|
|
WORD dmLogPixels;
|
|
DWORD dmBitsPerPel;
|
|
DWORD dmPelsWidth;
|
|
DWORD dmPelsHeight;
|
|
__extension__ union {
|
|
DWORD dmDisplayFlags;
|
|
DWORD dmNup;
|
|
};
|
|
DWORD dmDisplayFrequency;
|
|
DWORD dmICMMethod;
|
|
DWORD dmICMIntent;
|
|
DWORD dmMediaType;
|
|
DWORD dmDitherType;
|
|
DWORD dmReserved1;
|
|
DWORD dmReserved2;
|
|
DWORD dmPanningWidth;
|
|
DWORD dmPanningHeight;
|
|
} DEVMODEA,*PDEVMODEA,*NPDEVMODEA,*LPDEVMODEA;
|
|
typedef struct _devicemodeW {
|
|
WCHAR dmDeviceName[32];
|
|
WORD dmSpecVersion;
|
|
WORD dmDriverVersion;
|
|
WORD dmSize;
|
|
WORD dmDriverExtra;
|
|
DWORD dmFields;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
short dmOrientation;
|
|
short dmPaperSize;
|
|
short dmPaperLength;
|
|
short dmPaperWidth;
|
|
short dmScale;
|
|
short dmCopies;
|
|
short dmDefaultSource;
|
|
short dmPrintQuality;
|
|
};
|
|
__extension__ struct {
|
|
POINTL dmPosition;
|
|
DWORD dmDisplayOrientation;
|
|
DWORD dmDisplayFixedOutput;
|
|
};
|
|
};
|
|
short dmColor;
|
|
short dmDuplex;
|
|
short dmYResolution;
|
|
short dmTTOption;
|
|
short dmCollate;
|
|
WCHAR dmFormName[32];
|
|
WORD dmLogPixels;
|
|
DWORD dmBitsPerPel;
|
|
DWORD dmPelsWidth;
|
|
DWORD dmPelsHeight;
|
|
__extension__ union {
|
|
DWORD dmDisplayFlags;
|
|
DWORD dmNup;
|
|
};
|
|
DWORD dmDisplayFrequency;
|
|
DWORD dmICMMethod;
|
|
DWORD dmICMIntent;
|
|
DWORD dmMediaType;
|
|
DWORD dmDitherType;
|
|
DWORD dmReserved1;
|
|
DWORD dmReserved2;
|
|
DWORD dmPanningWidth;
|
|
DWORD dmPanningHeight;
|
|
} DEVMODEW,*PDEVMODEW,*NPDEVMODEW,*LPDEVMODEW;
|
|
typedef DEVMODEA DEVMODE;
|
|
typedef PDEVMODEA PDEVMODE;
|
|
typedef NPDEVMODEA NPDEVMODE;
|
|
typedef LPDEVMODEA LPDEVMODE;
|
|
typedef struct _DISPLAY_DEVICEA {
|
|
DWORD cb;
|
|
CHAR DeviceName[32];
|
|
CHAR DeviceString[128];
|
|
DWORD StateFlags;
|
|
CHAR DeviceID[128];
|
|
CHAR DeviceKey[128];
|
|
} DISPLAY_DEVICEA,*PDISPLAY_DEVICEA,*LPDISPLAY_DEVICEA;
|
|
typedef struct _DISPLAY_DEVICEW {
|
|
DWORD cb;
|
|
WCHAR DeviceName[32];
|
|
WCHAR DeviceString[128];
|
|
DWORD StateFlags;
|
|
WCHAR DeviceID[128];
|
|
WCHAR DeviceKey[128];
|
|
} DISPLAY_DEVICEW,*PDISPLAY_DEVICEW,*LPDISPLAY_DEVICEW;
|
|
typedef DISPLAY_DEVICEA DISPLAY_DEVICE;
|
|
typedef PDISPLAY_DEVICEA PDISPLAY_DEVICE;
|
|
typedef LPDISPLAY_DEVICEA LPDISPLAY_DEVICE;
|
|
typedef struct _RGNDATAHEADER {
|
|
DWORD dwSize;
|
|
DWORD iType;
|
|
DWORD nCount;
|
|
DWORD nRgnSize;
|
|
RECT rcBound;
|
|
} RGNDATAHEADER,*PRGNDATAHEADER;
|
|
typedef struct _RGNDATA {
|
|
RGNDATAHEADER rdh;
|
|
char Buffer[1];
|
|
} RGNDATA,*PRGNDATA,*NPRGNDATA,*LPRGNDATA;
|
|
typedef struct _ABC {
|
|
int abcA;
|
|
UINT abcB;
|
|
int abcC;
|
|
} ABC,*PABC,*NPABC,*LPABC;
|
|
typedef struct _ABCFLOAT {
|
|
FLOAT abcfA;
|
|
FLOAT abcfB;
|
|
FLOAT abcfC;
|
|
} ABCFLOAT,*PABCFLOAT,*NPABCFLOAT,*LPABCFLOAT;
|
|
typedef struct _OUTLINETEXTMETRICA {
|
|
UINT otmSize;
|
|
TEXTMETRICA otmTextMetrics;
|
|
BYTE otmFiller;
|
|
PANOSE otmPanoseNumber;
|
|
UINT otmfsSelection;
|
|
UINT otmfsType;
|
|
int otmsCharSlopeRise;
|
|
int otmsCharSlopeRun;
|
|
int otmItalicAngle;
|
|
UINT otmEMSquare;
|
|
int otmAscent;
|
|
int otmDescent;
|
|
UINT otmLineGap;
|
|
UINT otmsCapEmHeight;
|
|
UINT otmsXHeight;
|
|
RECT otmrcFontBox;
|
|
int otmMacAscent;
|
|
int otmMacDescent;
|
|
UINT otmMacLineGap;
|
|
UINT otmusMinimumPPEM;
|
|
POINT otmptSubscriptSize;
|
|
POINT otmptSubscriptOffset;
|
|
POINT otmptSuperscriptSize;
|
|
POINT otmptSuperscriptOffset;
|
|
UINT otmsStrikeoutSize;
|
|
int otmsStrikeoutPosition;
|
|
int otmsUnderscoreSize;
|
|
int otmsUnderscorePosition;
|
|
PSTR otmpFamilyName;
|
|
PSTR otmpFaceName;
|
|
PSTR otmpStyleName;
|
|
PSTR otmpFullName;
|
|
} OUTLINETEXTMETRICA,*POUTLINETEXTMETRICA,*NPOUTLINETEXTMETRICA,*LPOUTLINETEXTMETRICA;
|
|
typedef struct _OUTLINETEXTMETRICW {
|
|
UINT otmSize;
|
|
TEXTMETRICW otmTextMetrics;
|
|
BYTE otmFiller;
|
|
PANOSE otmPanoseNumber;
|
|
UINT otmfsSelection;
|
|
UINT otmfsType;
|
|
int otmsCharSlopeRise;
|
|
int otmsCharSlopeRun;
|
|
int otmItalicAngle;
|
|
UINT otmEMSquare;
|
|
int otmAscent;
|
|
int otmDescent;
|
|
UINT otmLineGap;
|
|
UINT otmsCapEmHeight;
|
|
UINT otmsXHeight;
|
|
RECT otmrcFontBox;
|
|
int otmMacAscent;
|
|
int otmMacDescent;
|
|
UINT otmMacLineGap;
|
|
UINT otmusMinimumPPEM;
|
|
POINT otmptSubscriptSize;
|
|
POINT otmptSubscriptOffset;
|
|
POINT otmptSuperscriptSize;
|
|
POINT otmptSuperscriptOffset;
|
|
UINT otmsStrikeoutSize;
|
|
int otmsStrikeoutPosition;
|
|
int otmsUnderscoreSize;
|
|
int otmsUnderscorePosition;
|
|
PSTR otmpFamilyName;
|
|
PSTR otmpFaceName;
|
|
PSTR otmpStyleName;
|
|
PSTR otmpFullName;
|
|
} OUTLINETEXTMETRICW,*POUTLINETEXTMETRICW,*NPOUTLINETEXTMETRICW,*LPOUTLINETEXTMETRICW;
|
|
typedef OUTLINETEXTMETRICA OUTLINETEXTMETRIC;
|
|
typedef POUTLINETEXTMETRICA POUTLINETEXTMETRIC;
|
|
typedef NPOUTLINETEXTMETRICA NPOUTLINETEXTMETRIC;
|
|
typedef LPOUTLINETEXTMETRICA LPOUTLINETEXTMETRIC;
|
|
typedef struct tagPOLYTEXTA {
|
|
int x;
|
|
int y;
|
|
UINT n;
|
|
LPCSTR lpstr;
|
|
UINT uiFlags;
|
|
RECT rcl;
|
|
int *pdx;
|
|
} POLYTEXTA,*PPOLYTEXTA,*NPPOLYTEXTA,*LPPOLYTEXTA;
|
|
typedef struct tagPOLYTEXTW {
|
|
int x;
|
|
int y;
|
|
UINT n;
|
|
LPCWSTR lpstr;
|
|
UINT uiFlags;
|
|
RECT rcl;
|
|
int *pdx;
|
|
} POLYTEXTW,*PPOLYTEXTW,*NPPOLYTEXTW,*LPPOLYTEXTW;
|
|
typedef POLYTEXTA POLYTEXT;
|
|
typedef PPOLYTEXTA PPOLYTEXT;
|
|
typedef NPPOLYTEXTA NPPOLYTEXT;
|
|
typedef LPPOLYTEXTA LPPOLYTEXT;
|
|
typedef struct _FIXED {
|
|
WORD fract;
|
|
short value;
|
|
} FIXED;
|
|
typedef struct _MAT2 {
|
|
FIXED eM11;
|
|
FIXED eM12;
|
|
FIXED eM21;
|
|
FIXED eM22;
|
|
} MAT2,*LPMAT2;
|
|
typedef struct _GLYPHMETRICS {
|
|
UINT gmBlackBoxX;
|
|
UINT gmBlackBoxY;
|
|
POINT gmptGlyphOrigin;
|
|
short gmCellIncX;
|
|
short gmCellIncY;
|
|
} GLYPHMETRICS,*LPGLYPHMETRICS;
|
|
typedef struct tagPOINTFX {
|
|
FIXED x;
|
|
FIXED y;
|
|
} POINTFX,*LPPOINTFX;
|
|
typedef struct tagTTPOLYCURVE {
|
|
WORD wType;
|
|
WORD cpfx;
|
|
POINTFX apfx[1];
|
|
} TTPOLYCURVE,*LPTTPOLYCURVE;
|
|
typedef struct tagTTPOLYGONHEADER {
|
|
DWORD cb;
|
|
DWORD dwType;
|
|
POINTFX pfxStart;
|
|
} TTPOLYGONHEADER,*LPTTPOLYGONHEADER;
|
|
typedef struct tagGCP_RESULTSA {
|
|
DWORD lStructSize;
|
|
LPSTR lpOutString;
|
|
UINT *lpOrder;
|
|
int *lpDx;
|
|
int *lpCaretPos;
|
|
LPSTR lpClass;
|
|
LPWSTR lpGlyphs;
|
|
UINT nGlyphs;
|
|
int nMaxFit;
|
|
} GCP_RESULTSA,*LPGCP_RESULTSA;
|
|
typedef struct tagGCP_RESULTSW {
|
|
DWORD lStructSize;
|
|
LPWSTR lpOutString;
|
|
UINT *lpOrder;
|
|
int *lpDx;
|
|
int *lpCaretPos;
|
|
LPSTR lpClass;
|
|
LPWSTR lpGlyphs;
|
|
UINT nGlyphs;
|
|
int nMaxFit;
|
|
} GCP_RESULTSW,*LPGCP_RESULTSW;
|
|
typedef GCP_RESULTSA GCP_RESULTS;
|
|
typedef LPGCP_RESULTSA LPGCP_RESULTS;
|
|
typedef struct _RASTERIZER_STATUS {
|
|
short nSize;
|
|
short wFlags;
|
|
short nLanguageID;
|
|
} RASTERIZER_STATUS,*LPRASTERIZER_STATUS;
|
|
typedef struct tagPIXELFORMATDESCRIPTOR {
|
|
WORD nSize;
|
|
WORD nVersion;
|
|
DWORD dwFlags;
|
|
BYTE iPixelType;
|
|
BYTE cColorBits;
|
|
BYTE cRedBits;
|
|
BYTE cRedShift;
|
|
BYTE cGreenBits;
|
|
BYTE cGreenShift;
|
|
BYTE cBlueBits;
|
|
BYTE cBlueShift;
|
|
BYTE cAlphaBits;
|
|
BYTE cAlphaShift;
|
|
BYTE cAccumBits;
|
|
BYTE cAccumRedBits;
|
|
BYTE cAccumGreenBits;
|
|
BYTE cAccumBlueBits;
|
|
BYTE cAccumAlphaBits;
|
|
BYTE cDepthBits;
|
|
BYTE cStencilBits;
|
|
BYTE cAuxBuffers;
|
|
BYTE iLayerType;
|
|
BYTE bReserved;
|
|
DWORD dwLayerMask;
|
|
DWORD dwVisibleMask;
|
|
DWORD dwDamageMask;
|
|
} PIXELFORMATDESCRIPTOR,*PPIXELFORMATDESCRIPTOR,*LPPIXELFORMATDESCRIPTOR;
|
|
typedef int ( *OLDFONTENUMPROCA)(const LOGFONTA *,const TEXTMETRICA *,DWORD,LPARAM);
|
|
typedef int ( *OLDFONTENUMPROCW)(const LOGFONTW *,const TEXTMETRICW *,DWORD,LPARAM);
|
|
typedef OLDFONTENUMPROCA FONTENUMPROCA;
|
|
typedef OLDFONTENUMPROCW FONTENUMPROCW;
|
|
typedef FONTENUMPROCA FONTENUMPROC;
|
|
typedef int ( *GOBJENUMPROC)(LPVOID,LPARAM);
|
|
typedef void ( *LINEDDAPROC)(int,int,LPARAM);
|
|
__attribute__((dllimport)) int AddFontResourceA(LPCSTR);
|
|
__attribute__((dllimport)) int AddFontResourceW(LPCWSTR);
|
|
__attribute__((dllimport)) WINBOOL AnimatePalette(HPALETTE hPal,UINT iStartIndex,UINT cEntries,const PALETTEENTRY *ppe);
|
|
__attribute__((dllimport)) WINBOOL Arc(HDC hdc,int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
|
|
__attribute__((dllimport)) WINBOOL BitBlt(HDC hdc,int x,int y,int cx,int cy,HDC hdcSrc,int x1,int y1,DWORD rop);
|
|
__attribute__((dllimport)) WINBOOL CancelDC(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL Chord(HDC hdc,int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
|
|
__attribute__((dllimport)) int ChoosePixelFormat(HDC hdc,const PIXELFORMATDESCRIPTOR *ppfd);
|
|
__attribute__((dllimport)) HMETAFILE CloseMetaFile(HDC hdc);
|
|
__attribute__((dllimport)) int CombineRgn(HRGN hrgnDst,HRGN hrgnSrc1,HRGN hrgnSrc2,int iMode);
|
|
__attribute__((dllimport)) HMETAFILE CopyMetaFileA(HMETAFILE,LPCSTR);
|
|
__attribute__((dllimport)) HMETAFILE CopyMetaFileW(HMETAFILE,LPCWSTR);
|
|
__attribute__((dllimport)) HBITMAP CreateBitmap(int nWidth,int nHeight,UINT nPlanes,UINT nBitCount,const void *lpBits);
|
|
__attribute__((dllimport)) HBITMAP CreateBitmapIndirect(const BITMAP *pbm);
|
|
__attribute__((dllimport)) HBRUSH CreateBrushIndirect(const LOGBRUSH *plbrush);
|
|
__attribute__((dllimport)) HBITMAP CreateCompatibleBitmap(HDC hdc,int cx,int cy);
|
|
__attribute__((dllimport)) HBITMAP CreateDiscardableBitmap(HDC hdc,int cx,int cy);
|
|
__attribute__((dllimport)) HDC CreateCompatibleDC(HDC hdc);
|
|
__attribute__((dllimport)) HDC CreateDCA(LPCSTR pwszDriver,LPCSTR pwszDevice,LPCSTR pszPort,const DEVMODEA *pdm);
|
|
__attribute__((dllimport)) HDC CreateDCW(LPCWSTR pwszDriver,LPCWSTR pwszDevice,LPCWSTR pszPort,const DEVMODEW *pdm);
|
|
__attribute__((dllimport)) HBITMAP CreateDIBitmap(HDC hdc,const BITMAPINFOHEADER *pbmih,DWORD flInit,const void *pjBits,const BITMAPINFO *pbmi,UINT iUsage);
|
|
__attribute__((dllimport)) HBRUSH CreateDIBPatternBrush(HGLOBAL h,UINT iUsage);
|
|
__attribute__((dllimport)) HBRUSH CreateDIBPatternBrushPt(const void *lpPackedDIB,UINT iUsage);
|
|
__attribute__((dllimport)) HRGN CreateEllipticRgn(int x1,int y1,int x2,int y2);
|
|
__attribute__((dllimport)) HRGN CreateEllipticRgnIndirect(const RECT *lprect);
|
|
__attribute__((dllimport)) HFONT CreateFontIndirectA(const LOGFONTA *lplf);
|
|
__attribute__((dllimport)) HFONT CreateFontIndirectW(const LOGFONTW *lplf);
|
|
__attribute__((dllimport)) HFONT CreateFontA(int cHeight,int cWidth,int cEscapement,int cOrientation,int cWeight,DWORD bItalic,DWORD bUnderline,DWORD bStrikeOut,DWORD iCharSet,DWORD iOutPrecision,DWORD iClipPrecision,DWORD iQuality,DWORD iPitchAndFamily,LPCSTR pszFaceName);
|
|
__attribute__((dllimport)) HFONT CreateFontW(int cHeight,int cWidth,int cEscapement,int cOrientation,int cWeight,DWORD bItalic,DWORD bUnderline,DWORD bStrikeOut,DWORD iCharSet,DWORD iOutPrecision,DWORD iClipPrecision,DWORD iQuality,DWORD iPitchAndFamily,LPCWSTR pszFaceName);
|
|
__attribute__((dllimport)) HBRUSH CreateHatchBrush(int iHatch,COLORREF color);
|
|
__attribute__((dllimport)) HDC CreateICA(LPCSTR pszDriver,LPCSTR pszDevice,LPCSTR pszPort,const DEVMODEA *pdm);
|
|
__attribute__((dllimport)) HDC CreateICW(LPCWSTR pszDriver,LPCWSTR pszDevice,LPCWSTR pszPort,const DEVMODEW *pdm);
|
|
__attribute__((dllimport)) HDC CreateMetaFileA(LPCSTR pszFile);
|
|
__attribute__((dllimport)) HDC CreateMetaFileW(LPCWSTR pszFile);
|
|
__attribute__((dllimport)) HPALETTE CreatePalette(const LOGPALETTE *plpal);
|
|
__attribute__((dllimport)) HPEN CreatePen(int iStyle,int cWidth,COLORREF color);
|
|
__attribute__((dllimport)) HPEN CreatePenIndirect(const LOGPEN *plpen);
|
|
__attribute__((dllimport)) HRGN CreatePolyPolygonRgn(const POINT *pptl,const INT *pc,int cPoly,int iMode);
|
|
__attribute__((dllimport)) HBRUSH CreatePatternBrush(HBITMAP hbm);
|
|
__attribute__((dllimport)) HRGN CreateRectRgn(int x1,int y1,int x2,int y2);
|
|
__attribute__((dllimport)) HRGN CreateRectRgnIndirect(const RECT *lprect);
|
|
__attribute__((dllimport)) HRGN CreateRoundRectRgn(int x1,int y1,int x2,int y2,int w,int h);
|
|
__attribute__((dllimport)) WINBOOL CreateScalableFontResourceA(DWORD fdwHidden,LPCSTR lpszFont,LPCSTR lpszFile,LPCSTR lpszPath);
|
|
__attribute__((dllimport)) WINBOOL CreateScalableFontResourceW(DWORD fdwHidden,LPCWSTR lpszFont,LPCWSTR lpszFile,LPCWSTR lpszPath);
|
|
__attribute__((dllimport)) HBRUSH CreateSolidBrush(COLORREF color);
|
|
__attribute__((dllimport)) WINBOOL DeleteDC(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL DeleteMetaFile(HMETAFILE hmf);
|
|
__attribute__((dllimport)) WINBOOL DeleteObject(HGDIOBJ ho);
|
|
__attribute__((dllimport)) int DescribePixelFormat(HDC hdc,int iPixelFormat,UINT nBytes,LPPIXELFORMATDESCRIPTOR ppfd);
|
|
typedef UINT ( *LPFNDEVMODE)(HWND,HMODULE,LPDEVMODE,LPSTR,LPSTR,LPDEVMODE,LPSTR,UINT);
|
|
typedef DWORD ( *LPFNDEVCAPS)(LPSTR,LPSTR,UINT,LPSTR,LPDEVMODE);
|
|
__attribute__((dllimport)) int DeviceCapabilitiesA(LPCSTR pDevice,LPCSTR pPort,WORD fwCapability,LPSTR pOutput,const DEVMODEA *pDevMode);
|
|
__attribute__((dllimport)) int DeviceCapabilitiesW(LPCWSTR pDevice,LPCWSTR pPort,WORD fwCapability,LPWSTR pOutput,const DEVMODEW *pDevMode);
|
|
__attribute__((dllimport)) int DrawEscape(HDC hdc,int iEscape,int cjIn,LPCSTR lpIn);
|
|
__attribute__((dllimport)) WINBOOL Ellipse(HDC hdc,int left,int top,int right,int bottom);
|
|
__attribute__((dllimport)) int EnumFontFamiliesExA(HDC hdc,LPLOGFONTA lpLogfont,FONTENUMPROCA lpProc,LPARAM lParam,DWORD dwFlags);
|
|
__attribute__((dllimport)) int EnumFontFamiliesExW(HDC hdc,LPLOGFONTW lpLogfont,FONTENUMPROCW lpProc,LPARAM lParam,DWORD dwFlags);
|
|
__attribute__((dllimport)) int EnumFontFamiliesA(HDC hdc,LPCSTR lpLogfont,FONTENUMPROCA lpProc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumFontFamiliesW(HDC hdc,LPCWSTR lpLogfont,FONTENUMPROCW lpProc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumFontsA(HDC hdc,LPCSTR lpLogfont,FONTENUMPROCA lpProc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumFontsW(HDC hdc,LPCWSTR lpLogfont,FONTENUMPROCW lpProc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumObjects(HDC hdc,int nType,GOBJENUMPROC lpFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL EqualRgn(HRGN hrgn1,HRGN hrgn2);
|
|
__attribute__((dllimport)) int Escape(HDC hdc,int iEscape,int cjIn,LPCSTR pvIn,LPVOID pvOut);
|
|
__attribute__((dllimport)) int ExtEscape(HDC hdc,int iEscape,int cjInput,LPCSTR lpInData,int cjOutput,LPSTR lpOutData);
|
|
__attribute__((dllimport)) int ExcludeClipRect(HDC hdc,int left,int top,int right,int bottom);
|
|
__attribute__((dllimport)) HRGN ExtCreateRegion(const XFORM *lpx,DWORD nCount,const RGNDATA *lpData);
|
|
__attribute__((dllimport)) WINBOOL ExtFloodFill(HDC hdc,int x,int y,COLORREF color,UINT type);
|
|
__attribute__((dllimport)) WINBOOL FillRgn(HDC hdc,HRGN hrgn,HBRUSH hbr);
|
|
__attribute__((dllimport)) WINBOOL FloodFill(HDC hdc,int x,int y,COLORREF color);
|
|
__attribute__((dllimport)) WINBOOL FrameRgn(HDC hdc,HRGN hrgn,HBRUSH hbr,int w,int h);
|
|
__attribute__((dllimport)) int GetROP2(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL GetAspectRatioFilterEx(HDC hdc,LPSIZE lpsize);
|
|
__attribute__((dllimport)) COLORREF GetBkColor(HDC hdc);
|
|
__attribute__((dllimport)) COLORREF GetDCBrushColor(HDC hdc);
|
|
__attribute__((dllimport)) COLORREF GetDCPenColor(HDC hdc);
|
|
__attribute__((dllimport)) int GetBkMode(HDC hdc);
|
|
__attribute__((dllimport)) LONG GetBitmapBits(HBITMAP hbit,LONG cb,LPVOID lpvBits);
|
|
__attribute__((dllimport)) WINBOOL GetBitmapDimensionEx(HBITMAP hbit,LPSIZE lpsize);
|
|
__attribute__((dllimport)) UINT GetBoundsRect(HDC hdc,LPRECT lprect,UINT flags);
|
|
__attribute__((dllimport)) WINBOOL GetBrushOrgEx(HDC hdc,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidthA(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidthW(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidth32A(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidth32W(HDC hdc,UINT iFirst,UINT iLast,LPINT lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidthFloatA(HDC hdc,UINT iFirst,UINT iLast,PFLOAT lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidthFloatW(HDC hdc,UINT iFirst,UINT iLast,PFLOAT lpBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetCharABCWidthsA(HDC hdc,UINT wFirst,UINT wLast,LPABC lpABC);
|
|
__attribute__((dllimport)) WINBOOL GetCharABCWidthsW(HDC hdc,UINT wFirst,UINT wLast,LPABC lpABC);
|
|
__attribute__((dllimport)) WINBOOL GetCharABCWidthsFloatA(HDC hdc,UINT iFirst,UINT iLast,LPABCFLOAT lpABC);
|
|
__attribute__((dllimport)) WINBOOL GetCharABCWidthsFloatW(HDC hdc,UINT iFirst,UINT iLast,LPABCFLOAT lpABC);
|
|
__attribute__((dllimport)) int GetClipBox(HDC hdc,LPRECT lprect);
|
|
__attribute__((dllimport)) int GetClipRgn(HDC hdc,HRGN hrgn);
|
|
__attribute__((dllimport)) int GetMetaRgn(HDC hdc,HRGN hrgn);
|
|
__attribute__((dllimport)) HGDIOBJ GetCurrentObject(HDC hdc,UINT type);
|
|
__attribute__((dllimport)) WINBOOL GetCurrentPositionEx(HDC hdc,LPPOINT lppt);
|
|
__attribute__((dllimport)) int GetDeviceCaps(HDC hdc,int index);
|
|
__attribute__((dllimport)) int GetDIBits(HDC hdc,HBITMAP hbm,UINT start,UINT cLines,LPVOID lpvBits,LPBITMAPINFO lpbmi,UINT usage);
|
|
__attribute__((dllimport)) DWORD GetFontData (HDC hdc,DWORD dwTable,DWORD dwOffset,PVOID pvBuffer,DWORD cjBuffer);
|
|
__attribute__((dllimport)) DWORD GetGlyphOutlineA(HDC hdc,UINT uChar,UINT fuFormat,LPGLYPHMETRICS lpgm,DWORD cjBuffer,LPVOID pvBuffer,const MAT2 *lpmat2);
|
|
__attribute__((dllimport)) DWORD GetGlyphOutlineW(HDC hdc,UINT uChar,UINT fuFormat,LPGLYPHMETRICS lpgm,DWORD cjBuffer,LPVOID pvBuffer,const MAT2 *lpmat2);
|
|
__attribute__((dllimport)) int GetGraphicsMode(HDC hdc);
|
|
__attribute__((dllimport)) int GetMapMode(HDC hdc);
|
|
__attribute__((dllimport)) UINT GetMetaFileBitsEx(HMETAFILE hMF,UINT cbBuffer,LPVOID lpData);
|
|
__attribute__((dllimport)) HMETAFILE GetMetaFileA(LPCSTR lpName);
|
|
__attribute__((dllimport)) HMETAFILE GetMetaFileW(LPCWSTR lpName);
|
|
__attribute__((dllimport)) COLORREF GetNearestColor(HDC hdc,COLORREF color);
|
|
__attribute__((dllimport)) UINT GetNearestPaletteIndex(HPALETTE h,COLORREF color);
|
|
__attribute__((dllimport)) DWORD GetObjectType(HGDIOBJ h);
|
|
__attribute__((dllimport)) UINT GetOutlineTextMetricsA(HDC hdc,UINT cjCopy,LPOUTLINETEXTMETRICA potm);
|
|
__attribute__((dllimport)) UINT GetOutlineTextMetricsW(HDC hdc,UINT cjCopy,LPOUTLINETEXTMETRICW potm);
|
|
__attribute__((dllimport)) UINT GetPaletteEntries(HPALETTE hpal,UINT iStart,UINT cEntries,LPPALETTEENTRY pPalEntries);
|
|
__attribute__((dllimport)) COLORREF GetPixel(HDC hdc,int x,int y);
|
|
__attribute__((dllimport)) int GetPixelFormat(HDC hdc);
|
|
__attribute__((dllimport)) int GetPolyFillMode(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL GetRasterizerCaps(LPRASTERIZER_STATUS lpraststat,UINT cjBytes);
|
|
__attribute__((dllimport)) int GetRandomRgn (HDC hdc,HRGN hrgn,INT i);
|
|
__attribute__((dllimport)) DWORD GetRegionData(HRGN hrgn,DWORD nCount,LPRGNDATA lpRgnData);
|
|
__attribute__((dllimport)) int GetRgnBox(HRGN hrgn,LPRECT lprc);
|
|
__attribute__((dllimport)) HGDIOBJ GetStockObject(int i);
|
|
__attribute__((dllimport)) int GetStretchBltMode(HDC hdc);
|
|
__attribute__((dllimport)) UINT GetSystemPaletteEntries(HDC hdc,UINT iStart,UINT cEntries,LPPALETTEENTRY pPalEntries);
|
|
__attribute__((dllimport)) UINT GetSystemPaletteUse(HDC hdc);
|
|
__attribute__((dllimport)) int GetTextCharacterExtra(HDC hdc);
|
|
__attribute__((dllimport)) UINT GetTextAlign(HDC hdc);
|
|
__attribute__((dllimport)) COLORREF GetTextColor(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentPointA(HDC hdc,LPCSTR lpString,int c,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentPointW(HDC hdc,LPCWSTR lpString,int c,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentPoint32A(HDC hdc,LPCSTR lpString,int c,LPSIZE psizl);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentPoint32W(HDC hdc,LPCWSTR lpString,int c,LPSIZE psizl);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentExPointA(HDC hdc,LPCSTR lpszString,int cchString,int nMaxExtent,LPINT lpnFit,LPINT lpnDx,LPSIZE lpSize);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentExPointW(HDC hdc,LPCWSTR lpszString,int cchString,int nMaxExtent,LPINT lpnFit,LPINT lpnDx,LPSIZE lpSize);
|
|
__attribute__((dllimport)) int GetTextCharset(HDC hdc);
|
|
__attribute__((dllimport)) int GetTextCharsetInfo(HDC hdc,LPFONTSIGNATURE lpSig,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL TranslateCharsetInfo(DWORD *lpSrc,LPCHARSETINFO lpCs,DWORD dwFlags);
|
|
__attribute__((dllimport)) DWORD GetFontLanguageInfo(HDC hdc);
|
|
__attribute__((dllimport)) DWORD GetCharacterPlacementA(HDC hdc,LPCSTR lpString,int nCount,int nMexExtent,LPGCP_RESULTSA lpResults,DWORD dwFlags);
|
|
__attribute__((dllimport)) DWORD GetCharacterPlacementW(HDC hdc,LPCWSTR lpString,int nCount,int nMexExtent,LPGCP_RESULTSW lpResults,DWORD dwFlags);
|
|
typedef struct tagWCRANGE {
|
|
WCHAR wcLow;
|
|
USHORT cGlyphs;
|
|
} WCRANGE,*PWCRANGE,*LPWCRANGE;
|
|
typedef struct tagGLYPHSET {
|
|
DWORD cbThis;
|
|
DWORD flAccel;
|
|
DWORD cGlyphsSupported;
|
|
DWORD cRanges;
|
|
WCRANGE ranges[1];
|
|
} GLYPHSET,*PGLYPHSET,*LPGLYPHSET;
|
|
__attribute__((dllimport)) DWORD GetFontUnicodeRanges(HDC hdc,LPGLYPHSET lpgs);
|
|
__attribute__((dllimport)) DWORD GetGlyphIndicesA(HDC hdc,LPCSTR lpstr,int c,LPWORD pgi,DWORD fl);
|
|
__attribute__((dllimport)) DWORD GetGlyphIndicesW(HDC hdc,LPCWSTR lpstr,int c,LPWORD pgi,DWORD fl);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentPointI(HDC hdc,LPWORD pgiIn,int cgi,LPSIZE psize);
|
|
__attribute__((dllimport)) WINBOOL GetTextExtentExPointI (HDC hdc,LPWORD lpwszString,int cwchString,int nMaxExtent,LPINT lpnFit,LPINT lpnDx,LPSIZE lpSize);
|
|
__attribute__((dllimport)) WINBOOL GetCharWidthI(HDC hdc,UINT giFirst,UINT cgi,LPWORD pgi,LPINT piWidths);
|
|
__attribute__((dllimport)) WINBOOL GetCharABCWidthsI(HDC hdc,UINT giFirst,UINT cgi,LPWORD pgi,LPABC pabc);
|
|
typedef struct tagDESIGNVECTOR {
|
|
DWORD dvReserved;
|
|
DWORD dvNumAxes;
|
|
LONG dvValues[16];
|
|
} DESIGNVECTOR,*PDESIGNVECTOR,*LPDESIGNVECTOR;
|
|
__attribute__((dllimport)) int AddFontResourceExA(LPCSTR name,DWORD fl,PVOID res);
|
|
__attribute__((dllimport)) int AddFontResourceExW(LPCWSTR name,DWORD fl,PVOID res);
|
|
__attribute__((dllimport)) WINBOOL RemoveFontResourceExA(LPCSTR name,DWORD fl,PVOID pdv);
|
|
__attribute__((dllimport)) WINBOOL RemoveFontResourceExW(LPCWSTR name,DWORD fl,PVOID pdv);
|
|
__attribute__((dllimport)) HANDLE AddFontMemResourceEx(PVOID pFileView,DWORD cjSize,PVOID pvResrved,DWORD *pNumFonts);
|
|
__attribute__((dllimport)) WINBOOL RemoveFontMemResourceEx(HANDLE h);
|
|
typedef struct tagAXISINFOA {
|
|
LONG axMinValue;
|
|
LONG axMaxValue;
|
|
BYTE axAxisName[16];
|
|
} AXISINFOA,*PAXISINFOA,*LPAXISINFOA;
|
|
typedef struct tagAXISINFOW {
|
|
LONG axMinValue;
|
|
LONG axMaxValue;
|
|
WCHAR axAxisName[16];
|
|
} AXISINFOW,*PAXISINFOW,*LPAXISINFOW;
|
|
typedef AXISINFOA AXISINFO;
|
|
typedef PAXISINFOA PAXISINFO;
|
|
typedef LPAXISINFOA LPAXISINFO;
|
|
typedef struct tagAXESLISTA {
|
|
DWORD axlReserved;
|
|
DWORD axlNumAxes;
|
|
AXISINFOA axlAxisInfo[16];
|
|
} AXESLISTA,*PAXESLISTA,*LPAXESLISTA;
|
|
typedef struct tagAXESLISTW {
|
|
DWORD axlReserved;
|
|
DWORD axlNumAxes;
|
|
AXISINFOW axlAxisInfo[16];
|
|
} AXESLISTW,*PAXESLISTW,*LPAXESLISTW;
|
|
typedef AXESLISTA AXESLIST;
|
|
typedef PAXESLISTA PAXESLIST;
|
|
typedef LPAXESLISTA LPAXESLIST;
|
|
typedef struct tagENUMLOGFONTEXDVA {
|
|
ENUMLOGFONTEXA elfEnumLogfontEx;
|
|
DESIGNVECTOR elfDesignVector;
|
|
} ENUMLOGFONTEXDVA,*PENUMLOGFONTEXDVA,*LPENUMLOGFONTEXDVA;
|
|
typedef struct tagENUMLOGFONTEXDVW {
|
|
ENUMLOGFONTEXW elfEnumLogfontEx;
|
|
DESIGNVECTOR elfDesignVector;
|
|
} ENUMLOGFONTEXDVW,*PENUMLOGFONTEXDVW,*LPENUMLOGFONTEXDVW;
|
|
typedef ENUMLOGFONTEXDVA ENUMLOGFONTEXDV;
|
|
typedef PENUMLOGFONTEXDVA PENUMLOGFONTEXDV;
|
|
typedef LPENUMLOGFONTEXDVA LPENUMLOGFONTEXDV;
|
|
__attribute__((dllimport)) HFONT CreateFontIndirectExA(const ENUMLOGFONTEXDVA *);
|
|
__attribute__((dllimport)) HFONT CreateFontIndirectExW(const ENUMLOGFONTEXDVW *);
|
|
typedef struct tagENUMTEXTMETRICA {
|
|
NEWTEXTMETRICEXA etmNewTextMetricEx;
|
|
AXESLISTA etmAxesList;
|
|
} ENUMTEXTMETRICA,*PENUMTEXTMETRICA,*LPENUMTEXTMETRICA;
|
|
typedef struct tagENUMTEXTMETRICW
|
|
{
|
|
NEWTEXTMETRICEXW etmNewTextMetricEx;
|
|
AXESLISTW etmAxesList;
|
|
} ENUMTEXTMETRICW,*PENUMTEXTMETRICW,*LPENUMTEXTMETRICW;
|
|
typedef ENUMTEXTMETRICA ENUMTEXTMETRIC;
|
|
typedef PENUMTEXTMETRICA PENUMTEXTMETRIC;
|
|
typedef LPENUMTEXTMETRICA LPENUMTEXTMETRIC;
|
|
__attribute__((dllimport)) WINBOOL GetViewportExtEx(HDC hdc,LPSIZE lpsize);
|
|
__attribute__((dllimport)) WINBOOL GetViewportOrgEx(HDC hdc,LPPOINT lppoint);
|
|
__attribute__((dllimport)) WINBOOL GetWindowExtEx(HDC hdc,LPSIZE lpsize);
|
|
__attribute__((dllimport)) WINBOOL GetWindowOrgEx(HDC hdc,LPPOINT lppoint);
|
|
__attribute__((dllimport)) int IntersectClipRect(HDC hdc,int left,int top,int right,int bottom);
|
|
__attribute__((dllimport)) WINBOOL InvertRgn(HDC hdc,HRGN hrgn);
|
|
__attribute__((dllimport)) WINBOOL LineDDA(int xStart,int yStart,int xEnd,int yEnd,LINEDDAPROC lpProc,LPARAM data);
|
|
__attribute__((dllimport)) WINBOOL LineTo(HDC hdc,int x,int y);
|
|
__attribute__((dllimport)) WINBOOL MaskBlt(HDC hdcDest,int xDest,int yDest,int width,int height,HDC hdcSrc,int xSrc,int ySrc,HBITMAP hbmMask,int xMask,int yMask,DWORD rop);
|
|
__attribute__((dllimport)) WINBOOL PlgBlt(HDC hdcDest,const POINT *lpPoint,HDC hdcSrc,int xSrc,int ySrc,int width,int height,HBITMAP hbmMask,int xMask,int yMask);
|
|
__attribute__((dllimport)) int OffsetClipRgn(HDC hdc,int x,int y);
|
|
__attribute__((dllimport)) int OffsetRgn(HRGN hrgn,int x,int y);
|
|
__attribute__((dllimport)) WINBOOL PatBlt(HDC hdc,int x,int y,int w,int h,DWORD rop);
|
|
__attribute__((dllimport)) WINBOOL Pie(HDC hdc,int left,int top,int right,int bottom,int xr1,int yr1,int xr2,int yr2);
|
|
__attribute__((dllimport)) WINBOOL PlayMetaFile(HDC hdc,HMETAFILE hmf);
|
|
__attribute__((dllimport)) WINBOOL PaintRgn(HDC hdc,HRGN hrgn);
|
|
__attribute__((dllimport)) WINBOOL PolyPolygon(HDC hdc,const POINT *apt,const INT *asz,int csz);
|
|
__attribute__((dllimport)) WINBOOL PtInRegion(HRGN hrgn,int x,int y);
|
|
__attribute__((dllimport)) WINBOOL PtVisible(HDC hdc,int x,int y);
|
|
__attribute__((dllimport)) WINBOOL RectInRegion(HRGN hrgn,const RECT *lprect);
|
|
__attribute__((dllimport)) WINBOOL RectVisible(HDC hdc,const RECT *lprect);
|
|
__attribute__((dllimport)) WINBOOL Rectangle(HDC hdc,int left,int top,int right,int bottom);
|
|
__attribute__((dllimport)) WINBOOL RestoreDC(HDC hdc,int nSavedDC);
|
|
__attribute__((dllimport)) HDC ResetDCA(HDC hdc,const DEVMODEA *lpdm);
|
|
__attribute__((dllimport)) HDC ResetDCW(HDC hdc,const DEVMODEW *lpdm);
|
|
__attribute__((dllimport)) UINT RealizePalette(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL RemoveFontResourceA(LPCSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL RemoveFontResourceW(LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL RoundRect(HDC hdc,int left,int top,int right,int bottom,int width,int height);
|
|
__attribute__((dllimport)) WINBOOL ResizePalette(HPALETTE hpal,UINT n);
|
|
__attribute__((dllimport)) int SaveDC(HDC hdc);
|
|
__attribute__((dllimport)) int SelectClipRgn(HDC hdc,HRGN hrgn);
|
|
__attribute__((dllimport)) int ExtSelectClipRgn(HDC hdc,HRGN hrgn,int mode);
|
|
__attribute__((dllimport)) int SetMetaRgn(HDC hdc);
|
|
__attribute__((dllimport)) HGDIOBJ SelectObject(HDC hdc,HGDIOBJ h);
|
|
__attribute__((dllimport)) HPALETTE SelectPalette(HDC hdc,HPALETTE hPal,WINBOOL bForceBkgd);
|
|
__attribute__((dllimport)) COLORREF SetBkColor(HDC hdc,COLORREF color);
|
|
__attribute__((dllimport)) COLORREF SetDCBrushColor(HDC hdc,COLORREF color);
|
|
__attribute__((dllimport)) COLORREF SetDCPenColor(HDC hdc,COLORREF color);
|
|
__attribute__((dllimport)) int SetBkMode(HDC hdc,int mode);
|
|
__attribute__((dllimport)) LONG SetBitmapBits(HBITMAP hbm,DWORD cb,const void *pvBits);
|
|
__attribute__((dllimport)) UINT SetBoundsRect(HDC hdc,const RECT *lprect,UINT flags);
|
|
__attribute__((dllimport)) int SetDIBits(HDC hdc,HBITMAP hbm,UINT start,UINT cLines,const void *lpBits,const BITMAPINFO *lpbmi,UINT ColorUse);
|
|
__attribute__((dllimport)) int SetDIBitsToDevice(HDC hdc,int xDest,int yDest,DWORD w,DWORD h,int xSrc,int ySrc,UINT StartScan,UINT cLines,const void *lpvBits,const BITMAPINFO *lpbmi,UINT ColorUse);
|
|
__attribute__((dllimport)) DWORD SetMapperFlags(HDC hdc,DWORD flags);
|
|
__attribute__((dllimport)) int SetGraphicsMode(HDC hdc,int iMode);
|
|
__attribute__((dllimport)) int SetMapMode(HDC hdc,int iMode);
|
|
__attribute__((dllimport)) DWORD SetLayout(HDC hdc,DWORD l);
|
|
__attribute__((dllimport)) DWORD GetLayout(HDC hdc);
|
|
__attribute__((dllimport)) HMETAFILE SetMetaFileBitsEx(UINT cbBuffer,const BYTE *lpData);
|
|
__attribute__((dllimport)) UINT SetPaletteEntries(HPALETTE hpal,UINT iStart,UINT cEntries,const PALETTEENTRY *pPalEntries);
|
|
__attribute__((dllimport)) COLORREF SetPixel(HDC hdc,int x,int y,COLORREF color);
|
|
__attribute__((dllimport)) WINBOOL SetPixelV(HDC hdc,int x,int y,COLORREF color);
|
|
__attribute__((dllimport)) WINBOOL SetPixelFormat(HDC hdc,int format,const PIXELFORMATDESCRIPTOR *ppfd);
|
|
__attribute__((dllimport)) int SetPolyFillMode(HDC hdc,int mode);
|
|
__attribute__((dllimport)) WINBOOL StretchBlt(HDC hdcDest,int xDest,int yDest,int wDest,int hDest,HDC hdcSrc,int xSrc,int ySrc,int wSrc,int hSrc,DWORD rop);
|
|
__attribute__((dllimport)) WINBOOL SetRectRgn(HRGN hrgn,int left,int top,int right,int bottom);
|
|
__attribute__((dllimport)) int StretchDIBits(HDC hdc,int xDest,int yDest,int DestWidth,int DestHeight,int xSrc,int ySrc,int SrcWidth,int SrcHeight,const void *lpBits,const BITMAPINFO *lpbmi,UINT iUsage,DWORD rop);
|
|
__attribute__((dllimport)) int SetROP2(HDC hdc,int rop2);
|
|
__attribute__((dllimport)) int SetStretchBltMode(HDC hdc,int mode);
|
|
__attribute__((dllimport)) UINT SetSystemPaletteUse(HDC hdc,UINT use);
|
|
__attribute__((dllimport)) int SetTextCharacterExtra(HDC hdc,int extra);
|
|
__attribute__((dllimport)) COLORREF SetTextColor(HDC hdc,COLORREF color);
|
|
__attribute__((dllimport)) UINT SetTextAlign(HDC hdc,UINT align);
|
|
__attribute__((dllimport)) WINBOOL SetTextJustification(HDC hdc,int extra,int count);
|
|
__attribute__((dllimport)) WINBOOL UpdateColors(HDC hdc);
|
|
typedef USHORT COLOR16;
|
|
typedef struct _TRIVERTEX {
|
|
LONG x;
|
|
LONG y;
|
|
COLOR16 Red;
|
|
COLOR16 Green;
|
|
COLOR16 Blue;
|
|
COLOR16 Alpha;
|
|
} TRIVERTEX,*PTRIVERTEX,*LPTRIVERTEX;
|
|
typedef struct _GRADIENT_TRIANGLE {
|
|
ULONG Vertex1;
|
|
ULONG Vertex2;
|
|
ULONG Vertex3;
|
|
} GRADIENT_TRIANGLE,*PGRADIENT_TRIANGLE,*LPGRADIENT_TRIANGLE;
|
|
typedef struct _GRADIENT_RECT {
|
|
ULONG UpperLeft;
|
|
ULONG LowerRight;
|
|
} GRADIENT_RECT,*PGRADIENT_RECT,*LPGRADIENT_RECT;
|
|
typedef struct _BLENDFUNCTION {
|
|
BYTE BlendOp;
|
|
BYTE BlendFlags;
|
|
BYTE SourceConstantAlpha;
|
|
BYTE AlphaFormat;
|
|
} BLENDFUNCTION,*PBLENDFUNCTION;
|
|
__attribute__((dllimport)) WINBOOL AlphaBlend(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,BLENDFUNCTION ftn);
|
|
__attribute__((dllimport)) WINBOOL GdiAlphaBlend(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,BLENDFUNCTION ftn);
|
|
__attribute__((dllimport)) WINBOOL TransparentBlt(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,UINT crTransparent);
|
|
__attribute__((dllimport)) WINBOOL GdiTransparentBlt(HDC hdcDest,int xoriginDest,int yoriginDest,int wDest,int hDest,HDC hdcSrc,int xoriginSrc,int yoriginSrc,int wSrc,int hSrc,UINT crTransparent);
|
|
__attribute__((dllimport)) WINBOOL GradientFill(HDC hdc,PTRIVERTEX pVertex,ULONG nVertex,PVOID pMesh,ULONG nMesh,ULONG ulMode);
|
|
__attribute__((dllimport)) WINBOOL GdiGradientFill(HDC hdc,PTRIVERTEX pVertex,ULONG nVertex,PVOID pMesh,ULONG nMesh,ULONG ulMode);
|
|
__attribute__((dllimport)) WINBOOL PlayMetaFileRecord(HDC hdc,LPHANDLETABLE lpHandleTable,LPMETARECORD lpMR,UINT noObjs);
|
|
typedef int ( *MFENUMPROC)(HDC hdc,HANDLETABLE *lpht,METARECORD *lpMR,int nObj,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumMetaFile(HDC hdc,HMETAFILE hmf,MFENUMPROC lpProc,LPARAM lParam);
|
|
typedef int ( *ENHMFENUMPROC)(HDC hdc,HANDLETABLE *lpht,const ENHMETARECORD *lpmr,int hHandles,LPARAM data);
|
|
__attribute__((dllimport)) HENHMETAFILE CloseEnhMetaFile(HDC hdc);
|
|
__attribute__((dllimport)) HENHMETAFILE CopyEnhMetaFileA(HENHMETAFILE hEnh,LPCSTR lpFileName);
|
|
__attribute__((dllimport)) HENHMETAFILE CopyEnhMetaFileW(HENHMETAFILE hEnh,LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) HDC CreateEnhMetaFileA(HDC hdc,LPCSTR lpFilename,const RECT *lprc,LPCSTR lpDesc);
|
|
__attribute__((dllimport)) HDC CreateEnhMetaFileW(HDC hdc,LPCWSTR lpFilename,const RECT *lprc,LPCWSTR lpDesc);
|
|
__attribute__((dllimport)) WINBOOL DeleteEnhMetaFile(HENHMETAFILE hmf);
|
|
__attribute__((dllimport)) WINBOOL EnumEnhMetaFile(HDC hdc,HENHMETAFILE hmf,ENHMFENUMPROC lpProc,LPVOID lpParam,const RECT *lpRect);
|
|
__attribute__((dllimport)) HENHMETAFILE GetEnhMetaFileA(LPCSTR lpName);
|
|
__attribute__((dllimport)) HENHMETAFILE GetEnhMetaFileW(LPCWSTR lpName);
|
|
__attribute__((dllimport)) UINT GetEnhMetaFileBits(HENHMETAFILE hEMF,UINT nSize,LPBYTE lpData);
|
|
__attribute__((dllimport)) UINT GetEnhMetaFileDescriptionA(HENHMETAFILE hemf,UINT cchBuffer,LPSTR lpDescription);
|
|
__attribute__((dllimport)) UINT GetEnhMetaFileDescriptionW(HENHMETAFILE hemf,UINT cchBuffer,LPWSTR lpDescription);
|
|
__attribute__((dllimport)) UINT GetEnhMetaFileHeader(HENHMETAFILE hemf,UINT nSize,LPENHMETAHEADER lpEnhMetaHeader);
|
|
__attribute__((dllimport)) UINT GetEnhMetaFilePaletteEntries(HENHMETAFILE hemf,UINT nNumEntries,LPPALETTEENTRY lpPaletteEntries);
|
|
__attribute__((dllimport)) UINT GetEnhMetaFilePixelFormat(HENHMETAFILE hemf,UINT cbBuffer,PIXELFORMATDESCRIPTOR *ppfd);
|
|
__attribute__((dllimport)) UINT GetWinMetaFileBits(HENHMETAFILE hemf,UINT cbData16,LPBYTE pData16,INT iMapMode,HDC hdcRef);
|
|
__attribute__((dllimport)) WINBOOL PlayEnhMetaFile(HDC hdc,HENHMETAFILE hmf,const RECT *lprect);
|
|
__attribute__((dllimport)) WINBOOL PlayEnhMetaFileRecord(HDC hdc,LPHANDLETABLE pht,const ENHMETARECORD *pmr,UINT cht);
|
|
__attribute__((dllimport)) HENHMETAFILE SetEnhMetaFileBits(UINT nSize,const BYTE *pb);
|
|
__attribute__((dllimport)) HENHMETAFILE SetWinMetaFileBits(UINT nSize,const BYTE *lpMeta16Data,HDC hdcRef,const METAFILEPICT *lpMFP);
|
|
__attribute__((dllimport)) WINBOOL GdiComment(HDC hdc,UINT nSize,const BYTE *lpData);
|
|
__attribute__((dllimport)) WINBOOL GetTextMetricsA(HDC hdc,LPTEXTMETRICA lptm);
|
|
__attribute__((dllimport)) WINBOOL GetTextMetricsW(HDC hdc,LPTEXTMETRICW lptm);
|
|
typedef struct tagDIBSECTION {
|
|
BITMAP dsBm;
|
|
BITMAPINFOHEADER dsBmih;
|
|
DWORD dsBitfields[3];
|
|
HANDLE dshSection;
|
|
DWORD dsOffset;
|
|
} DIBSECTION,*LPDIBSECTION,*PDIBSECTION;
|
|
__attribute__((dllimport)) WINBOOL AngleArc(HDC hdc,int x,int y,DWORD r,FLOAT StartAngle,FLOAT SweepAngle);
|
|
__attribute__((dllimport)) WINBOOL PolyPolyline(HDC hdc,const POINT *apt,const DWORD *asz,DWORD csz);
|
|
__attribute__((dllimport)) WINBOOL GetWorldTransform(HDC hdc,LPXFORM lpxf);
|
|
__attribute__((dllimport)) WINBOOL SetWorldTransform(HDC hdc,const XFORM *lpxf);
|
|
__attribute__((dllimport)) WINBOOL ModifyWorldTransform(HDC hdc,const XFORM *lpxf,DWORD mode);
|
|
__attribute__((dllimport)) WINBOOL CombineTransform(LPXFORM lpxfOut,const XFORM *lpxf1,const XFORM *lpxf2);
|
|
__attribute__((dllimport)) HBITMAP CreateDIBSection(HDC hdc,const BITMAPINFO *lpbmi,UINT usage,void **ppvBits,HANDLE hSection,DWORD offset);
|
|
__attribute__((dllimport)) UINT GetDIBColorTable(HDC hdc,UINT iStart,UINT cEntries,RGBQUAD *prgbq);
|
|
__attribute__((dllimport)) UINT SetDIBColorTable(HDC hdc,UINT iStart,UINT cEntries,const RGBQUAD *prgbq);
|
|
typedef struct tagCOLORADJUSTMENT {
|
|
WORD caSize;
|
|
WORD caFlags;
|
|
WORD caIlluminantIndex;
|
|
WORD caRedGamma;
|
|
WORD caGreenGamma;
|
|
WORD caBlueGamma;
|
|
WORD caReferenceBlack;
|
|
WORD caReferenceWhite;
|
|
SHORT caContrast;
|
|
SHORT caBrightness;
|
|
SHORT caColorfulness;
|
|
SHORT caRedGreenTint;
|
|
} COLORADJUSTMENT,*PCOLORADJUSTMENT,*LPCOLORADJUSTMENT;
|
|
__attribute__((dllimport)) WINBOOL SetColorAdjustment(HDC hdc,const COLORADJUSTMENT *lpca);
|
|
__attribute__((dllimport)) WINBOOL GetColorAdjustment(HDC hdc,LPCOLORADJUSTMENT lpca);
|
|
__attribute__((dllimport)) HPALETTE CreateHalftonePalette(HDC hdc);
|
|
typedef WINBOOL ( *ABORTPROC)(HDC,int);
|
|
typedef struct _DOCINFOA {
|
|
int cbSize;
|
|
LPCSTR lpszDocName;
|
|
LPCSTR lpszOutput;
|
|
LPCSTR lpszDatatype;
|
|
DWORD fwType;
|
|
} DOCINFOA,*LPDOCINFOA;
|
|
typedef struct _DOCINFOW {
|
|
int cbSize;
|
|
LPCWSTR lpszDocName;
|
|
LPCWSTR lpszOutput;
|
|
LPCWSTR lpszDatatype;
|
|
DWORD fwType;
|
|
} DOCINFOW,*LPDOCINFOW;
|
|
typedef DOCINFOA DOCINFO;
|
|
typedef LPDOCINFOA LPDOCINFO;
|
|
__attribute__((dllimport)) int StartDocA(HDC hdc,const DOCINFOA *lpdi);
|
|
__attribute__((dllimport)) int StartDocW(HDC hdc,const DOCINFOW *lpdi);
|
|
__attribute__((dllimport)) int EndDoc(HDC hdc);
|
|
__attribute__((dllimport)) int StartPage(HDC hdc);
|
|
__attribute__((dllimport)) int EndPage(HDC hdc);
|
|
__attribute__((dllimport)) int AbortDoc(HDC hdc);
|
|
__attribute__((dllimport)) int SetAbortProc(HDC hdc,ABORTPROC lpProc);
|
|
__attribute__((dllimport)) WINBOOL AbortPath(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL ArcTo(HDC hdc,int left,int top,int right,int bottom,int xr1,int yr1,int xr2,int yr2);
|
|
__attribute__((dllimport)) WINBOOL BeginPath(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL CloseFigure(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL EndPath(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL FillPath(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL FlattenPath(HDC hdc);
|
|
__attribute__((dllimport)) int GetPath(HDC hdc,LPPOINT apt,LPBYTE aj,int cpt);
|
|
__attribute__((dllimport)) HRGN PathToRegion(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL PolyDraw(HDC hdc,const POINT *apt,const BYTE *aj,int cpt);
|
|
__attribute__((dllimport)) WINBOOL SelectClipPath(HDC hdc,int mode);
|
|
__attribute__((dllimport)) int SetArcDirection(HDC hdc,int dir);
|
|
__attribute__((dllimport)) WINBOOL SetMiterLimit(HDC hdc,FLOAT limit,PFLOAT old);
|
|
__attribute__((dllimport)) WINBOOL StrokeAndFillPath(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL StrokePath(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL WidenPath(HDC hdc);
|
|
__attribute__((dllimport)) HPEN ExtCreatePen(DWORD iPenStyle,DWORD cWidth,const LOGBRUSH *plbrush,DWORD cStyle,const DWORD *pstyle);
|
|
__attribute__((dllimport)) WINBOOL GetMiterLimit(HDC hdc,PFLOAT plimit);
|
|
__attribute__((dllimport)) int GetArcDirection(HDC hdc);
|
|
__attribute__((dllimport)) int GetObjectA(HANDLE h,int c,LPVOID pv);
|
|
__attribute__((dllimport)) int GetObjectW(HANDLE h,int c,LPVOID pv);
|
|
__attribute__((dllimport)) WINBOOL MoveToEx(HDC hdc,int x,int y,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL TextOutA(HDC hdc,int x,int y,LPCSTR lpString,int c);
|
|
__attribute__((dllimport)) WINBOOL TextOutW(HDC hdc,int x,int y,LPCWSTR lpString,int c);
|
|
__attribute__((dllimport)) WINBOOL ExtTextOutA(HDC hdc,int x,int y,UINT options,const RECT *lprect,LPCSTR lpString,UINT c,const INT *lpDx);
|
|
__attribute__((dllimport)) WINBOOL ExtTextOutW(HDC hdc,int x,int y,UINT options,const RECT *lprect,LPCWSTR lpString,UINT c,const INT *lpDx);
|
|
__attribute__((dllimport)) WINBOOL PolyTextOutA(HDC hdc,const POLYTEXTA *ppt,int nstrings);
|
|
__attribute__((dllimport)) WINBOOL PolyTextOutW(HDC hdc,const POLYTEXTW *ppt,int nstrings);
|
|
__attribute__((dllimport)) HRGN CreatePolygonRgn(const POINT *pptl,int cPoint,int iMode);
|
|
__attribute__((dllimport)) WINBOOL DPtoLP(HDC hdc,LPPOINT lppt,int c);
|
|
__attribute__((dllimport)) WINBOOL LPtoDP(HDC hdc,LPPOINT lppt,int c);
|
|
__attribute__((dllimport)) WINBOOL Polygon(HDC hdc,const POINT *apt,int cpt);
|
|
__attribute__((dllimport)) WINBOOL Polyline(HDC hdc,const POINT *apt,int cpt);
|
|
__attribute__((dllimport)) WINBOOL PolyBezier(HDC hdc,const POINT *apt,DWORD cpt);
|
|
__attribute__((dllimport)) WINBOOL PolyBezierTo(HDC hdc,const POINT *apt,DWORD cpt);
|
|
__attribute__((dllimport)) WINBOOL PolylineTo(HDC hdc,const POINT *apt,DWORD cpt);
|
|
__attribute__((dllimport)) WINBOOL SetViewportExtEx(HDC hdc,int x,int y,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL SetViewportOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL SetWindowExtEx(HDC hdc,int x,int y,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL SetWindowOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL OffsetViewportOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL OffsetWindowOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL ScaleViewportExtEx(HDC hdc,int xn,int dx,int yn,int yd,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL ScaleWindowExtEx(HDC hdc,int xn,int xd,int yn,int yd,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL SetBitmapDimensionEx(HBITMAP hbm,int w,int h,LPSIZE lpsz);
|
|
__attribute__((dllimport)) WINBOOL SetBrushOrgEx(HDC hdc,int x,int y,LPPOINT lppt);
|
|
__attribute__((dllimport)) int GetTextFaceA(HDC hdc,int c,LPSTR lpName);
|
|
__attribute__((dllimport)) int GetTextFaceW(HDC hdc,int c,LPWSTR lpName);
|
|
typedef struct tagKERNINGPAIR {
|
|
WORD wFirst;
|
|
WORD wSecond;
|
|
int iKernAmount;
|
|
} KERNINGPAIR,*LPKERNINGPAIR;
|
|
__attribute__((dllimport)) DWORD GetKerningPairsA(HDC hdc,DWORD nPairs,LPKERNINGPAIR lpKernPair);
|
|
__attribute__((dllimport)) DWORD GetKerningPairsW(HDC hdc,DWORD nPairs,LPKERNINGPAIR lpKernPair);
|
|
__attribute__((dllimport)) WINBOOL GetDCOrgEx(HDC hdc,LPPOINT lppt);
|
|
__attribute__((dllimport)) WINBOOL FixBrushOrgEx(HDC hdc,int x,int y,LPPOINT ptl);
|
|
__attribute__((dllimport)) WINBOOL UnrealizeObject(HGDIOBJ h);
|
|
__attribute__((dllimport)) WINBOOL GdiFlush(void);
|
|
__attribute__((dllimport)) DWORD GdiSetBatchLimit(DWORD dw);
|
|
__attribute__((dllimport)) DWORD GdiGetBatchLimit(void);
|
|
typedef int ( *ICMENUMPROCA)(LPSTR,LPARAM);
|
|
typedef int ( *ICMENUMPROCW)(LPWSTR,LPARAM);
|
|
__attribute__((dllimport)) int SetICMMode(HDC hdc,int mode);
|
|
__attribute__((dllimport)) WINBOOL CheckColorsInGamut(HDC hdc,LPVOID lpRGBTriple,LPVOID dlpBuffer,DWORD nCount);
|
|
__attribute__((dllimport)) HCOLORSPACE GetColorSpace(HDC hdc);
|
|
__attribute__((dllimport)) WINBOOL GetLogColorSpaceA(HCOLORSPACE hColorSpace,LPLOGCOLORSPACEA lpBuffer,DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL GetLogColorSpaceW(HCOLORSPACE hColorSpace,LPLOGCOLORSPACEW lpBuffer,DWORD nSize);
|
|
__attribute__((dllimport)) HCOLORSPACE CreateColorSpaceA(LPLOGCOLORSPACEA lplcs);
|
|
__attribute__((dllimport)) HCOLORSPACE CreateColorSpaceW(LPLOGCOLORSPACEW lplcs);
|
|
__attribute__((dllimport)) HCOLORSPACE SetColorSpace(HDC hdc,HCOLORSPACE hcs);
|
|
__attribute__((dllimport)) WINBOOL DeleteColorSpace(HCOLORSPACE hcs);
|
|
__attribute__((dllimport)) WINBOOL GetICMProfileA(HDC hdc,LPDWORD pBufSize,LPSTR pszFilename);
|
|
__attribute__((dllimport)) WINBOOL GetICMProfileW(HDC hdc,LPDWORD pBufSize,LPWSTR pszFilename);
|
|
__attribute__((dllimport)) WINBOOL SetICMProfileA(HDC hdc,LPSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL SetICMProfileW(HDC hdc,LPWSTR lpFileName);
|
|
__attribute__((dllimport)) WINBOOL GetDeviceGammaRamp(HDC hdc,LPVOID lpRamp);
|
|
__attribute__((dllimport)) WINBOOL SetDeviceGammaRamp(HDC hdc,LPVOID lpRamp);
|
|
__attribute__((dllimport)) WINBOOL ColorMatchToTarget(HDC hdc,HDC hdcTarget,DWORD action);
|
|
__attribute__((dllimport)) int EnumICMProfilesA(HDC hdc,ICMENUMPROCA lpProc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumICMProfilesW(HDC hdc,ICMENUMPROCW lpProc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL UpdateICMRegKeyA(DWORD reserved,LPSTR lpszCMID,LPSTR lpszFileName,UINT command);
|
|
__attribute__((dllimport)) WINBOOL UpdateICMRegKeyW(DWORD reserved,LPWSTR lpszCMID,LPWSTR lpszFileName,UINT command);
|
|
__attribute__((dllimport)) WINBOOL ColorCorrectPalette(HDC hdc,HPALETTE hPal,DWORD deFirst,DWORD num);
|
|
typedef struct tagEMR {
|
|
DWORD iType;
|
|
DWORD nSize;
|
|
} EMR,*PEMR;
|
|
typedef struct tagEMRTEXT {
|
|
POINTL ptlReference;
|
|
DWORD nChars;
|
|
DWORD offString;
|
|
DWORD fOptions;
|
|
RECTL rcl;
|
|
DWORD offDx;
|
|
} EMRTEXT,*PEMRTEXT;
|
|
typedef struct tagABORTPATH {
|
|
EMR emr;
|
|
} EMRABORTPATH,*PEMRABORTPATH,EMRBEGINPATH,*PEMRBEGINPATH,EMRENDPATH,*PEMRENDPATH,EMRCLOSEFIGURE,*PEMRCLOSEFIGURE,EMRFLATTENPATH,*PEMRFLATTENPATH,EMRWIDENPATH,*PEMRWIDENPATH,EMRSETMETARGN,*PEMRSETMETARGN,EMRSAVEDC,*PEMRSAVEDC,EMRREALIZEPALETTE,*PEMRREALIZEPALETTE;
|
|
typedef struct tagEMRSELECTCLIPPATH {
|
|
EMR emr;
|
|
DWORD iMode;
|
|
} EMRSELECTCLIPPATH,*PEMRSELECTCLIPPATH,EMRSETBKMODE,*PEMRSETBKMODE,EMRSETMAPMODE,*PEMRSETMAPMODE,EMRSETLAYOUT,*PEMRSETLAYOUT,
|
|
EMRSETPOLYFILLMODE,*PEMRSETPOLYFILLMODE,EMRSETROP2,*PEMRSETROP2,EMRSETSTRETCHBLTMODE,*PEMRSETSTRETCHBLTMODE,EMRSETICMMODE,
|
|
*PEMRSETICMMODE,EMRSETTEXTALIGN,*PEMRSETTEXTALIGN;
|
|
typedef struct tagEMRSETMITERLIMIT {
|
|
EMR emr;
|
|
FLOAT eMiterLimit;
|
|
} EMRSETMITERLIMIT,*PEMRSETMITERLIMIT;
|
|
typedef struct tagEMRRESTOREDC {
|
|
EMR emr;
|
|
LONG iRelative;
|
|
} EMRRESTOREDC,*PEMRRESTOREDC;
|
|
typedef struct tagEMRSETARCDIRECTION {
|
|
EMR emr;
|
|
DWORD iArcDirection;
|
|
} EMRSETARCDIRECTION,*PEMRSETARCDIRECTION;
|
|
typedef struct tagEMRSETMAPPERFLAGS {
|
|
EMR emr;
|
|
DWORD dwFlags;
|
|
} EMRSETMAPPERFLAGS,*PEMRSETMAPPERFLAGS;
|
|
typedef struct tagEMRSETTEXTCOLOR {
|
|
EMR emr;
|
|
COLORREF crColor;
|
|
} EMRSETBKCOLOR,*PEMRSETBKCOLOR,EMRSETTEXTCOLOR,*PEMRSETTEXTCOLOR;
|
|
typedef struct tagEMRSELECTOBJECT {
|
|
EMR emr;
|
|
DWORD ihObject;
|
|
} EMRSELECTOBJECT,*PEMRSELECTOBJECT,EMRDELETEOBJECT,*PEMRDELETEOBJECT;
|
|
typedef struct tagEMRSELECTPALETTE {
|
|
EMR emr;
|
|
DWORD ihPal;
|
|
} EMRSELECTPALETTE,*PEMRSELECTPALETTE;
|
|
typedef struct tagEMRRESIZEPALETTE {
|
|
EMR emr;
|
|
DWORD ihPal;
|
|
DWORD cEntries;
|
|
} EMRRESIZEPALETTE,*PEMRRESIZEPALETTE;
|
|
typedef struct tagEMRSETPALETTEENTRIES {
|
|
EMR emr;
|
|
DWORD ihPal;
|
|
DWORD iStart;
|
|
DWORD cEntries;
|
|
PALETTEENTRY aPalEntries[1];
|
|
} EMRSETPALETTEENTRIES,*PEMRSETPALETTEENTRIES;
|
|
typedef struct tagEMRSETCOLORADJUSTMENT {
|
|
EMR emr;
|
|
COLORADJUSTMENT ColorAdjustment;
|
|
} EMRSETCOLORADJUSTMENT,*PEMRSETCOLORADJUSTMENT;
|
|
typedef struct tagEMRGDICOMMENT {
|
|
EMR emr;
|
|
DWORD cbData;
|
|
BYTE Data[1];
|
|
} EMRGDICOMMENT,*PEMRGDICOMMENT;
|
|
typedef struct tagEMREOF {
|
|
EMR emr;
|
|
DWORD nPalEntries;
|
|
DWORD offPalEntries;
|
|
DWORD nSizeLast;
|
|
} EMREOF,*PEMREOF;
|
|
typedef struct tagEMRLINETO {
|
|
EMR emr;
|
|
POINTL ptl;
|
|
} EMRLINETO,*PEMRLINETO,EMRMOVETOEX,*PEMRMOVETOEX;
|
|
typedef struct tagEMROFFSETCLIPRGN {
|
|
EMR emr;
|
|
POINTL ptlOffset;
|
|
} EMROFFSETCLIPRGN,*PEMROFFSETCLIPRGN;
|
|
typedef struct tagEMRFILLPATH {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
} EMRFILLPATH,*PEMRFILLPATH,EMRSTROKEANDFILLPATH,*PEMRSTROKEANDFILLPATH,EMRSTROKEPATH,*PEMRSTROKEPATH;
|
|
typedef struct tagEMREXCLUDECLIPRECT {
|
|
EMR emr;
|
|
RECTL rclClip;
|
|
} EMREXCLUDECLIPRECT,*PEMREXCLUDECLIPRECT,EMRINTERSECTCLIPRECT,*PEMRINTERSECTCLIPRECT;
|
|
typedef struct tagEMRSETVIEWPORTORGEX {
|
|
EMR emr;
|
|
POINTL ptlOrigin;
|
|
} EMRSETVIEWPORTORGEX,*PEMRSETVIEWPORTORGEX,EMRSETWINDOWORGEX,*PEMRSETWINDOWORGEX,EMRSETBRUSHORGEX,*PEMRSETBRUSHORGEX;
|
|
typedef struct tagEMRSETVIEWPORTEXTEX {
|
|
EMR emr;
|
|
SIZEL szlExtent;
|
|
} EMRSETVIEWPORTEXTEX,*PEMRSETVIEWPORTEXTEX,EMRSETWINDOWEXTEX,*PEMRSETWINDOWEXTEX;
|
|
typedef struct tagEMRSCALEVIEWPORTEXTEX {
|
|
EMR emr;
|
|
LONG xNum;
|
|
LONG xDenom;
|
|
LONG yNum;
|
|
LONG yDenom;
|
|
} EMRSCALEVIEWPORTEXTEX,*PEMRSCALEVIEWPORTEXTEX,EMRSCALEWINDOWEXTEX,*PEMRSCALEWINDOWEXTEX;
|
|
typedef struct tagEMRSETWORLDTRANSFORM {
|
|
EMR emr;
|
|
XFORM xform;
|
|
} EMRSETWORLDTRANSFORM,*PEMRSETWORLDTRANSFORM;
|
|
typedef struct tagEMRMODIFYWORLDTRANSFORM {
|
|
EMR emr;
|
|
XFORM xform;
|
|
DWORD iMode;
|
|
} EMRMODIFYWORLDTRANSFORM,*PEMRMODIFYWORLDTRANSFORM;
|
|
typedef struct tagEMRSETPIXELV {
|
|
EMR emr;
|
|
POINTL ptlPixel;
|
|
COLORREF crColor;
|
|
} EMRSETPIXELV,*PEMRSETPIXELV;
|
|
typedef struct tagEMREXTFLOODFILL {
|
|
EMR emr;
|
|
POINTL ptlStart;
|
|
COLORREF crColor;
|
|
DWORD iMode;
|
|
} EMREXTFLOODFILL,*PEMREXTFLOODFILL;
|
|
typedef struct tagEMRELLIPSE {
|
|
EMR emr;
|
|
RECTL rclBox;
|
|
} EMRELLIPSE,*PEMRELLIPSE,EMRRECTANGLE,*PEMRRECTANGLE;
|
|
typedef struct tagEMRROUNDRECT {
|
|
EMR emr;
|
|
RECTL rclBox;
|
|
SIZEL szlCorner;
|
|
} EMRROUNDRECT,*PEMRROUNDRECT;
|
|
typedef struct tagEMRARC {
|
|
EMR emr;
|
|
RECTL rclBox;
|
|
POINTL ptlStart;
|
|
POINTL ptlEnd;
|
|
} EMRARC,*PEMRARC,EMRARCTO,*PEMRARCTO,EMRCHORD,*PEMRCHORD,EMRPIE,*PEMRPIE;
|
|
typedef struct tagEMRANGLEARC {
|
|
EMR emr;
|
|
POINTL ptlCenter;
|
|
DWORD nRadius;
|
|
FLOAT eStartAngle;
|
|
FLOAT eSweepAngle;
|
|
} EMRANGLEARC,*PEMRANGLEARC;
|
|
typedef struct tagEMRPOLYLINE {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cptl;
|
|
POINTL aptl[1];
|
|
} EMRPOLYLINE,*PEMRPOLYLINE,EMRPOLYBEZIER,*PEMRPOLYBEZIER,EMRPOLYGON,*PEMRPOLYGON,EMRPOLYBEZIERTO,*PEMRPOLYBEZIERTO,EMRPOLYLINETO,*PEMRPOLYLINETO;
|
|
typedef struct tagEMRPOLYLINE16 {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cpts;
|
|
POINTS apts[1];
|
|
} EMRPOLYLINE16,*PEMRPOLYLINE16,EMRPOLYBEZIER16,*PEMRPOLYBEZIER16,EMRPOLYGON16,*PEMRPOLYGON16,EMRPOLYBEZIERTO16,*PEMRPOLYBEZIERTO16,EMRPOLYLINETO16,*PEMRPOLYLINETO16;
|
|
typedef struct tagEMRPOLYDRAW {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cptl;
|
|
POINTL aptl[1];
|
|
BYTE abTypes[1];
|
|
} EMRPOLYDRAW,*PEMRPOLYDRAW;
|
|
typedef struct tagEMRPOLYDRAW16 {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cpts;
|
|
POINTS apts[1];
|
|
BYTE abTypes[1];
|
|
} EMRPOLYDRAW16,*PEMRPOLYDRAW16;
|
|
typedef struct tagEMRPOLYPOLYLINE {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD nPolys;
|
|
DWORD cptl;
|
|
DWORD aPolyCounts[1];
|
|
POINTL aptl[1];
|
|
} EMRPOLYPOLYLINE,*PEMRPOLYPOLYLINE,EMRPOLYPOLYGON,*PEMRPOLYPOLYGON;
|
|
typedef struct tagEMRPOLYPOLYLINE16 {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD nPolys;
|
|
DWORD cpts;
|
|
DWORD aPolyCounts[1];
|
|
POINTS apts[1];
|
|
} EMRPOLYPOLYLINE16,*PEMRPOLYPOLYLINE16,EMRPOLYPOLYGON16,*PEMRPOLYPOLYGON16;
|
|
typedef struct tagEMRINVERTRGN {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cbRgnData;
|
|
BYTE RgnData[1];
|
|
} EMRINVERTRGN,*PEMRINVERTRGN,EMRPAINTRGN,*PEMRPAINTRGN;
|
|
typedef struct tagEMRFILLRGN {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cbRgnData;
|
|
DWORD ihBrush;
|
|
BYTE RgnData[1];
|
|
} EMRFILLRGN,*PEMRFILLRGN;
|
|
typedef struct tagEMRFRAMERGN {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cbRgnData;
|
|
DWORD ihBrush;
|
|
SIZEL szlStroke;
|
|
BYTE RgnData[1];
|
|
} EMRFRAMERGN,*PEMRFRAMERGN;
|
|
typedef struct tagEMREXTSELECTCLIPRGN {
|
|
EMR emr;
|
|
DWORD cbRgnData;
|
|
DWORD iMode;
|
|
BYTE RgnData[1];
|
|
} EMREXTSELECTCLIPRGN,*PEMREXTSELECTCLIPRGN;
|
|
typedef struct tagEMREXTTEXTOUTA {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD iGraphicsMode;
|
|
FLOAT exScale;
|
|
FLOAT eyScale;
|
|
EMRTEXT emrtext;
|
|
} EMREXTTEXTOUTA,*PEMREXTTEXTOUTA,EMREXTTEXTOUTW,*PEMREXTTEXTOUTW;
|
|
typedef struct tagEMRPOLYTEXTOUTA {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD iGraphicsMode;
|
|
FLOAT exScale;
|
|
FLOAT eyScale;
|
|
LONG cStrings;
|
|
EMRTEXT aemrtext[1];
|
|
} EMRPOLYTEXTOUTA,*PEMRPOLYTEXTOUTA,EMRPOLYTEXTOUTW,*PEMRPOLYTEXTOUTW;
|
|
typedef struct tagEMRBITBLT {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG cxDest;
|
|
LONG cyDest;
|
|
DWORD dwRop;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
XFORM xformSrc;
|
|
COLORREF crBkColorSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
} EMRBITBLT,*PEMRBITBLT;
|
|
typedef struct tagEMRSTRETCHBLT {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG cxDest;
|
|
LONG cyDest;
|
|
DWORD dwRop;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
XFORM xformSrc;
|
|
COLORREF crBkColorSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
LONG cxSrc;
|
|
LONG cySrc;
|
|
} EMRSTRETCHBLT,*PEMRSTRETCHBLT;
|
|
typedef struct tagEMRMASKBLT {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG cxDest;
|
|
LONG cyDest;
|
|
DWORD dwRop;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
XFORM xformSrc;
|
|
COLORREF crBkColorSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
LONG xMask;
|
|
LONG yMask;
|
|
DWORD iUsageMask;
|
|
DWORD offBmiMask;
|
|
DWORD cbBmiMask;
|
|
DWORD offBitsMask;
|
|
DWORD cbBitsMask;
|
|
} EMRMASKBLT,*PEMRMASKBLT;
|
|
typedef struct tagEMRPLGBLT {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
POINTL aptlDest[3];
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
LONG cxSrc;
|
|
LONG cySrc;
|
|
XFORM xformSrc;
|
|
COLORREF crBkColorSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
LONG xMask;
|
|
LONG yMask;
|
|
DWORD iUsageMask;
|
|
DWORD offBmiMask;
|
|
DWORD cbBmiMask;
|
|
DWORD offBitsMask;
|
|
DWORD cbBitsMask;
|
|
} EMRPLGBLT,*PEMRPLGBLT;
|
|
typedef struct tagEMRSETDIBITSTODEVICE {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
LONG cxSrc;
|
|
LONG cySrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD iStartScan;
|
|
DWORD cScans;
|
|
} EMRSETDIBITSTODEVICE,*PEMRSETDIBITSTODEVICE;
|
|
typedef struct tagEMRSTRETCHDIBITS {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
LONG cxSrc;
|
|
LONG cySrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD dwRop;
|
|
LONG cxDest;
|
|
LONG cyDest;
|
|
} EMRSTRETCHDIBITS,*PEMRSTRETCHDIBITS;
|
|
typedef struct tagEMREXTCREATEFONTINDIRECTW {
|
|
EMR emr;
|
|
DWORD ihFont;
|
|
EXTLOGFONTW elfw;
|
|
} EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW;
|
|
typedef struct tagEMRCREATEPALETTE {
|
|
EMR emr;
|
|
DWORD ihPal;
|
|
LOGPALETTE lgpl;
|
|
} EMRCREATEPALETTE,*PEMRCREATEPALETTE;
|
|
typedef struct tagEMRCREATEPEN {
|
|
EMR emr;
|
|
DWORD ihPen;
|
|
LOGPEN lopn;
|
|
} EMRCREATEPEN,*PEMRCREATEPEN;
|
|
typedef struct tagEMREXTCREATEPEN {
|
|
EMR emr;
|
|
DWORD ihPen;
|
|
DWORD offBmi;
|
|
DWORD cbBmi;
|
|
DWORD offBits;
|
|
DWORD cbBits;
|
|
EXTLOGPEN elp;
|
|
} EMREXTCREATEPEN,*PEMREXTCREATEPEN;
|
|
typedef struct tagEMRCREATEBRUSHINDIRECT {
|
|
EMR emr;
|
|
DWORD ihBrush;
|
|
LOGBRUSH32 lb;
|
|
} EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT;
|
|
typedef struct tagEMRCREATEMONOBRUSH {
|
|
EMR emr;
|
|
DWORD ihBrush;
|
|
DWORD iUsage;
|
|
DWORD offBmi;
|
|
DWORD cbBmi;
|
|
DWORD offBits;
|
|
DWORD cbBits;
|
|
} EMRCREATEMONOBRUSH,*PEMRCREATEMONOBRUSH;
|
|
typedef struct tagEMRCREATEDIBPATTERNBRUSHPT {
|
|
EMR emr;
|
|
DWORD ihBrush;
|
|
DWORD iUsage;
|
|
DWORD offBmi;
|
|
DWORD cbBmi;
|
|
DWORD offBits;
|
|
DWORD cbBits;
|
|
} EMRCREATEDIBPATTERNBRUSHPT,*PEMRCREATEDIBPATTERNBRUSHPT;
|
|
typedef struct tagEMRFORMAT {
|
|
DWORD dSignature;
|
|
DWORD nVersion;
|
|
DWORD cbData;
|
|
DWORD offData;
|
|
} EMRFORMAT,*PEMRFORMAT;
|
|
typedef struct tagEMRGLSRECORD {
|
|
EMR emr;
|
|
DWORD cbData;
|
|
BYTE Data[1];
|
|
} EMRGLSRECORD,*PEMRGLSRECORD;
|
|
typedef struct tagEMRGLSBOUNDEDRECORD {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD cbData;
|
|
BYTE Data[1];
|
|
} EMRGLSBOUNDEDRECORD,*PEMRGLSBOUNDEDRECORD;
|
|
typedef struct tagEMRPIXELFORMAT {
|
|
EMR emr;
|
|
PIXELFORMATDESCRIPTOR pfd;
|
|
} EMRPIXELFORMAT,*PEMRPIXELFORMAT;
|
|
typedef struct tagEMRCREATECOLORSPACE {
|
|
EMR emr;
|
|
DWORD ihCS;
|
|
LOGCOLORSPACEA lcs;
|
|
} EMRCREATECOLORSPACE,*PEMRCREATECOLORSPACE;
|
|
typedef struct tagEMRSETCOLORSPACE {
|
|
EMR emr;
|
|
DWORD ihCS;
|
|
} EMRSETCOLORSPACE,*PEMRSETCOLORSPACE,EMRSELECTCOLORSPACE,*PEMRSELECTCOLORSPACE,EMRDELETECOLORSPACE,*PEMRDELETECOLORSPACE;
|
|
typedef struct tagEMREXTESCAPE {
|
|
EMR emr;
|
|
INT iEscape;
|
|
INT cbEscData;
|
|
BYTE EscData[1];
|
|
} EMREXTESCAPE,*PEMREXTESCAPE,EMRDRAWESCAPE,*PEMRDRAWESCAPE;
|
|
typedef struct tagEMRNAMEDESCAPE {
|
|
EMR emr;
|
|
INT iEscape;
|
|
INT cbDriver;
|
|
INT cbEscData;
|
|
BYTE EscData[1];
|
|
} EMRNAMEDESCAPE,*PEMRNAMEDESCAPE;
|
|
typedef struct tagEMRSETICMPROFILE {
|
|
EMR emr;
|
|
DWORD dwFlags;
|
|
DWORD cbName;
|
|
DWORD cbData;
|
|
BYTE Data[1];
|
|
} EMRSETICMPROFILE,*PEMRSETICMPROFILE,EMRSETICMPROFILEA,*PEMRSETICMPROFILEA,EMRSETICMPROFILEW,*PEMRSETICMPROFILEW;
|
|
typedef struct tagEMRCREATECOLORSPACEW {
|
|
EMR emr;
|
|
DWORD ihCS;
|
|
LOGCOLORSPACEW lcs;
|
|
DWORD dwFlags;
|
|
DWORD cbData;
|
|
BYTE Data[1];
|
|
} EMRCREATECOLORSPACEW,*PEMRCREATECOLORSPACEW;
|
|
typedef struct tagCOLORMATCHTOTARGET {
|
|
EMR emr;
|
|
DWORD dwAction;
|
|
DWORD dwFlags;
|
|
DWORD cbName;
|
|
DWORD cbData;
|
|
BYTE Data[1];
|
|
} EMRCOLORMATCHTOTARGET,*PEMRCOLORMATCHTOTARGET;
|
|
typedef struct tagCOLORCORRECTPALETTE {
|
|
EMR emr;
|
|
DWORD ihPalette;
|
|
DWORD nFirstEntry;
|
|
DWORD nPalEntries;
|
|
DWORD nReserved;
|
|
} EMRCOLORCORRECTPALETTE,*PEMRCOLORCORRECTPALETTE;
|
|
typedef struct tagEMRALPHABLEND {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG cxDest;
|
|
LONG cyDest;
|
|
DWORD dwRop;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
XFORM xformSrc;
|
|
COLORREF crBkColorSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
LONG cxSrc;
|
|
LONG cySrc;
|
|
} EMRALPHABLEND,*PEMRALPHABLEND;
|
|
typedef struct tagEMRGRADIENTFILL {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
DWORD nVer;
|
|
DWORD nTri;
|
|
ULONG ulMode;
|
|
TRIVERTEX Ver[1];
|
|
} EMRGRADIENTFILL,*PEMRGRADIENTFILL;
|
|
typedef struct tagEMRTRANSPARENTBLT {
|
|
EMR emr;
|
|
RECTL rclBounds;
|
|
LONG xDest;
|
|
LONG yDest;
|
|
LONG cxDest;
|
|
LONG cyDest;
|
|
DWORD dwRop;
|
|
LONG xSrc;
|
|
LONG ySrc;
|
|
XFORM xformSrc;
|
|
COLORREF crBkColorSrc;
|
|
DWORD iUsageSrc;
|
|
DWORD offBmiSrc;
|
|
DWORD cbBmiSrc;
|
|
DWORD offBitsSrc;
|
|
DWORD cbBitsSrc;
|
|
LONG cxSrc;
|
|
LONG cySrc;
|
|
} EMRTRANSPARENTBLT,*PEMRTRANSPARENTBLT;
|
|
__attribute__((dllimport)) WINBOOL wglCopyContext(HGLRC,HGLRC,UINT);
|
|
__attribute__((dllimport)) HGLRC wglCreateContext(HDC);
|
|
__attribute__((dllimport)) HGLRC wglCreateLayerContext(HDC,int);
|
|
__attribute__((dllimport)) WINBOOL wglDeleteContext(HGLRC);
|
|
__attribute__((dllimport)) HGLRC wglGetCurrentContext(void);
|
|
__attribute__((dllimport)) HDC wglGetCurrentDC(void);
|
|
__attribute__((dllimport)) PROC wglGetProcAddress(LPCSTR);
|
|
__attribute__((dllimport)) WINBOOL wglMakeCurrent(HDC,HGLRC);
|
|
__attribute__((dllimport)) WINBOOL wglShareLists(HGLRC,HGLRC);
|
|
__attribute__((dllimport)) WINBOOL wglUseFontBitmapsA(HDC,DWORD,DWORD,DWORD);
|
|
__attribute__((dllimport)) WINBOOL wglUseFontBitmapsW(HDC,DWORD,DWORD,DWORD);
|
|
__attribute__((dllimport)) WINBOOL SwapBuffers(HDC);
|
|
typedef struct _POINTFLOAT {
|
|
FLOAT x;
|
|
FLOAT y;
|
|
} POINTFLOAT,*PPOINTFLOAT;
|
|
typedef struct _GLYPHMETRICSFLOAT {
|
|
FLOAT gmfBlackBoxX;
|
|
FLOAT gmfBlackBoxY;
|
|
POINTFLOAT gmfptGlyphOrigin;
|
|
FLOAT gmfCellIncX;
|
|
FLOAT gmfCellIncY;
|
|
} GLYPHMETRICSFLOAT,*PGLYPHMETRICSFLOAT,*LPGLYPHMETRICSFLOAT;
|
|
__attribute__((dllimport)) WINBOOL wglUseFontOutlinesA(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
|
|
__attribute__((dllimport)) WINBOOL wglUseFontOutlinesW(HDC,DWORD,DWORD,DWORD,FLOAT,FLOAT,int,LPGLYPHMETRICSFLOAT);
|
|
typedef struct tagLAYERPLANEDESCRIPTOR {
|
|
WORD nSize;
|
|
WORD nVersion;
|
|
DWORD dwFlags;
|
|
BYTE iPixelType;
|
|
BYTE cColorBits;
|
|
BYTE cRedBits;
|
|
BYTE cRedShift;
|
|
BYTE cGreenBits;
|
|
BYTE cGreenShift;
|
|
BYTE cBlueBits;
|
|
BYTE cBlueShift;
|
|
BYTE cAlphaBits;
|
|
BYTE cAlphaShift;
|
|
BYTE cAccumBits;
|
|
BYTE cAccumRedBits;
|
|
BYTE cAccumGreenBits;
|
|
BYTE cAccumBlueBits;
|
|
BYTE cAccumAlphaBits;
|
|
BYTE cDepthBits;
|
|
BYTE cStencilBits;
|
|
BYTE cAuxBuffers;
|
|
BYTE iLayerPlane;
|
|
BYTE bReserved;
|
|
COLORREF crTransparent;
|
|
} LAYERPLANEDESCRIPTOR,*PLAYERPLANEDESCRIPTOR,*LPLAYERPLANEDESCRIPTOR;
|
|
__attribute__((dllimport)) WINBOOL wglDescribeLayerPlane(HDC,int,int,UINT,LPLAYERPLANEDESCRIPTOR);
|
|
__attribute__((dllimport)) int wglSetLayerPaletteEntries(HDC,int,int,int,const COLORREF *);
|
|
__attribute__((dllimport)) int wglGetLayerPaletteEntries(HDC,int,int,int,COLORREF *);
|
|
__attribute__((dllimport)) WINBOOL wglRealizeLayerPalette(HDC,int,WINBOOL);
|
|
__attribute__((dllimport)) WINBOOL wglSwapLayerBuffers(HDC,UINT);
|
|
typedef struct _WGLSWAP {
|
|
HDC hdc;
|
|
UINT uiFlags;
|
|
} WGLSWAP,*PWGLSWAP,*LPWGLSWAP;
|
|
__attribute__((dllimport)) DWORD wglSwapMultipleBuffers(UINT,const WGLSWAP *);
|
|
typedef HANDLE HDWP;
|
|
typedef void MENUTEMPLATEA;
|
|
typedef void MENUTEMPLATEW;
|
|
typedef PVOID LPMENUTEMPLATEA;
|
|
typedef PVOID LPMENUTEMPLATEW;
|
|
typedef MENUTEMPLATEA MENUTEMPLATE;
|
|
typedef LPMENUTEMPLATEA LPMENUTEMPLATE;
|
|
typedef LRESULT ( *WNDPROC)(HWND,UINT,WPARAM,LPARAM);
|
|
typedef INT_PTR ( *DLGPROC) (HWND, UINT, WPARAM, LPARAM);
|
|
typedef void ( *TIMERPROC) (HWND, UINT, UINT_PTR, DWORD);
|
|
typedef WINBOOL ( *GRAYSTRINGPROC) (HDC, LPARAM, int);
|
|
typedef WINBOOL ( *WNDENUMPROC) (HWND, LPARAM);
|
|
typedef LRESULT ( *HOOKPROC) (int code, WPARAM wParam, LPARAM lParam);
|
|
typedef void ( *SENDASYNCPROC) (HWND, UINT, ULONG_PTR, LRESULT);
|
|
typedef WINBOOL ( *PROPENUMPROCA) (HWND, LPCSTR, HANDLE);
|
|
typedef WINBOOL ( *PROPENUMPROCW) (HWND, LPCWSTR, HANDLE);
|
|
typedef WINBOOL ( *PROPENUMPROCEXA) (HWND, LPSTR, HANDLE, ULONG_PTR);
|
|
typedef WINBOOL ( *PROPENUMPROCEXW) (HWND, LPWSTR, HANDLE, ULONG_PTR);
|
|
typedef int ( *EDITWORDBREAKPROCA) (LPSTR lpch, int ichCurrent, int cch, int code);
|
|
typedef int ( *EDITWORDBREAKPROCW) (LPWSTR lpch, int ichCurrent, int cch, int code);
|
|
typedef WINBOOL ( *DRAWSTATEPROC) (HDC hdc, LPARAM lData, WPARAM wData, int cx, int cy);
|
|
typedef PROPENUMPROCA PROPENUMPROC;
|
|
typedef PROPENUMPROCEXA PROPENUMPROCEX;
|
|
typedef EDITWORDBREAKPROCA EDITWORDBREAKPROC;
|
|
typedef WINBOOL ( *NAMEENUMPROCA) (LPSTR, LPARAM);
|
|
typedef WINBOOL ( *NAMEENUMPROCW) (LPWSTR, LPARAM);
|
|
typedef NAMEENUMPROCA WINSTAENUMPROCA;
|
|
typedef NAMEENUMPROCW WINSTAENUMPROCW;
|
|
typedef NAMEENUMPROCA DESKTOPENUMPROCA;
|
|
typedef NAMEENUMPROCW DESKTOPENUMPROCW;
|
|
typedef WINSTAENUMPROCA WINSTAENUMPROC;
|
|
typedef DESKTOPENUMPROCA DESKTOPENUMPROC;
|
|
__attribute__((dllimport)) int wvsprintfA(LPSTR,LPCSTR,va_list arglist);
|
|
__attribute__((dllimport)) int wvsprintfW(LPWSTR,LPCWSTR,va_list arglist);
|
|
__attribute__((dllimport)) int __attribute__((__cdecl__)) wsprintfA(LPSTR,LPCSTR,...);
|
|
__attribute__((dllimport)) int __attribute__((__cdecl__)) wsprintfW(LPWSTR,LPCWSTR,...);
|
|
typedef struct tagCBT_CREATEWNDA {
|
|
struct tagCREATESTRUCTA *lpcs;
|
|
HWND hwndInsertAfter;
|
|
} CBT_CREATEWNDA,*LPCBT_CREATEWNDA;
|
|
typedef struct tagCBT_CREATEWNDW {
|
|
struct tagCREATESTRUCTW *lpcs;
|
|
HWND hwndInsertAfter;
|
|
} CBT_CREATEWNDW,*LPCBT_CREATEWNDW;
|
|
typedef CBT_CREATEWNDA CBT_CREATEWND;
|
|
typedef LPCBT_CREATEWNDA LPCBT_CREATEWND;
|
|
typedef struct tagCBTACTIVATESTRUCT {
|
|
WINBOOL fMouse;
|
|
HWND hWndActive;
|
|
} CBTACTIVATESTRUCT,*LPCBTACTIVATESTRUCT;
|
|
typedef struct tagWTSSESSION_NOTIFICATION {
|
|
DWORD cbSize;
|
|
DWORD dwSessionId;
|
|
} WTSSESSION_NOTIFICATION,*PWTSSESSION_NOTIFICATION;
|
|
typedef struct {
|
|
HWND hwnd;
|
|
RECT rc;
|
|
} SHELLHOOKINFO,*LPSHELLHOOKINFO;
|
|
typedef struct tagEVENTMSG {
|
|
UINT message;
|
|
UINT paramL;
|
|
UINT paramH;
|
|
DWORD time;
|
|
HWND hwnd;
|
|
} EVENTMSG,*PEVENTMSGMSG,*NPEVENTMSGMSG,*LPEVENTMSGMSG;
|
|
typedef struct tagEVENTMSG *PEVENTMSG,*NPEVENTMSG,*LPEVENTMSG;
|
|
typedef struct tagCWPSTRUCT {
|
|
LPARAM lParam;
|
|
WPARAM wParam;
|
|
UINT message;
|
|
HWND hwnd;
|
|
} CWPSTRUCT,*PCWPSTRUCT,*NPCWPSTRUCT,*LPCWPSTRUCT;
|
|
typedef struct tagCWPRETSTRUCT {
|
|
LRESULT lResult;
|
|
LPARAM lParam;
|
|
WPARAM wParam;
|
|
UINT message;
|
|
HWND hwnd;
|
|
} CWPRETSTRUCT,*PCWPRETSTRUCT,*NPCWPRETSTRUCT,*LPCWPRETSTRUCT;
|
|
typedef struct tagKBDLLHOOKSTRUCT {
|
|
DWORD vkCode;
|
|
DWORD scanCode;
|
|
DWORD flags;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} KBDLLHOOKSTRUCT,*LPKBDLLHOOKSTRUCT,*PKBDLLHOOKSTRUCT;
|
|
typedef struct tagMSLLHOOKSTRUCT {
|
|
POINT pt;
|
|
DWORD mouseData;
|
|
DWORD flags;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} MSLLHOOKSTRUCT,*LPMSLLHOOKSTRUCT,*PMSLLHOOKSTRUCT;
|
|
typedef struct tagDEBUGHOOKINFO {
|
|
DWORD idThread;
|
|
DWORD idThreadInstaller;
|
|
LPARAM lParam;
|
|
WPARAM wParam;
|
|
int code;
|
|
} DEBUGHOOKINFO,*PDEBUGHOOKINFO,*NPDEBUGHOOKINFO,*LPDEBUGHOOKINFO;
|
|
typedef struct tagMOUSEHOOKSTRUCT {
|
|
POINT pt;
|
|
HWND hwnd;
|
|
UINT wHitTestCode;
|
|
ULONG_PTR dwExtraInfo;
|
|
} MOUSEHOOKSTRUCT,*LPMOUSEHOOKSTRUCT,*PMOUSEHOOKSTRUCT;
|
|
typedef struct tagMOUSEHOOKSTRUCTEX {
|
|
MOUSEHOOKSTRUCT __unnamed;
|
|
DWORD mouseData;
|
|
} MOUSEHOOKSTRUCTEX,*LPMOUSEHOOKSTRUCTEX,*PMOUSEHOOKSTRUCTEX;
|
|
typedef struct tagHARDWAREHOOKSTRUCT {
|
|
HWND hwnd;
|
|
UINT message;
|
|
WPARAM wParam;
|
|
LPARAM lParam;
|
|
} HARDWAREHOOKSTRUCT,*LPHARDWAREHOOKSTRUCT,*PHARDWAREHOOKSTRUCT;
|
|
__attribute__((dllimport)) HKL LoadKeyboardLayoutA(LPCSTR pwszKLID,UINT Flags);
|
|
__attribute__((dllimport)) HKL LoadKeyboardLayoutW(LPCWSTR pwszKLID,UINT Flags);
|
|
__attribute__((dllimport)) HKL ActivateKeyboardLayout(HKL hkl,UINT Flags);
|
|
__attribute__((dllimport)) int ToUnicodeEx(UINT wVirtKey,UINT wScanCode,const BYTE *lpKeyState,LPWSTR pwszBuff,int cchBuff,UINT wFlags,HKL dwhkl);
|
|
__attribute__((dllimport)) WINBOOL UnloadKeyboardLayout(HKL hkl);
|
|
__attribute__((dllimport)) WINBOOL GetKeyboardLayoutNameA(LPSTR pwszKLID);
|
|
__attribute__((dllimport)) WINBOOL GetKeyboardLayoutNameW(LPWSTR pwszKLID);
|
|
__attribute__((dllimport)) int GetKeyboardLayoutList(int nBuff,HKL *lpList);
|
|
__attribute__((dllimport)) HKL GetKeyboardLayout(DWORD idThread);
|
|
typedef struct tagMOUSEMOVEPOINT {
|
|
int x;
|
|
int y;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} MOUSEMOVEPOINT,*PMOUSEMOVEPOINT,*LPMOUSEMOVEPOINT;
|
|
__attribute__((dllimport)) int GetMouseMovePointsEx(UINT cbSize,LPMOUSEMOVEPOINT lppt,LPMOUSEMOVEPOINT lpptBuf,int nBufPoints,DWORD resolution);
|
|
__attribute__((dllimport)) HDESK CreateDesktopA(LPCSTR lpszDesktop,LPCSTR lpszDevice,LPDEVMODEA pDevmode,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
|
|
__attribute__((dllimport)) HDESK CreateDesktopW(LPCWSTR lpszDesktop,LPCWSTR lpszDevice,LPDEVMODEW pDevmode,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
|
|
__attribute__((dllimport)) HDESK CreateDesktopExA (LPCSTR lpszDesktop, LPCSTR lpszDevice, DEVMODEA *pDevmode, DWORD dwFlags, ACCESS_MASK dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa, ULONG ulHeapSize, PVOID pvoid);
|
|
__attribute__((dllimport)) HDESK CreateDesktopExW (LPCWSTR lpszDesktop, LPCWSTR lpszDevice, DEVMODEW *pDevmode, DWORD dwFlags, ACCESS_MASK dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa, ULONG ulHeapSize, PVOID pvoid);
|
|
__attribute__((dllimport)) HDESK OpenDesktopA(LPCSTR lpszDesktop,DWORD dwFlags,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
|
|
__attribute__((dllimport)) HDESK OpenDesktopW(LPCWSTR lpszDesktop,DWORD dwFlags,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
|
|
__attribute__((dllimport)) HDESK OpenInputDesktop(DWORD dwFlags,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
|
|
__attribute__((dllimport)) WINBOOL EnumDesktopsA(HWINSTA hwinsta,DESKTOPENUMPROCA lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumDesktopsW(HWINSTA hwinsta,DESKTOPENUMPROCW lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumDesktopWindows(HDESK hDesktop,WNDENUMPROC lpfn,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL SwitchDesktop(HDESK hDesktop);
|
|
__attribute__((dllimport)) WINBOOL SetThreadDesktop(HDESK hDesktop);
|
|
__attribute__((dllimport)) WINBOOL CloseDesktop(HDESK hDesktop);
|
|
__attribute__((dllimport)) HDESK GetThreadDesktop(DWORD dwThreadId);
|
|
__attribute__((dllimport)) HWINSTA CreateWindowStationA(LPCSTR lpwinsta,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
|
|
__attribute__((dllimport)) HWINSTA CreateWindowStationW(LPCWSTR lpwinsta,DWORD dwFlags,ACCESS_MASK dwDesiredAccess,LPSECURITY_ATTRIBUTES lpsa);
|
|
__attribute__((dllimport)) HWINSTA OpenWindowStationA(LPCSTR lpszWinSta,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
|
|
__attribute__((dllimport)) HWINSTA OpenWindowStationW(LPCWSTR lpszWinSta,WINBOOL fInherit,ACCESS_MASK dwDesiredAccess);
|
|
__attribute__((dllimport)) WINBOOL EnumWindowStationsA(WINSTAENUMPROCA lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumWindowStationsW(WINSTAENUMPROCW lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL CloseWindowStation(HWINSTA hWinSta);
|
|
__attribute__((dllimport)) WINBOOL SetProcessWindowStation(HWINSTA hWinSta);
|
|
__attribute__((dllimport)) HWINSTA GetProcessWindowStation(void);
|
|
__attribute__((dllimport)) WINBOOL SetUserObjectSecurity(HANDLE hObj,PSECURITY_INFORMATION pSIRequested,PSECURITY_DESCRIPTOR pSID);
|
|
__attribute__((dllimport)) WINBOOL GetUserObjectSecurity(HANDLE hObj,PSECURITY_INFORMATION pSIRequested,PSECURITY_DESCRIPTOR pSID,DWORD nLength,LPDWORD lpnLengthNeeded);
|
|
typedef struct tagUSEROBJECTFLAGS {
|
|
WINBOOL fInherit;
|
|
WINBOOL fReserved;
|
|
DWORD dwFlags;
|
|
} USEROBJECTFLAGS,*PUSEROBJECTFLAGS;
|
|
__attribute__((dllimport)) WINBOOL GetUserObjectInformationA(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength,LPDWORD lpnLengthNeeded);
|
|
__attribute__((dllimport)) WINBOOL GetUserObjectInformationW(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength,LPDWORD lpnLengthNeeded);
|
|
__attribute__((dllimport)) WINBOOL SetUserObjectInformationA(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength);
|
|
__attribute__((dllimport)) WINBOOL SetUserObjectInformationW(HANDLE hObj,int nIndex,PVOID pvInfo,DWORD nLength);
|
|
typedef struct tagWNDCLASSEXA {
|
|
UINT cbSize;
|
|
UINT style;
|
|
WNDPROC lpfnWndProc;
|
|
int cbClsExtra;
|
|
int cbWndExtra;
|
|
HINSTANCE hInstance;
|
|
HICON hIcon;
|
|
HCURSOR hCursor;
|
|
HBRUSH hbrBackground;
|
|
LPCSTR lpszMenuName;
|
|
LPCSTR lpszClassName;
|
|
HICON hIconSm;
|
|
} WNDCLASSEXA,*PWNDCLASSEXA,*NPWNDCLASSEXA,*LPWNDCLASSEXA;
|
|
typedef struct tagWNDCLASSEXW {
|
|
UINT cbSize;
|
|
UINT style;
|
|
WNDPROC lpfnWndProc;
|
|
int cbClsExtra;
|
|
int cbWndExtra;
|
|
HINSTANCE hInstance;
|
|
HICON hIcon;
|
|
HCURSOR hCursor;
|
|
HBRUSH hbrBackground;
|
|
LPCWSTR lpszMenuName;
|
|
LPCWSTR lpszClassName;
|
|
HICON hIconSm;
|
|
} WNDCLASSEXW,*PWNDCLASSEXW,*NPWNDCLASSEXW,*LPWNDCLASSEXW;
|
|
typedef WNDCLASSEXA WNDCLASSEX;
|
|
typedef PWNDCLASSEXA PWNDCLASSEX;
|
|
typedef NPWNDCLASSEXA NPWNDCLASSEX;
|
|
typedef LPWNDCLASSEXA LPWNDCLASSEX;
|
|
typedef struct tagWNDCLASSA {
|
|
UINT style;
|
|
WNDPROC lpfnWndProc;
|
|
int cbClsExtra;
|
|
int cbWndExtra;
|
|
HINSTANCE hInstance;
|
|
HICON hIcon;
|
|
HCURSOR hCursor;
|
|
HBRUSH hbrBackground;
|
|
LPCSTR lpszMenuName;
|
|
LPCSTR lpszClassName;
|
|
} WNDCLASSA,*PWNDCLASSA,*NPWNDCLASSA,*LPWNDCLASSA;
|
|
typedef struct tagWNDCLASSW {
|
|
UINT style;
|
|
WNDPROC lpfnWndProc;
|
|
int cbClsExtra;
|
|
int cbWndExtra;
|
|
HINSTANCE hInstance;
|
|
HICON hIcon;
|
|
HCURSOR hCursor;
|
|
HBRUSH hbrBackground;
|
|
LPCWSTR lpszMenuName;
|
|
LPCWSTR lpszClassName;
|
|
} WNDCLASSW,*PWNDCLASSW,*NPWNDCLASSW,*LPWNDCLASSW;
|
|
typedef WNDCLASSA WNDCLASS;
|
|
typedef PWNDCLASSA PWNDCLASS;
|
|
typedef NPWNDCLASSA NPWNDCLASS;
|
|
typedef LPWNDCLASSA LPWNDCLASS;
|
|
__attribute__((dllimport)) WINBOOL IsHungAppWindow(HWND hwnd);
|
|
__attribute__((dllimport)) void DisableProcessWindowsGhosting(void);
|
|
typedef struct tagMSG {
|
|
HWND hwnd;
|
|
UINT message;
|
|
WPARAM wParam;
|
|
LPARAM lParam;
|
|
DWORD time;
|
|
POINT pt;
|
|
} MSG,*PMSG,*NPMSG,*LPMSG;
|
|
typedef struct tagMINMAXINFO {
|
|
POINT ptReserved;
|
|
POINT ptMaxSize;
|
|
POINT ptMaxPosition;
|
|
POINT ptMinTrackSize;
|
|
POINT ptMaxTrackSize;
|
|
} MINMAXINFO,*PMINMAXINFO,*LPMINMAXINFO;
|
|
typedef struct tagCOPYDATASTRUCT {
|
|
ULONG_PTR dwData;
|
|
DWORD cbData;
|
|
PVOID lpData;
|
|
} COPYDATASTRUCT,*PCOPYDATASTRUCT;
|
|
typedef struct tagMDINEXTMENU {
|
|
HMENU hmenuIn;
|
|
HMENU hmenuNext;
|
|
HWND hwndNext;
|
|
} MDINEXTMENU,*PMDINEXTMENU,*LPMDINEXTMENU;
|
|
typedef struct {
|
|
GUID PowerSetting;
|
|
DWORD DataLength;
|
|
UCHAR Data[1];
|
|
} POWERBROADCAST_SETTING,*PPOWERBROADCAST_SETTING;
|
|
__attribute__((dllimport)) UINT RegisterWindowMessageA(LPCSTR lpString);
|
|
__attribute__((dllimport)) UINT RegisterWindowMessageW(LPCWSTR lpString);
|
|
typedef struct tagWINDOWPOS {
|
|
HWND hwnd;
|
|
HWND hwndInsertAfter;
|
|
int x;
|
|
int y;
|
|
int cx;
|
|
int cy;
|
|
UINT flags;
|
|
} WINDOWPOS,*LPWINDOWPOS,*PWINDOWPOS;
|
|
typedef struct tagNCCALCSIZE_PARAMS {
|
|
RECT rgrc[3];
|
|
PWINDOWPOS lppos;
|
|
} NCCALCSIZE_PARAMS,*LPNCCALCSIZE_PARAMS;
|
|
typedef struct tagTRACKMOUSEEVENT {
|
|
DWORD cbSize;
|
|
DWORD dwFlags;
|
|
HWND hwndTrack;
|
|
DWORD dwHoverTime;
|
|
} TRACKMOUSEEVENT,*LPTRACKMOUSEEVENT;
|
|
__attribute__((dllimport)) WINBOOL TrackMouseEvent(LPTRACKMOUSEEVENT lpEventTrack);
|
|
__attribute__((dllimport)) WINBOOL DrawEdge(HDC hdc,LPRECT qrc,UINT edge,UINT grfFlags);
|
|
__attribute__((dllimport)) WINBOOL DrawFrameControl(HDC,LPRECT,UINT,UINT);
|
|
__attribute__((dllimport)) WINBOOL DrawCaption(HWND hwnd,HDC hdc,const RECT *lprect,UINT flags);
|
|
__attribute__((dllimport)) WINBOOL DrawAnimatedRects(HWND hwnd,int idAni,const RECT *lprcFrom,const RECT *lprcTo);
|
|
typedef struct tagACCEL {
|
|
BYTE fVirt;
|
|
WORD key;
|
|
WORD cmd;
|
|
} ACCEL,*LPACCEL;
|
|
typedef struct tagPAINTSTRUCT {
|
|
HDC hdc;
|
|
WINBOOL fErase;
|
|
RECT rcPaint;
|
|
WINBOOL fRestore;
|
|
WINBOOL fIncUpdate;
|
|
BYTE rgbReserved[32];
|
|
} PAINTSTRUCT,*PPAINTSTRUCT,*NPPAINTSTRUCT,*LPPAINTSTRUCT;
|
|
typedef struct tagCREATESTRUCTA {
|
|
LPVOID lpCreateParams;
|
|
HINSTANCE hInstance;
|
|
HMENU hMenu;
|
|
HWND hwndParent;
|
|
int cy;
|
|
int cx;
|
|
int y;
|
|
int x;
|
|
LONG style;
|
|
LPCSTR lpszName;
|
|
LPCSTR lpszClass;
|
|
DWORD dwExStyle;
|
|
} CREATESTRUCTA,*LPCREATESTRUCTA;
|
|
typedef struct tagCREATESTRUCTW {
|
|
LPVOID lpCreateParams;
|
|
HINSTANCE hInstance;
|
|
HMENU hMenu;
|
|
HWND hwndParent;
|
|
int cy;
|
|
int cx;
|
|
int y;
|
|
int x;
|
|
LONG style;
|
|
LPCWSTR lpszName;
|
|
LPCWSTR lpszClass;
|
|
DWORD dwExStyle;
|
|
} CREATESTRUCTW,*LPCREATESTRUCTW;
|
|
typedef CREATESTRUCTA CREATESTRUCT;
|
|
typedef LPCREATESTRUCTA LPCREATESTRUCT;
|
|
typedef struct tagWINDOWPLACEMENT {
|
|
UINT length;
|
|
UINT flags;
|
|
UINT showCmd;
|
|
POINT ptMinPosition;
|
|
POINT ptMaxPosition;
|
|
RECT rcNormalPosition;
|
|
} WINDOWPLACEMENT;
|
|
typedef WINDOWPLACEMENT *PWINDOWPLACEMENT,*LPWINDOWPLACEMENT;
|
|
typedef struct tagNMHDR {
|
|
HWND hwndFrom;
|
|
UINT_PTR idFrom;
|
|
UINT code;
|
|
} NMHDR;
|
|
typedef NMHDR *LPNMHDR;
|
|
typedef struct tagSTYLESTRUCT {
|
|
DWORD styleOld;
|
|
DWORD styleNew;
|
|
} STYLESTRUCT,*LPSTYLESTRUCT;
|
|
typedef struct tagMEASUREITEMSTRUCT {
|
|
UINT CtlType;
|
|
UINT CtlID;
|
|
UINT itemID;
|
|
UINT itemWidth;
|
|
UINT itemHeight;
|
|
ULONG_PTR itemData;
|
|
} MEASUREITEMSTRUCT,*PMEASUREITEMSTRUCT,*LPMEASUREITEMSTRUCT;
|
|
typedef struct tagDRAWITEMSTRUCT {
|
|
UINT CtlType;
|
|
UINT CtlID;
|
|
UINT itemID;
|
|
UINT itemAction;
|
|
UINT itemState;
|
|
HWND hwndItem;
|
|
HDC hDC;
|
|
RECT rcItem;
|
|
ULONG_PTR itemData;
|
|
} DRAWITEMSTRUCT,*PDRAWITEMSTRUCT,*LPDRAWITEMSTRUCT;
|
|
typedef struct tagDELETEITEMSTRUCT {
|
|
UINT CtlType;
|
|
UINT CtlID;
|
|
UINT itemID;
|
|
HWND hwndItem;
|
|
ULONG_PTR itemData;
|
|
} DELETEITEMSTRUCT,*PDELETEITEMSTRUCT,*LPDELETEITEMSTRUCT;
|
|
typedef struct tagCOMPAREITEMSTRUCT {
|
|
UINT CtlType;
|
|
UINT CtlID;
|
|
HWND hwndItem;
|
|
UINT itemID1;
|
|
ULONG_PTR itemData1;
|
|
UINT itemID2;
|
|
ULONG_PTR itemData2;
|
|
DWORD dwLocaleId;
|
|
} COMPAREITEMSTRUCT,*PCOMPAREITEMSTRUCT,*LPCOMPAREITEMSTRUCT;
|
|
__attribute__((dllimport)) WINBOOL GetMessageA(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax);
|
|
__attribute__((dllimport)) WINBOOL GetMessageW(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax);
|
|
__attribute__((dllimport)) WINBOOL TranslateMessage(const MSG *lpMsg);
|
|
__attribute__((dllimport)) LRESULT DispatchMessageA(const MSG *lpMsg);
|
|
__attribute__((dllimport)) LRESULT DispatchMessageW(const MSG *lpMsg);
|
|
__attribute__((dllimport)) WINBOOL SetMessageQueue(int cMessagesMax);
|
|
__attribute__((dllimport)) WINBOOL PeekMessageA(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax,UINT wRemoveMsg);
|
|
__attribute__((dllimport)) WINBOOL PeekMessageW(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax,UINT wRemoveMsg);
|
|
__attribute__((dllimport)) WINBOOL RegisterHotKey(HWND hWnd,int id,UINT fsModifiers,UINT vk);
|
|
__attribute__((dllimport)) WINBOOL UnregisterHotKey(HWND hWnd,int id);
|
|
__attribute__((dllimport)) WINBOOL ExitWindowsEx(UINT uFlags,DWORD dwReason);
|
|
__attribute__((dllimport)) WINBOOL SwapMouseButton(WINBOOL fSwap);
|
|
__attribute__((dllimport)) DWORD GetMessagePos(void);
|
|
__attribute__((dllimport)) LONG GetMessageTime(void);
|
|
__attribute__((dllimport)) LPARAM GetMessageExtraInfo(void);
|
|
__attribute__((dllimport)) WINBOOL IsWow64Message(void);
|
|
__attribute__((dllimport)) LPARAM SetMessageExtraInfo(LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT SendMessageA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT SendMessageW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT SendMessageTimeoutA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,UINT fuFlags,UINT uTimeout,PDWORD_PTR lpdwResult);
|
|
__attribute__((dllimport)) LRESULT SendMessageTimeoutW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,UINT fuFlags,UINT uTimeout,PDWORD_PTR lpdwResult);
|
|
__attribute__((dllimport)) WINBOOL SendNotifyMessageA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL SendNotifyMessageW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL SendMessageCallbackA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,SENDASYNCPROC lpResultCallBack,ULONG_PTR dwData);
|
|
__attribute__((dllimport)) WINBOOL SendMessageCallbackW(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam,SENDASYNCPROC lpResultCallBack,ULONG_PTR dwData);
|
|
typedef struct {
|
|
UINT cbSize;
|
|
HDESK hdesk;
|
|
HWND hwnd;
|
|
LUID luid;
|
|
} BSMINFO,*PBSMINFO;
|
|
__attribute__((dllimport)) long BroadcastSystemMessageExA(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam,PBSMINFO pbsmInfo);
|
|
__attribute__((dllimport)) long BroadcastSystemMessageExW(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam,PBSMINFO pbsmInfo);
|
|
__attribute__((dllimport)) long BroadcastSystemMessageA(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) long BroadcastSystemMessageW(DWORD flags,LPDWORD lpInfo,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
typedef PVOID HDEVNOTIFY;
|
|
typedef HDEVNOTIFY *PHDEVNOTIFY;
|
|
typedef HANDLE HPOWERNOTIFY;
|
|
typedef HPOWERNOTIFY *PHPOWERNOTIFY;
|
|
__attribute__((dllimport)) HPOWERNOTIFY RegisterPowerSettingNotification (HANDLE hRecipient, LPCGUID PowerSettingGuid, DWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL UnregisterPowerSettingNotification (HPOWERNOTIFY Handle);
|
|
__attribute__((dllimport)) HPOWERNOTIFY RegisterSuspendResumeNotification (HANDLE hRecipient, DWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL UnregisterSuspendResumeNotification (HPOWERNOTIFY Handle);
|
|
__attribute__((dllimport)) WINBOOL PostMessageA (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL PostMessageW (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL PostThreadMessageA (DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL PostThreadMessageW (DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL AttachThreadInput (DWORD idAttach, DWORD idAttachTo, WINBOOL fAttach);
|
|
__attribute__((dllimport)) WINBOOL ReplyMessage (LRESULT lResult);
|
|
__attribute__((dllimport)) WINBOOL WaitMessage (void);
|
|
__attribute__((dllimport)) DWORD WaitForInputIdle (HANDLE hProcess, DWORD dwMilliseconds);
|
|
__attribute__((dllimport)) LRESULT DefWindowProcA (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT DefWindowProcW (HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) void PostQuitMessage (int nExitCode);
|
|
__attribute__((dllimport)) WINBOOL InSendMessage (void);
|
|
__attribute__((dllimport)) DWORD InSendMessageEx (LPVOID lpReserved);
|
|
__attribute__((dllimport)) UINT GetDoubleClickTime (void);
|
|
__attribute__((dllimport)) WINBOOL SetDoubleClickTime (UINT);
|
|
__attribute__((dllimport)) ATOM RegisterClassA (const WNDCLASSA *lpWndClass);
|
|
__attribute__((dllimport)) ATOM RegisterClassW (const WNDCLASSW *lpWndClass);
|
|
__attribute__((dllimport)) WINBOOL UnregisterClassA (LPCSTR lpClassName, HINSTANCE hInstance);
|
|
__attribute__((dllimport)) WINBOOL UnregisterClassW (LPCWSTR lpClassName, HINSTANCE hInstance);
|
|
__attribute__((dllimport)) WINBOOL GetClassInfoA (HINSTANCE hInstance, LPCSTR lpClassName, LPWNDCLASSA lpWndClass);
|
|
__attribute__((dllimport)) WINBOOL GetClassInfoW (HINSTANCE hInstance, LPCWSTR lpClassName, LPWNDCLASSW lpWndClass);
|
|
__attribute__((dllimport)) ATOM RegisterClassExA (const WNDCLASSEXA *);
|
|
__attribute__((dllimport)) ATOM RegisterClassExW (const WNDCLASSEXW *);
|
|
__attribute__((dllimport)) WINBOOL GetClassInfoExA (HINSTANCE hInstance, LPCSTR lpszClass, LPWNDCLASSEXA lpwcx);
|
|
__attribute__((dllimport)) WINBOOL GetClassInfoExW (HINSTANCE hInstance, LPCWSTR lpszClass, LPWNDCLASSEXW lpwcx);
|
|
__attribute__((dllimport)) LRESULT CallWindowProcA (WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT CallWindowProcW (WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
|
extern const GUID GUID_POWERSCHEME_PERSONALITY;
|
|
extern const GUID GUID_MIN_POWER_SAVINGS;
|
|
extern const GUID GUID_MAX_POWER_SAVINGS;
|
|
extern const GUID GUID_TYPICAL_POWER_SAVINGS;
|
|
extern const GUID GUID_ACDC_POWER_SOURCE;
|
|
extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
|
|
extern const GUID GUID_IDLE_BACKGROUND_TASK;
|
|
extern const GUID GUID_SYSTEM_AWAYMODE;
|
|
extern const GUID GUID_MONITOR_POWER_ON;
|
|
__attribute__((dllimport)) HDEVNOTIFY RegisterDeviceNotificationA(HANDLE hRecipient,LPVOID NotificationFilter,DWORD Flags);
|
|
__attribute__((dllimport)) HDEVNOTIFY RegisterDeviceNotificationW(HANDLE hRecipient,LPVOID NotificationFilter,DWORD Flags);
|
|
__attribute__((dllimport)) WINBOOL UnregisterDeviceNotification(HDEVNOTIFY Handle);
|
|
typedef BOOLEAN ( *PREGISTERCLASSNAMEW)(LPCWSTR);
|
|
__attribute__((dllimport)) HWND CreateWindowExA(DWORD dwExStyle,LPCSTR lpClassName,LPCSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam);
|
|
__attribute__((dllimport)) HWND CreateWindowExW(DWORD dwExStyle,LPCWSTR lpClassName,LPCWSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam);
|
|
__attribute__((dllimport)) WINBOOL IsWindow(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL IsMenu(HMENU hMenu);
|
|
__attribute__((dllimport)) WINBOOL IsChild(HWND hWndParent,HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL DestroyWindow(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL ShowWindow(HWND hWnd,int nCmdShow);
|
|
__attribute__((dllimport)) WINBOOL AnimateWindow(HWND hWnd,DWORD dwTime,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL UpdateLayeredWindow (HWND hWnd, HDC hdcDst, POINT *pptDst, SIZE *psize, HDC hdcSrc, POINT *pptSrc, COLORREF crKey, BLENDFUNCTION *pblend, DWORD dwFlags);
|
|
typedef struct tagUPDATELAYEREDWINDOWINFO {
|
|
DWORD cbSize;
|
|
HDC hdcDst;
|
|
const POINT *pptDst;
|
|
const SIZE *psize;
|
|
HDC hdcSrc;
|
|
const POINT *pptSrc;
|
|
COLORREF crKey;
|
|
const BLENDFUNCTION *pblend;
|
|
DWORD dwFlags;
|
|
const RECT *prcDirty;
|
|
} UPDATELAYEREDWINDOWINFO,*PUPDATELAYEREDWINDOWINFO;
|
|
__attribute__((dllimport)) WINBOOL UpdateLayeredWindowIndirect (HWND hWnd, const UPDATELAYEREDWINDOWINFO *pULWInfo);
|
|
__attribute__((dllimport)) WINBOOL GetLayeredWindowAttributes (HWND hwnd, COLORREF *pcrKey, BYTE *pbAlpha, DWORD *pdwFlags);
|
|
__attribute__((dllimport)) WINBOOL PrintWindow (HWND hwnd, HDC hdcBlt, UINT nFlags);
|
|
__attribute__((dllimport)) WINBOOL SetLayeredWindowAttributes (HWND hwnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags);
|
|
typedef struct {
|
|
UINT cbSize;
|
|
HWND hwnd;
|
|
DWORD dwFlags;
|
|
UINT uCount;
|
|
DWORD dwTimeout;
|
|
} FLASHWINFO,*PFLASHWINFO;
|
|
__attribute__((dllimport)) WINBOOL ShowWindowAsync (HWND hWnd, int nCmdShow);
|
|
__attribute__((dllimport)) WINBOOL FlashWindow (HWND hWnd, WINBOOL bInvert);
|
|
__attribute__((dllimport)) WINBOOL FlashWindowEx (PFLASHWINFO pfwi);
|
|
__attribute__((dllimport)) WINBOOL ShowOwnedPopups (HWND hWnd, WINBOOL fShow);
|
|
__attribute__((dllimport)) WINBOOL OpenIcon (HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL CloseWindow (HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL MoveWindow (HWND hWnd, int X, int Y, int nWidth, int nHeight, WINBOOL bRepaint);
|
|
__attribute__((dllimport)) WINBOOL SetWindowPos (HWND hWnd, HWND hWndInsertAfter, int X, int Y, int cx, int cy, UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL GetWindowPlacement (HWND hWnd, WINDOWPLACEMENT *lpwndpl);
|
|
__attribute__((dllimport)) WINBOOL SetWindowPlacement (HWND hWnd, const WINDOWPLACEMENT *lpwndpl);
|
|
__attribute__((dllimport)) HDWP BeginDeferWindowPos (int nNumWindows);
|
|
__attribute__((dllimport)) HDWP DeferWindowPos (HDWP hWinPosInfo, HWND hWnd, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL EndDeferWindowPos (HDWP hWinPosInfo);
|
|
__attribute__((dllimport)) WINBOOL IsWindowVisible (HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL IsIconic (HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL AnyPopup (void);
|
|
__attribute__((dllimport)) WINBOOL BringWindowToTop (HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL IsZoomed (HWND hWnd);
|
|
#pragma pack(push,2)
|
|
typedef struct {
|
|
DWORD style;
|
|
DWORD dwExtendedStyle;
|
|
WORD cdit;
|
|
short x;
|
|
short y;
|
|
short cx;
|
|
short cy;
|
|
} DLGTEMPLATE;
|
|
typedef DLGTEMPLATE *LPDLGTEMPLATEA;
|
|
typedef DLGTEMPLATE *LPDLGTEMPLATEW;
|
|
typedef LPDLGTEMPLATEA LPDLGTEMPLATE;
|
|
typedef const DLGTEMPLATE *LPCDLGTEMPLATEA;
|
|
typedef const DLGTEMPLATE *LPCDLGTEMPLATEW;
|
|
typedef LPCDLGTEMPLATEA LPCDLGTEMPLATE;
|
|
typedef struct {
|
|
DWORD style;
|
|
DWORD dwExtendedStyle;
|
|
short x;
|
|
short y;
|
|
short cx;
|
|
short cy;
|
|
WORD id;
|
|
} DLGITEMTEMPLATE;
|
|
typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEA;
|
|
typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEW;
|
|
typedef PDLGITEMTEMPLATEA PDLGITEMTEMPLATE;
|
|
typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEA;
|
|
typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEW;
|
|
typedef LPDLGITEMTEMPLATEA LPDLGITEMTEMPLATE;
|
|
#pragma pack(pop)
|
|
__attribute__((dllimport)) HWND CreateDialogParamA(HINSTANCE hInstance,LPCSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) HWND CreateDialogParamW(HINSTANCE hInstance,LPCWSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) HWND CreateDialogIndirectParamA(HINSTANCE hInstance,LPCDLGTEMPLATEA lpTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) HWND CreateDialogIndirectParamW(HINSTANCE hInstance,LPCDLGTEMPLATEW lpTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) INT_PTR DialogBoxParamA(HINSTANCE hInstance,LPCSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) INT_PTR DialogBoxParamW(HINSTANCE hInstance,LPCWSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) INT_PTR DialogBoxIndirectParamA(HINSTANCE hInstance,LPCDLGTEMPLATEA hDialogTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) INT_PTR DialogBoxIndirectParamW(HINSTANCE hInstance,LPCDLGTEMPLATEW hDialogTemplate,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam);
|
|
__attribute__((dllimport)) WINBOOL EndDialog(HWND hDlg,INT_PTR nResult);
|
|
__attribute__((dllimport)) HWND GetDlgItem(HWND hDlg,int nIDDlgItem);
|
|
__attribute__((dllimport)) WINBOOL SetDlgItemInt(HWND hDlg,int nIDDlgItem,UINT uValue,WINBOOL bSigned);
|
|
__attribute__((dllimport)) UINT GetDlgItemInt(HWND hDlg,int nIDDlgItem,WINBOOL *lpTranslated,WINBOOL bSigned);
|
|
__attribute__((dllimport)) WINBOOL SetDlgItemTextA(HWND hDlg,int nIDDlgItem,LPCSTR lpString);
|
|
__attribute__((dllimport)) WINBOOL SetDlgItemTextW(HWND hDlg,int nIDDlgItem,LPCWSTR lpString);
|
|
__attribute__((dllimport)) UINT GetDlgItemTextA(HWND hDlg,int nIDDlgItem,LPSTR lpString,int cchMax);
|
|
__attribute__((dllimport)) UINT GetDlgItemTextW(HWND hDlg,int nIDDlgItem,LPWSTR lpString,int cchMax);
|
|
__attribute__((dllimport)) WINBOOL CheckDlgButton(HWND hDlg,int nIDButton,UINT uCheck);
|
|
__attribute__((dllimport)) WINBOOL CheckRadioButton(HWND hDlg,int nIDFirstButton,int nIDLastButton,int nIDCheckButton);
|
|
__attribute__((dllimport)) UINT IsDlgButtonChecked(HWND hDlg,int nIDButton);
|
|
__attribute__((dllimport)) LRESULT SendDlgItemMessageA(HWND hDlg,int nIDDlgItem,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT SendDlgItemMessageW(HWND hDlg,int nIDDlgItem,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) HWND GetNextDlgGroupItem(HWND hDlg,HWND hCtl,WINBOOL bPrevious);
|
|
__attribute__((dllimport)) HWND GetNextDlgTabItem(HWND hDlg,HWND hCtl,WINBOOL bPrevious);
|
|
__attribute__((dllimport)) int GetDlgCtrlID(HWND hWnd);
|
|
__attribute__((dllimport)) long GetDialogBaseUnits(void);
|
|
__attribute__((dllimport)) LRESULT DefDlgProcA(HWND hDlg,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT DefDlgProcW(HWND hDlg,UINT Msg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL CallMsgFilterA(LPMSG lpMsg,int nCode);
|
|
__attribute__((dllimport)) WINBOOL CallMsgFilterW(LPMSG lpMsg,int nCode);
|
|
__attribute__((dllimport)) WINBOOL OpenClipboard(HWND hWndNewOwner);
|
|
__attribute__((dllimport)) WINBOOL CloseClipboard(void);
|
|
__attribute__((dllimport)) DWORD GetClipboardSequenceNumber(void);
|
|
__attribute__((dllimport)) HWND GetClipboardOwner(void);
|
|
__attribute__((dllimport)) HWND SetClipboardViewer(HWND hWndNewViewer);
|
|
__attribute__((dllimport)) HWND GetClipboardViewer(void);
|
|
__attribute__((dllimport)) WINBOOL ChangeClipboardChain(HWND hWndRemove, HWND hWndNewNext);
|
|
__attribute__((dllimport)) HANDLE SetClipboardData(UINT uFormat, HANDLE hMem);
|
|
__attribute__((dllimport)) HANDLE GetClipboardData(UINT uFormat);
|
|
__attribute__((dllimport)) UINT RegisterClipboardFormatA(LPCSTR lpszFormat);
|
|
__attribute__((dllimport)) UINT RegisterClipboardFormatW(LPCWSTR lpszFormat);
|
|
__attribute__((dllimport)) int CountClipboardFormats(void);
|
|
__attribute__((dllimport)) UINT EnumClipboardFormats(UINT format);
|
|
__attribute__((dllimport)) int GetClipboardFormatNameA(UINT format, LPSTR lpszFormatName, int cchMaxCount);
|
|
__attribute__((dllimport)) int GetClipboardFormatNameW(UINT format, LPWSTR lpszFormatName, int cchMaxCount);
|
|
__attribute__((dllimport)) WINBOOL EmptyClipboard(void);
|
|
__attribute__((dllimport)) WINBOOL IsClipboardFormatAvailable(UINT format);
|
|
__attribute__((dllimport)) int GetPriorityClipboardFormat(UINT *paFormatPriorityList, int cFormats);
|
|
__attribute__((dllimport)) HWND GetOpenClipboardWindow(void);
|
|
__attribute__((dllimport)) WINBOOL CharToOemA(LPCSTR lpszSrc,LPSTR lpszDst);
|
|
__attribute__((dllimport)) WINBOOL CharToOemW(LPCWSTR lpszSrc,LPSTR lpszDst);
|
|
__attribute__((dllimport)) WINBOOL OemToCharA(LPCSTR lpszSrc,LPSTR lpszDst);
|
|
__attribute__((dllimport)) WINBOOL OemToCharW(LPCSTR lpszSrc,LPWSTR lpszDst);
|
|
__attribute__((dllimport)) WINBOOL CharToOemBuffA(LPCSTR lpszSrc,LPSTR lpszDst,DWORD cchDstLength);
|
|
__attribute__((dllimport)) WINBOOL CharToOemBuffW(LPCWSTR lpszSrc,LPSTR lpszDst,DWORD cchDstLength);
|
|
__attribute__((dllimport)) WINBOOL OemToCharBuffA(LPCSTR lpszSrc,LPSTR lpszDst,DWORD cchDstLength);
|
|
__attribute__((dllimport)) WINBOOL OemToCharBuffW(LPCSTR lpszSrc,LPWSTR lpszDst,DWORD cchDstLength);
|
|
__attribute__((dllimport)) LPSTR CharUpperA(LPSTR lpsz);
|
|
__attribute__((dllimport)) LPWSTR CharUpperW(LPWSTR lpsz);
|
|
__attribute__((dllimport)) DWORD CharUpperBuffA(LPSTR lpsz,DWORD cchLength);
|
|
__attribute__((dllimport)) DWORD CharUpperBuffW(LPWSTR lpsz,DWORD cchLength);
|
|
__attribute__((dllimport)) LPSTR CharLowerA(LPSTR lpsz);
|
|
__attribute__((dllimport)) LPWSTR CharLowerW(LPWSTR lpsz);
|
|
__attribute__((dllimport)) DWORD CharLowerBuffA(LPSTR lpsz,DWORD cchLength);
|
|
__attribute__((dllimport)) DWORD CharLowerBuffW(LPWSTR lpsz,DWORD cchLength);
|
|
__attribute__((dllimport)) LPSTR CharNextA(LPCSTR lpsz);
|
|
__attribute__((dllimport)) LPWSTR CharNextW(LPCWSTR lpsz);
|
|
__attribute__((dllimport)) LPSTR CharPrevA(LPCSTR lpszStart,LPCSTR lpszCurrent);
|
|
__attribute__((dllimport)) LPWSTR CharPrevW(LPCWSTR lpszStart,LPCWSTR lpszCurrent);
|
|
__attribute__((dllimport)) LPSTR CharNextExA(WORD CodePage,LPCSTR lpCurrentChar,DWORD dwFlags);
|
|
__attribute__((dllimport)) LPSTR CharPrevExA(WORD CodePage,LPCSTR lpStart,LPCSTR lpCurrentChar,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL IsCharAlphaA(CHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharAlphaW(WCHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharAlphaNumericA(CHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharAlphaNumericW(WCHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharUpperA(CHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharUpperW(WCHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharLowerA(CHAR ch);
|
|
__attribute__((dllimport)) WINBOOL IsCharLowerW(WCHAR ch);
|
|
__attribute__((dllimport)) HWND SetFocus(HWND hWnd);
|
|
__attribute__((dllimport)) HWND GetActiveWindow(void);
|
|
__attribute__((dllimport)) HWND GetFocus(void);
|
|
__attribute__((dllimport)) UINT GetKBCodePage(void);
|
|
__attribute__((dllimport)) SHORT GetKeyState(int nVirtKey);
|
|
__attribute__((dllimport)) SHORT GetAsyncKeyState(int vKey);
|
|
__attribute__((dllimport)) WINBOOL GetKeyboardState(PBYTE lpKeyState);
|
|
__attribute__((dllimport)) WINBOOL SetKeyboardState(LPBYTE lpKeyState);
|
|
__attribute__((dllimport)) int GetKeyNameTextA(LONG lParam,LPSTR lpString,int cchSize);
|
|
__attribute__((dllimport)) int GetKeyNameTextW(LONG lParam,LPWSTR lpString,int cchSize);
|
|
__attribute__((dllimport)) int GetKeyboardType(int nTypeFlag);
|
|
__attribute__((dllimport)) int ToAscii(UINT uVirtKey,UINT uScanCode,const BYTE *lpKeyState,LPWORD lpChar,UINT uFlags);
|
|
__attribute__((dllimport)) int ToAsciiEx(UINT uVirtKey,UINT uScanCode,const BYTE *lpKeyState,LPWORD lpChar,UINT uFlags,HKL dwhkl);
|
|
__attribute__((dllimport)) int ToUnicode(UINT wVirtKey,UINT wScanCode,const BYTE *lpKeyState,LPWSTR pwszBuff,int cchBuff,UINT wFlags);
|
|
__attribute__((dllimport)) DWORD OemKeyScan(WORD wOemChar);
|
|
__attribute__((dllimport)) SHORT VkKeyScanA(CHAR ch);
|
|
__attribute__((dllimport)) SHORT VkKeyScanW(WCHAR ch);
|
|
__attribute__((dllimport)) SHORT VkKeyScanExA(CHAR ch,HKL dwhkl);
|
|
__attribute__((dllimport)) SHORT VkKeyScanExW(WCHAR ch,HKL dwhkl);
|
|
__attribute__((dllimport)) void keybd_event(BYTE bVk,BYTE bScan,DWORD dwFlags,ULONG_PTR dwExtraInfo);
|
|
__attribute__((dllimport)) void mouse_event(DWORD dwFlags,DWORD dx,DWORD dy,DWORD dwData,ULONG_PTR dwExtraInfo);
|
|
typedef struct tagMOUSEINPUT {
|
|
LONG dx;
|
|
LONG dy;
|
|
DWORD mouseData;
|
|
DWORD dwFlags;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} MOUSEINPUT,*PMOUSEINPUT,*LPMOUSEINPUT;
|
|
typedef struct tagKEYBDINPUT {
|
|
WORD wVk;
|
|
WORD wScan;
|
|
DWORD dwFlags;
|
|
DWORD time;
|
|
ULONG_PTR dwExtraInfo;
|
|
} KEYBDINPUT,*PKEYBDINPUT,*LPKEYBDINPUT;
|
|
typedef struct tagHARDWAREINPUT {
|
|
DWORD uMsg;
|
|
WORD wParamL;
|
|
WORD wParamH;
|
|
} HARDWAREINPUT,*PHARDWAREINPUT,*LPHARDWAREINPUT;
|
|
typedef struct tagINPUT {
|
|
DWORD type;
|
|
__extension__ union {
|
|
MOUSEINPUT mi;
|
|
KEYBDINPUT ki;
|
|
HARDWAREINPUT hi;
|
|
} ;
|
|
} INPUT,*PINPUT,*LPINPUT;
|
|
__attribute__((dllimport)) UINT SendInput(UINT cInputs,LPINPUT pInputs,int cbSize);
|
|
typedef struct tagLASTINPUTINFO {
|
|
UINT cbSize;
|
|
DWORD dwTime;
|
|
} LASTINPUTINFO,*PLASTINPUTINFO;
|
|
__attribute__((dllimport)) WINBOOL GetLastInputInfo(PLASTINPUTINFO plii);
|
|
__attribute__((dllimport)) UINT MapVirtualKeyA(UINT uCode,UINT uMapType);
|
|
__attribute__((dllimport)) UINT MapVirtualKeyW(UINT uCode,UINT uMapType);
|
|
__attribute__((dllimport)) UINT MapVirtualKeyExA(UINT uCode,UINT uMapType,HKL dwhkl);
|
|
__attribute__((dllimport)) UINT MapVirtualKeyExW(UINT uCode,UINT uMapType,HKL dwhkl);
|
|
__attribute__((dllimport)) WINBOOL GetInputState(void);
|
|
__attribute__((dllimport)) DWORD GetQueueStatus(UINT flags);
|
|
__attribute__((dllimport)) HWND GetCapture(void);
|
|
__attribute__((dllimport)) HWND SetCapture(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL ReleaseCapture(void);
|
|
__attribute__((dllimport)) DWORD MsgWaitForMultipleObjects(DWORD nCount,const HANDLE *pHandles,WINBOOL fWaitAll,DWORD dwMilliseconds,DWORD dwWakeMask);
|
|
__attribute__((dllimport)) DWORD MsgWaitForMultipleObjectsEx(DWORD nCount,const HANDLE *pHandles,DWORD dwMilliseconds,DWORD dwWakeMask,DWORD dwFlags);
|
|
__attribute__((dllimport)) UINT_PTR SetTimer(HWND hWnd,UINT_PTR nIDEvent,UINT uElapse,TIMERPROC lpTimerFunc);
|
|
__attribute__((dllimport)) WINBOOL KillTimer(HWND hWnd,UINT_PTR uIDEvent);
|
|
__attribute__((dllimport)) WINBOOL IsWindowUnicode(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL EnableWindow(HWND hWnd,WINBOOL bEnable);
|
|
__attribute__((dllimport)) WINBOOL IsWindowEnabled(HWND hWnd);
|
|
__attribute__((dllimport)) HACCEL LoadAcceleratorsA(HINSTANCE hInstance,LPCSTR lpTableName);
|
|
__attribute__((dllimport)) HACCEL LoadAcceleratorsW(HINSTANCE hInstance,LPCWSTR lpTableName);
|
|
__attribute__((dllimport)) HACCEL CreateAcceleratorTableA(LPACCEL paccel,int cAccel);
|
|
__attribute__((dllimport)) HACCEL CreateAcceleratorTableW(LPACCEL paccel,int cAccel);
|
|
__attribute__((dllimport)) WINBOOL DestroyAcceleratorTable(HACCEL hAccel);
|
|
__attribute__((dllimport)) int CopyAcceleratorTableA(HACCEL hAccelSrc,LPACCEL lpAccelDst,int cAccelEntries);
|
|
__attribute__((dllimport)) int CopyAcceleratorTableW(HACCEL hAccelSrc,LPACCEL lpAccelDst,int cAccelEntries);
|
|
__attribute__((dllimport)) int TranslateAcceleratorA(HWND hWnd,HACCEL hAccTable,LPMSG lpMsg);
|
|
__attribute__((dllimport)) int TranslateAcceleratorW(HWND hWnd,HACCEL hAccTable,LPMSG lpMsg);
|
|
__attribute__((dllimport)) int GetSystemMetrics(int nIndex);
|
|
__attribute__((dllimport)) HMENU LoadMenuA(HINSTANCE hInstance,LPCSTR lpMenuName);
|
|
__attribute__((dllimport)) HMENU LoadMenuW(HINSTANCE hInstance,LPCWSTR lpMenuName);
|
|
__attribute__((dllimport)) HMENU LoadMenuIndirectA(const MENUTEMPLATEA *lpMenuTemplate);
|
|
__attribute__((dllimport)) HMENU LoadMenuIndirectW(const MENUTEMPLATEW *lpMenuTemplate);
|
|
__attribute__((dllimport)) HMENU GetMenu(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL SetMenu(HWND hWnd,HMENU hMenu);
|
|
__attribute__((dllimport)) WINBOOL ChangeMenuA(HMENU hMenu,UINT cmd,LPCSTR lpszNewItem,UINT cmdInsert,UINT flags);
|
|
__attribute__((dllimport)) WINBOOL ChangeMenuW(HMENU hMenu,UINT cmd,LPCWSTR lpszNewItem,UINT cmdInsert,UINT flags);
|
|
__attribute__((dllimport)) WINBOOL HiliteMenuItem(HWND hWnd,HMENU hMenu,UINT uIDHiliteItem,UINT uHilite);
|
|
__attribute__((dllimport)) int GetMenuStringA(HMENU hMenu,UINT uIDItem,LPSTR lpString,int cchMax,UINT flags);
|
|
__attribute__((dllimport)) int GetMenuStringW(HMENU hMenu,UINT uIDItem,LPWSTR lpString,int cchMax,UINT flags);
|
|
__attribute__((dllimport)) UINT GetMenuState(HMENU hMenu,UINT uId,UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL DrawMenuBar(HWND hWnd);
|
|
__attribute__((dllimport)) HMENU GetSystemMenu(HWND hWnd,WINBOOL bRevert);
|
|
__attribute__((dllimport)) HMENU CreateMenu(void);
|
|
__attribute__((dllimport)) HMENU CreatePopupMenu(void);
|
|
__attribute__((dllimport)) WINBOOL DestroyMenu(HMENU hMenu);
|
|
__attribute__((dllimport)) DWORD CheckMenuItem(HMENU hMenu,UINT uIDCheckItem,UINT uCheck);
|
|
__attribute__((dllimport)) WINBOOL EnableMenuItem(HMENU hMenu,UINT uIDEnableItem,UINT uEnable);
|
|
__attribute__((dllimport)) HMENU GetSubMenu(HMENU hMenu,int nPos);
|
|
__attribute__((dllimport)) UINT GetMenuItemID(HMENU hMenu,int nPos);
|
|
__attribute__((dllimport)) int GetMenuItemCount(HMENU hMenu);
|
|
__attribute__((dllimport)) WINBOOL InsertMenuA(HMENU hMenu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCSTR lpNewItem);
|
|
__attribute__((dllimport)) WINBOOL InsertMenuW(HMENU hMenu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCWSTR lpNewItem);
|
|
__attribute__((dllimport)) WINBOOL AppendMenuA(HMENU hMenu,UINT uFlags,UINT_PTR uIDNewItem,LPCSTR lpNewItem);
|
|
__attribute__((dllimport)) WINBOOL AppendMenuW(HMENU hMenu,UINT uFlags,UINT_PTR uIDNewItem,LPCWSTR lpNewItem);
|
|
__attribute__((dllimport)) WINBOOL ModifyMenuA(HMENU hMnu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCSTR lpNewItem);
|
|
__attribute__((dllimport)) WINBOOL ModifyMenuW(HMENU hMnu,UINT uPosition,UINT uFlags,UINT_PTR uIDNewItem,LPCWSTR lpNewItem);
|
|
__attribute__((dllimport)) WINBOOL RemoveMenu(HMENU hMenu,UINT uPosition,UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL DeleteMenu(HMENU hMenu,UINT uPosition,UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL SetMenuItemBitmaps(HMENU hMenu,UINT uPosition,UINT uFlags,HBITMAP hBitmapUnchecked,HBITMAP hBitmapChecked);
|
|
__attribute__((dllimport)) LONG GetMenuCheckMarkDimensions(void);
|
|
__attribute__((dllimport)) WINBOOL TrackPopupMenu(HMENU hMenu,UINT uFlags,int x,int y,int nReserved,HWND hWnd,const RECT *prcRect);
|
|
typedef struct tagTPMPARAMS {
|
|
UINT cbSize;
|
|
RECT rcExclude;
|
|
} TPMPARAMS;
|
|
typedef struct tagMENUINFO {
|
|
DWORD cbSize;
|
|
DWORD fMask;
|
|
DWORD dwStyle;
|
|
UINT cyMax;
|
|
HBRUSH hbrBack;
|
|
DWORD dwContextHelpID;
|
|
ULONG_PTR dwMenuData;
|
|
} MENUINFO,*LPMENUINFO;
|
|
typedef TPMPARAMS *LPTPMPARAMS;
|
|
typedef MENUINFO const *LPCMENUINFO;
|
|
__attribute__((dllimport)) WINBOOL TrackPopupMenuEx(HMENU,UINT,int,int,HWND,LPTPMPARAMS);
|
|
__attribute__((dllimport)) WINBOOL GetMenuInfo(HMENU,LPMENUINFO);
|
|
__attribute__((dllimport)) WINBOOL SetMenuInfo(HMENU,LPCMENUINFO);
|
|
__attribute__((dllimport)) WINBOOL EndMenu(void);
|
|
typedef struct tagMENUGETOBJECTINFO {
|
|
DWORD dwFlags;
|
|
UINT uPos;
|
|
HMENU hmenu;
|
|
PVOID riid;
|
|
PVOID pvObj;
|
|
} MENUGETOBJECTINFO,*PMENUGETOBJECTINFO;
|
|
typedef struct tagMENUITEMINFOA {
|
|
UINT cbSize;
|
|
UINT fMask;
|
|
UINT fType;
|
|
UINT fState;
|
|
UINT wID;
|
|
HMENU hSubMenu;
|
|
HBITMAP hbmpChecked;
|
|
HBITMAP hbmpUnchecked;
|
|
ULONG_PTR dwItemData;
|
|
LPSTR dwTypeData;
|
|
UINT cch;
|
|
HBITMAP hbmpItem;
|
|
} MENUITEMINFOA,*LPMENUITEMINFOA;
|
|
typedef struct tagMENUITEMINFOW {
|
|
UINT cbSize;
|
|
UINT fMask;
|
|
UINT fType;
|
|
UINT fState;
|
|
UINT wID;
|
|
HMENU hSubMenu;
|
|
HBITMAP hbmpChecked;
|
|
HBITMAP hbmpUnchecked;
|
|
ULONG_PTR dwItemData;
|
|
LPWSTR dwTypeData;
|
|
UINT cch;
|
|
HBITMAP hbmpItem;
|
|
} MENUITEMINFOW,*LPMENUITEMINFOW;
|
|
typedef MENUITEMINFOA MENUITEMINFO;
|
|
typedef LPMENUITEMINFOA LPMENUITEMINFO;
|
|
typedef MENUITEMINFOA const *LPCMENUITEMINFOA;
|
|
typedef MENUITEMINFOW const *LPCMENUITEMINFOW;
|
|
typedef LPCMENUITEMINFOA LPCMENUITEMINFO;
|
|
__attribute__((dllimport)) WINBOOL InsertMenuItemA(HMENU hmenu,UINT item,WINBOOL fByPosition,LPCMENUITEMINFOA lpmi);
|
|
__attribute__((dllimport)) WINBOOL InsertMenuItemW(HMENU hmenu,UINT item,WINBOOL fByPosition,LPCMENUITEMINFOW lpmi);
|
|
__attribute__((dllimport)) WINBOOL GetMenuItemInfoA(HMENU hmenu,UINT item,WINBOOL fByPosition,LPMENUITEMINFOA lpmii);
|
|
__attribute__((dllimport)) WINBOOL GetMenuItemInfoW(HMENU hmenu,UINT item,WINBOOL fByPosition,LPMENUITEMINFOW lpmii);
|
|
__attribute__((dllimport)) WINBOOL SetMenuItemInfoA(HMENU hmenu,UINT item,WINBOOL fByPositon,LPCMENUITEMINFOA lpmii);
|
|
__attribute__((dllimport)) WINBOOL SetMenuItemInfoW(HMENU hmenu,UINT item,WINBOOL fByPositon,LPCMENUITEMINFOW lpmii);
|
|
__attribute__((dllimport)) UINT GetMenuDefaultItem(HMENU hMenu,UINT fByPos,UINT gmdiFlags);
|
|
__attribute__((dllimport)) WINBOOL SetMenuDefaultItem(HMENU hMenu,UINT uItem,UINT fByPos);
|
|
__attribute__((dllimport)) WINBOOL GetMenuItemRect(HWND hWnd,HMENU hMenu,UINT uItem,LPRECT lprcItem);
|
|
__attribute__((dllimport)) int MenuItemFromPoint(HWND hWnd,HMENU hMenu,POINT ptScreen);
|
|
typedef struct tagDROPSTRUCT {
|
|
HWND hwndSource;
|
|
HWND hwndSink;
|
|
DWORD wFmt;
|
|
ULONG_PTR dwData;
|
|
POINT ptDrop;
|
|
DWORD dwControlData;
|
|
} DROPSTRUCT,*PDROPSTRUCT,*LPDROPSTRUCT;
|
|
__attribute__((dllimport)) DWORD DragObject(HWND hwndParent,HWND hwndFrom,UINT fmt,ULONG_PTR data,HCURSOR hcur);
|
|
__attribute__((dllimport)) WINBOOL DragDetect(HWND hwnd,POINT pt);
|
|
__attribute__((dllimport)) WINBOOL DrawIcon(HDC hDC,int X,int Y,HICON hIcon);
|
|
typedef struct tagDRAWTEXTPARAMS {
|
|
UINT cbSize;
|
|
int iTabLength;
|
|
int iLeftMargin;
|
|
int iRightMargin;
|
|
UINT uiLengthDrawn;
|
|
} DRAWTEXTPARAMS,*LPDRAWTEXTPARAMS;
|
|
__attribute__((dllimport)) int DrawTextA(HDC hdc,LPCSTR lpchText,int cchText,LPRECT lprc,UINT format);
|
|
__attribute__((dllimport)) int DrawTextW(HDC hdc,LPCWSTR lpchText,int cchText,LPRECT lprc,UINT format);
|
|
__attribute__((dllimport)) int DrawTextExA(HDC hdc,LPSTR lpchText,int cchText,LPRECT lprc,UINT format,LPDRAWTEXTPARAMS lpdtp);
|
|
__attribute__((dllimport)) int DrawTextExW(HDC hdc,LPWSTR lpchText,int cchText,LPRECT lprc,UINT format,LPDRAWTEXTPARAMS lpdtp);
|
|
__attribute__((dllimport)) WINBOOL GrayStringA(HDC hDC,HBRUSH hBrush,GRAYSTRINGPROC lpOutputFunc,LPARAM lpData,int nCount,int X,int Y,int nWidth,int nHeight);
|
|
__attribute__((dllimport)) WINBOOL GrayStringW(HDC hDC,HBRUSH hBrush,GRAYSTRINGPROC lpOutputFunc,LPARAM lpData,int nCount,int X,int Y,int nWidth,int nHeight);
|
|
__attribute__((dllimport)) WINBOOL DrawStateA(HDC hdc,HBRUSH hbrFore,DRAWSTATEPROC qfnCallBack,LPARAM lData,WPARAM wData,int x,int y,int cx,int cy,UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL DrawStateW(HDC hdc,HBRUSH hbrFore,DRAWSTATEPROC qfnCallBack,LPARAM lData,WPARAM wData,int x,int y,int cx,int cy,UINT uFlags);
|
|
__attribute__((dllimport)) LONG TabbedTextOutA(HDC hdc,int x,int y,LPCSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions,int nTabOrigin);
|
|
__attribute__((dllimport)) LONG TabbedTextOutW(HDC hdc,int x,int y,LPCWSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions,int nTabOrigin);
|
|
__attribute__((dllimport)) DWORD GetTabbedTextExtentA(HDC hdc,LPCSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions);
|
|
__attribute__((dllimport)) DWORD GetTabbedTextExtentW(HDC hdc,LPCWSTR lpString,int chCount,int nTabPositions,const INT *lpnTabStopPositions);
|
|
__attribute__((dllimport)) WINBOOL UpdateWindow(HWND hWnd);
|
|
__attribute__((dllimport)) HWND SetActiveWindow(HWND hWnd);
|
|
__attribute__((dllimport)) HWND GetForegroundWindow(void);
|
|
__attribute__((dllimport)) WINBOOL PaintDesktop(HDC hdc);
|
|
__attribute__((dllimport)) void SwitchToThisWindow(HWND hwnd,WINBOOL fUnknown);
|
|
__attribute__((dllimport)) WINBOOL SetForegroundWindow(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL AllowSetForegroundWindow(DWORD dwProcessId);
|
|
__attribute__((dllimport)) WINBOOL LockSetForegroundWindow(UINT uLockCode);
|
|
__attribute__((dllimport)) HWND WindowFromDC(HDC hDC);
|
|
__attribute__((dllimport)) HDC GetDC(HWND hWnd);
|
|
__attribute__((dllimport)) HDC GetDCEx(HWND hWnd,HRGN hrgnClip,DWORD flags);
|
|
__attribute__((dllimport)) HDC GetWindowDC(HWND hWnd);
|
|
__attribute__((dllimport)) int ReleaseDC(HWND hWnd,HDC hDC);
|
|
__attribute__((dllimport)) HDC BeginPaint(HWND hWnd,LPPAINTSTRUCT lpPaint);
|
|
__attribute__((dllimport)) WINBOOL EndPaint(HWND hWnd,const PAINTSTRUCT *lpPaint);
|
|
__attribute__((dllimport)) WINBOOL GetUpdateRect(HWND hWnd,LPRECT lpRect,WINBOOL bErase);
|
|
__attribute__((dllimport)) int GetUpdateRgn(HWND hWnd,HRGN hRgn,WINBOOL bErase);
|
|
__attribute__((dllimport)) int SetWindowRgn(HWND hWnd,HRGN hRgn,WINBOOL bRedraw);
|
|
__attribute__((dllimport)) int GetWindowRgn(HWND hWnd,HRGN hRgn);
|
|
__attribute__((dllimport)) int GetWindowRgnBox(HWND hWnd,LPRECT lprc);
|
|
__attribute__((dllimport)) int ExcludeUpdateRgn(HDC hDC,HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL InvalidateRect(HWND hWnd,const RECT *lpRect,WINBOOL bErase);
|
|
__attribute__((dllimport)) WINBOOL ValidateRect(HWND hWnd,const RECT *lpRect);
|
|
__attribute__((dllimport)) WINBOOL InvalidateRgn(HWND hWnd,HRGN hRgn,WINBOOL bErase);
|
|
__attribute__((dllimport)) WINBOOL ValidateRgn(HWND hWnd,HRGN hRgn);
|
|
__attribute__((dllimport)) WINBOOL RedrawWindow(HWND hWnd,const RECT *lprcUpdate,HRGN hrgnUpdate,UINT flags);
|
|
__attribute__((dllimport)) WINBOOL LockWindowUpdate(HWND hWndLock);
|
|
__attribute__((dllimport)) WINBOOL ScrollWindow(HWND hWnd,int XAmount,int YAmount,const RECT *lpRect,const RECT *lpClipRect);
|
|
__attribute__((dllimport)) WINBOOL ScrollDC(HDC hDC,int dx,int dy,const RECT *lprcScroll,const RECT *lprcClip,HRGN hrgnUpdate,LPRECT lprcUpdate);
|
|
__attribute__((dllimport)) int ScrollWindowEx(HWND hWnd,int dx,int dy,const RECT *prcScroll,const RECT *prcClip,HRGN hrgnUpdate,LPRECT prcUpdate,UINT flags);
|
|
__attribute__((dllimport)) int SetScrollPos(HWND hWnd,int nBar,int nPos,WINBOOL bRedraw);
|
|
__attribute__((dllimport)) int GetScrollPos(HWND hWnd,int nBar);
|
|
__attribute__((dllimport)) WINBOOL SetScrollRange(HWND hWnd,int nBar,int nMinPos,int nMaxPos,WINBOOL bRedraw);
|
|
__attribute__((dllimport)) WINBOOL GetScrollRange(HWND hWnd,int nBar,LPINT lpMinPos,LPINT lpMaxPos);
|
|
__attribute__((dllimport)) WINBOOL ShowScrollBar(HWND hWnd,int wBar,WINBOOL bShow);
|
|
__attribute__((dllimport)) WINBOOL EnableScrollBar(HWND hWnd,UINT wSBflags,UINT wArrows);
|
|
__attribute__((dllimport)) WINBOOL SetPropA(HWND hWnd,LPCSTR lpString,HANDLE hData);
|
|
__attribute__((dllimport)) WINBOOL SetPropW(HWND hWnd,LPCWSTR lpString,HANDLE hData);
|
|
__attribute__((dllimport)) HANDLE GetPropA(HWND hWnd,LPCSTR lpString);
|
|
__attribute__((dllimport)) HANDLE GetPropW(HWND hWnd,LPCWSTR lpString);
|
|
__attribute__((dllimport)) HANDLE RemovePropA(HWND hWnd,LPCSTR lpString);
|
|
__attribute__((dllimport)) HANDLE RemovePropW(HWND hWnd,LPCWSTR lpString);
|
|
__attribute__((dllimport)) int EnumPropsExA(HWND hWnd,PROPENUMPROCEXA lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumPropsExW(HWND hWnd,PROPENUMPROCEXW lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) int EnumPropsA(HWND hWnd,PROPENUMPROCA lpEnumFunc);
|
|
__attribute__((dllimport)) int EnumPropsW(HWND hWnd,PROPENUMPROCW lpEnumFunc);
|
|
__attribute__((dllimport)) WINBOOL SetWindowTextA(HWND hWnd,LPCSTR lpString);
|
|
__attribute__((dllimport)) WINBOOL SetWindowTextW(HWND hWnd,LPCWSTR lpString);
|
|
__attribute__((dllimport)) int GetWindowTextA(HWND hWnd,LPSTR lpString,int nMaxCount);
|
|
__attribute__((dllimport)) int GetWindowTextW(HWND hWnd,LPWSTR lpString,int nMaxCount);
|
|
__attribute__((dllimport)) int GetWindowTextLengthA(HWND hWnd);
|
|
__attribute__((dllimport)) int GetWindowTextLengthW(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL GetClientRect(HWND hWnd,LPRECT lpRect);
|
|
__attribute__((dllimport)) WINBOOL GetWindowRect(HWND hWnd,LPRECT lpRect);
|
|
__attribute__((dllimport)) WINBOOL AdjustWindowRect(LPRECT lpRect,DWORD dwStyle,WINBOOL bMenu);
|
|
__attribute__((dllimport)) WINBOOL AdjustWindowRectEx(LPRECT lpRect,DWORD dwStyle,WINBOOL bMenu,DWORD dwExStyle);
|
|
typedef struct tagHELPINFO {
|
|
UINT cbSize;
|
|
int iContextType;
|
|
int iCtrlId;
|
|
HANDLE hItemHandle;
|
|
DWORD_PTR dwContextId;
|
|
POINT MousePos;
|
|
} HELPINFO,*LPHELPINFO;
|
|
__attribute__((dllimport)) WINBOOL SetWindowContextHelpId(HWND,DWORD);
|
|
__attribute__((dllimport)) DWORD GetWindowContextHelpId(HWND);
|
|
__attribute__((dllimport)) WINBOOL SetMenuContextHelpId(HMENU,DWORD);
|
|
__attribute__((dllimport)) DWORD GetMenuContextHelpId(HMENU);
|
|
__attribute__((dllimport)) int MessageBoxA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType);
|
|
__attribute__((dllimport)) int MessageBoxW(HWND hWnd,LPCWSTR lpText,LPCWSTR lpCaption,UINT uType);
|
|
__attribute__((dllimport)) int MessageBoxExA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType,WORD wLanguageId);
|
|
__attribute__((dllimport)) int MessageBoxExW(HWND hWnd,LPCWSTR lpText,LPCWSTR lpCaption,UINT uType,WORD wLanguageId);
|
|
typedef void ( *MSGBOXCALLBACK)(LPHELPINFO lpHelpInfo);
|
|
typedef struct tagMSGBOXPARAMSA {
|
|
UINT cbSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
LPCSTR lpszText;
|
|
LPCSTR lpszCaption;
|
|
DWORD dwStyle;
|
|
LPCSTR lpszIcon;
|
|
DWORD_PTR dwContextHelpId;
|
|
MSGBOXCALLBACK lpfnMsgBoxCallback;
|
|
DWORD dwLanguageId;
|
|
} MSGBOXPARAMSA,*PMSGBOXPARAMSA,*LPMSGBOXPARAMSA;
|
|
typedef struct tagMSGBOXPARAMSW {
|
|
UINT cbSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
LPCWSTR lpszText;
|
|
LPCWSTR lpszCaption;
|
|
DWORD dwStyle;
|
|
LPCWSTR lpszIcon;
|
|
DWORD_PTR dwContextHelpId;
|
|
MSGBOXCALLBACK lpfnMsgBoxCallback;
|
|
DWORD dwLanguageId;
|
|
} MSGBOXPARAMSW,*PMSGBOXPARAMSW,*LPMSGBOXPARAMSW;
|
|
typedef MSGBOXPARAMSA MSGBOXPARAMS;
|
|
typedef PMSGBOXPARAMSA PMSGBOXPARAMS;
|
|
typedef LPMSGBOXPARAMSA LPMSGBOXPARAMS;
|
|
__attribute__((dllimport)) int MessageBoxIndirectA(const MSGBOXPARAMSA *lpmbp);
|
|
__attribute__((dllimport)) int MessageBoxIndirectW(const MSGBOXPARAMSW *lpmbp);
|
|
__attribute__((dllimport)) WINBOOL MessageBeep(UINT uType);
|
|
__attribute__((dllimport)) int ShowCursor(WINBOOL bShow);
|
|
__attribute__((dllimport)) WINBOOL SetCursorPos(int X,int Y);
|
|
__attribute__((dllimport)) HCURSOR SetCursor(HCURSOR hCursor);
|
|
__attribute__((dllimport)) WINBOOL GetCursorPos(LPPOINT lpPoint);
|
|
__attribute__((dllimport)) WINBOOL ClipCursor(const RECT *lpRect);
|
|
__attribute__((dllimport)) WINBOOL GetClipCursor(LPRECT lpRect);
|
|
__attribute__((dllimport)) HCURSOR GetCursor(void);
|
|
__attribute__((dllimport)) WINBOOL CreateCaret(HWND hWnd,HBITMAP hBitmap,int nWidth,int nHeight);
|
|
__attribute__((dllimport)) UINT GetCaretBlinkTime(void);
|
|
__attribute__((dllimport)) WINBOOL SetCaretBlinkTime(UINT uMSeconds);
|
|
__attribute__((dllimport)) WINBOOL DestroyCaret(void);
|
|
__attribute__((dllimport)) WINBOOL HideCaret(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL ShowCaret(HWND hWnd);
|
|
__attribute__((dllimport)) WINBOOL SetCaretPos(int X,int Y);
|
|
__attribute__((dllimport)) WINBOOL GetCaretPos(LPPOINT lpPoint);
|
|
__attribute__((dllimport)) WINBOOL ClientToScreen(HWND hWnd,LPPOINT lpPoint);
|
|
__attribute__((dllimport)) WINBOOL ScreenToClient(HWND hWnd,LPPOINT lpPoint);
|
|
__attribute__((dllimport)) int MapWindowPoints(HWND hWndFrom,HWND hWndTo,LPPOINT lpPoints,UINT cPoints);
|
|
__attribute__((dllimport)) HWND WindowFromPoint(POINT Point);
|
|
__attribute__((dllimport)) HWND ChildWindowFromPoint(HWND hWndParent,POINT Point);
|
|
__attribute__((dllimport)) HWND ChildWindowFromPointEx(HWND hwnd,POINT pt,UINT flags);
|
|
__attribute__((dllimport)) DWORD GetSysColor(int nIndex);
|
|
__attribute__((dllimport)) HBRUSH GetSysColorBrush(int nIndex);
|
|
__attribute__((dllimport)) WINBOOL SetSysColors(int cElements,const INT *lpaElements,const COLORREF *lpaRgbValues);
|
|
__attribute__((dllimport)) WINBOOL DrawFocusRect(HDC hDC,const RECT *lprc);
|
|
__attribute__((dllimport)) int FillRect(HDC hDC,const RECT *lprc,HBRUSH hbr);
|
|
__attribute__((dllimport)) int FrameRect(HDC hDC,const RECT *lprc,HBRUSH hbr);
|
|
__attribute__((dllimport)) WINBOOL InvertRect(HDC hDC,const RECT *lprc);
|
|
__attribute__((dllimport)) WINBOOL SetRect(LPRECT lprc,int xLeft,int yTop,int xRight,int yBottom);
|
|
__attribute__((dllimport)) WINBOOL SetRectEmpty(LPRECT lprc);
|
|
__attribute__((dllimport)) WINBOOL CopyRect(LPRECT lprcDst,const RECT *lprcSrc);
|
|
__attribute__((dllimport)) WINBOOL InflateRect(LPRECT lprc,int dx,int dy);
|
|
__attribute__((dllimport)) WINBOOL IntersectRect(LPRECT lprcDst,const RECT *lprcSrc1,const RECT *lprcSrc2);
|
|
__attribute__((dllimport)) WINBOOL UnionRect(LPRECT lprcDst,const RECT *lprcSrc1,const RECT *lprcSrc2);
|
|
__attribute__((dllimport)) WINBOOL SubtractRect(LPRECT lprcDst,const RECT *lprcSrc1,const RECT *lprcSrc2);
|
|
__attribute__((dllimport)) WINBOOL OffsetRect(LPRECT lprc,int dx,int dy);
|
|
__attribute__((dllimport)) WINBOOL IsRectEmpty(const RECT *lprc);
|
|
__attribute__((dllimport)) WINBOOL EqualRect(const RECT *lprc1,const RECT *lprc2);
|
|
__attribute__((dllimport)) WINBOOL PtInRect(const RECT *lprc,POINT pt);
|
|
__attribute__((dllimport)) WORD GetWindowWord(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) WORD SetWindowWord(HWND hWnd,int nIndex,WORD wNewWord);
|
|
__attribute__((dllimport)) LONG GetWindowLongA(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) LONG GetWindowLongW(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) LONG SetWindowLongA(HWND hWnd,int nIndex,LONG dwNewLong);
|
|
__attribute__((dllimport)) LONG SetWindowLongW(HWND hWnd,int nIndex,LONG dwNewLong);
|
|
__attribute__((dllimport)) LONG_PTR GetWindowLongPtrA(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) LONG_PTR GetWindowLongPtrW(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) LONG_PTR SetWindowLongPtrA(HWND hWnd,int nIndex,LONG_PTR dwNewLong);
|
|
__attribute__((dllimport)) LONG_PTR SetWindowLongPtrW(HWND hWnd,int nIndex,LONG_PTR dwNewLong);
|
|
__attribute__((dllimport)) WORD GetClassWord(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) WORD SetClassWord(HWND hWnd,int nIndex,WORD wNewWord);
|
|
__attribute__((dllimport)) DWORD GetClassLongA(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) DWORD GetClassLongW(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) DWORD SetClassLongA(HWND hWnd,int nIndex,LONG dwNewLong);
|
|
__attribute__((dllimport)) DWORD SetClassLongW(HWND hWnd,int nIndex,LONG dwNewLong);
|
|
__attribute__((dllimport)) ULONG_PTR GetClassLongPtrA(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) ULONG_PTR GetClassLongPtrW(HWND hWnd,int nIndex);
|
|
__attribute__((dllimport)) ULONG_PTR SetClassLongPtrA(HWND hWnd,int nIndex,LONG_PTR dwNewLong);
|
|
__attribute__((dllimport)) ULONG_PTR SetClassLongPtrW(HWND hWnd,int nIndex,LONG_PTR dwNewLong);
|
|
__attribute__((dllimport)) WINBOOL GetProcessDefaultLayout(DWORD *pdwDefaultLayout);
|
|
__attribute__((dllimport)) WINBOOL SetProcessDefaultLayout(DWORD dwDefaultLayout);
|
|
__attribute__((dllimport)) HWND GetDesktopWindow(void);
|
|
__attribute__((dllimport)) HWND GetParent(HWND hWnd);
|
|
__attribute__((dllimport)) HWND SetParent(HWND hWndChild,HWND hWndNewParent);
|
|
__attribute__((dllimport)) WINBOOL EnumChildWindows(HWND hWndParent,WNDENUMPROC lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) HWND FindWindowA(LPCSTR lpClassName,LPCSTR lpWindowName);
|
|
__attribute__((dllimport)) HWND FindWindowW(LPCWSTR lpClassName,LPCWSTR lpWindowName);
|
|
__attribute__((dllimport)) HWND FindWindowExA(HWND hWndParent,HWND hWndChildAfter,LPCSTR lpszClass,LPCSTR lpszWindow);
|
|
__attribute__((dllimport)) HWND FindWindowExW(HWND hWndParent,HWND hWndChildAfter,LPCWSTR lpszClass,LPCWSTR lpszWindow);
|
|
__attribute__((dllimport)) HWND GetShellWindow(void);
|
|
__attribute__((dllimport)) WINBOOL RegisterShellHookWindow(HWND hwnd);
|
|
__attribute__((dllimport)) WINBOOL DeregisterShellHookWindow(HWND hwnd);
|
|
__attribute__((dllimport)) WINBOOL EnumWindows(WNDENUMPROC lpEnumFunc,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumThreadWindows(DWORD dwThreadId,WNDENUMPROC lpfn,LPARAM lParam);
|
|
__attribute__((dllimport)) int GetClassNameA(HWND hWnd,LPSTR lpClassName,int nMaxCount);
|
|
__attribute__((dllimport)) int GetClassNameW(HWND hWnd,LPWSTR lpClassName,int nMaxCount);
|
|
__attribute__((dllimport)) HWND GetTopWindow(HWND hWnd);
|
|
__attribute__((dllimport)) DWORD GetWindowThreadProcessId(HWND hWnd,LPDWORD lpdwProcessId);
|
|
__attribute__((dllimport)) WINBOOL IsGUIThread(WINBOOL bConvert);
|
|
__attribute__((dllimport)) HWND GetLastActivePopup(HWND hWnd);
|
|
__attribute__((dllimport)) HWND GetWindow(HWND hWnd,UINT uCmd);
|
|
__attribute__((dllimport)) HHOOK SetWindowsHookA (int nFilterType, HOOKPROC pfnFilterProc);
|
|
__attribute__((dllimport)) HHOOK SetWindowsHookW (int nFilterType, HOOKPROC pfnFilterProc);
|
|
__attribute__((dllimport)) WINBOOL UnhookWindowsHook (int nCode, HOOKPROC pfnFilterProc);
|
|
__attribute__((dllimport)) HHOOK SetWindowsHookExA (int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId);
|
|
__attribute__((dllimport)) HHOOK SetWindowsHookExW (int idHook, HOOKPROC lpfn, HINSTANCE hmod, DWORD dwThreadId);
|
|
__attribute__((dllimport)) WINBOOL UnhookWindowsHookEx (HHOOK hhk);
|
|
__attribute__((dllimport)) LRESULT CallNextHookEx (HHOOK hhk, int nCode, WPARAM wParam, LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL CheckMenuRadioItem(HMENU hmenu,UINT first,UINT last,UINT check,UINT flags);
|
|
typedef struct {
|
|
WORD versionNumber;
|
|
WORD offset;
|
|
} MENUITEMTEMPLATEHEADER,*PMENUITEMTEMPLATEHEADER;
|
|
typedef struct {
|
|
WORD mtOption;
|
|
WORD mtID;
|
|
WCHAR mtString[1];
|
|
} MENUITEMTEMPLATE,*PMENUITEMTEMPLATE;
|
|
__attribute__((dllimport)) HBITMAP LoadBitmapA(HINSTANCE hInstance,LPCSTR lpBitmapName);
|
|
__attribute__((dllimport)) HBITMAP LoadBitmapW(HINSTANCE hInstance,LPCWSTR lpBitmapName);
|
|
__attribute__((dllimport)) HCURSOR LoadCursorA(HINSTANCE hInstance,LPCSTR lpCursorName);
|
|
__attribute__((dllimport)) HCURSOR LoadCursorW(HINSTANCE hInstance,LPCWSTR lpCursorName);
|
|
__attribute__((dllimport)) HCURSOR LoadCursorFromFileA(LPCSTR lpFileName);
|
|
__attribute__((dllimport)) HCURSOR LoadCursorFromFileW(LPCWSTR lpFileName);
|
|
__attribute__((dllimport)) HCURSOR CreateCursor(HINSTANCE hInst,int xHotSpot,int yHotSpot,int nWidth,int nHeight,const void *pvANDPlane,const void *pvXORPlane);
|
|
__attribute__((dllimport)) WINBOOL DestroyCursor(HCURSOR hCursor);
|
|
typedef struct _ICONINFO {
|
|
WINBOOL fIcon;
|
|
DWORD xHotspot;
|
|
DWORD yHotspot;
|
|
HBITMAP hbmMask;
|
|
HBITMAP hbmColor;
|
|
} ICONINFO;
|
|
typedef ICONINFO *PICONINFO;
|
|
__attribute__((dllimport)) WINBOOL SetSystemCursor(HCURSOR hcur,DWORD id);
|
|
__attribute__((dllimport)) HICON LoadIconA(HINSTANCE hInstance,LPCSTR lpIconName);
|
|
__attribute__((dllimport)) HICON LoadIconW(HINSTANCE hInstance,LPCWSTR lpIconName);
|
|
__attribute__((dllimport)) UINT PrivateExtractIconsA(LPCSTR szFileName,int nIconIndex,int cxIcon,int cyIcon,HICON *phicon,UINT *piconid,UINT nIcons,UINT flags);
|
|
__attribute__((dllimport)) UINT PrivateExtractIconsW(LPCWSTR szFileName,int nIconIndex,int cxIcon,int cyIcon,HICON *phicon,UINT *piconid,UINT nIcons,UINT flags);
|
|
__attribute__((dllimport)) HICON CreateIcon(HINSTANCE hInstance,int nWidth,int nHeight,BYTE cPlanes,BYTE cBitsPixel,const BYTE *lpbANDbits,const BYTE *lpbXORbits);
|
|
__attribute__((dllimport)) WINBOOL DestroyIcon(HICON hIcon);
|
|
__attribute__((dllimport)) int LookupIconIdFromDirectory(PBYTE presbits,WINBOOL fIcon);
|
|
__attribute__((dllimport)) int LookupIconIdFromDirectoryEx(PBYTE presbits,WINBOOL fIcon,int cxDesired,int cyDesired,UINT Flags);
|
|
__attribute__((dllimport)) HICON CreateIconFromResource(PBYTE presbits,DWORD dwResSize,WINBOOL fIcon,DWORD dwVer);
|
|
__attribute__((dllimport)) HICON CreateIconFromResourceEx(PBYTE presbits,DWORD dwResSize,WINBOOL fIcon,DWORD dwVer,int cxDesired,int cyDesired,UINT Flags);
|
|
typedef struct tagCURSORSHAPE {
|
|
int xHotSpot;
|
|
int yHotSpot;
|
|
int cx;
|
|
int cy;
|
|
int cbWidth;
|
|
BYTE Planes;
|
|
BYTE BitsPixel;
|
|
} CURSORSHAPE,*LPCURSORSHAPE;
|
|
__attribute__((dllimport)) HANDLE LoadImageA(HINSTANCE hInst,LPCSTR name,UINT type,int cx,int cy,UINT fuLoad);
|
|
__attribute__((dllimport)) HANDLE LoadImageW(HINSTANCE hInst,LPCWSTR name,UINT type,int cx,int cy,UINT fuLoad);
|
|
__attribute__((dllimport)) HANDLE CopyImage(HANDLE h,UINT type,int cx,int cy,UINT flags);
|
|
__attribute__((dllimport)) WINBOOL DrawIconEx(HDC hdc,int xLeft,int yTop,HICON hIcon,int cxWidth,int cyWidth,UINT istepIfAniCur,HBRUSH hbrFlickerFreeDraw,UINT diFlags);
|
|
__attribute__((dllimport)) HICON CreateIconIndirect(PICONINFO piconinfo);
|
|
__attribute__((dllimport)) HICON CopyIcon(HICON hIcon);
|
|
__attribute__((dllimport)) WINBOOL GetIconInfo(HICON hIcon,PICONINFO piconinfo);
|
|
__attribute__((dllimport)) WINBOOL IsDialogMessageA(HWND hDlg,LPMSG lpMsg);
|
|
__attribute__((dllimport)) WINBOOL IsDialogMessageW(HWND hDlg,LPMSG lpMsg);
|
|
__attribute__((dllimport)) WINBOOL MapDialogRect(HWND hDlg,LPRECT lpRect);
|
|
__attribute__((dllimport)) int DlgDirListA(HWND hDlg,LPSTR lpPathSpec,int nIDListBox,int nIDStaticPath,UINT uFileType);
|
|
__attribute__((dllimport)) int DlgDirListW(HWND hDlg,LPWSTR lpPathSpec,int nIDListBox,int nIDStaticPath,UINT uFileType);
|
|
__attribute__((dllimport)) WINBOOL DlgDirSelectExA(HWND hwndDlg,LPSTR lpString,int chCount,int idListBox);
|
|
__attribute__((dllimport)) WINBOOL DlgDirSelectExW(HWND hwndDlg,LPWSTR lpString,int chCount,int idListBox);
|
|
__attribute__((dllimport)) int DlgDirListComboBoxA(HWND hDlg,LPSTR lpPathSpec,int nIDComboBox,int nIDStaticPath,UINT uFiletype);
|
|
__attribute__((dllimport)) int DlgDirListComboBoxW(HWND hDlg,LPWSTR lpPathSpec,int nIDComboBox,int nIDStaticPath,UINT uFiletype);
|
|
__attribute__((dllimport)) WINBOOL DlgDirSelectComboBoxExA(HWND hwndDlg,LPSTR lpString,int cchOut,int idComboBox);
|
|
__attribute__((dllimport)) WINBOOL DlgDirSelectComboBoxExW(HWND hwndDlg,LPWSTR lpString,int cchOut,int idComboBox);
|
|
typedef struct tagSCROLLINFO {
|
|
UINT cbSize;
|
|
UINT fMask;
|
|
int nMin;
|
|
int nMax;
|
|
UINT nPage;
|
|
int nPos;
|
|
int nTrackPos;
|
|
} SCROLLINFO,*LPSCROLLINFO;
|
|
typedef SCROLLINFO const *LPCSCROLLINFO;
|
|
__attribute__((dllimport)) int SetScrollInfo(HWND hwnd,int nBar,LPCSCROLLINFO lpsi,WINBOOL redraw);
|
|
__attribute__((dllimport)) WINBOOL GetScrollInfo(HWND hwnd,int nBar,LPSCROLLINFO lpsi);
|
|
typedef struct tagMDICREATESTRUCTA {
|
|
LPCSTR szClass;
|
|
LPCSTR szTitle;
|
|
HANDLE hOwner;
|
|
int x;
|
|
int y;
|
|
int cx;
|
|
int cy;
|
|
DWORD style;
|
|
LPARAM lParam;
|
|
} MDICREATESTRUCTA,*LPMDICREATESTRUCTA;
|
|
typedef struct tagMDICREATESTRUCTW {
|
|
LPCWSTR szClass;
|
|
LPCWSTR szTitle;
|
|
HANDLE hOwner;
|
|
int x;
|
|
int y;
|
|
int cx;
|
|
int cy;
|
|
DWORD style;
|
|
LPARAM lParam;
|
|
} MDICREATESTRUCTW,*LPMDICREATESTRUCTW;
|
|
typedef MDICREATESTRUCTA MDICREATESTRUCT;
|
|
typedef LPMDICREATESTRUCTA LPMDICREATESTRUCT;
|
|
typedef struct tagCLIENTCREATESTRUCT {
|
|
HANDLE hWindowMenu;
|
|
UINT idFirstChild;
|
|
} CLIENTCREATESTRUCT,*LPCLIENTCREATESTRUCT;
|
|
__attribute__((dllimport)) LRESULT DefFrameProcA(HWND hWnd,HWND hWndMDIClient,UINT uMsg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT DefFrameProcW(HWND hWnd,HWND hWndMDIClient,UINT uMsg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT DefMDIChildProcA(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) LRESULT DefMDIChildProcW(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam);
|
|
__attribute__((dllimport)) WINBOOL TranslateMDISysAccel(HWND hWndClient,LPMSG lpMsg);
|
|
__attribute__((dllimport)) UINT ArrangeIconicWindows(HWND hWnd);
|
|
__attribute__((dllimport)) HWND CreateMDIWindowA(LPCSTR lpClassName,LPCSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HINSTANCE hInstance,LPARAM lParam);
|
|
__attribute__((dllimport)) HWND CreateMDIWindowW(LPCWSTR lpClassName,LPCWSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HINSTANCE hInstance,LPARAM lParam);
|
|
__attribute__((dllimport)) WORD TileWindows(HWND hwndParent,UINT wHow,const RECT *lpRect,UINT cKids,const HWND *lpKids);
|
|
__attribute__((dllimport)) WORD CascadeWindows(HWND hwndParent,UINT wHow,const RECT *lpRect,UINT cKids,const HWND *lpKids);
|
|
typedef DWORD HELPPOLY;
|
|
typedef struct tagMULTIKEYHELPA {
|
|
DWORD mkSize;
|
|
CHAR mkKeylist;
|
|
CHAR szKeyphrase[1];
|
|
} MULTIKEYHELPA,*PMULTIKEYHELPA,*LPMULTIKEYHELPA;
|
|
typedef struct tagMULTIKEYHELPW {
|
|
DWORD mkSize;
|
|
WCHAR mkKeylist;
|
|
WCHAR szKeyphrase[1];
|
|
} MULTIKEYHELPW,*PMULTIKEYHELPW,*LPMULTIKEYHELPW;
|
|
typedef MULTIKEYHELPA MULTIKEYHELP;
|
|
typedef PMULTIKEYHELPA PMULTIKEYHELP;
|
|
typedef LPMULTIKEYHELPA LPMULTIKEYHELP;
|
|
typedef struct tagHELPWININFOA {
|
|
int wStructSize;
|
|
int x;
|
|
int y;
|
|
int dx;
|
|
int dy;
|
|
int wMax;
|
|
CHAR rgchMember[2];
|
|
} HELPWININFOA,*PHELPWININFOA,*LPHELPWININFOA;
|
|
typedef struct tagHELPWININFOW {
|
|
int wStructSize;
|
|
int x;
|
|
int y;
|
|
int dx;
|
|
int dy;
|
|
int wMax;
|
|
WCHAR rgchMember[2];
|
|
} HELPWININFOW,*PHELPWININFOW,*LPHELPWININFOW;
|
|
typedef HELPWININFOA HELPWININFO;
|
|
typedef PHELPWININFOA PHELPWININFO;
|
|
typedef LPHELPWININFOA LPHELPWININFO;
|
|
__attribute__((dllimport)) WINBOOL WinHelpA(HWND hWndMain,LPCSTR lpszHelp,UINT uCommand,ULONG_PTR dwData);
|
|
__attribute__((dllimport)) WINBOOL WinHelpW(HWND hWndMain,LPCWSTR lpszHelp,UINT uCommand,ULONG_PTR dwData);
|
|
__attribute__((dllimport)) DWORD GetGuiResources(HANDLE hProcess,DWORD uiFlags);
|
|
typedef struct tagNONCLIENTMETRICSA {
|
|
UINT cbSize;
|
|
int iBorderWidth;
|
|
int iScrollWidth;
|
|
int iScrollHeight;
|
|
int iCaptionWidth;
|
|
int iCaptionHeight;
|
|
LOGFONTA lfCaptionFont;
|
|
int iSmCaptionWidth;
|
|
int iSmCaptionHeight;
|
|
LOGFONTA lfSmCaptionFont;
|
|
int iMenuWidth;
|
|
int iMenuHeight;
|
|
LOGFONTA lfMenuFont;
|
|
LOGFONTA lfStatusFont;
|
|
LOGFONTA lfMessageFont;
|
|
} NONCLIENTMETRICSA,*PNONCLIENTMETRICSA,*LPNONCLIENTMETRICSA;
|
|
typedef struct tagNONCLIENTMETRICSW {
|
|
UINT cbSize;
|
|
int iBorderWidth;
|
|
int iScrollWidth;
|
|
int iScrollHeight;
|
|
int iCaptionWidth;
|
|
int iCaptionHeight;
|
|
LOGFONTW lfCaptionFont;
|
|
int iSmCaptionWidth;
|
|
int iSmCaptionHeight;
|
|
LOGFONTW lfSmCaptionFont;
|
|
int iMenuWidth;
|
|
int iMenuHeight;
|
|
LOGFONTW lfMenuFont;
|
|
LOGFONTW lfStatusFont;
|
|
LOGFONTW lfMessageFont;
|
|
} NONCLIENTMETRICSW,*PNONCLIENTMETRICSW,*LPNONCLIENTMETRICSW;
|
|
typedef NONCLIENTMETRICSA NONCLIENTMETRICS;
|
|
typedef PNONCLIENTMETRICSA PNONCLIENTMETRICS;
|
|
typedef LPNONCLIENTMETRICSA LPNONCLIENTMETRICS;
|
|
typedef struct tagMINIMIZEDMETRICS {
|
|
UINT cbSize;
|
|
int iWidth;
|
|
int iHorzGap;
|
|
int iVertGap;
|
|
int iArrange;
|
|
} MINIMIZEDMETRICS,*PMINIMIZEDMETRICS,*LPMINIMIZEDMETRICS;
|
|
typedef struct tagICONMETRICSA {
|
|
UINT cbSize;
|
|
int iHorzSpacing;
|
|
int iVertSpacing;
|
|
int iTitleWrap;
|
|
LOGFONTA lfFont;
|
|
} ICONMETRICSA,*PICONMETRICSA,*LPICONMETRICSA;
|
|
typedef struct tagICONMETRICSW {
|
|
UINT cbSize;
|
|
int iHorzSpacing;
|
|
int iVertSpacing;
|
|
int iTitleWrap;
|
|
LOGFONTW lfFont;
|
|
} ICONMETRICSW,*PICONMETRICSW,*LPICONMETRICSW;
|
|
typedef ICONMETRICSA ICONMETRICS;
|
|
typedef PICONMETRICSA PICONMETRICS;
|
|
typedef LPICONMETRICSA LPICONMETRICS;
|
|
typedef struct tagANIMATIONINFO {
|
|
UINT cbSize;
|
|
int iMinAnimate;
|
|
} ANIMATIONINFO,*LPANIMATIONINFO;
|
|
typedef struct tagSERIALKEYSA {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
LPSTR lpszActivePort;
|
|
LPSTR lpszPort;
|
|
UINT iBaudRate;
|
|
UINT iPortState;
|
|
UINT iActive;
|
|
} SERIALKEYSA,*LPSERIALKEYSA;
|
|
typedef struct tagSERIALKEYSW {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
LPWSTR lpszActivePort;
|
|
LPWSTR lpszPort;
|
|
UINT iBaudRate;
|
|
UINT iPortState;
|
|
UINT iActive;
|
|
} SERIALKEYSW,*LPSERIALKEYSW;
|
|
typedef SERIALKEYSA SERIALKEYS;
|
|
typedef LPSERIALKEYSA LPSERIALKEYS;
|
|
typedef struct tagHIGHCONTRASTA {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
LPSTR lpszDefaultScheme;
|
|
} HIGHCONTRASTA,*LPHIGHCONTRASTA;
|
|
typedef struct tagHIGHCONTRASTW {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
LPWSTR lpszDefaultScheme;
|
|
} HIGHCONTRASTW,*LPHIGHCONTRASTW;
|
|
typedef HIGHCONTRASTA HIGHCONTRAST;
|
|
typedef LPHIGHCONTRASTA LPHIGHCONTRAST;
|
|
typedef struct _VIDEOPARAMETERS {
|
|
GUID Guid;
|
|
ULONG dwOffset;
|
|
ULONG dwCommand;
|
|
ULONG dwFlags;
|
|
ULONG dwMode;
|
|
ULONG dwTVStandard;
|
|
ULONG dwAvailableModes;
|
|
ULONG dwAvailableTVStandard;
|
|
ULONG dwFlickerFilter;
|
|
ULONG dwOverScanX;
|
|
ULONG dwOverScanY;
|
|
ULONG dwMaxUnscaledX;
|
|
ULONG dwMaxUnscaledY;
|
|
ULONG dwPositionX;
|
|
ULONG dwPositionY;
|
|
ULONG dwBrightness;
|
|
ULONG dwContrast;
|
|
ULONG dwCPType;
|
|
ULONG dwCPCommand;
|
|
ULONG dwCPStandard;
|
|
ULONG dwCPKey;
|
|
ULONG bCP_APSTriggerBits;
|
|
UCHAR bOEMCopyProtection[256];
|
|
} VIDEOPARAMETERS,*PVIDEOPARAMETERS,*LPVIDEOPARAMETERS;
|
|
__attribute__((dllimport)) LONG ChangeDisplaySettingsA(LPDEVMODEA lpDevMode,DWORD dwFlags);
|
|
__attribute__((dllimport)) LONG ChangeDisplaySettingsW(LPDEVMODEW lpDevMode,DWORD dwFlags);
|
|
__attribute__((dllimport)) LONG ChangeDisplaySettingsExA(LPCSTR lpszDeviceName,LPDEVMODEA lpDevMode,HWND hwnd,DWORD dwflags,LPVOID lParam);
|
|
__attribute__((dllimport)) LONG ChangeDisplaySettingsExW(LPCWSTR lpszDeviceName,LPDEVMODEW lpDevMode,HWND hwnd,DWORD dwflags,LPVOID lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplaySettingsA(LPCSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEA lpDevMode);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplaySettingsW(LPCWSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEW lpDevMode);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplaySettingsExA(LPCSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEA lpDevMode,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplaySettingsExW(LPCWSTR lpszDeviceName,DWORD iModeNum,LPDEVMODEW lpDevMode,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplayDevicesA(LPCSTR lpDevice,DWORD iDevNum,PDISPLAY_DEVICEA lpDisplayDevice,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplayDevicesW(LPCWSTR lpDevice,DWORD iDevNum,PDISPLAY_DEVICEW lpDisplayDevice,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL SystemParametersInfoA(UINT uiAction,UINT uiParam,PVOID pvParam,UINT fWinIni);
|
|
__attribute__((dllimport)) WINBOOL SystemParametersInfoW(UINT uiAction,UINT uiParam,PVOID pvParam,UINT fWinIni);
|
|
typedef struct tagFILTERKEYS {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
DWORD iWaitMSec;
|
|
DWORD iDelayMSec;
|
|
DWORD iRepeatMSec;
|
|
DWORD iBounceMSec;
|
|
} FILTERKEYS,*LPFILTERKEYS;
|
|
typedef struct tagSTICKYKEYS {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
} STICKYKEYS,*LPSTICKYKEYS;
|
|
typedef struct tagMOUSEKEYS {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
DWORD iMaxSpeed;
|
|
DWORD iTimeToMaxSpeed;
|
|
DWORD iCtrlSpeed;
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
} MOUSEKEYS,*LPMOUSEKEYS;
|
|
typedef struct tagACCESSTIMEOUT {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
DWORD iTimeOutMSec;
|
|
} ACCESSTIMEOUT,*LPACCESSTIMEOUT;
|
|
typedef struct tagSOUNDSENTRYA {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
DWORD iFSTextEffect;
|
|
DWORD iFSTextEffectMSec;
|
|
DWORD iFSTextEffectColorBits;
|
|
DWORD iFSGrafEffect;
|
|
DWORD iFSGrafEffectMSec;
|
|
DWORD iFSGrafEffectColor;
|
|
DWORD iWindowsEffect;
|
|
DWORD iWindowsEffectMSec;
|
|
LPSTR lpszWindowsEffectDLL;
|
|
DWORD iWindowsEffectOrdinal;
|
|
} SOUNDSENTRYA,*LPSOUNDSENTRYA;
|
|
typedef struct tagSOUNDSENTRYW {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
DWORD iFSTextEffect;
|
|
DWORD iFSTextEffectMSec;
|
|
DWORD iFSTextEffectColorBits;
|
|
DWORD iFSGrafEffect;
|
|
DWORD iFSGrafEffectMSec;
|
|
DWORD iFSGrafEffectColor;
|
|
DWORD iWindowsEffect;
|
|
DWORD iWindowsEffectMSec;
|
|
LPWSTR lpszWindowsEffectDLL;
|
|
DWORD iWindowsEffectOrdinal;
|
|
} SOUNDSENTRYW,*LPSOUNDSENTRYW;
|
|
typedef SOUNDSENTRYA SOUNDSENTRY;
|
|
typedef LPSOUNDSENTRYA LPSOUNDSENTRY;
|
|
typedef struct tagTOGGLEKEYS {
|
|
UINT cbSize;
|
|
DWORD dwFlags;
|
|
} TOGGLEKEYS,*LPTOGGLEKEYS;
|
|
typedef struct tagMONITORINFO {
|
|
DWORD cbSize;
|
|
RECT rcMonitor;
|
|
RECT rcWork;
|
|
DWORD dwFlags;
|
|
} MONITORINFO,*LPMONITORINFO;
|
|
typedef struct tagMONITORINFOEXA {
|
|
__extension__ struct {
|
|
DWORD cbSize;
|
|
RECT rcMonitor;
|
|
RECT rcWork;
|
|
DWORD dwFlags;
|
|
};
|
|
CHAR szDevice[32];
|
|
} MONITORINFOEXA,*LPMONITORINFOEXA;
|
|
typedef struct tagMONITORINFOEXW {
|
|
__extension__ struct {
|
|
DWORD cbSize;
|
|
RECT rcMonitor;
|
|
RECT rcWork;
|
|
DWORD dwFlags;
|
|
};
|
|
WCHAR szDevice[32];
|
|
} MONITORINFOEXW,*LPMONITORINFOEXW;
|
|
typedef MONITORINFOEXA MONITORINFOEX;
|
|
typedef LPMONITORINFOEXA LPMONITORINFOEX;
|
|
typedef WINBOOL ( *MONITORENUMPROC)(HMONITOR,HDC,LPRECT,LPARAM);
|
|
__attribute__((dllimport)) void SetDebugErrorLevel (DWORD dwLevel);
|
|
__attribute__((dllimport)) void SetLastErrorEx (DWORD dwErrCode, DWORD dwType);
|
|
__attribute__((dllimport)) int InternalGetWindowText (HWND hWnd, LPWSTR pString, int cchMaxCount);
|
|
__attribute__((dllimport)) WINBOOL CancelShutdown (void);
|
|
__attribute__((dllimport)) HMONITOR MonitorFromPoint(POINT pt,DWORD dwFlags);
|
|
__attribute__((dllimport)) HMONITOR MonitorFromRect(LPCRECT lprc,DWORD dwFlags);
|
|
__attribute__((dllimport)) HMONITOR MonitorFromWindow(HWND hwnd,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL GetMonitorInfoA(HMONITOR hMonitor,LPMONITORINFO lpmi);
|
|
__attribute__((dllimport)) WINBOOL GetMonitorInfoW(HMONITOR hMonitor,LPMONITORINFO lpmi);
|
|
__attribute__((dllimport)) WINBOOL EnumDisplayMonitors(HDC hdc,LPCRECT lprcClip,MONITORENUMPROC lpfnEnum,LPARAM dwData);
|
|
typedef void ( *WINEVENTPROC)(HWINEVENTHOOK hWinEventHook,DWORD event,HWND hwnd,LONG idObject,LONG idChild,DWORD idEventThread,DWORD dwmsEventTime);
|
|
__attribute__((dllimport)) void NotifyWinEvent(DWORD event,HWND hwnd,LONG idObject,LONG idChild);
|
|
__attribute__((dllimport)) HWINEVENTHOOK SetWinEventHook(DWORD eventMin,DWORD eventMax,HMODULE hmodWinEventProc,WINEVENTPROC pfnWinEventProc,DWORD idProcess,DWORD idThread,DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL IsWinEventHookInstalled(DWORD event);
|
|
__attribute__((dllimport)) WINBOOL UnhookWinEvent(HWINEVENTHOOK hWinEventHook);
|
|
typedef struct tagGUITHREADINFO {
|
|
DWORD cbSize;
|
|
DWORD flags;
|
|
HWND hwndActive;
|
|
HWND hwndFocus;
|
|
HWND hwndCapture;
|
|
HWND hwndMenuOwner;
|
|
HWND hwndMoveSize;
|
|
HWND hwndCaret;
|
|
RECT rcCaret;
|
|
} GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO;
|
|
__attribute__((dllimport)) WINBOOL GetGUIThreadInfo(DWORD idThread,PGUITHREADINFO pgui);
|
|
__attribute__((dllimport)) WINBOOL BlockInput (WINBOOL fBlockIt);
|
|
__attribute__((dllimport)) UINT GetWindowModuleFileNameA(HWND hwnd,LPSTR pszFileName,UINT cchFileNameMax);
|
|
__attribute__((dllimport)) UINT GetWindowModuleFileNameW(HWND hwnd,LPWSTR pszFileName,UINT cchFileNameMax);
|
|
typedef struct tagCURSORINFO {
|
|
DWORD cbSize;
|
|
DWORD flags;
|
|
HCURSOR hCursor;
|
|
POINT ptScreenPos;
|
|
} CURSORINFO,*PCURSORINFO,*LPCURSORINFO;
|
|
__attribute__((dllimport)) WINBOOL GetCursorInfo(PCURSORINFO pci);
|
|
typedef struct tagWINDOWINFO {
|
|
DWORD cbSize;
|
|
RECT rcWindow;
|
|
RECT rcClient;
|
|
DWORD dwStyle;
|
|
DWORD dwExStyle;
|
|
DWORD dwWindowStatus;
|
|
UINT cxWindowBorders;
|
|
UINT cyWindowBorders;
|
|
ATOM atomWindowType;
|
|
WORD wCreatorVersion;
|
|
} WINDOWINFO,*PWINDOWINFO,*LPWINDOWINFO;
|
|
__attribute__((dllimport)) WINBOOL GetWindowInfo(HWND hwnd,PWINDOWINFO pwi);
|
|
typedef struct tagTITLEBARINFO {
|
|
DWORD cbSize;
|
|
RECT rcTitleBar;
|
|
DWORD rgstate[5 + 1];
|
|
} TITLEBARINFO,*PTITLEBARINFO,*LPTITLEBARINFO;
|
|
__attribute__((dllimport)) WINBOOL GetTitleBarInfo(HWND hwnd,PTITLEBARINFO pti);
|
|
typedef struct tagMENUBARINFO {
|
|
DWORD cbSize;
|
|
RECT rcBar;
|
|
HMENU hMenu;
|
|
HWND hwndMenu;
|
|
WINBOOL fBarFocused:1;
|
|
WINBOOL fFocused:1;
|
|
} MENUBARINFO,*PMENUBARINFO,*LPMENUBARINFO;
|
|
__attribute__((dllimport)) WINBOOL GetMenuBarInfo(HWND hwnd,LONG idObject,LONG idItem,PMENUBARINFO pmbi);
|
|
typedef struct tagSCROLLBARINFO {
|
|
DWORD cbSize;
|
|
RECT rcScrollBar;
|
|
int dxyLineButton;
|
|
int xyThumbTop;
|
|
int xyThumbBottom;
|
|
int reserved;
|
|
DWORD rgstate[5 + 1];
|
|
} SCROLLBARINFO,*PSCROLLBARINFO,*LPSCROLLBARINFO;
|
|
__attribute__((dllimport)) WINBOOL GetScrollBarInfo(HWND hwnd,LONG idObject,PSCROLLBARINFO psbi);
|
|
typedef struct tagCOMBOBOXINFO {
|
|
DWORD cbSize;
|
|
RECT rcItem;
|
|
RECT rcButton;
|
|
DWORD stateButton;
|
|
HWND hwndCombo;
|
|
HWND hwndItem;
|
|
HWND hwndList;
|
|
} COMBOBOXINFO,*PCOMBOBOXINFO,*LPCOMBOBOXINFO;
|
|
__attribute__((dllimport)) WINBOOL GetComboBoxInfo(HWND hwndCombo,PCOMBOBOXINFO pcbi);
|
|
__attribute__((dllimport)) HWND GetAncestor(HWND hwnd,UINT gaFlags);
|
|
__attribute__((dllimport)) HWND RealChildWindowFromPoint(HWND hwndParent,POINT ptParentClientCoords);
|
|
__attribute__((dllimport)) UINT RealGetWindowClassA(HWND hwnd,LPSTR ptszClassName,UINT cchClassNameMax);
|
|
__attribute__((dllimport)) UINT RealGetWindowClassW(HWND hwnd,LPWSTR ptszClassName,UINT cchClassNameMax);
|
|
typedef struct tagALTTABINFO {
|
|
DWORD cbSize;
|
|
int cItems;
|
|
int cColumns;
|
|
int cRows;
|
|
int iColFocus;
|
|
int iRowFocus;
|
|
int cxItem;
|
|
int cyItem;
|
|
POINT ptStart;
|
|
} ALTTABINFO,*PALTTABINFO,*LPALTTABINFO;
|
|
__attribute__((dllimport)) WINBOOL GetAltTabInfoA(HWND hwnd,int iItem,PALTTABINFO pati,LPSTR pszItemText,UINT cchItemText);
|
|
__attribute__((dllimport)) WINBOOL GetAltTabInfoW(HWND hwnd,int iItem,PALTTABINFO pati,LPWSTR pszItemText,UINT cchItemText);
|
|
__attribute__((dllimport)) DWORD GetListBoxInfo(HWND hwnd);
|
|
__attribute__((dllimport)) WINBOOL LockWorkStation(void);
|
|
__attribute__((dllimport)) WINBOOL UserHandleGrantAccess(HANDLE hUserHandle,HANDLE hJob,WINBOOL bGrant);
|
|
struct HRAWINPUT__ { int unused; }; typedef struct HRAWINPUT__ *HRAWINPUT;
|
|
typedef struct tagRAWINPUTHEADER {
|
|
DWORD dwType;
|
|
DWORD dwSize;
|
|
HANDLE hDevice;
|
|
WPARAM wParam;
|
|
} RAWINPUTHEADER,*PRAWINPUTHEADER,*LPRAWINPUTHEADER;
|
|
typedef struct tagRAWMOUSE {
|
|
USHORT usFlags;
|
|
__extension__ union {
|
|
ULONG ulButtons;
|
|
__extension__ struct {
|
|
USHORT usButtonFlags;
|
|
USHORT usButtonData;
|
|
};
|
|
};
|
|
ULONG ulRawButtons;
|
|
LONG lLastX;
|
|
LONG lLastY;
|
|
ULONG ulExtraInformation;
|
|
} RAWMOUSE,*PRAWMOUSE,*LPRAWMOUSE;
|
|
typedef struct tagRAWKEYBOARD {
|
|
USHORT MakeCode;
|
|
USHORT Flags;
|
|
USHORT Reserved;
|
|
USHORT VKey;
|
|
UINT Message;
|
|
ULONG ExtraInformation;
|
|
} RAWKEYBOARD,*PRAWKEYBOARD,*LPRAWKEYBOARD;
|
|
typedef struct tagRAWHID {
|
|
DWORD dwSizeHid;
|
|
DWORD dwCount;
|
|
BYTE bRawData[1];
|
|
} RAWHID,*PRAWHID,*LPRAWHID;
|
|
typedef struct tagRAWINPUT {
|
|
RAWINPUTHEADER header;
|
|
union {
|
|
RAWMOUSE mouse;
|
|
RAWKEYBOARD keyboard;
|
|
RAWHID hid;
|
|
} data;
|
|
} RAWINPUT,*PRAWINPUT,*LPRAWINPUT;
|
|
__attribute__((dllimport)) UINT GetRawInputData(HRAWINPUT hRawInput,UINT uiCommand,LPVOID pData,PUINT pcbSize,UINT cbSizeHeader);
|
|
typedef struct tagRID_DEVICE_INFO_MOUSE {
|
|
DWORD dwId;
|
|
DWORD dwNumberOfButtons;
|
|
DWORD dwSampleRate;
|
|
WINBOOL fHasHorizontalWheel;
|
|
} RID_DEVICE_INFO_MOUSE,*PRID_DEVICE_INFO_MOUSE;
|
|
typedef struct tagRID_DEVICE_INFO_KEYBOARD {
|
|
DWORD dwType;
|
|
DWORD dwSubType;
|
|
DWORD dwKeyboardMode;
|
|
DWORD dwNumberOfFunctionKeys;
|
|
DWORD dwNumberOfIndicators;
|
|
DWORD dwNumberOfKeysTotal;
|
|
} RID_DEVICE_INFO_KEYBOARD,*PRID_DEVICE_INFO_KEYBOARD;
|
|
typedef struct tagRID_DEVICE_INFO_HID {
|
|
DWORD dwVendorId;
|
|
DWORD dwProductId;
|
|
DWORD dwVersionNumber;
|
|
USHORT usUsagePage;
|
|
USHORT usUsage;
|
|
} RID_DEVICE_INFO_HID,*PRID_DEVICE_INFO_HID;
|
|
typedef struct tagRID_DEVICE_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwType;
|
|
__extension__ union {
|
|
RID_DEVICE_INFO_MOUSE mouse;
|
|
RID_DEVICE_INFO_KEYBOARD keyboard;
|
|
RID_DEVICE_INFO_HID hid;
|
|
} ;
|
|
} RID_DEVICE_INFO,*PRID_DEVICE_INFO,*LPRID_DEVICE_INFO;
|
|
__attribute__((dllimport)) UINT GetRawInputDeviceInfoA(HANDLE hDevice,UINT uiCommand,LPVOID pData,PUINT pcbSize);
|
|
__attribute__((dllimport)) UINT GetRawInputDeviceInfoW(HANDLE hDevice,UINT uiCommand,LPVOID pData,PUINT pcbSize);
|
|
__attribute__((dllimport)) UINT GetRawInputBuffer(PRAWINPUT pData,PUINT pcbSize,UINT cbSizeHeader);
|
|
typedef struct tagRAWINPUTDEVICE {
|
|
USHORT usUsagePage;
|
|
USHORT usUsage;
|
|
DWORD dwFlags;
|
|
HWND hwndTarget;
|
|
} RAWINPUTDEVICE,*PRAWINPUTDEVICE,*LPRAWINPUTDEVICE;
|
|
typedef const RAWINPUTDEVICE *PCRAWINPUTDEVICE;
|
|
typedef struct tagRAWINPUTDEVICELIST {
|
|
HANDLE hDevice;
|
|
DWORD dwType;
|
|
} RAWINPUTDEVICELIST,*PRAWINPUTDEVICELIST;
|
|
__attribute__((dllimport)) WINBOOL RegisterRawInputDevices (PCRAWINPUTDEVICE pRawInputDevices, UINT uiNumDevices, UINT cbSize);
|
|
__attribute__((dllimport)) UINT GetRegisteredRawInputDevices (PRAWINPUTDEVICE pRawInputDevices, PUINT puiNumDevices, UINT cbSize);
|
|
__attribute__((dllimport)) UINT GetRawInputDeviceList (PRAWINPUTDEVICELIST pRawInputDeviceList, PUINT puiNumDevices, UINT cbSize);
|
|
__attribute__((dllimport)) LRESULT DefRawInputProc (PRAWINPUT *paRawInput, INT nInput, UINT cbSizeHeader);
|
|
__attribute__((dllimport)) WINBOOL ShutdownBlockReasonCreate (HWND hWnd, LPCWSTR pwszReason);
|
|
__attribute__((dllimport)) WINBOOL ShutdownBlockReasonQuery (HWND hWnd, LPWSTR pwszBuff, DWORD *pcchBuff);
|
|
__attribute__((dllimport)) WINBOOL ShutdownBlockReasonDestroy (HWND hWnd);
|
|
__attribute__((dllimport)) int GetTimeFormatEx (LPCWSTR lpLocaleName, DWORD dwFlags, const SYSTEMTIME *lpTime, LPCWSTR lpFormat, LPWSTR lpTimeStr, int cchTime);
|
|
__attribute__((dllimport)) int GetDateFormatEx (LPCWSTR lpLocaleName, DWORD dwFlags, const SYSTEMTIME *lpDate, LPCWSTR lpFormat, LPWSTR lpDateStr, int cchDate, LPCWSTR lpCalendar);
|
|
__attribute__((dllimport)) int GetDateFormatA (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpDate, LPCSTR lpFormat, LPSTR lpDateStr, int cchDate);
|
|
__attribute__((dllimport)) int GetDateFormatW (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpDate, LPCWSTR lpFormat, LPWSTR lpDateStr, int cchDate);
|
|
__attribute__((dllimport)) int GetTimeFormatA (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpTime, LPCSTR lpFormat, LPSTR lpTimeStr, int cchTime);
|
|
__attribute__((dllimport)) int GetTimeFormatW (LCID Locale, DWORD dwFlags, const SYSTEMTIME *lpTime, LPCWSTR lpFormat, LPWSTR lpTimeStr, int cchTime);
|
|
typedef DWORD LGRPID;
|
|
typedef DWORD LCTYPE;
|
|
typedef DWORD CALTYPE;
|
|
typedef DWORD CALID;
|
|
typedef struct _cpinfo {
|
|
UINT MaxCharSize;
|
|
BYTE DefaultChar[2];
|
|
BYTE LeadByte[12];
|
|
} CPINFO,*LPCPINFO;
|
|
typedef struct _cpinfoexA {
|
|
UINT MaxCharSize;
|
|
BYTE DefaultChar[2];
|
|
BYTE LeadByte[12];
|
|
WCHAR UnicodeDefaultChar;
|
|
UINT CodePage;
|
|
CHAR CodePageName[260];
|
|
} CPINFOEXA,*LPCPINFOEXA;
|
|
typedef struct _cpinfoexW {
|
|
UINT MaxCharSize;
|
|
BYTE DefaultChar[2];
|
|
BYTE LeadByte[12];
|
|
WCHAR UnicodeDefaultChar;
|
|
UINT CodePage;
|
|
WCHAR CodePageName[260];
|
|
} CPINFOEXW,*LPCPINFOEXW;
|
|
typedef CPINFOEXA CPINFOEX;
|
|
typedef LPCPINFOEXA LPCPINFOEX;
|
|
typedef struct _numberfmtA {
|
|
UINT NumDigits;
|
|
UINT LeadingZero;
|
|
UINT Grouping;
|
|
LPSTR lpDecimalSep;
|
|
LPSTR lpThousandSep;
|
|
UINT NegativeOrder;
|
|
} NUMBERFMTA,*LPNUMBERFMTA;
|
|
typedef struct _numberfmtW {
|
|
UINT NumDigits;
|
|
UINT LeadingZero;
|
|
UINT Grouping;
|
|
LPWSTR lpDecimalSep;
|
|
LPWSTR lpThousandSep;
|
|
UINT NegativeOrder;
|
|
} NUMBERFMTW,*LPNUMBERFMTW;
|
|
typedef NUMBERFMTA NUMBERFMT;
|
|
typedef LPNUMBERFMTA LPNUMBERFMT;
|
|
typedef struct _currencyfmtA {
|
|
UINT NumDigits;
|
|
UINT LeadingZero;
|
|
UINT Grouping;
|
|
LPSTR lpDecimalSep;
|
|
LPSTR lpThousandSep;
|
|
UINT NegativeOrder;
|
|
UINT PositiveOrder;
|
|
LPSTR lpCurrencySymbol;
|
|
} CURRENCYFMTA,*LPCURRENCYFMTA;
|
|
typedef struct _currencyfmtW {
|
|
UINT NumDigits;
|
|
UINT LeadingZero;
|
|
UINT Grouping;
|
|
LPWSTR lpDecimalSep;
|
|
LPWSTR lpThousandSep;
|
|
UINT NegativeOrder;
|
|
UINT PositiveOrder;
|
|
LPWSTR lpCurrencySymbol;
|
|
} CURRENCYFMTW,*LPCURRENCYFMTW;
|
|
typedef CURRENCYFMTA CURRENCYFMT;
|
|
typedef LPCURRENCYFMTA LPCURRENCYFMT;
|
|
enum SYSNLS_FUNCTION {
|
|
COMPARE_STRING = 0x1
|
|
};
|
|
typedef DWORD NLS_FUNCTION;
|
|
typedef struct _nlsversioninfo {
|
|
DWORD dwNLSVersionInfoSize;
|
|
DWORD dwNLSVersion;
|
|
DWORD dwDefinedVersion;
|
|
} NLSVERSIONINFO,*LPNLSVERSIONINFO;
|
|
typedef struct _nlsversioninfoex {
|
|
DWORD dwNLSVersionInfoSize;
|
|
DWORD dwNLSVersion;
|
|
DWORD dwDefinedVersion;
|
|
DWORD dwEffectiveId;
|
|
GUID guidCustomVersion;
|
|
} NLSVERSIONINFOEX,*LPNLSVERSIONINFOEX;
|
|
typedef LONG GEOID;
|
|
typedef DWORD GEOTYPE;
|
|
typedef DWORD GEOCLASS;
|
|
enum SYSGEOTYPE {
|
|
GEO_NATION = 0x0001,
|
|
GEO_LATITUDE = 0x0002,
|
|
GEO_LONGITUDE = 0x0003,
|
|
GEO_ISO2 = 0x0004,
|
|
GEO_ISO3 = 0x0005,
|
|
GEO_RFC1766 = 0x0006,
|
|
GEO_LCID = 0x0007,
|
|
GEO_FRIENDLYNAME= 0x0008,
|
|
GEO_OFFICIALNAME= 0x0009,
|
|
GEO_TIMEZONES = 0x000a,
|
|
GEO_OFFICIALLANGUAGES = 0x000b,
|
|
GEO_ISO_UN_NUMBER = 0x000c,
|
|
GEO_PARENT = 0x000d
|
|
};
|
|
enum SYSGEOCLASS {
|
|
GEOCLASS_NATION = 16,
|
|
GEOCLASS_REGION = 14,
|
|
GEOCLASS_ALL = 0
|
|
};
|
|
typedef WINBOOL ( *LANGUAGEGROUP_ENUMPROCA) (LGRPID, LPSTR, LPSTR, DWORD, LONG_PTR);
|
|
typedef WINBOOL ( *LANGGROUPLOCALE_ENUMPROCA) (LGRPID, LCID, LPSTR, LONG_PTR);
|
|
typedef WINBOOL ( *UILANGUAGE_ENUMPROCA) (LPSTR, LONG_PTR);
|
|
typedef WINBOOL ( *CODEPAGE_ENUMPROCA) (LPSTR);
|
|
typedef WINBOOL ( *DATEFMT_ENUMPROCA) (LPSTR);
|
|
typedef WINBOOL ( *DATEFMT_ENUMPROCEXA) (LPSTR, CALID);
|
|
typedef WINBOOL ( *TIMEFMT_ENUMPROCA) (LPSTR);
|
|
typedef WINBOOL ( *CALINFO_ENUMPROCA) (LPSTR);
|
|
typedef WINBOOL ( *CALINFO_ENUMPROCEXA) (LPSTR, CALID);
|
|
typedef WINBOOL ( *LOCALE_ENUMPROCA) (LPSTR);
|
|
typedef WINBOOL ( *LOCALE_ENUMPROCW) (LPWSTR);
|
|
typedef WINBOOL ( *LANGUAGEGROUP_ENUMPROCW) (LGRPID, LPWSTR, LPWSTR, DWORD, LONG_PTR);
|
|
typedef WINBOOL ( *LANGGROUPLOCALE_ENUMPROCW) (LGRPID, LCID, LPWSTR, LONG_PTR);
|
|
typedef WINBOOL ( *UILANGUAGE_ENUMPROCW) (LPWSTR, LONG_PTR);
|
|
typedef WINBOOL ( *CODEPAGE_ENUMPROCW) (LPWSTR);
|
|
typedef WINBOOL ( *DATEFMT_ENUMPROCW) (LPWSTR);
|
|
typedef WINBOOL ( *DATEFMT_ENUMPROCEXW) (LPWSTR, CALID);
|
|
typedef WINBOOL ( *TIMEFMT_ENUMPROCW) (LPWSTR);
|
|
typedef WINBOOL ( *CALINFO_ENUMPROCW) (LPWSTR);
|
|
typedef WINBOOL ( *CALINFO_ENUMPROCEXW) (LPWSTR, CALID);
|
|
typedef WINBOOL ( *GEO_ENUMPROC) (GEOID);
|
|
typedef struct _FILEMUIINFO {
|
|
DWORD dwSize;
|
|
DWORD dwVersion;
|
|
DWORD dwFileType;
|
|
BYTE pChecksum[16];
|
|
BYTE pServiceChecksum[16];
|
|
DWORD dwLanguageNameOffset;
|
|
DWORD dwTypeIDMainSize;
|
|
DWORD dwTypeIDMainOffset;
|
|
DWORD dwTypeNameMainOffset;
|
|
DWORD dwTypeIDMUISize;
|
|
DWORD dwTypeIDMUIOffset;
|
|
DWORD dwTypeNameMUIOffset;
|
|
BYTE abBuffer[8];
|
|
} FILEMUIINFO,*PFILEMUIINFO;
|
|
__attribute__((dllimport)) int CompareStringW (LCID Locale, DWORD dwCmpFlags, PCNZWCH lpString1, int cchCount1, PCNZWCH lpString2, int cchCount2);
|
|
__attribute__((dllimport)) int FoldStringW (DWORD dwMapFlags, LPCWCH lpSrcStr, int cchSrc, LPWSTR lpDestStr, int cchDest);
|
|
__attribute__((dllimport)) WINBOOL GetStringTypeExW (LCID Locale, DWORD dwInfoType, LPCWCH lpSrcStr, int cchSrc, LPWORD lpCharType);
|
|
__attribute__((dllimport)) WINBOOL GetStringTypeW (DWORD dwInfoType, LPCWCH lpSrcStr, int cchSrc, LPWORD lpCharType);
|
|
__attribute__((dllimport)) int MultiByteToWideChar (UINT CodePage, DWORD dwFlags, LPCCH lpMultiByteStr, int cbMultiByte, LPWSTR lpWideCharStr, int cchWideChar);
|
|
__attribute__((dllimport)) int WideCharToMultiByte (UINT CodePage, DWORD dwFlags, LPCWCH lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cbMultiByte, LPCCH lpDefaultChar, LPBOOL lpUsedDefaultChar);
|
|
__attribute__((dllimport)) WINBOOL IsValidCodePage (UINT CodePage);
|
|
__attribute__((dllimport)) UINT GetACP (void);
|
|
__attribute__((dllimport)) WINBOOL IsDBCSLeadByteEx (UINT CodePage, BYTE TestChar);
|
|
__attribute__((dllimport)) UINT GetOEMCP (void);
|
|
__attribute__((dllimport)) int CompareStringA (LCID Locale, DWORD dwCmpFlags, PCNZCH lpString1, int cchCount1, PCNZCH lpString2, int cchCount2);
|
|
__attribute__((dllimport)) int LCMapStringW (LCID Locale, DWORD dwMapFlags, LPCWSTR lpSrcStr, int cchSrc, LPWSTR lpDestStr, int cchDest);
|
|
__attribute__((dllimport)) int LCMapStringA (LCID Locale, DWORD dwMapFlags, LPCSTR lpSrcStr, int cchSrc, LPSTR lpDestStr, int cchDest);
|
|
__attribute__((dllimport)) int GetLocaleInfoW (LCID Locale, LCTYPE LCType, LPWSTR lpLCData, int cchData);
|
|
__attribute__((dllimport)) int GetLocaleInfoA (LCID Locale, LCTYPE LCType, LPSTR lpLCData, int cchData);
|
|
__attribute__((dllimport)) WINBOOL IsDBCSLeadByte (BYTE TestChar);
|
|
__attribute__((dllimport)) int GetNumberFormatA (LCID Locale, DWORD dwFlags, LPCSTR lpValue, const NUMBERFMTA *lpFormat, LPSTR lpNumberStr, int cchNumber);
|
|
__attribute__((dllimport)) int GetNumberFormatW (LCID Locale, DWORD dwFlags, LPCWSTR lpValue, const NUMBERFMTW *lpFormat, LPWSTR lpNumberStr, int cchNumber);
|
|
__attribute__((dllimport)) int GetCurrencyFormatA (LCID Locale, DWORD dwFlags, LPCSTR lpValue, const CURRENCYFMTA *lpFormat, LPSTR lpCurrencyStr, int cchCurrency);
|
|
__attribute__((dllimport)) int GetCurrencyFormatW (LCID Locale, DWORD dwFlags, LPCWSTR lpValue, const CURRENCYFMTW *lpFormat, LPWSTR lpCurrencyStr, int cchCurrency);
|
|
__attribute__((dllimport)) WINBOOL EnumCalendarInfoA (CALINFO_ENUMPROCA lpCalInfoEnumProc, LCID Locale, CALID Calendar, CALTYPE CalType);
|
|
__attribute__((dllimport)) WINBOOL EnumCalendarInfoW (CALINFO_ENUMPROCW lpCalInfoEnumProc, LCID Locale, CALID Calendar, CALTYPE CalType);
|
|
__attribute__((dllimport)) WINBOOL EnumCalendarInfoExA (CALINFO_ENUMPROCEXA lpCalInfoEnumProcEx, LCID Locale, CALID Calendar, CALTYPE CalType);
|
|
__attribute__((dllimport)) WINBOOL EnumCalendarInfoExW (CALINFO_ENUMPROCEXW lpCalInfoEnumProcEx, LCID Locale, CALID Calendar, CALTYPE CalType);
|
|
__attribute__((dllimport)) WINBOOL EnumTimeFormatsA (TIMEFMT_ENUMPROCA lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumTimeFormatsW (TIMEFMT_ENUMPROCW lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDateFormatsA (DATEFMT_ENUMPROCA lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDateFormatsW (DATEFMT_ENUMPROCW lpDateFmtEnumProc, LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDateFormatsExA (DATEFMT_ENUMPROCEXA lpDateFmtEnumProcEx, LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumDateFormatsExW (DATEFMT_ENUMPROCEXW lpDateFmtEnumProcEx, LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL IsValidLanguageGroup (LGRPID LanguageGroup, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL GetNLSVersion (NLS_FUNCTION Function, LCID Locale, LPNLSVERSIONINFO lpVersionInformation);
|
|
__attribute__((dllimport)) WINBOOL IsNLSDefinedString (NLS_FUNCTION Function, DWORD dwFlags, LPNLSVERSIONINFO lpVersionInformation, LPCWSTR lpString, INT cchStr);
|
|
__attribute__((dllimport)) WINBOOL IsValidLocale (LCID Locale, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL SetLocaleInfoA (LCID Locale, LCTYPE LCType, LPCSTR lpLCData);
|
|
__attribute__((dllimport)) WINBOOL SetLocaleInfoW (LCID Locale, LCTYPE LCType, LPCWSTR lpLCData);
|
|
__attribute__((dllimport)) int GetCalendarInfoA (LCID Locale, CALID Calendar, CALTYPE CalType, LPSTR lpCalData, int cchData, LPDWORD lpValue);
|
|
__attribute__((dllimport)) int GetCalendarInfoW (LCID Locale, CALID Calendar, CALTYPE CalType, LPWSTR lpCalData, int cchData, LPDWORD lpValue);
|
|
__attribute__((dllimport)) WINBOOL SetCalendarInfoA (LCID Locale, CALID Calendar, CALTYPE CalType, LPCSTR lpCalData);
|
|
__attribute__((dllimport)) WINBOOL SetCalendarInfoW (LCID Locale, CALID Calendar, CALTYPE CalType, LPCWSTR lpCalData);
|
|
__attribute__((dllimport)) int GetGeoInfoA (GEOID Location, GEOTYPE GeoType, LPSTR lpGeoData, int cchData, LANGID LangId);
|
|
__attribute__((dllimport)) int GetGeoInfoW (GEOID Location, GEOTYPE GeoType, LPWSTR lpGeoData, int cchData, LANGID LangId);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemGeoID (GEOCLASS GeoClass, GEOID ParentGeoId, GEO_ENUMPROC lpGeoEnumProc);
|
|
__attribute__((dllimport)) GEOID GetUserGeoID (GEOCLASS GeoClass);
|
|
__attribute__((dllimport)) WINBOOL GetCPInfo (UINT CodePage, LPCPINFO lpCPInfo);
|
|
__attribute__((dllimport)) WINBOOL GetCPInfoExA (UINT CodePage, DWORD dwFlags, LPCPINFOEXA lpCPInfoEx);
|
|
__attribute__((dllimport)) WINBOOL GetCPInfoExW (UINT CodePage, DWORD dwFlags, LPCPINFOEXW lpCPInfoEx);
|
|
__attribute__((dllimport)) WINBOOL SetUserGeoID (GEOID GeoId);
|
|
__attribute__((dllimport)) LCID ConvertDefaultLocale (LCID Locale);
|
|
__attribute__((dllimport)) LCID GetThreadLocale (void);
|
|
__attribute__((dllimport)) WINBOOL SetThreadLocale (LCID Locale);
|
|
__attribute__((dllimport)) LANGID GetSystemDefaultUILanguage (void);
|
|
__attribute__((dllimport)) LANGID GetUserDefaultUILanguage (void);
|
|
__attribute__((dllimport)) LANGID GetSystemDefaultLangID (void);
|
|
__attribute__((dllimport)) LANGID GetUserDefaultLangID (void);
|
|
__attribute__((dllimport)) LCID GetSystemDefaultLCID (void);
|
|
__attribute__((dllimport)) LCID GetUserDefaultLCID (void);
|
|
__attribute__((dllimport)) LANGID SetThreadUILanguage (LANGID LangId);
|
|
__attribute__((dllimport)) WINBOOL GetStringTypeExA (LCID Locale, DWORD dwInfoType, LPCSTR lpSrcStr, int cchSrc, LPWORD lpCharType);
|
|
__attribute__((dllimport)) WINBOOL GetStringTypeA (LCID Locale, DWORD dwInfoType, LPCSTR lpSrcStr, int cchSrc, LPWORD lpCharType);
|
|
__attribute__((dllimport)) int FoldStringA (DWORD dwMapFlags, LPCSTR lpSrcStr, int cchSrc, LPSTR lpDestStr, int cchDest);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemLocalesA (LOCALE_ENUMPROCA lpLocaleEnumProc, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemLocalesW (LOCALE_ENUMPROCW lpLocaleEnumProc, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemLanguageGroupsA (LANGUAGEGROUP_ENUMPROCA lpLanguageGroupEnumProc, DWORD dwFlags, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemLanguageGroupsW (LANGUAGEGROUP_ENUMPROCW lpLanguageGroupEnumProc, DWORD dwFlags, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumLanguageGroupLocalesA (LANGGROUPLOCALE_ENUMPROCA lpLangGroupLocaleEnumProc, LGRPID LanguageGroup, DWORD dwFlags, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumLanguageGroupLocalesW (LANGGROUPLOCALE_ENUMPROCW lpLangGroupLocaleEnumProc, LGRPID LanguageGroup, DWORD dwFlags, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumUILanguagesA (UILANGUAGE_ENUMPROCA lpUILanguageEnumProc, DWORD dwFlags, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumUILanguagesW (UILANGUAGE_ENUMPROCW lpUILanguageEnumProc, DWORD dwFlags, LONG_PTR lParam);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemCodePagesA (CODEPAGE_ENUMPROCA lpCodePageEnumProc, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL EnumSystemCodePagesW (CODEPAGE_ENUMPROCW lpCodePageEnumProc, DWORD dwFlags);
|
|
typedef struct _COORD {
|
|
SHORT X;
|
|
SHORT Y;
|
|
} COORD,*PCOORD;
|
|
typedef struct _SMALL_RECT {
|
|
SHORT Left;
|
|
SHORT Top;
|
|
SHORT Right;
|
|
SHORT Bottom;
|
|
} SMALL_RECT,*PSMALL_RECT;
|
|
typedef struct _KEY_EVENT_RECORD {
|
|
WINBOOL bKeyDown;
|
|
WORD wRepeatCount;
|
|
WORD wVirtualKeyCode;
|
|
WORD wVirtualScanCode;
|
|
union {
|
|
WCHAR UnicodeChar;
|
|
CHAR AsciiChar;
|
|
} uChar;
|
|
DWORD dwControlKeyState;
|
|
} KEY_EVENT_RECORD,*PKEY_EVENT_RECORD;
|
|
typedef struct _MOUSE_EVENT_RECORD {
|
|
COORD dwMousePosition;
|
|
DWORD dwButtonState;
|
|
DWORD dwControlKeyState;
|
|
DWORD dwEventFlags;
|
|
} MOUSE_EVENT_RECORD,*PMOUSE_EVENT_RECORD;
|
|
typedef struct _WINDOW_BUFFER_SIZE_RECORD {
|
|
COORD dwSize;
|
|
} WINDOW_BUFFER_SIZE_RECORD,*PWINDOW_BUFFER_SIZE_RECORD;
|
|
typedef struct _MENU_EVENT_RECORD {
|
|
UINT dwCommandId;
|
|
} MENU_EVENT_RECORD,*PMENU_EVENT_RECORD;
|
|
typedef struct _FOCUS_EVENT_RECORD {
|
|
WINBOOL bSetFocus;
|
|
} FOCUS_EVENT_RECORD,*PFOCUS_EVENT_RECORD;
|
|
typedef struct _INPUT_RECORD {
|
|
WORD EventType;
|
|
union {
|
|
KEY_EVENT_RECORD KeyEvent;
|
|
MOUSE_EVENT_RECORD MouseEvent;
|
|
WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
|
|
MENU_EVENT_RECORD MenuEvent;
|
|
FOCUS_EVENT_RECORD FocusEvent;
|
|
} Event;
|
|
} INPUT_RECORD,*PINPUT_RECORD;
|
|
typedef struct _CHAR_INFO {
|
|
union {
|
|
WCHAR UnicodeChar;
|
|
CHAR AsciiChar;
|
|
} Char;
|
|
WORD Attributes;
|
|
} CHAR_INFO,*PCHAR_INFO;
|
|
typedef struct _CONSOLE_SCREEN_BUFFER_INFO {
|
|
COORD dwSize;
|
|
COORD dwCursorPosition;
|
|
WORD wAttributes;
|
|
SMALL_RECT srWindow;
|
|
COORD dwMaximumWindowSize;
|
|
} CONSOLE_SCREEN_BUFFER_INFO,*PCONSOLE_SCREEN_BUFFER_INFO;
|
|
typedef struct _CONSOLE_CURSOR_INFO {
|
|
DWORD dwSize;
|
|
WINBOOL bVisible;
|
|
} CONSOLE_CURSOR_INFO,*PCONSOLE_CURSOR_INFO;
|
|
typedef struct _CONSOLE_FONT_INFO {
|
|
DWORD nFont;
|
|
COORD dwFontSize;
|
|
} CONSOLE_FONT_INFO,*PCONSOLE_FONT_INFO;
|
|
typedef struct _CONSOLE_SELECTION_INFO {
|
|
DWORD dwFlags;
|
|
COORD dwSelectionAnchor;
|
|
SMALL_RECT srSelection;
|
|
} CONSOLE_SELECTION_INFO,*PCONSOLE_SELECTION_INFO;
|
|
typedef WINBOOL ( *PHANDLER_ROUTINE)(DWORD CtrlType);
|
|
__attribute__((dllimport)) WINBOOL PeekConsoleInputA(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
|
|
__attribute__((dllimport)) WINBOOL PeekConsoleInputW(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleInputA(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleInputW(HANDLE hConsoleInput,PINPUT_RECORD lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsRead);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleInputA(HANDLE hConsoleInput,const INPUT_RECORD *lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsWritten);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleInputW(HANDLE hConsoleInput,const INPUT_RECORD *lpBuffer,DWORD nLength,LPDWORD lpNumberOfEventsWritten);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleOutputA(HANDLE hConsoleOutput,PCHAR_INFO lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpReadRegion);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleOutputW(HANDLE hConsoleOutput,PCHAR_INFO lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpReadRegion);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleOutputA(HANDLE hConsoleOutput,const CHAR_INFO *lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpWriteRegion);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleOutputW(HANDLE hConsoleOutput,const CHAR_INFO *lpBuffer,COORD dwBufferSize,COORD dwBufferCoord,PSMALL_RECT lpWriteRegion);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleOutputCharacterA(HANDLE hConsoleOutput,LPSTR lpCharacter,DWORD nLength,COORD dwReadCoord,LPDWORD lpNumberOfCharsRead);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleOutputCharacterW(HANDLE hConsoleOutput,LPWSTR lpCharacter,DWORD nLength,COORD dwReadCoord,LPDWORD lpNumberOfCharsRead);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleOutputAttribute(HANDLE hConsoleOutput,LPWORD lpAttribute,DWORD nLength,COORD dwReadCoord,LPDWORD lpNumberOfAttrsRead);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleOutputCharacterA(HANDLE hConsoleOutput,LPCSTR lpCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleOutputCharacterW(HANDLE hConsoleOutput,LPCWSTR lpCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleOutputAttribute(HANDLE hConsoleOutput,const WORD *lpAttribute,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfAttrsWritten);
|
|
__attribute__((dllimport)) WINBOOL FillConsoleOutputCharacterA(HANDLE hConsoleOutput,CHAR cCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
|
|
__attribute__((dllimport)) WINBOOL FillConsoleOutputCharacterW(HANDLE hConsoleOutput,WCHAR cCharacter,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfCharsWritten);
|
|
__attribute__((dllimport)) WINBOOL FillConsoleOutputAttribute(HANDLE hConsoleOutput,WORD wAttribute,DWORD nLength,COORD dwWriteCoord,LPDWORD lpNumberOfAttrsWritten);
|
|
__attribute__((dllimport)) WINBOOL GetConsoleMode(HANDLE hConsoleHandle,LPDWORD lpMode);
|
|
__attribute__((dllimport)) WINBOOL GetNumberOfConsoleInputEvents(HANDLE hConsoleInput,LPDWORD lpNumberOfEvents);
|
|
__attribute__((dllimport)) WINBOOL GetConsoleScreenBufferInfo(HANDLE hConsoleOutput,PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo);
|
|
__attribute__((dllimport)) COORD GetLargestConsoleWindowSize(HANDLE hConsoleOutput);
|
|
__attribute__((dllimport)) WINBOOL GetConsoleCursorInfo(HANDLE hConsoleOutput,PCONSOLE_CURSOR_INFO lpConsoleCursorInfo);
|
|
__attribute__((dllimport)) WINBOOL GetCurrentConsoleFont(HANDLE hConsoleOutput,WINBOOL bMaximumWindow,PCONSOLE_FONT_INFO lpConsoleCurrentFont);
|
|
__attribute__((dllimport)) COORD GetConsoleFontSize(HANDLE hConsoleOutput,DWORD nFont);
|
|
__attribute__((dllimport)) WINBOOL GetConsoleSelectionInfo(PCONSOLE_SELECTION_INFO lpConsoleSelectionInfo);
|
|
__attribute__((dllimport)) WINBOOL GetNumberOfConsoleMouseButtons(LPDWORD lpNumberOfMouseButtons);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleMode(HANDLE hConsoleHandle,DWORD dwMode);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleActiveScreenBuffer(HANDLE hConsoleOutput);
|
|
__attribute__((dllimport)) WINBOOL FlushConsoleInputBuffer(HANDLE hConsoleInput);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleScreenBufferSize(HANDLE hConsoleOutput,COORD dwSize);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleCursorPosition(HANDLE hConsoleOutput,COORD dwCursorPosition);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleCursorInfo(HANDLE hConsoleOutput,const CONSOLE_CURSOR_INFO *lpConsoleCursorInfo);
|
|
__attribute__((dllimport)) WINBOOL ScrollConsoleScreenBufferA(HANDLE hConsoleOutput,const SMALL_RECT *lpScrollRectangle,const SMALL_RECT *lpClipRectangle,COORD dwDestinationOrigin,const CHAR_INFO *lpFill);
|
|
__attribute__((dllimport)) WINBOOL ScrollConsoleScreenBufferW(HANDLE hConsoleOutput,const SMALL_RECT *lpScrollRectangle,const SMALL_RECT *lpClipRectangle,COORD dwDestinationOrigin,const CHAR_INFO *lpFill);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleWindowInfo(HANDLE hConsoleOutput,WINBOOL bAbsolute,const SMALL_RECT *lpConsoleWindow);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleTextAttribute(HANDLE hConsoleOutput,WORD wAttributes);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleCtrlHandler(PHANDLER_ROUTINE HandlerRoutine,WINBOOL Add);
|
|
__attribute__((dllimport)) WINBOOL GenerateConsoleCtrlEvent(DWORD dwCtrlEvent,DWORD dwProcessGroupId);
|
|
__attribute__((dllimport)) WINBOOL AllocConsole(void);
|
|
__attribute__((dllimport)) WINBOOL FreeConsole(void);
|
|
__attribute__((dllimport)) WINBOOL AttachConsole(DWORD dwProcessId);
|
|
__attribute__((dllimport)) DWORD GetConsoleTitleA(LPSTR lpConsoleTitle,DWORD nSize);
|
|
__attribute__((dllimport)) DWORD GetConsoleTitleW(LPWSTR lpConsoleTitle,DWORD nSize);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleTitleA(LPCSTR lpConsoleTitle);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleTitleW(LPCWSTR lpConsoleTitle);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleA(HANDLE hConsoleInput,LPVOID lpBuffer,DWORD nNumberOfCharsToRead,LPDWORD lpNumberOfCharsRead,LPVOID lpReserved);
|
|
__attribute__((dllimport)) WINBOOL ReadConsoleW(HANDLE hConsoleInput,LPVOID lpBuffer,DWORD nNumberOfCharsToRead,LPDWORD lpNumberOfCharsRead,LPVOID lpReserved);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleA(HANDLE hConsoleOutput,const void *lpBuffer,DWORD nNumberOfCharsToWrite,LPDWORD lpNumberOfCharsWritten,LPVOID lpReserved);
|
|
__attribute__((dllimport)) WINBOOL WriteConsoleW(HANDLE hConsoleOutput,const void *lpBuffer,DWORD nNumberOfCharsToWrite,LPDWORD lpNumberOfCharsWritten,LPVOID lpReserved);
|
|
__attribute__((dllimport)) HANDLE CreateConsoleScreenBuffer(DWORD dwDesiredAccess,DWORD dwShareMode,const SECURITY_ATTRIBUTES *lpSecurityAttributes,DWORD dwFlags,LPVOID lpScreenBufferData);
|
|
__attribute__((dllimport)) UINT GetConsoleCP(void);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleCP(UINT wCodePageID);
|
|
__attribute__((dllimport)) UINT GetConsoleOutputCP(void);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleOutputCP(UINT wCodePageID);
|
|
__attribute__((dllimport)) WINBOOL GetConsoleDisplayMode(LPDWORD lpModeFlags);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleDisplayMode(HANDLE hConsoleOutput, DWORD dwFlags, PCOORD lpNewScreenBufferDimensions);
|
|
__attribute__((dllimport)) HWND GetConsoleWindow(void);
|
|
__attribute__((dllimport)) DWORD GetConsoleProcessList(LPDWORD lpdwProcessList,DWORD dwProcessCount);
|
|
__attribute__((dllimport)) WINBOOL AddConsoleAliasA(LPSTR Source,LPSTR Target,LPSTR ExeName);
|
|
__attribute__((dllimport)) WINBOOL AddConsoleAliasW(LPWSTR Source,LPWSTR Target,LPWSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasA(LPSTR Source,LPSTR TargetBuffer,DWORD TargetBufferLength,LPSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasW(LPWSTR Source,LPWSTR TargetBuffer,DWORD TargetBufferLength,LPWSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasesLengthA(LPSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasesLengthW(LPWSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasExesLengthA(void);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasExesLengthW(void);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasesA(LPSTR AliasBuffer,DWORD AliasBufferLength,LPSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasesW(LPWSTR AliasBuffer,DWORD AliasBufferLength,LPWSTR ExeName);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasExesA(LPSTR ExeNameBuffer,DWORD ExeNameBufferLength);
|
|
__attribute__((dllimport)) DWORD GetConsoleAliasExesW(LPWSTR ExeNameBuffer,DWORD ExeNameBufferLength);
|
|
typedef struct _CONSOLE_FONT_INFOEX {
|
|
ULONG cbSize;
|
|
DWORD nFont;
|
|
COORD dwFontSize;
|
|
UINT FontFamily;
|
|
UINT FontWeight;
|
|
WCHAR FaceName[32];
|
|
} CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX;
|
|
typedef struct _CONSOLE_HISTORY_INFO {
|
|
UINT cbSize;
|
|
UINT HistoryBufferSize;
|
|
UINT NumberOfHistoryBuffers;
|
|
DWORD dwFlags;
|
|
} CONSOLE_HISTORY_INFO, *PCONSOLE_HISTORY_INFO;
|
|
typedef struct _CONSOLE_READCONSOLE_CONTROL {
|
|
ULONG nLength;
|
|
ULONG nInitialChars;
|
|
ULONG dwCtrlWakeupMask;
|
|
ULONG dwControlKeyState;
|
|
} CONSOLE_READCONSOLE_CONTROL, *PCONSOLE_READCONSOLE_CONTROL;
|
|
typedef struct _CONSOLE_SCREEN_BUFFER_INFOEX {
|
|
ULONG cbSize;
|
|
COORD dwSize;
|
|
COORD dwCursorPosition;
|
|
WORD wAttributes;
|
|
SMALL_RECT srWindow;
|
|
COORD dwMaximumWindowSize;
|
|
WORD wPopupAttributes;
|
|
WINBOOL bFullscreenSupported;
|
|
COLORREF ColorTable[16];
|
|
} CONSOLE_SCREEN_BUFFER_INFOEX, *PCONSOLE_SCREEN_BUFFER_INFOEX;
|
|
WINBOOL GetConsoleHistoryInfo(
|
|
PCONSOLE_HISTORY_INFO lpConsoleHistoryInfo
|
|
);
|
|
__attribute__((dllimport)) WINBOOL GetConsoleScreenBufferInfoEx(
|
|
HANDLE hConsoleOutput,
|
|
PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx
|
|
);
|
|
__attribute__((dllimport)) WINBOOL GetCurrentConsoleFontEx(
|
|
HANDLE hConsoleOutput,
|
|
WINBOOL bMaximumWindow,
|
|
PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx
|
|
);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleHistoryInfo(
|
|
PCONSOLE_HISTORY_INFO lpConsoleHistoryInfo
|
|
);
|
|
__attribute__((dllimport)) WINBOOL SetConsoleScreenBufferInfoEx(
|
|
HANDLE hConsoleOutput,
|
|
PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx
|
|
);
|
|
__attribute__((dllimport)) WINBOOL SetCurrentConsoleFontEx(
|
|
HANDLE hConsoleOutput,
|
|
WINBOOL bMaximumWindow,
|
|
PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx
|
|
);
|
|
typedef struct tagVS_FIXEDFILEINFO
|
|
{
|
|
DWORD dwSignature;
|
|
DWORD dwStrucVersion;
|
|
DWORD dwFileVersionMS;
|
|
DWORD dwFileVersionLS;
|
|
DWORD dwProductVersionMS;
|
|
DWORD dwProductVersionLS;
|
|
DWORD dwFileFlagsMask;
|
|
DWORD dwFileFlags;
|
|
DWORD dwFileOS;
|
|
DWORD dwFileType;
|
|
DWORD dwFileSubtype;
|
|
DWORD dwFileDateMS;
|
|
DWORD dwFileDateLS;
|
|
} VS_FIXEDFILEINFO;
|
|
DWORD VerFindFileA(DWORD uFlags,LPSTR szFileName,LPSTR szWinDir,LPSTR szAppDir,LPSTR szCurDir,PUINT lpuCurDirLen,LPSTR szDestDir,PUINT lpuDestDirLen);
|
|
DWORD VerFindFileW(DWORD uFlags,LPWSTR szFileName,LPWSTR szWinDir,LPWSTR szAppDir,LPWSTR szCurDir,PUINT lpuCurDirLen,LPWSTR szDestDir,PUINT lpuDestDirLen);
|
|
DWORD VerInstallFileA(DWORD uFlags,LPSTR szSrcFileName,LPSTR szDestFileName,LPSTR szSrcDir,LPSTR szDestDir,LPSTR szCurDir,LPSTR szTmpFile,PUINT lpuTmpFileLen);
|
|
DWORD VerInstallFileW(DWORD uFlags,LPWSTR szSrcFileName,LPWSTR szDestFileName,LPWSTR szSrcDir,LPWSTR szDestDir,LPWSTR szCurDir,LPWSTR szTmpFile,PUINT lpuTmpFileLen);
|
|
DWORD GetFileVersionInfoSizeA(LPCSTR lptstrFilename,LPDWORD lpdwHandle);
|
|
DWORD GetFileVersionInfoSizeW(LPCWSTR lptstrFilename,LPDWORD lpdwHandle);
|
|
WINBOOL GetFileVersionInfoA(LPCSTR lptstrFilename,DWORD dwHandle,DWORD dwLen,LPVOID lpData);
|
|
WINBOOL GetFileVersionInfoW(LPCWSTR lptstrFilename,DWORD dwHandle,DWORD dwLen,LPVOID lpData);
|
|
DWORD VerLanguageNameA(DWORD wLang,LPSTR szLang,DWORD nSize);
|
|
DWORD VerLanguageNameW(DWORD wLang,LPWSTR szLang,DWORD nSize);
|
|
WINBOOL VerQueryValueA(LPCVOID pBlock,LPCSTR lpSubBlock,LPVOID *lplpBuffer,PUINT puLen);
|
|
WINBOOL VerQueryValueW(LPCVOID pBlock,LPCWSTR lpSubBlock,LPVOID *lplpBuffer,PUINT puLen);
|
|
typedef ACCESS_MASK REGSAM;
|
|
typedef LONG LSTATUS;
|
|
struct val_context {
|
|
int valuelen;
|
|
LPVOID value_context;
|
|
LPVOID val_buff_ptr;
|
|
};
|
|
typedef struct val_context *PVALCONTEXT;
|
|
typedef struct pvalueA {
|
|
LPSTR pv_valuename;
|
|
int pv_valuelen;
|
|
LPVOID pv_value_context;
|
|
DWORD pv_type;
|
|
}PVALUEA,*PPVALUEA;
|
|
typedef struct pvalueW {
|
|
LPWSTR pv_valuename;
|
|
int pv_valuelen;
|
|
LPVOID pv_value_context;
|
|
DWORD pv_type;
|
|
}PVALUEW,*PPVALUEW;
|
|
typedef PVALUEA PVALUE;
|
|
typedef PPVALUEA PPVALUE;
|
|
typedef DWORD __attribute__((__cdecl__)) QUERYHANDLER(LPVOID keycontext,PVALCONTEXT val_list,DWORD num_vals,LPVOID outputbuffer,DWORD *total_outlen,DWORD input_blen);
|
|
typedef QUERYHANDLER *PQUERYHANDLER;
|
|
typedef struct provider_info {
|
|
PQUERYHANDLER pi_R0_1val;
|
|
PQUERYHANDLER pi_R0_allvals;
|
|
PQUERYHANDLER pi_R3_1val;
|
|
PQUERYHANDLER pi_R3_allvals;
|
|
DWORD pi_flags;
|
|
LPVOID pi_key_context;
|
|
} REG_PROVIDER;
|
|
typedef struct provider_info *PPROVIDER;
|
|
typedef struct value_entA {
|
|
LPSTR ve_valuename;
|
|
DWORD ve_valuelen;
|
|
DWORD_PTR ve_valueptr;
|
|
DWORD ve_type;
|
|
} VALENTA,*PVALENTA;
|
|
typedef struct value_entW {
|
|
LPWSTR ve_valuename;
|
|
DWORD ve_valuelen;
|
|
DWORD_PTR ve_valueptr;
|
|
DWORD ve_type;
|
|
} VALENTW,*PVALENTW;
|
|
typedef VALENTA VALENT;
|
|
typedef PVALENTA PVALENT;
|
|
__attribute__((dllimport)) LONG RegCloseKey(HKEY hKey);
|
|
__attribute__((dllimport)) LONG RegOverridePredefKey(HKEY hKey,HKEY hNewHKey);
|
|
__attribute__((dllimport)) LONG RegOpenUserClassesRoot(HANDLE hToken,DWORD dwOptions,REGSAM samDesired,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegOpenCurrentUser(REGSAM samDesired,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegDisablePredefinedCache(void);
|
|
__attribute__((dllimport)) LONG RegDisablePredefinedCacheEx(void);
|
|
__attribute__((dllimport)) LONG RegConnectRegistryA(LPCSTR lpMachineName,HKEY hKey,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegConnectRegistryW(LPCWSTR lpMachineName,HKEY hKey,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegConnectRegistryExA(LPCSTR lpMachineName,HKEY hKey,ULONG Flags,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegConnectRegistryExW(LPCWSTR lpMachineName,HKEY hKey,ULONG Flags,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegCreateKeyA(HKEY hKey,LPCSTR lpSubKey,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegCreateKeyW(HKEY hKey,LPCWSTR lpSubKey,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegCreateKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD Reserved,LPSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
|
|
__attribute__((dllimport)) LONG RegCreateKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD Reserved,LPWSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
|
|
__attribute__((dllimport)) LONG RegDeleteKeyA(HKEY hKey,LPCSTR lpSubKey);
|
|
__attribute__((dllimport)) LONG RegDeleteKeyW(HKEY hKey,LPCWSTR lpSubKey);
|
|
__attribute__((dllimport)) LONG RegDeleteKeyExA(HKEY hKey,LPCSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
|
|
__attribute__((dllimport)) LONG RegDeleteKeyExW(HKEY hKey,LPCWSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
|
|
__attribute__((dllimport)) LONG RegDisableReflectionKey(HKEY hBase);
|
|
__attribute__((dllimport)) LONG RegEnableReflectionKey(HKEY hBase);
|
|
__attribute__((dllimport)) LONG RegQueryReflectionKey(HKEY hBase,WINBOOL *bIsReflectionDisabled);
|
|
__attribute__((dllimport)) LONG RegDeleteValueA(HKEY hKey,LPCSTR lpValueName);
|
|
__attribute__((dllimport)) LONG RegDeleteValueW(HKEY hKey,LPCWSTR lpValueName);
|
|
__attribute__((dllimport)) LONG RegEnumKeyA(HKEY hKey,DWORD dwIndex,LPSTR lpName,DWORD cchName);
|
|
__attribute__((dllimport)) LONG RegEnumKeyW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,DWORD cchName);
|
|
__attribute__((dllimport)) LONG RegEnumKeyExA(HKEY hKey,DWORD dwIndex,LPSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
|
|
__attribute__((dllimport)) LONG RegEnumKeyExW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPWSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
|
|
__attribute__((dllimport)) LONG RegEnumValueA(HKEY hKey,DWORD dwIndex,LPSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
|
|
__attribute__((dllimport)) LONG RegEnumValueW(HKEY hKey,DWORD dwIndex,LPWSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
|
|
__attribute__((dllimport)) LONG RegFlushKey(HKEY hKey);
|
|
__attribute__((dllimport)) LONG RegGetKeySecurity(HKEY hKey,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR pSecurityDescriptor,LPDWORD lpcbSecurityDescriptor);
|
|
__attribute__((dllimport)) LONG RegLoadKeyA(HKEY hKey,LPCSTR lpSubKey,LPCSTR lpFile);
|
|
__attribute__((dllimport)) LONG RegLoadKeyW(HKEY hKey,LPCWSTR lpSubKey,LPCWSTR lpFile);
|
|
__attribute__((dllimport)) LONG RegNotifyChangeKeyValue(HKEY hKey,WINBOOL bWatchSubtree,DWORD dwNotifyFilter,HANDLE hEvent,WINBOOL fAsynchronous);
|
|
__attribute__((dllimport)) LONG RegOpenKeyA(HKEY hKey,LPCSTR lpSubKey,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegOpenKeyW(HKEY hKey,LPCWSTR lpSubKey,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegOpenKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegOpenKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
|
|
__attribute__((dllimport)) LONG RegQueryInfoKeyA(HKEY hKey,LPSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
|
|
__attribute__((dllimport)) LONG RegQueryInfoKeyW(HKEY hKey,LPWSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
|
|
__attribute__((dllimport)) LONG RegQueryValueA(HKEY hKey,LPCSTR lpSubKey,LPSTR lpData,PLONG lpcbData);
|
|
__attribute__((dllimport)) LONG RegQueryValueW(HKEY hKey,LPCWSTR lpSubKey,LPWSTR lpData,PLONG lpcbData);
|
|
__attribute__((dllimport)) LONG RegQueryMultipleValuesA(HKEY hKey,PVALENTA val_list,DWORD num_vals,LPSTR lpValueBuf,LPDWORD ldwTotsize);
|
|
__attribute__((dllimport)) LONG RegQueryMultipleValuesW(HKEY hKey,PVALENTW val_list,DWORD num_vals,LPWSTR lpValueBuf,LPDWORD ldwTotsize);
|
|
__attribute__((dllimport)) LONG RegQueryValueExA(HKEY hKey,LPCSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
|
|
__attribute__((dllimport)) LONG RegQueryValueExW(HKEY hKey,LPCWSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
|
|
__attribute__((dllimport)) LONG RegReplaceKeyA(HKEY hKey,LPCSTR lpSubKey,LPCSTR lpNewFile,LPCSTR lpOldFile);
|
|
__attribute__((dllimport)) LONG RegReplaceKeyW(HKEY hKey,LPCWSTR lpSubKey,LPCWSTR lpNewFile,LPCWSTR lpOldFile);
|
|
__attribute__((dllimport)) LONG RegRestoreKeyA(HKEY hKey,LPCSTR lpFile,DWORD dwFlags);
|
|
__attribute__((dllimport)) LONG RegRestoreKeyW(HKEY hKey,LPCWSTR lpFile,DWORD dwFlags);
|
|
__attribute__((dllimport)) LONG RegSaveKeyA(HKEY hKey,LPCSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) LONG RegSaveKeyW(HKEY hKey,LPCWSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
__attribute__((dllimport)) LONG RegSetKeySecurity(HKEY hKey,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR pSecurityDescriptor);
|
|
__attribute__((dllimport)) LONG RegSetValueA(HKEY hKey,LPCSTR lpSubKey,DWORD dwType,LPCSTR lpData,DWORD cbData);
|
|
__attribute__((dllimport)) LONG RegSetValueW(HKEY hKey,LPCWSTR lpSubKey,DWORD dwType,LPCWSTR lpData,DWORD cbData);
|
|
__attribute__((dllimport)) LONG RegSetValueExA(HKEY hKey,LPCSTR lpValueName,DWORD Reserved,DWORD dwType,const BYTE *lpData,DWORD cbData);
|
|
__attribute__((dllimport)) LONG RegSetValueExW(HKEY hKey,LPCWSTR lpValueName,DWORD Reserved,DWORD dwType,const BYTE *lpData,DWORD cbData);
|
|
__attribute__((dllimport)) LONG RegUnLoadKeyA(HKEY hKey,LPCSTR lpSubKey);
|
|
__attribute__((dllimport)) LONG RegUnLoadKeyW(HKEY hKey,LPCWSTR lpSubKey);
|
|
__attribute__((dllimport)) LONG RegGetValueA(HKEY hkey,LPCSTR lpSubKey,LPCSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
|
|
__attribute__((dllimport)) LONG RegGetValueW(HKEY hkey,LPCWSTR lpSubKey,LPCWSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
|
|
__attribute__((dllimport)) WINBOOL InitiateSystemShutdownA(LPSTR lpMachineName,LPSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown);
|
|
__attribute__((dllimport)) WINBOOL InitiateSystemShutdownW(LPWSTR lpMachineName,LPWSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown);
|
|
__attribute__((dllimport)) WINBOOL AbortSystemShutdownA(LPSTR lpMachineName);
|
|
__attribute__((dllimport)) WINBOOL AbortSystemShutdownW(LPWSTR lpMachineName);
|
|
__attribute__((dllimport)) WINBOOL InitiateSystemShutdownExA(LPSTR lpMachineName,LPSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown,DWORD dwReason);
|
|
__attribute__((dllimport)) WINBOOL InitiateSystemShutdownExW(LPWSTR lpMachineName,LPWSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown,DWORD dwReason);
|
|
__attribute__((dllimport)) LONG RegSaveKeyExA(HKEY hKey,LPCSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes,DWORD Flags);
|
|
__attribute__((dllimport)) LONG RegSaveKeyExW(HKEY hKey,LPCWSTR lpFile,LPSECURITY_ATTRIBUTES lpSecurityAttributes,DWORD Flags);
|
|
__attribute__((dllimport)) LONG Wow64Win32ApiEntry (DWORD dwFuncNumber,DWORD dwFlag,DWORD dwRes);
|
|
typedef struct _NETRESOURCEA {
|
|
DWORD dwScope;
|
|
DWORD dwType;
|
|
DWORD dwDisplayType;
|
|
DWORD dwUsage;
|
|
LPSTR lpLocalName;
|
|
LPSTR lpRemoteName;
|
|
LPSTR lpComment;
|
|
LPSTR lpProvider;
|
|
} NETRESOURCEA,*LPNETRESOURCEA;
|
|
typedef struct _NETRESOURCEW {
|
|
DWORD dwScope;
|
|
DWORD dwType;
|
|
DWORD dwDisplayType;
|
|
DWORD dwUsage;
|
|
LPWSTR lpLocalName;
|
|
LPWSTR lpRemoteName;
|
|
LPWSTR lpComment;
|
|
LPWSTR lpProvider;
|
|
} NETRESOURCEW,*LPNETRESOURCEW;
|
|
typedef NETRESOURCEA NETRESOURCE;
|
|
typedef LPNETRESOURCEA LPNETRESOURCE;
|
|
DWORD WNetAddConnectionA(LPCSTR lpRemoteName,LPCSTR lpPassword,LPCSTR lpLocalName);
|
|
DWORD WNetAddConnectionW(LPCWSTR lpRemoteName,LPCWSTR lpPassword,LPCWSTR lpLocalName);
|
|
DWORD WNetAddConnection2A(LPNETRESOURCEA lpNetResource,LPCSTR lpPassword,LPCSTR lpUserName,DWORD dwFlags);
|
|
DWORD WNetAddConnection2W(LPNETRESOURCEW lpNetResource,LPCWSTR lpPassword,LPCWSTR lpUserName,DWORD dwFlags);
|
|
DWORD WNetAddConnection3A(HWND hwndOwner,LPNETRESOURCEA lpNetResource,LPCSTR lpPassword,LPCSTR lpUserName,DWORD dwFlags);
|
|
DWORD WNetAddConnection3W(HWND hwndOwner,LPNETRESOURCEW lpNetResource,LPCWSTR lpPassword,LPCWSTR lpUserName,DWORD dwFlags);
|
|
DWORD WNetCancelConnectionA(LPCSTR lpName,WINBOOL fForce);
|
|
DWORD WNetCancelConnectionW(LPCWSTR lpName,WINBOOL fForce);
|
|
DWORD WNetCancelConnection2A(LPCSTR lpName,DWORD dwFlags,WINBOOL fForce);
|
|
DWORD WNetCancelConnection2W(LPCWSTR lpName,DWORD dwFlags,WINBOOL fForce);
|
|
DWORD WNetGetConnectionA(LPCSTR lpLocalName,LPSTR lpRemoteName,LPDWORD lpnLength);
|
|
DWORD WNetGetConnectionW(LPCWSTR lpLocalName,LPWSTR lpRemoteName,LPDWORD lpnLength);
|
|
DWORD WNetRestoreConnectionA(HWND hwndParent,LPCSTR lpDevice);
|
|
DWORD WNetUseConnectionA(HWND hwndOwner,LPNETRESOURCEA lpNetResource,LPCSTR lpPassword,LPCSTR lpUserID,DWORD dwFlags,LPSTR lpAccessName,LPDWORD lpBufferSize,LPDWORD lpResult);
|
|
DWORD WNetUseConnectionW(HWND hwndOwner,LPNETRESOURCEW lpNetResource,LPCWSTR lpPassword,LPCWSTR lpUserID,DWORD dwFlags,LPWSTR lpAccessName,LPDWORD lpBufferSize,LPDWORD lpResult);
|
|
DWORD WNetConnectionDialog(HWND hwnd,DWORD dwType);
|
|
DWORD WNetDisconnectDialog(HWND hwnd,DWORD dwType);
|
|
DWORD WNetRestoreConnectionW(HWND hwndParent,LPCWSTR lpDevice);
|
|
typedef struct _CONNECTDLGSTRUCTA {
|
|
DWORD cbStructure;
|
|
HWND hwndOwner;
|
|
LPNETRESOURCEA lpConnRes;
|
|
DWORD dwFlags;
|
|
DWORD dwDevNum;
|
|
} CONNECTDLGSTRUCTA,*LPCONNECTDLGSTRUCTA;
|
|
typedef struct _CONNECTDLGSTRUCTW {
|
|
DWORD cbStructure;
|
|
HWND hwndOwner;
|
|
LPNETRESOURCEW lpConnRes;
|
|
DWORD dwFlags;
|
|
DWORD dwDevNum;
|
|
} CONNECTDLGSTRUCTW,*LPCONNECTDLGSTRUCTW;
|
|
typedef CONNECTDLGSTRUCTA CONNECTDLGSTRUCT;
|
|
typedef LPCONNECTDLGSTRUCTA LPCONNECTDLGSTRUCT;
|
|
DWORD WNetConnectionDialog1A(LPCONNECTDLGSTRUCTA lpConnDlgStruct);
|
|
DWORD WNetConnectionDialog1W(LPCONNECTDLGSTRUCTW lpConnDlgStruct);
|
|
typedef struct _DISCDLGSTRUCTA {
|
|
DWORD cbStructure;
|
|
HWND hwndOwner;
|
|
LPSTR lpLocalName;
|
|
LPSTR lpRemoteName;
|
|
DWORD dwFlags;
|
|
} DISCDLGSTRUCTA,*LPDISCDLGSTRUCTA;
|
|
typedef struct _DISCDLGSTRUCTW {
|
|
DWORD cbStructure;
|
|
HWND hwndOwner;
|
|
LPWSTR lpLocalName;
|
|
LPWSTR lpRemoteName;
|
|
DWORD dwFlags;
|
|
} DISCDLGSTRUCTW,*LPDISCDLGSTRUCTW;
|
|
typedef DISCDLGSTRUCTA DISCDLGSTRUCT;
|
|
typedef LPDISCDLGSTRUCTA LPDISCDLGSTRUCT;
|
|
DWORD WNetDisconnectDialog1A(LPDISCDLGSTRUCTA lpConnDlgStruct);
|
|
DWORD WNetDisconnectDialog1W(LPDISCDLGSTRUCTW lpConnDlgStruct);
|
|
DWORD WNetOpenEnumA(DWORD dwScope,DWORD dwType,DWORD dwUsage,LPNETRESOURCEA lpNetResource,LPHANDLE lphEnum);
|
|
DWORD WNetOpenEnumW(DWORD dwScope,DWORD dwType,DWORD dwUsage,LPNETRESOURCEW lpNetResource,LPHANDLE lphEnum);
|
|
DWORD WNetEnumResourceA(HANDLE hEnum,LPDWORD lpcCount,LPVOID lpBuffer,LPDWORD lpBufferSize);
|
|
DWORD WNetEnumResourceW(HANDLE hEnum,LPDWORD lpcCount,LPVOID lpBuffer,LPDWORD lpBufferSize);
|
|
DWORD WNetCloseEnum(HANDLE hEnum);
|
|
DWORD WNetGetResourceParentA(LPNETRESOURCEA lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer);
|
|
DWORD WNetGetResourceParentW(LPNETRESOURCEW lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer);
|
|
DWORD WNetGetResourceInformationA(LPNETRESOURCEA lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer,LPSTR *lplpSystem);
|
|
DWORD WNetGetResourceInformationW(LPNETRESOURCEW lpNetResource,LPVOID lpBuffer,LPDWORD lpcbBuffer,LPWSTR *lplpSystem);
|
|
typedef struct _UNIVERSAL_NAME_INFOA {
|
|
LPSTR lpUniversalName;
|
|
} UNIVERSAL_NAME_INFOA,*LPUNIVERSAL_NAME_INFOA;
|
|
typedef struct _UNIVERSAL_NAME_INFOW {
|
|
LPWSTR lpUniversalName;
|
|
} UNIVERSAL_NAME_INFOW,*LPUNIVERSAL_NAME_INFOW;
|
|
typedef UNIVERSAL_NAME_INFOA UNIVERSAL_NAME_INFO;
|
|
typedef LPUNIVERSAL_NAME_INFOA LPUNIVERSAL_NAME_INFO;
|
|
typedef struct _REMOTE_NAME_INFOA {
|
|
LPSTR lpUniversalName;
|
|
LPSTR lpConnectionName;
|
|
LPSTR lpRemainingPath;
|
|
} REMOTE_NAME_INFOA,*LPREMOTE_NAME_INFOA;
|
|
typedef struct _REMOTE_NAME_INFOW {
|
|
LPWSTR lpUniversalName;
|
|
LPWSTR lpConnectionName;
|
|
LPWSTR lpRemainingPath;
|
|
} REMOTE_NAME_INFOW,*LPREMOTE_NAME_INFOW;
|
|
typedef REMOTE_NAME_INFOA REMOTE_NAME_INFO;
|
|
typedef LPREMOTE_NAME_INFOA LPREMOTE_NAME_INFO;
|
|
DWORD WNetGetUniversalNameA(LPCSTR lpLocalPath,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpBufferSize);
|
|
DWORD WNetGetUniversalNameW(LPCWSTR lpLocalPath,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpBufferSize);
|
|
DWORD WNetGetUserA(LPCSTR lpName,LPSTR lpUserName,LPDWORD lpnLength);
|
|
DWORD WNetGetUserW(LPCWSTR lpName,LPWSTR lpUserName,LPDWORD lpnLength);
|
|
DWORD WNetGetProviderNameA(DWORD dwNetType,LPSTR lpProviderName,LPDWORD lpBufferSize);
|
|
DWORD WNetGetProviderNameW(DWORD dwNetType,LPWSTR lpProviderName,LPDWORD lpBufferSize);
|
|
typedef struct _NETINFOSTRUCT {
|
|
DWORD cbStructure;
|
|
DWORD dwProviderVersion;
|
|
DWORD dwStatus;
|
|
DWORD dwCharacteristics;
|
|
ULONG_PTR dwHandle;
|
|
WORD wNetType;
|
|
DWORD dwPrinters;
|
|
DWORD dwDrives;
|
|
} NETINFOSTRUCT,*LPNETINFOSTRUCT;
|
|
DWORD WNetGetNetworkInformationA(LPCSTR lpProvider,LPNETINFOSTRUCT lpNetInfoStruct);
|
|
DWORD WNetGetNetworkInformationW(LPCWSTR lpProvider,LPNETINFOSTRUCT lpNetInfoStruct);
|
|
typedef UINT ( *PFNGETPROFILEPATHA) (LPCSTR pszUsername,LPSTR pszBuffer,UINT cbBuffer);
|
|
typedef UINT ( *PFNGETPROFILEPATHW) (LPCWSTR pszUsername,LPWSTR pszBuffer,UINT cbBuffer);
|
|
typedef UINT ( *PFNRECONCILEPROFILEA) (LPCSTR pszCentralFile,LPCSTR pszLocalFile,DWORD dwFlags);
|
|
typedef UINT ( *PFNRECONCILEPROFILEW) (LPCWSTR pszCentralFile,LPCWSTR pszLocalFile,DWORD dwFlags);
|
|
typedef WINBOOL ( *PFNPROCESSPOLICIESA) (HWND hwnd,LPCSTR pszPath,LPCSTR pszUsername,LPCSTR pszComputerName,DWORD dwFlags);
|
|
typedef WINBOOL ( *PFNPROCESSPOLICIESW) (HWND hwnd,LPCWSTR pszPath,LPCWSTR pszUsername,LPCWSTR pszComputerName,DWORD dwFlags);
|
|
DWORD WNetGetLastErrorA(LPDWORD lpError,LPSTR lpErrorBuf,DWORD nErrorBufSize,LPSTR lpNameBuf,DWORD nNameBufSize);
|
|
DWORD WNetGetLastErrorW(LPDWORD lpError,LPWSTR lpErrorBuf,DWORD nErrorBufSize,LPWSTR lpNameBuf,DWORD nNameBufSize);
|
|
typedef struct _NETCONNECTINFOSTRUCT {
|
|
DWORD cbStructure;
|
|
DWORD dwFlags;
|
|
DWORD dwSpeed;
|
|
DWORD dwDelay;
|
|
DWORD dwOptDataSize;
|
|
} NETCONNECTINFOSTRUCT,*LPNETCONNECTINFOSTRUCT;
|
|
DWORD MultinetGetConnectionPerformanceA(LPNETRESOURCEA lpNetResource,LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct);
|
|
DWORD MultinetGetConnectionPerformanceW(LPNETRESOURCEW lpNetResource,LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct);
|
|
typedef struct {
|
|
unsigned short bAppReturnCode:8,reserved:6,fBusy:1,fAck:1;
|
|
} DDEACK;
|
|
typedef struct {
|
|
unsigned short reserved:14,fDeferUpd:1,fAckReq:1;
|
|
short cfFormat;
|
|
} DDEADVISE;
|
|
typedef struct {
|
|
unsigned short unused:12,fResponse:1,fRelease:1,reserved:1,fAckReq:1;
|
|
short cfFormat;
|
|
BYTE Value[1];
|
|
} DDEDATA;
|
|
typedef struct {
|
|
unsigned short unused:13,fRelease:1,fReserved:2;
|
|
short cfFormat;
|
|
BYTE Value[1];
|
|
} DDEPOKE;
|
|
typedef struct {
|
|
unsigned short unused:13,fRelease:1,fDeferUpd:1,fAckReq:1;
|
|
short cfFormat;
|
|
} DDELN;
|
|
typedef struct {
|
|
unsigned short unused:12,fAck:1,fRelease:1,fReserved:1,fAckReq:1;
|
|
short cfFormat;
|
|
BYTE rgb[1];
|
|
} DDEUP;
|
|
WINBOOL DdeSetQualityOfService(HWND hwndClient,const SECURITY_QUALITY_OF_SERVICE *pqosNew,PSECURITY_QUALITY_OF_SERVICE pqosPrev);
|
|
WINBOOL ImpersonateDdeClientWindow(HWND hWndClient,HWND hWndServer);
|
|
LPARAM PackDDElParam(UINT msg,UINT_PTR uiLo,UINT_PTR uiHi);
|
|
WINBOOL UnpackDDElParam(UINT msg,LPARAM lParam,PUINT_PTR puiLo,PUINT_PTR puiHi);
|
|
WINBOOL FreeDDElParam(UINT msg,LPARAM lParam);
|
|
LPARAM ReuseDDElParam(LPARAM lParam,UINT msgIn,UINT msgOut,UINT_PTR uiLo,UINT_PTR uiHi);
|
|
struct HCONVLIST__ { int unused; }; typedef struct HCONVLIST__ *HCONVLIST;
|
|
struct HCONV__ { int unused; }; typedef struct HCONV__ *HCONV;
|
|
struct HSZ__ { int unused; }; typedef struct HSZ__ *HSZ;
|
|
struct HDDEDATA__ { int unused; }; typedef struct HDDEDATA__ *HDDEDATA;
|
|
typedef struct tagHSZPAIR {
|
|
HSZ hszSvc;
|
|
HSZ hszTopic;
|
|
} HSZPAIR, *PHSZPAIR;
|
|
typedef struct tagCONVCONTEXT {
|
|
UINT cb;
|
|
UINT wFlags;
|
|
UINT wCountryID;
|
|
int iCodePage;
|
|
DWORD dwLangID;
|
|
DWORD dwSecurity;
|
|
SECURITY_QUALITY_OF_SERVICE qos;
|
|
} CONVCONTEXT, *PCONVCONTEXT;
|
|
typedef struct tagCONVINFO {
|
|
DWORD cb;
|
|
DWORD_PTR hUser;
|
|
HCONV hConvPartner;
|
|
HSZ hszSvcPartner;
|
|
HSZ hszServiceReq;
|
|
HSZ hszTopic;
|
|
HSZ hszItem;
|
|
UINT wFmt;
|
|
UINT wType;
|
|
UINT wStatus;
|
|
UINT wConvst;
|
|
UINT wLastError;
|
|
HCONVLIST hConvList;
|
|
CONVCONTEXT ConvCtxt;
|
|
HWND hwnd;
|
|
HWND hwndPartner;
|
|
} CONVINFO, *PCONVINFO;
|
|
typedef HDDEDATA FNCALLBACK(UINT wType,UINT wFmt,HCONV hConv,HSZ hsz1,HSZ hsz2,HDDEDATA hData,ULONG_PTR dwData1,ULONG_PTR dwData2);
|
|
typedef HDDEDATA ( *PFNCALLBACK)(UINT wType,UINT wFmt,HCONV hConv,HSZ hsz1,HSZ hsz2,HDDEDATA hData,ULONG_PTR dwData1,ULONG_PTR dwData2);
|
|
UINT DdeInitializeA(LPDWORD pidInst,PFNCALLBACK pfnCallback,DWORD afCmd,DWORD ulRes);
|
|
UINT DdeInitializeW(LPDWORD pidInst,PFNCALLBACK pfnCallback,DWORD afCmd,DWORD ulRes);
|
|
WINBOOL DdeUninitialize(DWORD idInst);
|
|
HCONVLIST DdeConnectList(DWORD idInst,HSZ hszService,HSZ hszTopic,HCONVLIST hConvList,PCONVCONTEXT pCC);
|
|
HCONV DdeQueryNextServer(HCONVLIST hConvList,HCONV hConvPrev);
|
|
WINBOOL DdeDisconnectList(HCONVLIST hConvList);
|
|
HCONV DdeConnect(DWORD idInst,HSZ hszService,HSZ hszTopic,PCONVCONTEXT pCC);
|
|
WINBOOL DdeDisconnect(HCONV hConv);
|
|
HCONV DdeReconnect(HCONV hConv);
|
|
UINT DdeQueryConvInfo(HCONV hConv,DWORD idTransaction,PCONVINFO pConvInfo);
|
|
WINBOOL DdeSetUserHandle(HCONV hConv,DWORD id,DWORD_PTR hUser);
|
|
WINBOOL DdeAbandonTransaction(DWORD idInst,HCONV hConv,DWORD idTransaction);
|
|
WINBOOL DdePostAdvise(DWORD idInst,HSZ hszTopic,HSZ hszItem);
|
|
WINBOOL DdeEnableCallback(DWORD idInst,HCONV hConv,UINT wCmd);
|
|
WINBOOL DdeImpersonateClient(HCONV hConv);
|
|
HDDEDATA DdeNameService(DWORD idInst,HSZ hsz1,HSZ hsz2,UINT afCmd);
|
|
HDDEDATA DdeClientTransaction(LPBYTE pData,DWORD cbData,HCONV hConv,HSZ hszItem,UINT wFmt,UINT wType,DWORD dwTimeout,LPDWORD pdwResult);
|
|
HDDEDATA DdeCreateDataHandle(DWORD idInst,LPBYTE pSrc,DWORD cb,DWORD cbOff,HSZ hszItem,UINT wFmt,UINT afCmd);
|
|
HDDEDATA DdeAddData(HDDEDATA hData,LPBYTE pSrc,DWORD cb,DWORD cbOff);
|
|
DWORD DdeGetData(HDDEDATA hData,LPBYTE pDst,DWORD cbMax,DWORD cbOff);
|
|
LPBYTE DdeAccessData(HDDEDATA hData,LPDWORD pcbDataSize);
|
|
WINBOOL DdeUnaccessData(HDDEDATA hData);
|
|
WINBOOL DdeFreeDataHandle(HDDEDATA hData);
|
|
UINT DdeGetLastError(DWORD idInst);
|
|
HSZ DdeCreateStringHandleA(DWORD idInst,LPCSTR psz,int iCodePage);
|
|
HSZ DdeCreateStringHandleW(DWORD idInst,LPCWSTR psz,int iCodePage);
|
|
DWORD DdeQueryStringA(DWORD idInst,HSZ hsz,LPSTR psz,DWORD cchMax,int iCodePage);
|
|
DWORD DdeQueryStringW(DWORD idInst,HSZ hsz,LPWSTR psz,DWORD cchMax,int iCodePage);
|
|
WINBOOL DdeFreeStringHandle(DWORD idInst,HSZ hsz);
|
|
WINBOOL DdeKeepStringHandle(DWORD idInst,HSZ hsz);
|
|
int DdeCmpStringHandles(HSZ hsz1,HSZ hsz2);
|
|
typedef struct tagDDEML_MSG_HOOK_DATA {
|
|
UINT_PTR uiLo;
|
|
UINT_PTR uiHi;
|
|
DWORD cbData;
|
|
DWORD Data[8];
|
|
} DDEML_MSG_HOOK_DATA,*PDDEML_MSG_HOOK_DATA;
|
|
typedef struct tagMONMSGSTRUCT {
|
|
UINT cb;
|
|
HWND hwndTo;
|
|
DWORD dwTime;
|
|
HANDLE hTask;
|
|
UINT wMsg;
|
|
WPARAM wParam;
|
|
LPARAM lParam;
|
|
DDEML_MSG_HOOK_DATA dmhd;
|
|
} MONMSGSTRUCT,*PMONMSGSTRUCT;
|
|
typedef struct tagMONCBSTRUCT {
|
|
UINT cb;
|
|
DWORD dwTime;
|
|
HANDLE hTask;
|
|
DWORD dwRet;
|
|
UINT wType;
|
|
UINT wFmt;
|
|
HCONV hConv;
|
|
HSZ hsz1;
|
|
HSZ hsz2;
|
|
HDDEDATA hData;
|
|
ULONG_PTR dwData1;
|
|
ULONG_PTR dwData2;
|
|
CONVCONTEXT cc;
|
|
DWORD cbData;
|
|
DWORD Data[8];
|
|
} MONCBSTRUCT,*PMONCBSTRUCT;
|
|
typedef struct tagMONHSZSTRUCTA {
|
|
UINT cb;
|
|
WINBOOL fsAction;
|
|
DWORD dwTime;
|
|
HSZ hsz;
|
|
HANDLE hTask;
|
|
CHAR str[1];
|
|
} MONHSZSTRUCTA,*PMONHSZSTRUCTA;
|
|
typedef struct tagMONHSZSTRUCTW {
|
|
UINT cb;
|
|
WINBOOL fsAction;
|
|
DWORD dwTime;
|
|
HSZ hsz;
|
|
HANDLE hTask;
|
|
WCHAR str[1];
|
|
} MONHSZSTRUCTW,*PMONHSZSTRUCTW;
|
|
typedef MONHSZSTRUCTA MONHSZSTRUCT;
|
|
typedef PMONHSZSTRUCTA PMONHSZSTRUCT;
|
|
typedef struct tagMONERRSTRUCT {
|
|
UINT cb;
|
|
UINT wLastError;
|
|
DWORD dwTime;
|
|
HANDLE hTask;
|
|
} MONERRSTRUCT,*PMONERRSTRUCT;
|
|
typedef struct tagMONLINKSTRUCT {
|
|
UINT cb;
|
|
DWORD dwTime;
|
|
HANDLE hTask;
|
|
WINBOOL fEstablished;
|
|
WINBOOL fNoData;
|
|
HSZ hszSvc;
|
|
HSZ hszTopic;
|
|
HSZ hszItem;
|
|
UINT wFmt;
|
|
WINBOOL fServer;
|
|
HCONV hConvServer;
|
|
HCONV hConvClient;
|
|
} MONLINKSTRUCT,*PMONLINKSTRUCT;
|
|
typedef struct tagMONCONVSTRUCT {
|
|
UINT cb;
|
|
WINBOOL fConnect;
|
|
DWORD dwTime;
|
|
HANDLE hTask;
|
|
HSZ hszSvc;
|
|
HSZ hszTopic;
|
|
HCONV hConvClient;
|
|
HCONV hConvServer;
|
|
} MONCONVSTRUCT,*PMONCONVSTRUCT;
|
|
typedef struct tagCRGB {
|
|
BYTE bRed;
|
|
BYTE bGreen;
|
|
BYTE bBlue;
|
|
BYTE bExtra;
|
|
} CRGB;
|
|
INT LZStart(void);
|
|
void LZDone(void);
|
|
LONG CopyLZFile(INT,INT);
|
|
LONG LZCopy(INT,INT);
|
|
INT LZInit(INT);
|
|
INT GetExpandedNameA(LPSTR,LPSTR);
|
|
INT GetExpandedNameW(LPWSTR,LPWSTR);
|
|
INT LZOpenFileA(LPSTR,LPOFSTRUCT,WORD);
|
|
INT LZOpenFileW(LPWSTR,LPOFSTRUCT,WORD);
|
|
LONG LZSeek(INT,LONG,INT);
|
|
INT LZRead(INT,LPSTR,INT);
|
|
void LZClose(INT);
|
|
#pragma pack(push,1)
|
|
typedef UINT MMVERSION;
|
|
typedef UINT MMRESULT;
|
|
typedef UINT *LPUINT;
|
|
typedef struct mmtime_tag {
|
|
UINT wType;
|
|
union {
|
|
DWORD ms;
|
|
DWORD sample;
|
|
DWORD cb;
|
|
DWORD ticks;
|
|
struct {
|
|
BYTE hour;
|
|
BYTE min;
|
|
BYTE sec;
|
|
BYTE frame;
|
|
BYTE fps;
|
|
BYTE dummy;
|
|
BYTE pad[2];
|
|
} smpte;
|
|
struct {
|
|
DWORD songptrpos;
|
|
} midi;
|
|
} u;
|
|
} MMTIME,*PMMTIME, *NPMMTIME,*LPMMTIME;
|
|
struct HDRVR__ { int unused; }; typedef struct HDRVR__ *HDRVR;
|
|
typedef struct DRVCONFIGINFOEX {
|
|
DWORD dwDCISize;
|
|
LPCWSTR lpszDCISectionName;
|
|
LPCWSTR lpszDCIAliasName;
|
|
DWORD dnDevNode;
|
|
} DRVCONFIGINFOEX,*PDRVCONFIGINFOEX, *NPDRVCONFIGINFOEX,*LPDRVCONFIGINFOEX;
|
|
typedef struct tagDRVCONFIGINFO {
|
|
DWORD dwDCISize;
|
|
LPCWSTR lpszDCISectionName;
|
|
LPCWSTR lpszDCIAliasName;
|
|
} DRVCONFIGINFO,*PDRVCONFIGINFO, *NPDRVCONFIGINFO,*LPDRVCONFIGINFO;
|
|
typedef LRESULT ( *DRIVERPROC)(DWORD_PTR,HDRVR,UINT,LPARAM,LPARAM);
|
|
__attribute__((dllimport)) LRESULT CloseDriver(HDRVR hDriver,LPARAM lParam1,LPARAM lParam2);
|
|
__attribute__((dllimport)) HDRVR OpenDriver(LPCWSTR szDriverName,LPCWSTR szSectionName,LPARAM lParam2);
|
|
__attribute__((dllimport)) LRESULT SendDriverMessage(HDRVR hDriver,UINT message,LPARAM lParam1,LPARAM lParam2);
|
|
__attribute__((dllimport)) HMODULE DrvGetModuleHandle(HDRVR hDriver);
|
|
__attribute__((dllimport)) HMODULE GetDriverModuleHandle(HDRVR hDriver);
|
|
__attribute__((dllimport)) LRESULT DefDriverProc(DWORD_PTR dwDriverIdentifier,HDRVR hdrvr,UINT uMsg,LPARAM lParam1,LPARAM lParam2);
|
|
typedef void ( DRVCALLBACK)(HDRVR hdrvr,UINT uMsg,DWORD_PTR dwUser,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
typedef DRVCALLBACK *LPDRVCALLBACK;
|
|
typedef DRVCALLBACK *PDRVCALLBACK;
|
|
__attribute__((dllimport)) WINBOOL sndPlaySoundA(LPCSTR pszSound,UINT fuSound);
|
|
__attribute__((dllimport)) WINBOOL sndPlaySoundW(LPCWSTR pszSound,UINT fuSound);
|
|
__attribute__((dllimport)) WINBOOL PlaySoundA(LPCSTR pszSound,HMODULE hmod,DWORD fdwSound);
|
|
__attribute__((dllimport)) WINBOOL PlaySoundW(LPCWSTR pszSound,HMODULE hmod,DWORD fdwSound);
|
|
struct HWAVE__ { int unused; }; typedef struct HWAVE__ *HWAVE;
|
|
struct HWAVEIN__ { int unused; }; typedef struct HWAVEIN__ *HWAVEIN;
|
|
struct HWAVEOUT__ { int unused; }; typedef struct HWAVEOUT__ *HWAVEOUT;
|
|
typedef HWAVEIN *LPHWAVEIN;
|
|
typedef HWAVEOUT *LPHWAVEOUT;
|
|
typedef DRVCALLBACK WAVECALLBACK;
|
|
typedef WAVECALLBACK *LPWAVECALLBACK;
|
|
typedef struct wavehdr_tag {
|
|
LPSTR lpData;
|
|
DWORD dwBufferLength;
|
|
DWORD dwBytesRecorded;
|
|
DWORD_PTR dwUser;
|
|
DWORD dwFlags;
|
|
DWORD dwLoops;
|
|
struct wavehdr_tag *lpNext;
|
|
DWORD_PTR reserved;
|
|
} WAVEHDR,*PWAVEHDR, *NPWAVEHDR,*LPWAVEHDR;
|
|
typedef struct tagWAVEOUTCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
} WAVEOUTCAPSA,*PWAVEOUTCAPSA,*NPWAVEOUTCAPSA,*LPWAVEOUTCAPSA;
|
|
typedef struct tagWAVEOUTCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
} WAVEOUTCAPSW,*PWAVEOUTCAPSW,*NPWAVEOUTCAPSW,*LPWAVEOUTCAPSW;
|
|
typedef WAVEOUTCAPSA WAVEOUTCAPS;
|
|
typedef PWAVEOUTCAPSA PWAVEOUTCAPS;
|
|
typedef NPWAVEOUTCAPSA NPWAVEOUTCAPS;
|
|
typedef LPWAVEOUTCAPSA LPWAVEOUTCAPS;
|
|
typedef struct tagWAVEOUTCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} WAVEOUTCAPS2A,*PWAVEOUTCAPS2A,*NPWAVEOUTCAPS2A,*LPWAVEOUTCAPS2A;
|
|
typedef struct tagWAVEOUTCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} WAVEOUTCAPS2W,*PWAVEOUTCAPS2W,*NPWAVEOUTCAPS2W,*LPWAVEOUTCAPS2W;
|
|
typedef WAVEOUTCAPS2A WAVEOUTCAPS2;
|
|
typedef PWAVEOUTCAPS2A PWAVEOUTCAPS2;
|
|
typedef NPWAVEOUTCAPS2A NPWAVEOUTCAPS2;
|
|
typedef LPWAVEOUTCAPS2A LPWAVEOUTCAPS2;
|
|
typedef struct tagWAVEINCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
} WAVEINCAPSA,*PWAVEINCAPSA,*NPWAVEINCAPSA,*LPWAVEINCAPSA;
|
|
typedef struct tagWAVEINCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
} WAVEINCAPSW,*PWAVEINCAPSW,*NPWAVEINCAPSW,*LPWAVEINCAPSW;
|
|
typedef WAVEINCAPSA WAVEINCAPS;
|
|
typedef PWAVEINCAPSA PWAVEINCAPS;
|
|
typedef NPWAVEINCAPSA NPWAVEINCAPS;
|
|
typedef LPWAVEINCAPSA LPWAVEINCAPS;
|
|
typedef struct tagWAVEINCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} WAVEINCAPS2A,*PWAVEINCAPS2A,*NPWAVEINCAPS2A,*LPWAVEINCAPS2A;
|
|
typedef struct tagWAVEINCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
WORD wReserved1;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} WAVEINCAPS2W,*PWAVEINCAPS2W,*NPWAVEINCAPS2W,*LPWAVEINCAPS2W;
|
|
typedef WAVEINCAPS2A WAVEINCAPS2;
|
|
typedef PWAVEINCAPS2A PWAVEINCAPS2;
|
|
typedef NPWAVEINCAPS2A NPWAVEINCAPS2;
|
|
typedef LPWAVEINCAPS2A LPWAVEINCAPS2;
|
|
typedef struct waveformat_tag {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
} WAVEFORMAT,*PWAVEFORMAT, *NPWAVEFORMAT,*LPWAVEFORMAT;
|
|
typedef struct pcmwaveformat_tag {
|
|
WAVEFORMAT wf;
|
|
WORD wBitsPerSample;
|
|
} PCMWAVEFORMAT,*PPCMWAVEFORMAT, *NPPCMWAVEFORMAT,*LPPCMWAVEFORMAT;
|
|
typedef struct tWAVEFORMATEX {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
} WAVEFORMATEX,*PWAVEFORMATEX, *NPWAVEFORMATEX,*LPWAVEFORMATEX;
|
|
typedef const WAVEFORMATEX *LPCWAVEFORMATEX;
|
|
__attribute__((dllimport)) UINT waveOutGetNumDevs(void);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetDevCapsA(UINT_PTR uDeviceID,LPWAVEOUTCAPSA pwoc,UINT cbwoc);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetDevCapsW(UINT_PTR uDeviceID,LPWAVEOUTCAPSW pwoc,UINT cbwoc);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetVolume(HWAVEOUT hwo,LPDWORD pdwVolume);
|
|
__attribute__((dllimport)) MMRESULT waveOutSetVolume(HWAVEOUT hwo,DWORD dwVolume);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT waveOutOpen(LPHWAVEOUT phwo,UINT uDeviceID,LPCWAVEFORMATEX pwfx,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT waveOutClose(HWAVEOUT hwo);
|
|
__attribute__((dllimport)) MMRESULT waveOutPrepareHeader(HWAVEOUT hwo,LPWAVEHDR pwh,UINT cbwh);
|
|
__attribute__((dllimport)) MMRESULT waveOutUnprepareHeader(HWAVEOUT hwo,LPWAVEHDR pwh,UINT cbwh);
|
|
__attribute__((dllimport)) MMRESULT waveOutWrite(HWAVEOUT hwo,LPWAVEHDR pwh,UINT cbwh);
|
|
__attribute__((dllimport)) MMRESULT waveOutPause(HWAVEOUT hwo);
|
|
__attribute__((dllimport)) MMRESULT waveOutRestart(HWAVEOUT hwo);
|
|
__attribute__((dllimport)) MMRESULT waveOutReset(HWAVEOUT hwo);
|
|
__attribute__((dllimport)) MMRESULT waveOutBreakLoop(HWAVEOUT hwo);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetPosition(HWAVEOUT hwo,LPMMTIME pmmt,UINT cbmmt);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetPitch(HWAVEOUT hwo,LPDWORD pdwPitch);
|
|
__attribute__((dllimport)) MMRESULT waveOutSetPitch(HWAVEOUT hwo,DWORD dwPitch);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetPlaybackRate(HWAVEOUT hwo,LPDWORD pdwRate);
|
|
__attribute__((dllimport)) MMRESULT waveOutSetPlaybackRate(HWAVEOUT hwo,DWORD dwRate);
|
|
__attribute__((dllimport)) MMRESULT waveOutGetID(HWAVEOUT hwo,LPUINT puDeviceID);
|
|
__attribute__((dllimport)) MMRESULT waveOutMessage(HWAVEOUT hwo,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
__attribute__((dllimport)) UINT waveInGetNumDevs(void);
|
|
__attribute__((dllimport)) MMRESULT waveInGetDevCapsA(UINT_PTR uDeviceID,LPWAVEINCAPSA pwic,UINT cbwic);
|
|
__attribute__((dllimport)) MMRESULT waveInGetDevCapsW(UINT_PTR uDeviceID,LPWAVEINCAPSW pwic,UINT cbwic);
|
|
__attribute__((dllimport)) MMRESULT waveInGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT waveInGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT waveInOpen(LPHWAVEIN phwi,UINT uDeviceID,LPCWAVEFORMATEX pwfx,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT waveInClose(HWAVEIN hwi);
|
|
__attribute__((dllimport)) MMRESULT waveInPrepareHeader(HWAVEIN hwi,LPWAVEHDR pwh,UINT cbwh);
|
|
__attribute__((dllimport)) MMRESULT waveInUnprepareHeader(HWAVEIN hwi,LPWAVEHDR pwh,UINT cbwh);
|
|
__attribute__((dllimport)) MMRESULT waveInAddBuffer(HWAVEIN hwi,LPWAVEHDR pwh,UINT cbwh);
|
|
__attribute__((dllimport)) MMRESULT waveInStart(HWAVEIN hwi);
|
|
__attribute__((dllimport)) MMRESULT waveInStop(HWAVEIN hwi);
|
|
__attribute__((dllimport)) MMRESULT waveInReset(HWAVEIN hwi);
|
|
__attribute__((dllimport)) MMRESULT waveInGetPosition(HWAVEIN hwi,LPMMTIME pmmt,UINT cbmmt);
|
|
__attribute__((dllimport)) MMRESULT waveInGetID(HWAVEIN hwi,LPUINT puDeviceID);
|
|
__attribute__((dllimport)) MMRESULT waveInMessage(HWAVEIN hwi,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
struct HMIDI__ { int unused; }; typedef struct HMIDI__ *HMIDI;
|
|
struct HMIDIIN__ { int unused; }; typedef struct HMIDIIN__ *HMIDIIN;
|
|
struct HMIDIOUT__ { int unused; }; typedef struct HMIDIOUT__ *HMIDIOUT;
|
|
struct HMIDISTRM__ { int unused; }; typedef struct HMIDISTRM__ *HMIDISTRM;
|
|
typedef HMIDI *LPHMIDI;
|
|
typedef HMIDIIN *LPHMIDIIN;
|
|
typedef HMIDIOUT *LPHMIDIOUT;
|
|
typedef HMIDISTRM *LPHMIDISTRM;
|
|
typedef DRVCALLBACK MIDICALLBACK;
|
|
typedef MIDICALLBACK *LPMIDICALLBACK;
|
|
typedef WORD PATCHARRAY[128];
|
|
typedef WORD *LPPATCHARRAY;
|
|
typedef WORD KEYARRAY[128];
|
|
typedef WORD *LPKEYARRAY;
|
|
typedef struct tagMIDIOUTCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wVoices;
|
|
WORD wNotes;
|
|
WORD wChannelMask;
|
|
DWORD dwSupport;
|
|
} MIDIOUTCAPSA,*PMIDIOUTCAPSA,*NPMIDIOUTCAPSA,*LPMIDIOUTCAPSA;
|
|
typedef struct tagMIDIOUTCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wVoices;
|
|
WORD wNotes;
|
|
WORD wChannelMask;
|
|
DWORD dwSupport;
|
|
} MIDIOUTCAPSW,*PMIDIOUTCAPSW,*NPMIDIOUTCAPSW,*LPMIDIOUTCAPSW;
|
|
typedef MIDIOUTCAPSA MIDIOUTCAPS;
|
|
typedef PMIDIOUTCAPSA PMIDIOUTCAPS;
|
|
typedef NPMIDIOUTCAPSA NPMIDIOUTCAPS;
|
|
typedef LPMIDIOUTCAPSA LPMIDIOUTCAPS;
|
|
typedef struct tagMIDIOUTCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wVoices;
|
|
WORD wNotes;
|
|
WORD wChannelMask;
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} MIDIOUTCAPS2A,*PMIDIOUTCAPS2A,*NPMIDIOUTCAPS2A,*LPMIDIOUTCAPS2A;
|
|
typedef struct tagMIDIOUTCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wVoices;
|
|
WORD wNotes;
|
|
WORD wChannelMask;
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} MIDIOUTCAPS2W,*PMIDIOUTCAPS2W,*NPMIDIOUTCAPS2W,*LPMIDIOUTCAPS2W;
|
|
typedef MIDIOUTCAPS2A MIDIOUTCAPS2;
|
|
typedef PMIDIOUTCAPS2A PMIDIOUTCAPS2;
|
|
typedef NPMIDIOUTCAPS2A NPMIDIOUTCAPS2;
|
|
typedef LPMIDIOUTCAPS2A LPMIDIOUTCAPS2;
|
|
typedef struct tagMIDIINCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD dwSupport;
|
|
} MIDIINCAPSA,*PMIDIINCAPSA,*NPMIDIINCAPSA,*LPMIDIINCAPSA;
|
|
typedef struct tagMIDIINCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD dwSupport;
|
|
} MIDIINCAPSW,*PMIDIINCAPSW,*NPMIDIINCAPSW,*LPMIDIINCAPSW;
|
|
typedef MIDIINCAPSA MIDIINCAPS;
|
|
typedef PMIDIINCAPSA PMIDIINCAPS;
|
|
typedef NPMIDIINCAPSA NPMIDIINCAPS;
|
|
typedef LPMIDIINCAPSA LPMIDIINCAPS;
|
|
typedef struct tagMIDIINCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} MIDIINCAPS2A,*PMIDIINCAPS2A,*NPMIDIINCAPS2A,*LPMIDIINCAPS2A;
|
|
typedef struct tagMIDIINCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} MIDIINCAPS2W,*PMIDIINCAPS2W,*NPMIDIINCAPS2W,*LPMIDIINCAPS2W;
|
|
typedef MIDIINCAPS2A MIDIINCAPS2;
|
|
typedef PMIDIINCAPS2A PMIDIINCAPS2;
|
|
typedef NPMIDIINCAPS2A NPMIDIINCAPS2;
|
|
typedef LPMIDIINCAPS2A LPMIDIINCAPS2;
|
|
typedef struct midihdr_tag {
|
|
LPSTR lpData;
|
|
DWORD dwBufferLength;
|
|
DWORD dwBytesRecorded;
|
|
DWORD_PTR dwUser;
|
|
DWORD dwFlags;
|
|
struct midihdr_tag *lpNext;
|
|
DWORD_PTR reserved;
|
|
DWORD dwOffset;
|
|
DWORD_PTR dwReserved[8];
|
|
} MIDIHDR,*PMIDIHDR, *NPMIDIHDR,*LPMIDIHDR;
|
|
typedef struct midievent_tag {
|
|
DWORD dwDeltaTime;
|
|
DWORD dwStreamID;
|
|
DWORD dwEvent;
|
|
DWORD dwParms[1];
|
|
} MIDIEVENT;
|
|
typedef struct midistrmbuffver_tag {
|
|
DWORD dwVersion;
|
|
DWORD dwMid;
|
|
DWORD dwOEMVersion;
|
|
} MIDISTRMBUFFVER;
|
|
typedef struct midiproptimediv_tag {
|
|
DWORD cbStruct;
|
|
DWORD dwTimeDiv;
|
|
} MIDIPROPTIMEDIV,*LPMIDIPROPTIMEDIV;
|
|
typedef struct midiproptempo_tag {
|
|
DWORD cbStruct;
|
|
DWORD dwTempo;
|
|
} MIDIPROPTEMPO,*LPMIDIPROPTEMPO;
|
|
__attribute__((dllimport)) UINT midiOutGetNumDevs(void);
|
|
__attribute__((dllimport)) MMRESULT midiStreamOpen(LPHMIDISTRM phms,LPUINT puDeviceID,DWORD cMidi,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT midiStreamClose(HMIDISTRM hms);
|
|
__attribute__((dllimport)) MMRESULT midiStreamProperty(HMIDISTRM hms,LPBYTE lppropdata,DWORD dwProperty);
|
|
__attribute__((dllimport)) MMRESULT midiStreamPosition(HMIDISTRM hms,LPMMTIME lpmmt,UINT cbmmt);
|
|
__attribute__((dllimport)) MMRESULT midiStreamOut(HMIDISTRM hms,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiStreamPause(HMIDISTRM hms);
|
|
__attribute__((dllimport)) MMRESULT midiStreamRestart(HMIDISTRM hms);
|
|
__attribute__((dllimport)) MMRESULT midiStreamStop(HMIDISTRM hms);
|
|
__attribute__((dllimport)) MMRESULT midiConnect(HMIDI hmi,HMIDIOUT hmo,LPVOID pReserved);
|
|
__attribute__((dllimport)) MMRESULT midiDisconnect(HMIDI hmi,HMIDIOUT hmo,LPVOID pReserved);
|
|
__attribute__((dllimport)) MMRESULT midiOutGetDevCapsA(UINT_PTR uDeviceID,LPMIDIOUTCAPSA pmoc,UINT cbmoc);
|
|
__attribute__((dllimport)) MMRESULT midiOutGetDevCapsW(UINT_PTR uDeviceID,LPMIDIOUTCAPSW pmoc,UINT cbmoc);
|
|
__attribute__((dllimport)) MMRESULT midiOutGetVolume(HMIDIOUT hmo,LPDWORD pdwVolume);
|
|
__attribute__((dllimport)) MMRESULT midiOutSetVolume(HMIDIOUT hmo,DWORD dwVolume);
|
|
__attribute__((dllimport)) MMRESULT midiOutGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT midiOutGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT midiOutOpen(LPHMIDIOUT phmo,UINT uDeviceID,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT midiOutClose(HMIDIOUT hmo);
|
|
__attribute__((dllimport)) MMRESULT midiOutPrepareHeader(HMIDIOUT hmo,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiOutUnprepareHeader(HMIDIOUT hmo,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiOutShortMsg(HMIDIOUT hmo,DWORD dwMsg);
|
|
__attribute__((dllimport)) MMRESULT midiOutLongMsg(HMIDIOUT hmo,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiOutReset(HMIDIOUT hmo);
|
|
__attribute__((dllimport)) MMRESULT midiOutCachePatches(HMIDIOUT hmo,UINT uBank,LPWORD pwpa,UINT fuCache);
|
|
__attribute__((dllimport)) MMRESULT midiOutCacheDrumPatches(HMIDIOUT hmo,UINT uPatch,LPWORD pwkya,UINT fuCache);
|
|
__attribute__((dllimport)) MMRESULT midiOutGetID(HMIDIOUT hmo,LPUINT puDeviceID);
|
|
__attribute__((dllimport)) MMRESULT midiOutMessage(HMIDIOUT hmo,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
__attribute__((dllimport)) UINT midiInGetNumDevs(void);
|
|
__attribute__((dllimport)) MMRESULT midiInGetDevCapsA(UINT_PTR uDeviceID,LPMIDIINCAPSA pmic,UINT cbmic);
|
|
__attribute__((dllimport)) MMRESULT midiInGetDevCapsW(UINT_PTR uDeviceID,LPMIDIINCAPSW pmic,UINT cbmic);
|
|
__attribute__((dllimport)) MMRESULT midiInGetErrorTextA(MMRESULT mmrError,LPSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT midiInGetErrorTextW(MMRESULT mmrError,LPWSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) MMRESULT midiInOpen(LPHMIDIIN phmi,UINT uDeviceID,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT midiInClose(HMIDIIN hmi);
|
|
__attribute__((dllimport)) MMRESULT midiInPrepareHeader(HMIDIIN hmi,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiInUnprepareHeader(HMIDIIN hmi,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiInAddBuffer(HMIDIIN hmi,LPMIDIHDR pmh,UINT cbmh);
|
|
__attribute__((dllimport)) MMRESULT midiInStart(HMIDIIN hmi);
|
|
__attribute__((dllimport)) MMRESULT midiInStop(HMIDIIN hmi);
|
|
__attribute__((dllimport)) MMRESULT midiInReset(HMIDIIN hmi);
|
|
__attribute__((dllimport)) MMRESULT midiInGetID(HMIDIIN hmi,LPUINT puDeviceID);
|
|
__attribute__((dllimport)) MMRESULT midiInMessage(HMIDIIN hmi,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
typedef struct tagAUXCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
} AUXCAPSA,*PAUXCAPSA,*NPAUXCAPSA,*LPAUXCAPSA;
|
|
typedef struct tagAUXCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
} AUXCAPSW,*PAUXCAPSW,*NPAUXCAPSW,*LPAUXCAPSW;
|
|
typedef AUXCAPSA AUXCAPS;
|
|
typedef PAUXCAPSA PAUXCAPS;
|
|
typedef NPAUXCAPSA NPAUXCAPS;
|
|
typedef LPAUXCAPSA LPAUXCAPS;
|
|
typedef struct tagAUXCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} AUXCAPS2A,*PAUXCAPS2A,*NPAUXCAPS2A,*LPAUXCAPS2A;
|
|
typedef struct tagAUXCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
WORD wTechnology;
|
|
WORD wReserved1;
|
|
DWORD dwSupport;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} AUXCAPS2W,*PAUXCAPS2W,*NPAUXCAPS2W,*LPAUXCAPS2W;
|
|
typedef AUXCAPS2A AUXCAPS2;
|
|
typedef PAUXCAPS2A PAUXCAPS2;
|
|
typedef NPAUXCAPS2A NPAUXCAPS2;
|
|
typedef LPAUXCAPS2A LPAUXCAPS2;
|
|
__attribute__((dllimport)) UINT auxGetNumDevs(void);
|
|
__attribute__((dllimport)) MMRESULT auxGetDevCapsA(UINT_PTR uDeviceID,LPAUXCAPSA pac,UINT cbac);
|
|
__attribute__((dllimport)) MMRESULT auxGetDevCapsW(UINT_PTR uDeviceID,LPAUXCAPSW pac,UINT cbac);
|
|
__attribute__((dllimport)) MMRESULT auxSetVolume(UINT uDeviceID,DWORD dwVolume);
|
|
__attribute__((dllimport)) MMRESULT auxGetVolume(UINT uDeviceID,LPDWORD pdwVolume);
|
|
__attribute__((dllimport)) MMRESULT auxOutMessage(UINT uDeviceID,UINT uMsg,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
struct HMIXEROBJ__ { int unused; }; typedef struct HMIXEROBJ__ *HMIXEROBJ;
|
|
typedef HMIXEROBJ *LPHMIXEROBJ;
|
|
struct HMIXER__ { int unused; }; typedef struct HMIXER__ *HMIXER;
|
|
typedef HMIXER *LPHMIXER;
|
|
__attribute__((dllimport)) UINT mixerGetNumDevs(void);
|
|
typedef struct tagMIXERCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD fdwSupport;
|
|
DWORD cDestinations;
|
|
} MIXERCAPSA,*PMIXERCAPSA,*LPMIXERCAPSA;
|
|
typedef struct tagMIXERCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD fdwSupport;
|
|
DWORD cDestinations;
|
|
} MIXERCAPSW,*PMIXERCAPSW,*LPMIXERCAPSW;
|
|
typedef MIXERCAPSA MIXERCAPS;
|
|
typedef PMIXERCAPSA PMIXERCAPS;
|
|
typedef LPMIXERCAPSA LPMIXERCAPS;
|
|
typedef struct tagMIXERCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
DWORD fdwSupport;
|
|
DWORD cDestinations;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} MIXERCAPS2A,*PMIXERCAPS2A,*LPMIXERCAPS2A;
|
|
typedef struct tagMIXERCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
DWORD fdwSupport;
|
|
DWORD cDestinations;
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} MIXERCAPS2W,*PMIXERCAPS2W,*LPMIXERCAPS2W;
|
|
typedef MIXERCAPS2A MIXERCAPS2;
|
|
typedef PMIXERCAPS2A PMIXERCAPS2;
|
|
typedef LPMIXERCAPS2A LPMIXERCAPS2;
|
|
__attribute__((dllimport)) MMRESULT mixerGetDevCapsA(UINT_PTR uMxId,LPMIXERCAPSA pmxcaps,UINT cbmxcaps);
|
|
__attribute__((dllimport)) MMRESULT mixerGetDevCapsW(UINT_PTR uMxId,LPMIXERCAPSW pmxcaps,UINT cbmxcaps);
|
|
__attribute__((dllimport)) MMRESULT mixerOpen(LPHMIXER phmx,UINT uMxId,DWORD_PTR dwCallback,DWORD_PTR dwInstance,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT mixerClose(HMIXER hmx);
|
|
__attribute__((dllimport)) DWORD mixerMessage(HMIXER hmx,UINT uMsg,DWORD_PTR dwParam1,DWORD_PTR dwParam2);
|
|
typedef struct tagMIXERLINEA {
|
|
DWORD cbStruct;
|
|
DWORD dwDestination;
|
|
DWORD dwSource;
|
|
DWORD dwLineID;
|
|
DWORD fdwLine;
|
|
DWORD_PTR dwUser;
|
|
DWORD dwComponentType;
|
|
DWORD cChannels;
|
|
DWORD cConnections;
|
|
DWORD cControls;
|
|
CHAR szShortName[16];
|
|
CHAR szName[64];
|
|
struct {
|
|
DWORD dwType;
|
|
DWORD dwDeviceID;
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
CHAR szPname[32];
|
|
} Target;
|
|
} MIXERLINEA,*PMIXERLINEA,*LPMIXERLINEA;
|
|
typedef struct tagMIXERLINEW {
|
|
DWORD cbStruct;
|
|
DWORD dwDestination;
|
|
DWORD dwSource;
|
|
DWORD dwLineID;
|
|
DWORD fdwLine;
|
|
DWORD_PTR dwUser;
|
|
DWORD dwComponentType;
|
|
DWORD cChannels;
|
|
DWORD cConnections;
|
|
DWORD cControls;
|
|
WCHAR szShortName[16];
|
|
WCHAR szName[64];
|
|
struct {
|
|
DWORD dwType;
|
|
DWORD dwDeviceID;
|
|
WORD wMid;
|
|
WORD wPid;
|
|
MMVERSION vDriverVersion;
|
|
WCHAR szPname[32];
|
|
} Target;
|
|
} MIXERLINEW,*PMIXERLINEW,*LPMIXERLINEW;
|
|
typedef MIXERLINEA MIXERLINE;
|
|
typedef PMIXERLINEA PMIXERLINE;
|
|
typedef LPMIXERLINEA LPMIXERLINE;
|
|
__attribute__((dllimport)) MMRESULT mixerGetLineInfoA(HMIXEROBJ hmxobj,LPMIXERLINEA pmxl,DWORD fdwInfo);
|
|
__attribute__((dllimport)) MMRESULT mixerGetLineInfoW(HMIXEROBJ hmxobj,LPMIXERLINEW pmxl,DWORD fdwInfo);
|
|
__attribute__((dllimport)) MMRESULT mixerGetID(HMIXEROBJ hmxobj,UINT *puMxId,DWORD fdwId);
|
|
typedef struct tagMIXERCONTROLA {
|
|
DWORD cbStruct;
|
|
DWORD dwControlID;
|
|
DWORD dwControlType;
|
|
DWORD fdwControl;
|
|
DWORD cMultipleItems;
|
|
CHAR szShortName[16];
|
|
CHAR szName[64];
|
|
union {
|
|
__extension__ struct {
|
|
LONG lMinimum;
|
|
LONG lMaximum;
|
|
} ;
|
|
__extension__ struct {
|
|
DWORD dwMinimum;
|
|
DWORD dwMaximum;
|
|
} ;
|
|
DWORD dwReserved[6];
|
|
} Bounds;
|
|
union {
|
|
DWORD cSteps;
|
|
DWORD cbCustomData;
|
|
DWORD dwReserved[6];
|
|
} Metrics;
|
|
} MIXERCONTROLA,*PMIXERCONTROLA,*LPMIXERCONTROLA;
|
|
typedef struct tagMIXERCONTROLW {
|
|
DWORD cbStruct;
|
|
DWORD dwControlID;
|
|
DWORD dwControlType;
|
|
DWORD fdwControl;
|
|
DWORD cMultipleItems;
|
|
WCHAR szShortName[16];
|
|
WCHAR szName[64];
|
|
union {
|
|
__extension__ struct {
|
|
LONG lMinimum;
|
|
LONG lMaximum;
|
|
} ;
|
|
__extension__ struct {
|
|
DWORD dwMinimum;
|
|
DWORD dwMaximum;
|
|
} ;
|
|
DWORD dwReserved[6];
|
|
} Bounds;
|
|
union {
|
|
DWORD cSteps;
|
|
DWORD cbCustomData;
|
|
DWORD dwReserved[6];
|
|
} Metrics;
|
|
} MIXERCONTROLW,*PMIXERCONTROLW,*LPMIXERCONTROLW;
|
|
typedef MIXERCONTROLA MIXERCONTROL;
|
|
typedef PMIXERCONTROLA PMIXERCONTROL;
|
|
typedef LPMIXERCONTROLA LPMIXERCONTROL;
|
|
typedef struct tagMIXERLINECONTROLSA {
|
|
DWORD cbStruct;
|
|
DWORD dwLineID;
|
|
__extension__ union {
|
|
DWORD dwControlID;
|
|
DWORD dwControlType;
|
|
} ;
|
|
DWORD cControls;
|
|
DWORD cbmxctrl;
|
|
LPMIXERCONTROLA pamxctrl;
|
|
} MIXERLINECONTROLSA,*PMIXERLINECONTROLSA,*LPMIXERLINECONTROLSA;
|
|
typedef struct tagMIXERLINECONTROLSW {
|
|
DWORD cbStruct;
|
|
DWORD dwLineID;
|
|
__extension__ union {
|
|
DWORD dwControlID;
|
|
DWORD dwControlType;
|
|
} ;
|
|
DWORD cControls;
|
|
DWORD cbmxctrl;
|
|
LPMIXERCONTROLW pamxctrl;
|
|
} MIXERLINECONTROLSW,*PMIXERLINECONTROLSW,*LPMIXERLINECONTROLSW;
|
|
typedef MIXERLINECONTROLSA MIXERLINECONTROLS;
|
|
typedef PMIXERLINECONTROLSA PMIXERLINECONTROLS;
|
|
typedef LPMIXERLINECONTROLSA LPMIXERLINECONTROLS;
|
|
__attribute__((dllimport)) MMRESULT mixerGetLineControlsA(HMIXEROBJ hmxobj,LPMIXERLINECONTROLSA pmxlc,DWORD fdwControls);
|
|
__attribute__((dllimport)) MMRESULT mixerGetLineControlsW(HMIXEROBJ hmxobj,LPMIXERLINECONTROLSW pmxlc,DWORD fdwControls);
|
|
typedef struct tMIXERCONTROLDETAILS {
|
|
DWORD cbStruct;
|
|
DWORD dwControlID;
|
|
DWORD cChannels;
|
|
__extension__ union {
|
|
HWND hwndOwner;
|
|
DWORD cMultipleItems;
|
|
} ;
|
|
DWORD cbDetails;
|
|
LPVOID paDetails;
|
|
} MIXERCONTROLDETAILS,*PMIXERCONTROLDETAILS,*LPMIXERCONTROLDETAILS;
|
|
typedef struct tagMIXERCONTROLDETAILS_LISTTEXTA {
|
|
DWORD dwParam1;
|
|
DWORD dwParam2;
|
|
CHAR szName[64];
|
|
} MIXERCONTROLDETAILS_LISTTEXTA,*PMIXERCONTROLDETAILS_LISTTEXTA,*LPMIXERCONTROLDETAILS_LISTTEXTA;
|
|
typedef struct tagMIXERCONTROLDETAILS_LISTTEXTW {
|
|
DWORD dwParam1;
|
|
DWORD dwParam2;
|
|
WCHAR szName[64];
|
|
} MIXERCONTROLDETAILS_LISTTEXTW,*PMIXERCONTROLDETAILS_LISTTEXTW,*LPMIXERCONTROLDETAILS_LISTTEXTW;
|
|
typedef MIXERCONTROLDETAILS_LISTTEXTA MIXERCONTROLDETAILS_LISTTEXT;
|
|
typedef PMIXERCONTROLDETAILS_LISTTEXTA PMIXERCONTROLDETAILS_LISTTEXT;
|
|
typedef LPMIXERCONTROLDETAILS_LISTTEXTA LPMIXERCONTROLDETAILS_LISTTEXT;
|
|
typedef struct tMIXERCONTROLDETAILS_BOOLEAN {
|
|
LONG fValue;
|
|
} MIXERCONTROLDETAILS_BOOLEAN,*PMIXERCONTROLDETAILS_BOOLEAN,*LPMIXERCONTROLDETAILS_BOOLEAN;
|
|
typedef struct tMIXERCONTROLDETAILS_SIGNED {
|
|
LONG lValue;
|
|
} MIXERCONTROLDETAILS_SIGNED,*PMIXERCONTROLDETAILS_SIGNED,*LPMIXERCONTROLDETAILS_SIGNED;
|
|
typedef struct tMIXERCONTROLDETAILS_UNSIGNED {
|
|
DWORD dwValue;
|
|
} MIXERCONTROLDETAILS_UNSIGNED,*PMIXERCONTROLDETAILS_UNSIGNED,*LPMIXERCONTROLDETAILS_UNSIGNED;
|
|
__attribute__((dllimport)) MMRESULT mixerGetControlDetailsA(HMIXEROBJ hmxobj,LPMIXERCONTROLDETAILS pmxcd,DWORD fdwDetails);
|
|
__attribute__((dllimport)) MMRESULT mixerGetControlDetailsW(HMIXEROBJ hmxobj,LPMIXERCONTROLDETAILS pmxcd,DWORD fdwDetails);
|
|
__attribute__((dllimport)) MMRESULT mixerSetControlDetails(HMIXEROBJ hmxobj,LPMIXERCONTROLDETAILS pmxcd,DWORD fdwDetails);
|
|
typedef void ( TIMECALLBACK)(UINT uTimerID,UINT uMsg,DWORD_PTR dwUser,DWORD_PTR dw1,DWORD_PTR dw2);
|
|
typedef TIMECALLBACK *LPTIMECALLBACK;
|
|
typedef struct timecaps_tag {
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
} TIMECAPS,*PTIMECAPS, *NPTIMECAPS,*LPTIMECAPS;
|
|
__attribute__((dllimport)) MMRESULT timeGetSystemTime(LPMMTIME pmmt,UINT cbmmt);
|
|
__attribute__((dllimport)) DWORD timeGetTime(void);
|
|
__attribute__((dllimport)) MMRESULT timeSetEvent(UINT uDelay,UINT uResolution,LPTIMECALLBACK fptc,DWORD_PTR dwUser,UINT fuEvent);
|
|
__attribute__((dllimport)) MMRESULT timeKillEvent(UINT uTimerID);
|
|
__attribute__((dllimport)) MMRESULT timeGetDevCaps(LPTIMECAPS ptc,UINT cbtc);
|
|
__attribute__((dllimport)) MMRESULT timeBeginPeriod(UINT uPeriod);
|
|
__attribute__((dllimport)) MMRESULT timeEndPeriod(UINT uPeriod);
|
|
typedef struct tagJOYCAPSA {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
CHAR szPname[32];
|
|
UINT wXmin;
|
|
UINT wXmax;
|
|
UINT wYmin;
|
|
UINT wYmax;
|
|
UINT wZmin;
|
|
UINT wZmax;
|
|
UINT wNumButtons;
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
UINT wRmin;
|
|
UINT wRmax;
|
|
UINT wUmin;
|
|
UINT wUmax;
|
|
UINT wVmin;
|
|
UINT wVmax;
|
|
UINT wCaps;
|
|
UINT wMaxAxes;
|
|
UINT wNumAxes;
|
|
UINT wMaxButtons;
|
|
CHAR szRegKey[32];
|
|
CHAR szOEMVxD[260];
|
|
} JOYCAPSA,*PJOYCAPSA,*NPJOYCAPSA,*LPJOYCAPSA;
|
|
typedef struct tagJOYCAPSW {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
WCHAR szPname[32];
|
|
UINT wXmin;
|
|
UINT wXmax;
|
|
UINT wYmin;
|
|
UINT wYmax;
|
|
UINT wZmin;
|
|
UINT wZmax;
|
|
UINT wNumButtons;
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
UINT wRmin;
|
|
UINT wRmax;
|
|
UINT wUmin;
|
|
UINT wUmax;
|
|
UINT wVmin;
|
|
UINT wVmax;
|
|
UINT wCaps;
|
|
UINT wMaxAxes;
|
|
UINT wNumAxes;
|
|
UINT wMaxButtons;
|
|
WCHAR szRegKey[32];
|
|
WCHAR szOEMVxD[260];
|
|
} JOYCAPSW,*PJOYCAPSW,*NPJOYCAPSW,*LPJOYCAPSW;
|
|
typedef JOYCAPSA JOYCAPS;
|
|
typedef PJOYCAPSA PJOYCAPS;
|
|
typedef NPJOYCAPSA NPJOYCAPS;
|
|
typedef LPJOYCAPSA LPJOYCAPS;
|
|
typedef struct tagJOYCAPS2A {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
CHAR szPname[32];
|
|
UINT wXmin;
|
|
UINT wXmax;
|
|
UINT wYmin;
|
|
UINT wYmax;
|
|
UINT wZmin;
|
|
UINT wZmax;
|
|
UINT wNumButtons;
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
UINT wRmin;
|
|
UINT wRmax;
|
|
UINT wUmin;
|
|
UINT wUmax;
|
|
UINT wVmin;
|
|
UINT wVmax;
|
|
UINT wCaps;
|
|
UINT wMaxAxes;
|
|
UINT wNumAxes;
|
|
UINT wMaxButtons;
|
|
CHAR szRegKey[32];
|
|
CHAR szOEMVxD[260];
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} JOYCAPS2A,*PJOYCAPS2A,*NPJOYCAPS2A,*LPJOYCAPS2A;
|
|
typedef struct tagJOYCAPS2W {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
WCHAR szPname[32];
|
|
UINT wXmin;
|
|
UINT wXmax;
|
|
UINT wYmin;
|
|
UINT wYmax;
|
|
UINT wZmin;
|
|
UINT wZmax;
|
|
UINT wNumButtons;
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
UINT wRmin;
|
|
UINT wRmax;
|
|
UINT wUmin;
|
|
UINT wUmax;
|
|
UINT wVmin;
|
|
UINT wVmax;
|
|
UINT wCaps;
|
|
UINT wMaxAxes;
|
|
UINT wNumAxes;
|
|
UINT wMaxButtons;
|
|
WCHAR szRegKey[32];
|
|
WCHAR szOEMVxD[260];
|
|
GUID ManufacturerGuid;
|
|
GUID ProductGuid;
|
|
GUID NameGuid;
|
|
} JOYCAPS2W,*PJOYCAPS2W,*NPJOYCAPS2W,*LPJOYCAPS2W;
|
|
typedef JOYCAPS2A JOYCAPS2;
|
|
typedef PJOYCAPS2A PJOYCAPS2;
|
|
typedef NPJOYCAPS2A NPJOYCAPS2;
|
|
typedef LPJOYCAPS2A LPJOYCAPS2;
|
|
typedef struct joyinfo_tag {
|
|
UINT wXpos;
|
|
UINT wYpos;
|
|
UINT wZpos;
|
|
UINT wButtons;
|
|
} JOYINFO,*PJOYINFO, *NPJOYINFO,*LPJOYINFO;
|
|
typedef struct joyinfoex_tag {
|
|
DWORD dwSize;
|
|
DWORD dwFlags;
|
|
DWORD dwXpos;
|
|
DWORD dwYpos;
|
|
DWORD dwZpos;
|
|
DWORD dwRpos;
|
|
DWORD dwUpos;
|
|
DWORD dwVpos;
|
|
DWORD dwButtons;
|
|
DWORD dwButtonNumber;
|
|
DWORD dwPOV;
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
} JOYINFOEX,*PJOYINFOEX, *NPJOYINFOEX,*LPJOYINFOEX;
|
|
__attribute__((dllimport)) UINT joyGetNumDevs(void);
|
|
__attribute__((dllimport)) MMRESULT joyGetDevCapsA(UINT_PTR uJoyID,LPJOYCAPSA pjc,UINT cbjc);
|
|
__attribute__((dllimport)) MMRESULT joyGetDevCapsW(UINT_PTR uJoyID,LPJOYCAPSW pjc,UINT cbjc);
|
|
__attribute__((dllimport)) MMRESULT joyGetPos(UINT uJoyID,LPJOYINFO pji);
|
|
__attribute__((dllimport)) MMRESULT joyGetPosEx(UINT uJoyID,LPJOYINFOEX pji);
|
|
__attribute__((dllimport)) MMRESULT joyGetThreshold(UINT uJoyID,LPUINT puThreshold);
|
|
__attribute__((dllimport)) MMRESULT joyReleaseCapture(UINT uJoyID);
|
|
__attribute__((dllimport)) MMRESULT joySetCapture(HWND hwnd,UINT uJoyID,UINT uPeriod,WINBOOL fChanged);
|
|
__attribute__((dllimport)) MMRESULT joySetThreshold(UINT uJoyID,UINT uThreshold);
|
|
typedef DWORD FOURCC;
|
|
typedef char *HPSTR;
|
|
struct HMMIO__ { int unused; }; typedef struct HMMIO__ *HMMIO;
|
|
typedef LRESULT ( MMIOPROC)(LPSTR lpmmioinfo,UINT uMsg,LPARAM lParam1,LPARAM lParam2);
|
|
typedef MMIOPROC *LPMMIOPROC;
|
|
typedef struct _MMIOINFO {
|
|
DWORD dwFlags;
|
|
FOURCC fccIOProc;
|
|
LPMMIOPROC pIOProc;
|
|
UINT wErrorRet;
|
|
HTASK htask;
|
|
LONG cchBuffer;
|
|
HPSTR pchBuffer;
|
|
HPSTR pchNext;
|
|
HPSTR pchEndRead;
|
|
HPSTR pchEndWrite;
|
|
LONG lBufOffset;
|
|
LONG lDiskOffset;
|
|
DWORD adwInfo[3];
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
HMMIO hmmio;
|
|
} MMIOINFO,*PMMIOINFO, *NPMMIOINFO,*LPMMIOINFO;
|
|
typedef const MMIOINFO *LPCMMIOINFO;
|
|
typedef struct _MMCKINFO {
|
|
FOURCC ckid;
|
|
DWORD cksize;
|
|
FOURCC fccType;
|
|
DWORD dwDataOffset;
|
|
DWORD dwFlags;
|
|
} MMCKINFO,*PMMCKINFO, *NPMMCKINFO,*LPMMCKINFO;
|
|
typedef const MMCKINFO *LPCMMCKINFO;
|
|
__attribute__((dllimport)) FOURCC mmioStringToFOURCCA(LPCSTR sz,UINT uFlags);
|
|
__attribute__((dllimport)) FOURCC mmioStringToFOURCCW(LPCWSTR sz,UINT uFlags);
|
|
__attribute__((dllimport)) LPMMIOPROC mmioInstallIOProcA(FOURCC fccIOProc,LPMMIOPROC pIOProc,DWORD dwFlags);
|
|
__attribute__((dllimport)) LPMMIOPROC mmioInstallIOProcW(FOURCC fccIOProc,LPMMIOPROC pIOProc,DWORD dwFlags);
|
|
__attribute__((dllimport)) HMMIO mmioOpenA(LPSTR pszFileName,LPMMIOINFO pmmioinfo,DWORD fdwOpen);
|
|
__attribute__((dllimport)) HMMIO mmioOpenW(LPWSTR pszFileName,LPMMIOINFO pmmioinfo,DWORD fdwOpen);
|
|
__attribute__((dllimport)) MMRESULT mmioRenameA(LPCSTR pszFileName,LPCSTR pszNewFileName,LPCMMIOINFO pmmioinfo,DWORD fdwRename);
|
|
__attribute__((dllimport)) MMRESULT mmioRenameW(LPCWSTR pszFileName,LPCWSTR pszNewFileName,LPCMMIOINFO pmmioinfo,DWORD fdwRename);
|
|
__attribute__((dllimport)) MMRESULT mmioClose(HMMIO hmmio,UINT fuClose);
|
|
__attribute__((dllimport)) LONG mmioRead(HMMIO hmmio,HPSTR pch,LONG cch);
|
|
__attribute__((dllimport)) LONG mmioWrite(HMMIO hmmio,const char *pch,LONG cch);
|
|
__attribute__((dllimport)) LONG mmioSeek(HMMIO hmmio,LONG lOffset,int iOrigin);
|
|
__attribute__((dllimport)) MMRESULT mmioGetInfo(HMMIO hmmio,LPMMIOINFO pmmioinfo,UINT fuInfo);
|
|
__attribute__((dllimport)) MMRESULT mmioSetInfo(HMMIO hmmio,LPCMMIOINFO pmmioinfo,UINT fuInfo);
|
|
__attribute__((dllimport)) MMRESULT mmioSetBuffer(HMMIO hmmio,LPSTR pchBuffer,LONG cchBuffer,UINT fuBuffer);
|
|
__attribute__((dllimport)) MMRESULT mmioFlush(HMMIO hmmio,UINT fuFlush);
|
|
__attribute__((dllimport)) MMRESULT mmioAdvance(HMMIO hmmio,LPMMIOINFO pmmioinfo,UINT fuAdvance);
|
|
__attribute__((dllimport)) LRESULT mmioSendMessage(HMMIO hmmio,UINT uMsg,LPARAM lParam1,LPARAM lParam2);
|
|
__attribute__((dllimport)) MMRESULT mmioDescend(HMMIO hmmio,LPMMCKINFO pmmcki,const MMCKINFO *pmmckiParent,UINT fuDescend);
|
|
__attribute__((dllimport)) MMRESULT mmioAscend(HMMIO hmmio,LPMMCKINFO pmmcki,UINT fuAscend);
|
|
__attribute__((dllimport)) MMRESULT mmioCreateChunk(HMMIO hmmio,LPMMCKINFO pmmcki,UINT fuCreate);
|
|
typedef DWORD MCIERROR;
|
|
typedef UINT MCIDEVICEID;
|
|
typedef UINT ( *YIELDPROC)(MCIDEVICEID mciId,DWORD dwYieldData);
|
|
__attribute__((dllimport)) MCIERROR mciSendCommandA(MCIDEVICEID mciId,UINT uMsg,DWORD_PTR dwParam1,DWORD_PTR dwParam2);
|
|
__attribute__((dllimport)) MCIERROR mciSendCommandW(MCIDEVICEID mciId,UINT uMsg,DWORD_PTR dwParam1,DWORD_PTR dwParam2);
|
|
__attribute__((dllimport)) MCIERROR mciSendStringA(LPCSTR lpstrCommand,LPSTR lpstrReturnString,UINT uReturnLength,HWND hwndCallback);
|
|
__attribute__((dllimport)) MCIERROR mciSendStringW(LPCWSTR lpstrCommand,LPWSTR lpstrReturnString,UINT uReturnLength,HWND hwndCallback);
|
|
__attribute__((dllimport)) MCIDEVICEID mciGetDeviceIDA(LPCSTR pszDevice);
|
|
__attribute__((dllimport)) MCIDEVICEID mciGetDeviceIDW(LPCWSTR pszDevice);
|
|
__attribute__((dllimport)) MCIDEVICEID mciGetDeviceIDFromElementIDA(DWORD dwElementID,LPCSTR lpstrType);
|
|
__attribute__((dllimport)) MCIDEVICEID mciGetDeviceIDFromElementIDW(DWORD dwElementID,LPCWSTR lpstrType);
|
|
__attribute__((dllimport)) WINBOOL mciGetErrorStringA(MCIERROR mcierr,LPSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) WINBOOL mciGetErrorStringW(MCIERROR mcierr,LPWSTR pszText,UINT cchText);
|
|
__attribute__((dllimport)) WINBOOL mciSetYieldProc(MCIDEVICEID mciId,YIELDPROC fpYieldProc,DWORD dwYieldData);
|
|
__attribute__((dllimport)) HTASK mciGetCreatorTask(MCIDEVICEID mciId);
|
|
__attribute__((dllimport)) YIELDPROC mciGetYieldProc(MCIDEVICEID mciId,LPDWORD pdwYieldData);
|
|
typedef struct tagMCI_GENERIC_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
} MCI_GENERIC_PARMS,*PMCI_GENERIC_PARMS,*LPMCI_GENERIC_PARMS;
|
|
typedef struct tagMCI_OPEN_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCSTR lpstrDeviceType;
|
|
LPCSTR lpstrElementName;
|
|
LPCSTR lpstrAlias;
|
|
} MCI_OPEN_PARMSA,*PMCI_OPEN_PARMSA,*LPMCI_OPEN_PARMSA;
|
|
typedef struct tagMCI_OPEN_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCWSTR lpstrDeviceType;
|
|
LPCWSTR lpstrElementName;
|
|
LPCWSTR lpstrAlias;
|
|
} MCI_OPEN_PARMSW,*PMCI_OPEN_PARMSW,*LPMCI_OPEN_PARMSW;
|
|
typedef MCI_OPEN_PARMSA MCI_OPEN_PARMS;
|
|
typedef PMCI_OPEN_PARMSA PMCI_OPEN_PARMS;
|
|
typedef LPMCI_OPEN_PARMSA LPMCI_OPEN_PARMS;
|
|
typedef struct tagMCI_PLAY_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrom;
|
|
DWORD dwTo;
|
|
} MCI_PLAY_PARMS,*PMCI_PLAY_PARMS,*LPMCI_PLAY_PARMS;
|
|
typedef struct tagMCI_SEEK_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwTo;
|
|
} MCI_SEEK_PARMS,*PMCI_SEEK_PARMS,*LPMCI_SEEK_PARMS;
|
|
typedef struct tagMCI_STATUS_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD_PTR dwReturn;
|
|
DWORD dwItem;
|
|
DWORD dwTrack;
|
|
} MCI_STATUS_PARMS,*PMCI_STATUS_PARMS,*LPMCI_STATUS_PARMS;
|
|
typedef struct tagMCI_INFO_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPSTR lpstrReturn;
|
|
DWORD dwRetSize;
|
|
} MCI_INFO_PARMSA,*LPMCI_INFO_PARMSA;
|
|
typedef struct tagMCI_INFO_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPWSTR lpstrReturn;
|
|
DWORD dwRetSize;
|
|
} MCI_INFO_PARMSW,*LPMCI_INFO_PARMSW;
|
|
typedef MCI_INFO_PARMSA MCI_INFO_PARMS;
|
|
typedef LPMCI_INFO_PARMSA LPMCI_INFO_PARMS;
|
|
typedef struct tagMCI_GETDEVCAPS_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwReturn;
|
|
DWORD dwItem;
|
|
} MCI_GETDEVCAPS_PARMS,*PMCI_GETDEVCAPS_PARMS,*LPMCI_GETDEVCAPS_PARMS;
|
|
typedef struct tagMCI_SYSINFO_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPSTR lpstrReturn;
|
|
DWORD dwRetSize;
|
|
DWORD dwNumber;
|
|
UINT wDeviceType;
|
|
} MCI_SYSINFO_PARMSA,*PMCI_SYSINFO_PARMSA,*LPMCI_SYSINFO_PARMSA;
|
|
typedef struct tagMCI_SYSINFO_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPWSTR lpstrReturn;
|
|
DWORD dwRetSize;
|
|
DWORD dwNumber;
|
|
UINT wDeviceType;
|
|
} MCI_SYSINFO_PARMSW,*PMCI_SYSINFO_PARMSW,*LPMCI_SYSINFO_PARMSW;
|
|
typedef MCI_SYSINFO_PARMSA MCI_SYSINFO_PARMS;
|
|
typedef PMCI_SYSINFO_PARMSA PMCI_SYSINFO_PARMS;
|
|
typedef LPMCI_SYSINFO_PARMSA LPMCI_SYSINFO_PARMS;
|
|
typedef struct tagMCI_SET_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwTimeFormat;
|
|
DWORD dwAudio;
|
|
} MCI_SET_PARMS,*PMCI_SET_PARMS,*LPMCI_SET_PARMS;
|
|
typedef struct tagMCI_BREAK_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
int nVirtKey;
|
|
HWND hwndBreak;
|
|
} MCI_BREAK_PARMS,*PMCI_BREAK_PARMS,*LPMCI_BREAK_PARMS;
|
|
typedef struct tagMCI_SAVE_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPCSTR lpfilename;
|
|
} MCI_SAVE_PARMSA,*PMCI_SAVE_PARMSA,*LPMCI_SAVE_PARMSA;
|
|
typedef struct tagMCI_SAVE_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPCWSTR lpfilename;
|
|
} MCI_SAVE_PARMSW,*PMCI_SAVE_PARMSW,*LPMCI_SAVE_PARMSW;
|
|
typedef MCI_SAVE_PARMSA MCI_SAVE_PARMS;
|
|
typedef PMCI_SAVE_PARMSA PMCI_SAVE_PARMS;
|
|
typedef LPMCI_SAVE_PARMSA LPMCI_SAVE_PARMS;
|
|
typedef struct tagMCI_LOAD_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPCSTR lpfilename;
|
|
} MCI_LOAD_PARMSA,*PMCI_LOAD_PARMSA,*LPMCI_LOAD_PARMSA;
|
|
typedef struct tagMCI_LOAD_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPCWSTR lpfilename;
|
|
} MCI_LOAD_PARMSW,*PMCI_LOAD_PARMSW,*LPMCI_LOAD_PARMSW;
|
|
typedef MCI_LOAD_PARMSA MCI_LOAD_PARMS;
|
|
typedef PMCI_LOAD_PARMSA PMCI_LOAD_PARMS;
|
|
typedef LPMCI_LOAD_PARMSA LPMCI_LOAD_PARMS;
|
|
typedef struct tagMCI_RECORD_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrom;
|
|
DWORD dwTo;
|
|
} MCI_RECORD_PARMS,*LPMCI_RECORD_PARMS;
|
|
typedef struct tagMCI_VD_PLAY_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrom;
|
|
DWORD dwTo;
|
|
DWORD dwSpeed;
|
|
} MCI_VD_PLAY_PARMS,*PMCI_VD_PLAY_PARMS,*LPMCI_VD_PLAY_PARMS;
|
|
typedef struct tagMCI_VD_STEP_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrames;
|
|
} MCI_VD_STEP_PARMS,*PMCI_VD_STEP_PARMS,*LPMCI_VD_STEP_PARMS;
|
|
typedef struct tagMCI_VD_ESCAPE_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPCSTR lpstrCommand;
|
|
} MCI_VD_ESCAPE_PARMSA,*PMCI_VD_ESCAPE_PARMSA,*LPMCI_VD_ESCAPE_PARMSA;
|
|
typedef struct tagMCI_VD_ESCAPE_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPCWSTR lpstrCommand;
|
|
} MCI_VD_ESCAPE_PARMSW,*PMCI_VD_ESCAPE_PARMSW,*LPMCI_VD_ESCAPE_PARMSW;
|
|
typedef MCI_VD_ESCAPE_PARMSA MCI_VD_ESCAPE_PARMS;
|
|
typedef PMCI_VD_ESCAPE_PARMSA PMCI_VD_ESCAPE_PARMS;
|
|
typedef LPMCI_VD_ESCAPE_PARMSA LPMCI_VD_ESCAPE_PARMS;
|
|
typedef struct tagMCI_WAVE_OPEN_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCSTR lpstrDeviceType;
|
|
LPCSTR lpstrElementName;
|
|
LPCSTR lpstrAlias;
|
|
DWORD dwBufferSeconds;
|
|
} MCI_WAVE_OPEN_PARMSA,*PMCI_WAVE_OPEN_PARMSA,*LPMCI_WAVE_OPEN_PARMSA;
|
|
typedef struct tagMCI_WAVE_OPEN_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCWSTR lpstrDeviceType;
|
|
LPCWSTR lpstrElementName;
|
|
LPCWSTR lpstrAlias;
|
|
DWORD dwBufferSeconds;
|
|
} MCI_WAVE_OPEN_PARMSW,*PMCI_WAVE_OPEN_PARMSW,*LPMCI_WAVE_OPEN_PARMSW;
|
|
typedef MCI_WAVE_OPEN_PARMSA MCI_WAVE_OPEN_PARMS;
|
|
typedef PMCI_WAVE_OPEN_PARMSA PMCI_WAVE_OPEN_PARMS;
|
|
typedef LPMCI_WAVE_OPEN_PARMSA LPMCI_WAVE_OPEN_PARMS;
|
|
typedef struct tagMCI_WAVE_DELETE_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrom;
|
|
DWORD dwTo;
|
|
} MCI_WAVE_DELETE_PARMS,*PMCI_WAVE_DELETE_PARMS,*LPMCI_WAVE_DELETE_PARMS;
|
|
typedef struct tagMCI_WAVE_SET_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwTimeFormat;
|
|
DWORD dwAudio;
|
|
UINT wInput;
|
|
UINT wOutput;
|
|
WORD wFormatTag;
|
|
WORD wReserved2;
|
|
WORD nChannels;
|
|
WORD wReserved3;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wReserved4;
|
|
WORD wBitsPerSample;
|
|
WORD wReserved5;
|
|
} MCI_WAVE_SET_PARMS,*PMCI_WAVE_SET_PARMS,*LPMCI_WAVE_SET_PARMS;
|
|
typedef struct tagMCI_SEQ_SET_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwTimeFormat;
|
|
DWORD dwAudio;
|
|
DWORD dwTempo;
|
|
DWORD dwPort;
|
|
DWORD dwSlave;
|
|
DWORD dwMaster;
|
|
DWORD dwOffset;
|
|
} MCI_SEQ_SET_PARMS,*PMCI_SEQ_SET_PARMS,*LPMCI_SEQ_SET_PARMS;
|
|
typedef struct tagMCI_ANIM_OPEN_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCSTR lpstrDeviceType;
|
|
LPCSTR lpstrElementName;
|
|
LPCSTR lpstrAlias;
|
|
DWORD dwStyle;
|
|
HWND hWndParent;
|
|
} MCI_ANIM_OPEN_PARMSA,*PMCI_ANIM_OPEN_PARMSA,*LPMCI_ANIM_OPEN_PARMSA;
|
|
typedef struct tagMCI_ANIM_OPEN_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCWSTR lpstrDeviceType;
|
|
LPCWSTR lpstrElementName;
|
|
LPCWSTR lpstrAlias;
|
|
DWORD dwStyle;
|
|
HWND hWndParent;
|
|
} MCI_ANIM_OPEN_PARMSW,*PMCI_ANIM_OPEN_PARMSW,*LPMCI_ANIM_OPEN_PARMSW;
|
|
typedef MCI_ANIM_OPEN_PARMSA MCI_ANIM_OPEN_PARMS;
|
|
typedef PMCI_ANIM_OPEN_PARMSA PMCI_ANIM_OPEN_PARMS;
|
|
typedef LPMCI_ANIM_OPEN_PARMSA LPMCI_ANIM_OPEN_PARMS;
|
|
typedef struct tagMCI_ANIM_PLAY_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrom;
|
|
DWORD dwTo;
|
|
DWORD dwSpeed;
|
|
} MCI_ANIM_PLAY_PARMS,*PMCI_ANIM_PLAY_PARMS,*LPMCI_ANIM_PLAY_PARMS;
|
|
typedef struct tagMCI_ANIM_STEP_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
DWORD dwFrames;
|
|
} MCI_ANIM_STEP_PARMS,*PMCI_ANIM_STEP_PARMS,*LPMCI_ANIM_STEP_PARMS;
|
|
typedef struct tagMCI_ANIM_WINDOW_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
HWND hWnd;
|
|
UINT nCmdShow;
|
|
LPCSTR lpstrText;
|
|
} MCI_ANIM_WINDOW_PARMSA,*PMCI_ANIM_WINDOW_PARMSA,*LPMCI_ANIM_WINDOW_PARMSA;
|
|
typedef struct tagMCI_ANIM_WINDOW_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
HWND hWnd;
|
|
UINT nCmdShow;
|
|
LPCWSTR lpstrText;
|
|
} MCI_ANIM_WINDOW_PARMSW,*PMCI_ANIM_WINDOW_PARMSW,*LPMCI_ANIM_WINDOW_PARMSW;
|
|
typedef MCI_ANIM_WINDOW_PARMSA MCI_ANIM_WINDOW_PARMS;
|
|
typedef PMCI_ANIM_WINDOW_PARMSA PMCI_ANIM_WINDOW_PARMS;
|
|
typedef LPMCI_ANIM_WINDOW_PARMSA LPMCI_ANIM_WINDOW_PARMS;
|
|
typedef struct tagMCI_ANIM_RECT_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
RECT rc;
|
|
} MCI_ANIM_RECT_PARMS;
|
|
typedef MCI_ANIM_RECT_PARMS *PMCI_ANIM_RECT_PARMS;
|
|
typedef MCI_ANIM_RECT_PARMS *LPMCI_ANIM_RECT_PARMS;
|
|
typedef struct tagMCI_ANIM_UPDATE_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
RECT rc;
|
|
HDC hDC;
|
|
} MCI_ANIM_UPDATE_PARMS,*PMCI_ANIM_UPDATE_PARMS,*LPMCI_ANIM_UPDATE_PARMS;
|
|
typedef struct tagMCI_OVLY_OPEN_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCSTR lpstrDeviceType;
|
|
LPCSTR lpstrElementName;
|
|
LPCSTR lpstrAlias;
|
|
DWORD dwStyle;
|
|
HWND hWndParent;
|
|
} MCI_OVLY_OPEN_PARMSA,*PMCI_OVLY_OPEN_PARMSA,*LPMCI_OVLY_OPEN_PARMSA;
|
|
typedef struct tagMCI_OVLY_OPEN_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
MCIDEVICEID wDeviceID;
|
|
LPCWSTR lpstrDeviceType;
|
|
LPCWSTR lpstrElementName;
|
|
LPCWSTR lpstrAlias;
|
|
DWORD dwStyle;
|
|
HWND hWndParent;
|
|
} MCI_OVLY_OPEN_PARMSW,*PMCI_OVLY_OPEN_PARMSW,*LPMCI_OVLY_OPEN_PARMSW;
|
|
typedef MCI_OVLY_OPEN_PARMSA MCI_OVLY_OPEN_PARMS;
|
|
typedef PMCI_OVLY_OPEN_PARMSA PMCI_OVLY_OPEN_PARMS;
|
|
typedef LPMCI_OVLY_OPEN_PARMSA LPMCI_OVLY_OPEN_PARMS;
|
|
typedef struct tagMCI_OVLY_WINDOW_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
HWND hWnd;
|
|
UINT nCmdShow;
|
|
LPCSTR lpstrText;
|
|
} MCI_OVLY_WINDOW_PARMSA,*PMCI_OVLY_WINDOW_PARMSA,*LPMCI_OVLY_WINDOW_PARMSA;
|
|
typedef struct tagMCI_OVLY_WINDOW_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
HWND hWnd;
|
|
UINT nCmdShow;
|
|
LPCWSTR lpstrText;
|
|
} MCI_OVLY_WINDOW_PARMSW,*PMCI_OVLY_WINDOW_PARMSW,*LPMCI_OVLY_WINDOW_PARMSW;
|
|
typedef MCI_OVLY_WINDOW_PARMSA MCI_OVLY_WINDOW_PARMS;
|
|
typedef PMCI_OVLY_WINDOW_PARMSA PMCI_OVLY_WINDOW_PARMS;
|
|
typedef LPMCI_OVLY_WINDOW_PARMSA LPMCI_OVLY_WINDOW_PARMS;
|
|
typedef struct tagMCI_OVLY_RECT_PARMS {
|
|
DWORD_PTR dwCallback;
|
|
RECT rc;
|
|
} MCI_OVLY_RECT_PARMS,*PMCI_OVLY_RECT_PARMS,*LPMCI_OVLY_RECT_PARMS;
|
|
typedef struct tagMCI_OVLY_SAVE_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPCSTR lpfilename;
|
|
RECT rc;
|
|
} MCI_OVLY_SAVE_PARMSA,*PMCI_OVLY_SAVE_PARMSA,*LPMCI_OVLY_SAVE_PARMSA;
|
|
typedef struct tagMCI_OVLY_SAVE_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPCWSTR lpfilename;
|
|
RECT rc;
|
|
} MCI_OVLY_SAVE_PARMSW,*PMCI_OVLY_SAVE_PARMSW,*LPMCI_OVLY_SAVE_PARMSW;
|
|
typedef MCI_OVLY_SAVE_PARMSA MCI_OVLY_SAVE_PARMS;
|
|
typedef PMCI_OVLY_SAVE_PARMSA PMCI_OVLY_SAVE_PARMS;
|
|
typedef LPMCI_OVLY_SAVE_PARMSA LPMCI_OVLY_SAVE_PARMS;
|
|
typedef struct tagMCI_OVLY_LOAD_PARMSA {
|
|
DWORD_PTR dwCallback;
|
|
LPCSTR lpfilename;
|
|
RECT rc;
|
|
} MCI_OVLY_LOAD_PARMSA,*PMCI_OVLY_LOAD_PARMSA,*LPMCI_OVLY_LOAD_PARMSA;
|
|
typedef struct tagMCI_OVLY_LOAD_PARMSW {
|
|
DWORD_PTR dwCallback;
|
|
LPCWSTR lpfilename;
|
|
RECT rc;
|
|
} MCI_OVLY_LOAD_PARMSW,*PMCI_OVLY_LOAD_PARMSW,*LPMCI_OVLY_LOAD_PARMSW;
|
|
typedef MCI_OVLY_LOAD_PARMSA MCI_OVLY_LOAD_PARMS;
|
|
typedef PMCI_OVLY_LOAD_PARMSA PMCI_OVLY_LOAD_PARMS;
|
|
typedef LPMCI_OVLY_LOAD_PARMSA LPMCI_OVLY_LOAD_PARMS;
|
|
#pragma pack(pop)
|
|
typedef struct _NCB {
|
|
UCHAR ncb_command;
|
|
UCHAR ncb_retcode;
|
|
UCHAR ncb_lsn;
|
|
UCHAR ncb_num;
|
|
PUCHAR ncb_buffer;
|
|
WORD ncb_length;
|
|
UCHAR ncb_callname[16];
|
|
UCHAR ncb_name[16];
|
|
UCHAR ncb_rto;
|
|
UCHAR ncb_sto;
|
|
void ( *ncb_post)(struct _NCB *);
|
|
UCHAR ncb_lana_num;
|
|
UCHAR ncb_cmd_cplt;
|
|
UCHAR ncb_reserve[18];
|
|
HANDLE ncb_event;
|
|
} NCB,*PNCB;
|
|
typedef struct _ADAPTER_STATUS {
|
|
UCHAR adapter_address[6];
|
|
UCHAR rev_major;
|
|
UCHAR reserved0;
|
|
UCHAR adapter_type;
|
|
UCHAR rev_minor;
|
|
WORD duration;
|
|
WORD frmr_recv;
|
|
WORD frmr_xmit;
|
|
WORD iframe_recv_err;
|
|
WORD xmit_aborts;
|
|
DWORD xmit_success;
|
|
DWORD recv_success;
|
|
WORD iframe_xmit_err;
|
|
WORD recv_buff_unavail;
|
|
WORD t1_timeouts;
|
|
WORD ti_timeouts;
|
|
DWORD reserved1;
|
|
WORD free_ncbs;
|
|
WORD max_cfg_ncbs;
|
|
WORD max_ncbs;
|
|
WORD xmit_buf_unavail;
|
|
WORD max_dgram_size;
|
|
WORD pending_sess;
|
|
WORD max_cfg_sess;
|
|
WORD max_sess;
|
|
WORD max_sess_pkt_size;
|
|
WORD name_count;
|
|
} ADAPTER_STATUS,*PADAPTER_STATUS;
|
|
typedef struct _NAME_BUFFER {
|
|
UCHAR name[16];
|
|
UCHAR name_num;
|
|
UCHAR name_flags;
|
|
} NAME_BUFFER,*PNAME_BUFFER;
|
|
typedef struct _SESSION_HEADER {
|
|
UCHAR sess_name;
|
|
UCHAR num_sess;
|
|
UCHAR rcv_dg_outstanding;
|
|
UCHAR rcv_any_outstanding;
|
|
} SESSION_HEADER,*PSESSION_HEADER;
|
|
typedef struct _SESSION_BUFFER {
|
|
UCHAR lsn;
|
|
UCHAR state;
|
|
UCHAR local_name[16];
|
|
UCHAR remote_name[16];
|
|
UCHAR rcvs_outstanding;
|
|
UCHAR sends_outstanding;
|
|
} SESSION_BUFFER,*PSESSION_BUFFER;
|
|
typedef struct _LANA_ENUM {
|
|
UCHAR length;
|
|
UCHAR lana[254 +1];
|
|
} LANA_ENUM,*PLANA_ENUM;
|
|
typedef struct _FIND_NAME_HEADER {
|
|
WORD node_count;
|
|
UCHAR reserved;
|
|
UCHAR unique_group;
|
|
} FIND_NAME_HEADER,*PFIND_NAME_HEADER;
|
|
typedef struct _FIND_NAME_BUFFER {
|
|
UCHAR length;
|
|
UCHAR access_control;
|
|
UCHAR frame_control;
|
|
UCHAR destination_addr[6];
|
|
UCHAR source_addr[6];
|
|
UCHAR routing_info[18];
|
|
} FIND_NAME_BUFFER,*PFIND_NAME_BUFFER;
|
|
typedef struct _ACTION_HEADER {
|
|
ULONG transport_id;
|
|
USHORT action_code;
|
|
USHORT reserved;
|
|
} ACTION_HEADER,*PACTION_HEADER;
|
|
UCHAR Netbios(PNCB pncb);
|
|
#pragma pack(push,8)
|
|
typedef void *I_RPC_HANDLE;
|
|
typedef long RPC_STATUS;
|
|
typedef unsigned char *RPC_CSTR;
|
|
typedef unsigned short *RPC_WSTR;
|
|
typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
|
|
typedef RPC_BINDING_HANDLE handle_t;
|
|
typedef GUID UUID;
|
|
typedef struct _RPC_BINDING_VECTOR {
|
|
unsigned long Count;
|
|
RPC_BINDING_HANDLE BindingH[1];
|
|
} RPC_BINDING_VECTOR;
|
|
typedef struct _UUID_VECTOR {
|
|
unsigned long Count;
|
|
UUID *Uuid[1];
|
|
} UUID_VECTOR;
|
|
typedef void *RPC_IF_HANDLE;
|
|
typedef struct _RPC_IF_ID {
|
|
UUID Uuid;
|
|
unsigned short VersMajor;
|
|
unsigned short VersMinor;
|
|
} RPC_IF_ID;
|
|
typedef struct _RPC_PROTSEQ_VECTORA {
|
|
unsigned int Count;
|
|
unsigned char *Protseq[1];
|
|
} RPC_PROTSEQ_VECTORA;
|
|
typedef struct _RPC_PROTSEQ_VECTORW {
|
|
unsigned int Count;
|
|
unsigned short *Protseq[1];
|
|
} RPC_PROTSEQ_VECTORW;
|
|
typedef struct _RPC_POLICY {
|
|
unsigned int Length;
|
|
unsigned long EndpointFlags;
|
|
unsigned long NICFlags;
|
|
} RPC_POLICY,*PRPC_POLICY;
|
|
typedef void RPC_OBJECT_INQ_FN(UUID *ObjectUuid,UUID *TypeUuid,RPC_STATUS *Status);
|
|
typedef RPC_STATUS RPC_IF_CALLBACK_FN(RPC_IF_HANDLE InterfaceUuid,void *Context);
|
|
typedef void RPC_SECURITY_CALLBACK_FN(void *Context);
|
|
typedef struct {
|
|
unsigned int Count;
|
|
unsigned long Stats[1];
|
|
} RPC_STATS_VECTOR;
|
|
typedef struct {
|
|
unsigned long Count;
|
|
RPC_IF_ID *IfId[1];
|
|
} RPC_IF_ID_VECTOR;
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingCopy(RPC_BINDING_HANDLE SourceBinding,RPC_BINDING_HANDLE *DestinationBinding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingFree(RPC_BINDING_HANDLE *Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingSetOption(RPC_BINDING_HANDLE hBinding,unsigned long option,ULONG_PTR optionValue);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqOption(RPC_BINDING_HANDLE hBinding,unsigned long option,ULONG_PTR *pOptionValue);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingFromStringBindingA(RPC_CSTR StringBinding,RPC_BINDING_HANDLE *Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingFromStringBindingW(RPC_WSTR StringBinding,RPC_BINDING_HANDLE *Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSsGetContextBinding(void *ContextHandle,RPC_BINDING_HANDLE *Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqObject(RPC_BINDING_HANDLE Binding,UUID *ObjectUuid);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingReset(RPC_BINDING_HANDLE Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingSetObject(RPC_BINDING_HANDLE Binding,UUID *ObjectUuid);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtInqDefaultProtectLevel(unsigned long AuthnSvc,unsigned long *AuthnLevel);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingToStringBindingA(RPC_BINDING_HANDLE Binding,RPC_CSTR *StringBinding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingToStringBindingW(RPC_BINDING_HANDLE Binding,RPC_WSTR *StringBinding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingVectorFree(RPC_BINDING_VECTOR **BindingVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcStringBindingComposeA(RPC_CSTR ObjUuid,RPC_CSTR Protseq,RPC_CSTR NetworkAddr,RPC_CSTR Endpoint,RPC_CSTR Options,RPC_CSTR *StringBinding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcStringBindingComposeW(RPC_WSTR ObjUuid,RPC_WSTR Protseq,RPC_WSTR NetworkAddr,RPC_WSTR Endpoint,RPC_WSTR Options,RPC_WSTR *StringBinding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcStringBindingParseA(RPC_CSTR StringBinding,RPC_CSTR *ObjUuid,RPC_CSTR *Protseq,RPC_CSTR *NetworkAddr,RPC_CSTR *Endpoint,RPC_CSTR *NetworkOptions);
|
|
__attribute__((dllimport)) RPC_STATUS RpcStringBindingParseW(RPC_WSTR StringBinding,RPC_WSTR *ObjUuid,RPC_WSTR *Protseq,RPC_WSTR *NetworkAddr,RPC_WSTR *Endpoint,RPC_WSTR *NetworkOptions);
|
|
__attribute__((dllimport)) RPC_STATUS RpcStringFreeA(RPC_CSTR *String);
|
|
__attribute__((dllimport)) RPC_STATUS RpcStringFreeW(RPC_WSTR *String);
|
|
__attribute__((dllimport)) RPC_STATUS RpcIfInqId(RPC_IF_HANDLE RpcIfHandle,RPC_IF_ID *RpcIfId);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNetworkIsProtseqValidA(RPC_CSTR Protseq);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNetworkIsProtseqValidW(RPC_WSTR Protseq);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtInqComTimeout(RPC_BINDING_HANDLE Binding,unsigned int *Timeout);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtSetComTimeout(RPC_BINDING_HANDLE Binding,unsigned int Timeout);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtSetCancelTimeout(long Timeout);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNetworkInqProtseqsA (RPC_PROTSEQ_VECTORA **ProtseqVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNetworkInqProtseqsW (RPC_PROTSEQ_VECTORW **ProtseqVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcObjectInqType(UUID *ObjUuid,UUID *TypeUuid);
|
|
__attribute__((dllimport)) RPC_STATUS RpcObjectSetInqFn(RPC_OBJECT_INQ_FN *InquiryFn);
|
|
__attribute__((dllimport)) RPC_STATUS RpcObjectSetType(UUID *ObjUuid,UUID *TypeUuid);
|
|
__attribute__((dllimport)) RPC_STATUS RpcProtseqVectorFreeA(RPC_PROTSEQ_VECTORA **ProtseqVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcProtseqVectorFreeW(RPC_PROTSEQ_VECTORW **ProtseqVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerInqBindings (RPC_BINDING_VECTOR **BindingVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerInqIf(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void **MgrEpv);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerListen(unsigned int MinimumCallThreads,unsigned int MaxCalls,unsigned int DontWait);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerRegisterIf(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void *MgrEpv);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerRegisterIfEx(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void *MgrEpv,unsigned int Flags,unsigned int MaxCalls,RPC_IF_CALLBACK_FN *IfCallback);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerRegisterIf2(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,void *MgrEpv,unsigned int Flags,unsigned int MaxCalls,unsigned int MaxRpcSize,RPC_IF_CALLBACK_FN *IfCallbackFn);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUnregisterIf(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,unsigned int WaitForCallsToComplete);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUnregisterIfEx(RPC_IF_HANDLE IfSpec,UUID *MgrTypeUuid,int RundownContextHandles);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseAllProtseqs(unsigned int MaxCalls,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseAllProtseqsEx(unsigned int MaxCalls,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseAllProtseqsIf(unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseAllProtseqsIfEx(unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqA(RPC_CSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqExA(RPC_CSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqW(RPC_WSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqExW(RPC_WSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqEpA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_CSTR Endpoint,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqEpExA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_CSTR Endpoint,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqEpW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_WSTR Endpoint,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqEpExW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_WSTR Endpoint,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqIfA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqIfExA(RPC_CSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqIfW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerUseProtseqIfExW(RPC_WSTR Protseq,unsigned int MaxCalls,RPC_IF_HANDLE IfSpec,void *SecurityDescriptor,PRPC_POLICY Policy);
|
|
__attribute__((dllimport)) void RpcServerYield (void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtStatsVectorFree(RPC_STATS_VECTOR **StatsVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtInqStats(RPC_BINDING_HANDLE Binding,RPC_STATS_VECTOR **Statistics);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtIsServerListening(RPC_BINDING_HANDLE Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtStopServerListening(RPC_BINDING_HANDLE Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtWaitServerListen(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtSetServerStackSize(unsigned long ThreadStackSize);
|
|
__attribute__((dllimport)) void RpcSsDontSerializeContext(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtEnableIdleCleanup(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtInqIfIds(RPC_BINDING_HANDLE Binding,RPC_IF_ID_VECTOR **IfIdVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcIfIdVectorFree(RPC_IF_ID_VECTOR **IfIdVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtInqServerPrincNameA(RPC_BINDING_HANDLE Binding,unsigned long AuthnSvc,RPC_CSTR *ServerPrincName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtInqServerPrincNameW(RPC_BINDING_HANDLE Binding,unsigned long AuthnSvc,RPC_WSTR *ServerPrincName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerInqDefaultPrincNameA(unsigned long AuthnSvc,RPC_CSTR *PrincName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerInqDefaultPrincNameW(unsigned long AuthnSvc,RPC_WSTR *PrincName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcEpResolveBinding(RPC_BINDING_HANDLE Binding,RPC_IF_HANDLE IfSpec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingInqEntryNameA(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_CSTR *EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingInqEntryNameW(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_WSTR *EntryName);
|
|
typedef void *RPC_AUTH_IDENTITY_HANDLE;
|
|
typedef void *RPC_AUTHZ_HANDLE;
|
|
typedef struct _RPC_SECURITY_QOS {
|
|
unsigned long Version;
|
|
unsigned long Capabilities;
|
|
unsigned long IdentityTracking;
|
|
unsigned long ImpersonationType;
|
|
} RPC_SECURITY_QOS,*PRPC_SECURITY_QOS;
|
|
typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
|
|
unsigned short *User;
|
|
unsigned long UserLength;
|
|
unsigned short *Domain;
|
|
unsigned long DomainLength;
|
|
unsigned short *Password;
|
|
unsigned long PasswordLength;
|
|
unsigned long Flags;
|
|
} SEC_WINNT_AUTH_IDENTITY_W,*PSEC_WINNT_AUTH_IDENTITY_W;
|
|
typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
|
|
unsigned char *User;
|
|
unsigned long UserLength;
|
|
unsigned char *Domain;
|
|
unsigned long DomainLength;
|
|
unsigned char *Password;
|
|
unsigned long PasswordLength;
|
|
unsigned long Flags;
|
|
} SEC_WINNT_AUTH_IDENTITY_A,*PSEC_WINNT_AUTH_IDENTITY_A;
|
|
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_W {
|
|
SEC_WINNT_AUTH_IDENTITY_W *TransportCredentials;
|
|
unsigned long Flags;
|
|
unsigned long AuthenticationTarget;
|
|
unsigned long NumberOfAuthnSchemes;
|
|
unsigned long *AuthnSchemes;
|
|
unsigned short *ServerCertificateSubject;
|
|
} RPC_HTTP_TRANSPORT_CREDENTIALS_W,*PRPC_HTTP_TRANSPORT_CREDENTIALS_W;
|
|
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A {
|
|
SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials;
|
|
unsigned long Flags;
|
|
unsigned long AuthenticationTarget;
|
|
unsigned long NumberOfAuthnSchemes;
|
|
unsigned long *AuthnSchemes;
|
|
unsigned char *ServerCertificateSubject;
|
|
} RPC_HTTP_TRANSPORT_CREDENTIALS_A,*PRPC_HTTP_TRANSPORT_CREDENTIALS_A;
|
|
typedef struct _RPC_SECURITY_QOS_V2_W {
|
|
unsigned long Version;
|
|
unsigned long Capabilities;
|
|
unsigned long IdentityTracking;
|
|
unsigned long ImpersonationType;
|
|
unsigned long AdditionalSecurityInfoType;
|
|
union {
|
|
RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
|
|
} u;
|
|
} RPC_SECURITY_QOS_V2_W,*PRPC_SECURITY_QOS_V2_W;
|
|
typedef struct _RPC_SECURITY_QOS_V2_A {
|
|
unsigned long Version;
|
|
unsigned long Capabilities;
|
|
unsigned long IdentityTracking;
|
|
unsigned long ImpersonationType;
|
|
unsigned long AdditionalSecurityInfoType;
|
|
union {
|
|
RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
|
|
} u;
|
|
} RPC_SECURITY_QOS_V2_A,*PRPC_SECURITY_QOS_V2_A;
|
|
typedef struct _RPC_SECURITY_QOS_V3_W {
|
|
unsigned long Version;
|
|
unsigned long Capabilities;
|
|
unsigned long IdentityTracking;
|
|
unsigned long ImpersonationType;
|
|
unsigned long AdditionalSecurityInfoType;
|
|
union {
|
|
RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
|
|
} u;
|
|
void *Sid;
|
|
} RPC_SECURITY_QOS_V3_W,*PRPC_SECURITY_QOS_V3_W;
|
|
typedef struct _RPC_SECURITY_QOS_V3_A {
|
|
unsigned long Version;
|
|
unsigned long Capabilities;
|
|
unsigned long IdentityTracking;
|
|
unsigned long ImpersonationType;
|
|
unsigned long AdditionalSecurityInfoType;
|
|
union {
|
|
RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
|
|
} u;
|
|
void *Sid;
|
|
} RPC_SECURITY_QOS_V3_A,*PRPC_SECURITY_QOS_V3_A;
|
|
typedef enum _RPC_HTTP_REDIRECTOR_STAGE {
|
|
RPCHTTP_RS_REDIRECT = 1,RPCHTTP_RS_ACCESS_1,RPCHTTP_RS_SESSION,RPCHTTP_RS_ACCESS_2,RPCHTTP_RS_INTERFACE
|
|
} RPC_HTTP_REDIRECTOR_STAGE;
|
|
typedef RPC_STATUS ( *RPC_NEW_HTTP_PROXY_CHANNEL)(RPC_HTTP_REDIRECTOR_STAGE RedirectorStage,unsigned short *ServerName,unsigned short *ServerPort,unsigned short *RemoteUser,unsigned short *AuthType,void *ResourceUuid,void *Metadata,void *SessionId,void *Interface,void *Reserved,unsigned long Flags,unsigned short **NewServerName,unsigned short **NewServerPort);
|
|
typedef void ( *RPC_HTTP_PROXY_FREE_STRING)(unsigned short *String);
|
|
__attribute__((dllimport)) RPC_STATUS RpcImpersonateClient(RPC_BINDING_HANDLE BindingHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcRevertToSelfEx(RPC_BINDING_HANDLE BindingHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcRevertToSelf(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthClientA(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthClientW(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthClientExA(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc,unsigned long Flags);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthClientExW(RPC_BINDING_HANDLE ClientBinding,RPC_AUTHZ_HANDLE *Privs,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,unsigned long *AuthzSvc,unsigned long Flags);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthInfoA(RPC_BINDING_HANDLE Binding,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthInfoW(RPC_BINDING_HANDLE Binding,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingSetAuthInfoA(RPC_BINDING_HANDLE Binding,RPC_CSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingSetAuthInfoExA(RPC_BINDING_HANDLE Binding,RPC_CSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc,RPC_SECURITY_QOS *SecurityQos);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingSetAuthInfoW(RPC_BINDING_HANDLE Binding,RPC_WSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingSetAuthInfoExW(RPC_BINDING_HANDLE Binding,RPC_WSTR ServerPrincName,unsigned long AuthnLevel,unsigned long AuthnSvc,RPC_AUTH_IDENTITY_HANDLE AuthIdentity,unsigned long AuthzSvc,RPC_SECURITY_QOS *SecurityQOS);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthInfoExA(RPC_BINDING_HANDLE Binding,RPC_CSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc,unsigned long RpcQosVersion,RPC_SECURITY_QOS *SecurityQOS);
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingInqAuthInfoExW(RPC_BINDING_HANDLE Binding,RPC_WSTR *ServerPrincName,unsigned long *AuthnLevel,unsigned long *AuthnSvc,RPC_AUTH_IDENTITY_HANDLE *AuthIdentity,unsigned long *AuthzSvc,unsigned long RpcQosVersion,RPC_SECURITY_QOS *SecurityQOS);
|
|
typedef void ( *RPC_AUTH_KEY_RETRIEVAL_FN)(void *Arg,unsigned short *ServerPrincName,unsigned long KeyVer,void **Key,RPC_STATUS *Status);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerRegisterAuthInfoA(RPC_CSTR ServerPrincName,unsigned long AuthnSvc,RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,void *Arg);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerRegisterAuthInfoW(RPC_WSTR ServerPrincName,unsigned long AuthnSvc,RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,void *Arg);
|
|
typedef struct {
|
|
unsigned char *UserName;
|
|
unsigned char *ComputerName;
|
|
unsigned short Privilege;
|
|
unsigned long AuthFlags;
|
|
} RPC_CLIENT_INFORMATION1,*PRPC_CLIENT_INFORMATION1;
|
|
__attribute__((dllimport)) RPC_STATUS RpcBindingServerFromClient(RPC_BINDING_HANDLE ClientBinding,RPC_BINDING_HANDLE *ServerBinding);
|
|
__attribute__((dllimport)) __attribute__((noreturn)) void RpcRaiseException(RPC_STATUS exception);
|
|
__attribute__((dllimport)) RPC_STATUS RpcTestCancel(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerTestCancel(RPC_BINDING_HANDLE BindingHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcCancelThread(void *Thread);
|
|
__attribute__((dllimport)) RPC_STATUS RpcCancelThreadEx(void *Thread,long Timeout);
|
|
__attribute__((dllimport)) RPC_STATUS UuidCreate(UUID *Uuid);
|
|
__attribute__((dllimport)) RPC_STATUS UuidCreateSequential(UUID *Uuid);
|
|
__attribute__((dllimport)) RPC_STATUS UuidToStringA(UUID *Uuid,RPC_CSTR *StringUuid);
|
|
__attribute__((dllimport)) RPC_STATUS UuidFromStringA(RPC_CSTR StringUuid,UUID *Uuid);
|
|
__attribute__((dllimport)) RPC_STATUS UuidToStringW(UUID *Uuid,RPC_WSTR *StringUuid);
|
|
__attribute__((dllimport)) RPC_STATUS UuidFromStringW(RPC_WSTR StringUuid,UUID *Uuid);
|
|
__attribute__((dllimport)) signed int UuidCompare(UUID *Uuid1,UUID *Uuid2,RPC_STATUS *Status);
|
|
__attribute__((dllimport)) RPC_STATUS UuidCreateNil(UUID *NilUuid);
|
|
__attribute__((dllimport)) int UuidEqual(UUID *Uuid1,UUID *Uuid2,RPC_STATUS *Status);
|
|
__attribute__((dllimport)) unsigned short UuidHash(UUID *Uuid,RPC_STATUS *Status);
|
|
__attribute__((dllimport)) int UuidIsNil(UUID *Uuid,RPC_STATUS *Status);
|
|
__attribute__((dllimport)) RPC_STATUS RpcEpRegisterNoReplaceA(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_CSTR Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcEpRegisterNoReplaceW(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_WSTR Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcEpRegisterA(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_CSTR Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcEpRegisterW(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector,RPC_WSTR Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcEpUnregister(RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVector,UUID_VECTOR *UuidVector);
|
|
__attribute__((dllimport)) RPC_STATUS DceErrorInqTextA(RPC_STATUS RpcStatus,RPC_CSTR ErrorText);
|
|
__attribute__((dllimport)) RPC_STATUS DceErrorInqTextW(RPC_STATUS RpcStatus,RPC_WSTR ErrorText);
|
|
typedef I_RPC_HANDLE *RPC_EP_INQ_HANDLE;
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtEpEltInqBegin(RPC_BINDING_HANDLE EpBinding,unsigned long InquiryType,RPC_IF_ID *IfId,unsigned long VersOption,UUID *ObjectUuid,RPC_EP_INQ_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtEpEltInqDone(RPC_EP_INQ_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtEpEltInqNextA(RPC_EP_INQ_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_BINDING_HANDLE *Binding,UUID *ObjectUuid,RPC_CSTR *Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtEpEltInqNextW(RPC_EP_INQ_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_BINDING_HANDLE *Binding,UUID *ObjectUuid,RPC_WSTR *Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtEpUnregister(RPC_BINDING_HANDLE EpBinding,RPC_IF_ID *IfId,RPC_BINDING_HANDLE Binding,UUID *ObjectUuid);
|
|
typedef int ( *RPC_MGMT_AUTHORIZATION_FN)(RPC_BINDING_HANDLE ClientBinding,unsigned long RequestedMgmtOperation,RPC_STATUS *Status);
|
|
__attribute__((dllimport)) RPC_STATUS RpcMgmtSetAuthorizationFn(RPC_MGMT_AUTHORIZATION_FN AuthorizationFn);
|
|
typedef struct _RPC_VERSION {
|
|
unsigned short MajorVersion;
|
|
unsigned short MinorVersion;
|
|
} RPC_VERSION;
|
|
typedef struct _RPC_SYNTAX_IDENTIFIER {
|
|
GUID SyntaxGUID;
|
|
RPC_VERSION SyntaxVersion;
|
|
} RPC_SYNTAX_IDENTIFIER,*PRPC_SYNTAX_IDENTIFIER;
|
|
typedef struct _RPC_MESSAGE {
|
|
RPC_BINDING_HANDLE Handle;
|
|
unsigned long DataRepresentation;
|
|
void *Buffer;
|
|
unsigned int BufferLength;
|
|
unsigned int ProcNum;
|
|
PRPC_SYNTAX_IDENTIFIER TransferSyntax;
|
|
void *RpcInterfaceInformation;
|
|
void *ReservedForRuntime;
|
|
void *ManagerEpv;
|
|
void *ImportContext;
|
|
unsigned long RpcFlags;
|
|
} RPC_MESSAGE,*PRPC_MESSAGE;
|
|
typedef RPC_STATUS RPC_FORWARD_FUNCTION(UUID *InterfaceId,RPC_VERSION *InterfaceVersion,UUID *ObjectId,unsigned char *Rpcpro,void **ppDestEndpoint);
|
|
enum RPC_ADDRESS_CHANGE_TYPE {
|
|
PROTOCOL_NOT_LOADED = 1,PROTOCOL_LOADED,PROTOCOL_ADDRESS_CHANGE
|
|
};
|
|
typedef void RPC_ADDRESS_CHANGE_FN(void *arg);
|
|
typedef void ( *RPC_DISPATCH_FUNCTION)(PRPC_MESSAGE Message);
|
|
typedef struct {
|
|
unsigned int DispatchTableCount;
|
|
RPC_DISPATCH_FUNCTION *DispatchTable;
|
|
LONG_PTR Reserved;
|
|
} RPC_DISPATCH_TABLE,*PRPC_DISPATCH_TABLE;
|
|
typedef struct _RPC_PROTSEQ_ENDPOINT {
|
|
unsigned char *RpcProtocolSequence;
|
|
unsigned char *Endpoint;
|
|
} RPC_PROTSEQ_ENDPOINT,*PRPC_PROTSEQ_ENDPOINT;
|
|
typedef struct _RPC_SERVER_INTERFACE {
|
|
unsigned int Length;
|
|
RPC_SYNTAX_IDENTIFIER InterfaceId;
|
|
RPC_SYNTAX_IDENTIFIER TransferSyntax;
|
|
PRPC_DISPATCH_TABLE DispatchTable;
|
|
unsigned int RpcProtseqEndpointCount;
|
|
PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
|
|
void *DefaultManagerEpv;
|
|
void const *InterpreterInfo;
|
|
unsigned int Flags;
|
|
} RPC_SERVER_INTERFACE,*PRPC_SERVER_INTERFACE;
|
|
typedef struct _RPC_CLIENT_INTERFACE {
|
|
unsigned int Length;
|
|
RPC_SYNTAX_IDENTIFIER InterfaceId;
|
|
RPC_SYNTAX_IDENTIFIER TransferSyntax;
|
|
PRPC_DISPATCH_TABLE DispatchTable;
|
|
unsigned int RpcProtseqEndpointCount;
|
|
PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
|
|
ULONG_PTR Reserved;
|
|
void const *InterpreterInfo;
|
|
unsigned int Flags;
|
|
} RPC_CLIENT_INTERFACE,*PRPC_CLIENT_INTERFACE;
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNegotiateTransferSyntax(RPC_MESSAGE *Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcGetBuffer(RPC_MESSAGE *Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcGetBufferWithObject(RPC_MESSAGE *Message,UUID *ObjectUuid);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcSendReceive(RPC_MESSAGE *Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcFreeBuffer(RPC_MESSAGE *Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcSend(PRPC_MESSAGE Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcReceive(PRPC_MESSAGE Message,unsigned int Size);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcFreePipeBuffer(RPC_MESSAGE *Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcReallocPipeBuffer(PRPC_MESSAGE Message,unsigned int NewSize);
|
|
typedef void *I_RPC_MUTEX;
|
|
__attribute__((dllimport)) void I_RpcRequestMutex(I_RPC_MUTEX *Mutex);
|
|
__attribute__((dllimport)) void I_RpcClearMutex(I_RPC_MUTEX Mutex);
|
|
__attribute__((dllimport)) void I_RpcDeleteMutex(I_RPC_MUTEX Mutex);
|
|
__attribute__((dllimport)) void * I_RpcAllocate(unsigned int Size);
|
|
__attribute__((dllimport)) void I_RpcFree(void *Object);
|
|
__attribute__((dllimport)) void I_RpcPauseExecution(unsigned long Milliseconds);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcGetExtendedError(void);
|
|
typedef void ( *PRPC_RUNDOWN)(void *AssociationContext);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcMonitorAssociation(RPC_BINDING_HANDLE Handle,PRPC_RUNDOWN RundownRoutine,void *Context);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcStopMonitorAssociation(RPC_BINDING_HANDLE Handle);
|
|
__attribute__((dllimport)) RPC_BINDING_HANDLE I_RpcGetCurrentCallHandle(void);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcGetAssociationContext(RPC_BINDING_HANDLE BindingHandle,void **AssociationContext);
|
|
__attribute__((dllimport)) void * I_RpcGetServerContextList(RPC_BINDING_HANDLE BindingHandle);
|
|
__attribute__((dllimport)) void I_RpcSetServerContextList(RPC_BINDING_HANDLE BindingHandle,void *ServerContextList);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNsInterfaceExported(unsigned long EntryNameSyntax,unsigned short *EntryName,RPC_SERVER_INTERFACE *RpcInterfaceInformation);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNsInterfaceUnexported(unsigned long EntryNameSyntax,unsigned short *EntryName,RPC_SERVER_INTERFACE *RpcInterfaceInformation);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingToStaticStringBindingW(RPC_BINDING_HANDLE Binding,unsigned short **StringBinding);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqSecurityContext(RPC_BINDING_HANDLE Binding,void **SecurityContextHandle);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqWireIdForSnego(RPC_BINDING_HANDLE Binding,RPC_CSTR WireId);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqMarshalledTargetInfo (RPC_BINDING_HANDLE Binding,unsigned long *MarshalledTargetInfoLength,RPC_CSTR *MarshalledTargetInfo);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqLocalClientPID(RPC_BINDING_HANDLE Binding,unsigned long *Pid);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingHandleToAsyncHandle(RPC_BINDING_HANDLE Binding,void **AsyncHandle);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNsBindingSetEntryNameW(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_WSTR EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNsBindingSetEntryNameA(RPC_BINDING_HANDLE Binding,unsigned long EntryNameSyntax,RPC_CSTR EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerUseProtseqEp2A(RPC_CSTR NetworkAddress,RPC_CSTR Protseq,unsigned int MaxCalls,RPC_CSTR Endpoint,void *SecurityDescriptor,void *Policy);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerUseProtseqEp2W(RPC_WSTR NetworkAddress,RPC_WSTR Protseq,unsigned int MaxCalls,RPC_WSTR Endpoint,void *SecurityDescriptor,void *Policy);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerUseProtseq2W(RPC_WSTR NetworkAddress,RPC_WSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,void *Policy);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerUseProtseq2A(RPC_CSTR NetworkAddress,RPC_CSTR Protseq,unsigned int MaxCalls,void *SecurityDescriptor,void *Policy);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqDynamicEndpointW(RPC_BINDING_HANDLE Binding,RPC_WSTR *DynamicEndpoint);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqDynamicEndpointA(RPC_BINDING_HANDLE Binding,RPC_CSTR *DynamicEndpoint);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerCheckClientRestriction(RPC_BINDING_HANDLE Context);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqTransportType(RPC_BINDING_HANDLE Binding,unsigned int *Type);
|
|
typedef struct _RPC_TRANSFER_SYNTAX {
|
|
UUID Uuid;
|
|
unsigned short VersMajor;
|
|
unsigned short VersMinor;
|
|
} RPC_TRANSFER_SYNTAX;
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcIfInqTransferSyntaxes(RPC_IF_HANDLE RpcIfHandle,RPC_TRANSFER_SYNTAX *TransferSyntaxes,unsigned int TransferSyntaxSize,unsigned int *TransferSyntaxCount);
|
|
__attribute__((dllimport)) RPC_STATUS I_UuidCreate(UUID *Uuid);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingCopy(RPC_BINDING_HANDLE SourceBinding,RPC_BINDING_HANDLE *DestinationBinding);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingIsClientLocal(RPC_BINDING_HANDLE BindingHandle,unsigned int *ClientLocalFlag);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingInqConnId(RPC_BINDING_HANDLE Binding,void **ConnId,int *pfFirstCall);
|
|
__attribute__((dllimport)) void I_RpcSsDontSerializeContext(void);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcLaunchDatagramReceiveThread(void *pAddress);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerRegisterForwardFunction(RPC_FORWARD_FUNCTION *pForwardFunction);
|
|
RPC_ADDRESS_CHANGE_FN * I_RpcServerInqAddressChangeFn();
|
|
RPC_STATUS I_RpcServerSetAddressChangeFn(RPC_ADDRESS_CHANGE_FN *pAddressChangeFn);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerInqLocalConnAddress(RPC_BINDING_HANDLE Binding,void *Buffer,unsigned long *BufferSize,unsigned long *AddressFormat);
|
|
__attribute__((dllimport)) void I_RpcSessionStrictContextHandle(void);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcTurnOnEEInfoPropagation(void);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcConnectionInqSockBuffSize(unsigned long *RecvBuffSize,unsigned long *SendBuffSize);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcConnectionSetSockBuffSize(unsigned long RecvBuffSize,unsigned long SendBuffSize);
|
|
typedef void (*RPCLT_PDU_FILTER_FUNC)(void *Buffer,unsigned int BufferLength,int fDatagram);
|
|
typedef void (__attribute__((__cdecl__)) *RPC_SETFILTER_FUNC)(RPCLT_PDU_FILTER_FUNC pfnFilter);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerStartListening(void *hWnd);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerStopListening();
|
|
typedef RPC_STATUS (*RPC_BLOCKING_FN)(void *hWnd,void *Context,void *hSyncEvent);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcBindingSetAsync(RPC_BINDING_HANDLE Binding,RPC_BLOCKING_FN BlockingFn,unsigned long ServerTid);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcSetThreadParams(int fClientFree,void *Context,void *hWndClient);
|
|
__attribute__((dllimport)) unsigned int I_RpcWindowProc(void *hWnd,unsigned int Message,unsigned int wParam,unsigned long lParam);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerUnregisterEndpointA(RPC_CSTR Protseq,RPC_CSTR Endpoint);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerUnregisterEndpointW(RPC_WSTR Protseq,RPC_WSTR Endpoint);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcServerInqTransportType(unsigned int *Type);
|
|
__attribute__((dllimport)) long I_RpcMapWin32Status(RPC_STATUS Status);
|
|
typedef struct _RPC_C_OPT_METADATA_DESCRIPTOR {
|
|
unsigned long BufferSize;
|
|
char *Buffer;
|
|
} RPC_C_OPT_METADATA_DESCRIPTOR;
|
|
typedef struct _RDR_CALLOUT_STATE {
|
|
RPC_STATUS LastError;
|
|
void *LastEEInfo;
|
|
RPC_HTTP_REDIRECTOR_STAGE LastCalledStage;
|
|
unsigned short *ServerName;
|
|
unsigned short *ServerPort;
|
|
unsigned short *RemoteUser;
|
|
unsigned short *AuthType;
|
|
unsigned char ResourceTypePresent;
|
|
unsigned char MetadataPresent;
|
|
unsigned char SessionIdPresent;
|
|
unsigned char InterfacePresent;
|
|
UUID ResourceType;
|
|
RPC_C_OPT_METADATA_DESCRIPTOR Metadata;
|
|
UUID SessionId;
|
|
RPC_SYNTAX_IDENTIFIER Interface;
|
|
void *CertContext;
|
|
} RDR_CALLOUT_STATE;
|
|
typedef RPC_STATUS ( *I_RpcProxyIsValidMachineFn)(char *pszMachine,char *pszDotMachine,unsigned long dwPortNumber);
|
|
typedef RPC_STATUS ( *I_RpcProxyGetClientAddressFn)(void *Context,char *Buffer,unsigned long *BufferLength);
|
|
typedef RPC_STATUS ( *I_RpcProxyGetConnectionTimeoutFn)(unsigned long *ConnectionTimeout);
|
|
typedef RPC_STATUS ( *I_RpcPerformCalloutFn)(void *Context,RDR_CALLOUT_STATE *CallOutState,RPC_HTTP_REDIRECTOR_STAGE Stage);
|
|
typedef void ( *I_RpcFreeCalloutStateFn)(RDR_CALLOUT_STATE *CallOutState);
|
|
typedef struct tagI_RpcProxyCallbackInterface {
|
|
I_RpcProxyIsValidMachineFn IsValidMachineFn;
|
|
I_RpcProxyGetClientAddressFn GetClientAddressFn;
|
|
I_RpcProxyGetConnectionTimeoutFn GetConnectionTimeoutFn;
|
|
I_RpcPerformCalloutFn PerformCalloutFn;
|
|
I_RpcFreeCalloutStateFn FreeCalloutStateFn;
|
|
} I_RpcProxyCallbackInterface;
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcProxyNewConnection(unsigned long ConnectionType,unsigned short *ServerAddress,unsigned short *ServerPort,unsigned short *MinConnTimeout,void *ConnectionParameter,RDR_CALLOUT_STATE *CallOutState,I_RpcProxyCallbackInterface *ProxyCallbackInterface);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcReplyToClientWithStatus(void *ConnectionParameter,RPC_STATUS RpcStatus);
|
|
__attribute__((dllimport)) void I_RpcRecordCalloutFailure(RPC_STATUS RpcStatus,RDR_CALLOUT_STATE *CallOutState,unsigned short *DllName);
|
|
typedef void *RPC_NS_HANDLE;
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingExportA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVec,UUID_VECTOR *ObjectUuidVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingUnexportA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectUuidVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingExportW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,RPC_BINDING_VECTOR *BindingVec,UUID_VECTOR *ObjectUuidVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingUnexportW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectUuidVec);
|
|
RPC_STATUS RpcNsBindingExportPnPA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
|
|
RPC_STATUS RpcNsBindingUnexportPnPA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
|
|
RPC_STATUS RpcNsBindingExportPnPW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
|
|
RPC_STATUS RpcNsBindingUnexportPnPW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID_VECTOR *ObjectVector);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingLookupBeginA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,unsigned long BindingMaxCount,RPC_NS_HANDLE *LookupContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingLookupBeginW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,unsigned long BindingMaxCount,RPC_NS_HANDLE *LookupContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingLookupNext(RPC_NS_HANDLE LookupContext,RPC_BINDING_VECTOR **BindingVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingLookupDone(RPC_NS_HANDLE *LookupContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupDeleteA(unsigned long GroupNameSyntax,RPC_CSTR GroupName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrAddA(unsigned long GroupNameSyntax,RPC_CSTR GroupName,unsigned long MemberNameSyntax,RPC_CSTR MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrRemoveA(unsigned long GroupNameSyntax,RPC_CSTR GroupName,unsigned long MemberNameSyntax,RPC_CSTR MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrInqBeginA(unsigned long GroupNameSyntax,RPC_CSTR GroupName,unsigned long MemberNameSyntax,RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrInqNextA(RPC_NS_HANDLE InquiryContext,RPC_CSTR *MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupDeleteW(unsigned long GroupNameSyntax,RPC_WSTR GroupName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrAddW(unsigned long GroupNameSyntax,RPC_WSTR GroupName,unsigned long MemberNameSyntax,RPC_WSTR MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrRemoveW(unsigned long GroupNameSyntax,RPC_WSTR GroupName,unsigned long MemberNameSyntax,RPC_WSTR MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrInqBeginW(unsigned long GroupNameSyntax,RPC_WSTR GroupName,unsigned long MemberNameSyntax,RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrInqNextW(RPC_NS_HANDLE InquiryContext,RPC_WSTR *MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsGroupMbrInqDone(RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileDeleteA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltAddA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_CSTR MemberName,unsigned long Priority,RPC_CSTR Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltRemoveA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_CSTR MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltInqBeginA(unsigned long ProfileNameSyntax,RPC_CSTR ProfileName,unsigned long InquiryType,RPC_IF_ID *IfId,unsigned long VersOption,unsigned long MemberNameSyntax,RPC_CSTR MemberName,RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltInqNextA(RPC_NS_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_CSTR *MemberName,unsigned long *Priority,RPC_CSTR *Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileDeleteW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltAddW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_WSTR MemberName,unsigned long Priority,RPC_WSTR Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltRemoveW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName,RPC_IF_ID *IfId,unsigned long MemberNameSyntax,RPC_WSTR MemberName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltInqBeginW(unsigned long ProfileNameSyntax,RPC_WSTR ProfileName,unsigned long InquiryType,RPC_IF_ID *IfId,unsigned long VersOption,unsigned long MemberNameSyntax,RPC_WSTR MemberName,RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltInqNextW(RPC_NS_HANDLE InquiryContext,RPC_IF_ID *IfId,RPC_WSTR *MemberName,unsigned long *Priority,RPC_WSTR *Annotation);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsProfileEltInqDone(RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsEntryObjectInqBeginA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsEntryObjectInqBeginW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsEntryObjectInqNext(RPC_NS_HANDLE InquiryContext,UUID *ObjUuid);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsEntryObjectInqDone(RPC_NS_HANDLE *InquiryContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsEntryExpandNameA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_CSTR *ExpandedName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtBindingUnexportA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_ID *IfId,unsigned long VersOption,UUID_VECTOR *ObjectUuidVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtEntryCreateA(unsigned long EntryNameSyntax,RPC_CSTR EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtEntryDeleteA(unsigned long EntryNameSyntax,RPC_CSTR EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtEntryInqIfIdsA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_ID_VECTOR **IfIdVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtHandleSetExpAge(RPC_NS_HANDLE NsHandle,unsigned long ExpirationAge);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtInqExpAge(unsigned long *ExpirationAge);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtSetExpAge(unsigned long ExpirationAge);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsEntryExpandNameW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_WSTR *ExpandedName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtBindingUnexportW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_ID *IfId,unsigned long VersOption,UUID_VECTOR *ObjectUuidVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtEntryCreateW(unsigned long EntryNameSyntax,RPC_WSTR EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtEntryDeleteW(unsigned long EntryNameSyntax,RPC_WSTR EntryName);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsMgmtEntryInqIfIdsW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_ID_VECTOR **IfIdVec);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingImportBeginA(unsigned long EntryNameSyntax,RPC_CSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,RPC_NS_HANDLE *ImportContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingImportBeginW(unsigned long EntryNameSyntax,RPC_WSTR EntryName,RPC_IF_HANDLE IfSpec,UUID *ObjUuid,RPC_NS_HANDLE *ImportContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingImportNext(RPC_NS_HANDLE ImportContext,RPC_BINDING_HANDLE *Binding);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingImportDone(RPC_NS_HANDLE *ImportContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcNsBindingSelect(RPC_BINDING_VECTOR *BindingVec,RPC_BINDING_HANDLE *Binding);
|
|
#pragma pack(push,8)
|
|
typedef enum _RPC_NOTIFICATION_TYPES {
|
|
RpcNotificationTypeNone,RpcNotificationTypeEvent,RpcNotificationTypeApc,RpcNotificationTypeIoc,RpcNotificationTypeHwnd,
|
|
RpcNotificationTypeCallback
|
|
} RPC_NOTIFICATION_TYPES;
|
|
typedef enum _RPC_ASYNC_EVENT {
|
|
RpcCallComplete,RpcSendComplete,RpcReceiveComplete
|
|
} RPC_ASYNC_EVENT;
|
|
struct _RPC_ASYNC_STATE;
|
|
typedef void RPCNOTIFICATION_ROUTINE(struct _RPC_ASYNC_STATE *pAsync,void *Context,RPC_ASYNC_EVENT Event);
|
|
typedef RPCNOTIFICATION_ROUTINE *PFN_RPCNOTIFICATION_ROUTINE;
|
|
typedef struct _RPC_ASYNC_STATE {
|
|
unsigned int Size;
|
|
unsigned long Signature;
|
|
long Lock;
|
|
unsigned long Flags;
|
|
void *StubInfo;
|
|
void *UserInfo;
|
|
void *RuntimeInfo;
|
|
RPC_ASYNC_EVENT Event;
|
|
RPC_NOTIFICATION_TYPES NotificationType;
|
|
union {
|
|
struct {
|
|
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
|
|
HANDLE hThread;
|
|
} APC;
|
|
struct {
|
|
HANDLE hIOPort;
|
|
DWORD dwNumberOfBytesTransferred;
|
|
DWORD_PTR dwCompletionKey;
|
|
LPOVERLAPPED lpOverlapped;
|
|
} IOC;
|
|
struct {
|
|
HWND hWnd;
|
|
UINT Msg;
|
|
} HWND;
|
|
HANDLE hEvent;
|
|
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
|
|
} u;
|
|
LONG_PTR Reserved[4];
|
|
} RPC_ASYNC_STATE,*PRPC_ASYNC_STATE;
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncInitializeHandle(PRPC_ASYNC_STATE pAsync,unsigned int Size);
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncRegisterInfo(PRPC_ASYNC_STATE pAsync);
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncGetCallStatus(PRPC_ASYNC_STATE pAsync);
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncCompleteCall(PRPC_ASYNC_STATE pAsync,void *Reply);
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncAbortCall(PRPC_ASYNC_STATE pAsync,unsigned long ExceptionCode);
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncCancelCall(PRPC_ASYNC_STATE pAsync,WINBOOL fAbort);
|
|
__attribute__((dllimport)) RPC_STATUS RpcAsyncCleanupThread(DWORD dwTimeout);
|
|
typedef enum tagExtendedErrorParamTypes {
|
|
eeptAnsiString = 1,eeptUnicodeString,eeptLongVal,eeptShortVal,eeptPointerVal,eeptNone,eeptBinary
|
|
} ExtendedErrorParamTypes;
|
|
typedef struct tagBinaryParam {
|
|
void *Buffer;
|
|
short Size;
|
|
} BinaryParam;
|
|
typedef struct tagRPC_EE_INFO_PARAM {
|
|
ExtendedErrorParamTypes ParameterType;
|
|
union {
|
|
LPSTR AnsiString;
|
|
LPWSTR UnicodeString;
|
|
long LVal;
|
|
short SVal;
|
|
ULONGLONG PVal;
|
|
BinaryParam BVal;
|
|
} u;
|
|
} RPC_EE_INFO_PARAM;
|
|
typedef struct tagRPC_EXTENDED_ERROR_INFO {
|
|
ULONG Version;
|
|
LPWSTR ComputerName;
|
|
ULONG ProcessID;
|
|
union {
|
|
SYSTEMTIME SystemTime;
|
|
FILETIME FileTime;
|
|
} u;
|
|
ULONG GeneratingComponent;
|
|
ULONG Status;
|
|
USHORT DetectionLocation;
|
|
USHORT Flags;
|
|
int NumberOfParameters;
|
|
RPC_EE_INFO_PARAM Parameters[4];
|
|
} RPC_EXTENDED_ERROR_INFO;
|
|
typedef struct tagRPC_ERROR_ENUM_HANDLE {
|
|
ULONG Signature;
|
|
void *CurrentPos;
|
|
void *Head;
|
|
} RPC_ERROR_ENUM_HANDLE;
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorStartEnumeration(RPC_ERROR_ENUM_HANDLE *EnumHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorGetNextRecord(RPC_ERROR_ENUM_HANDLE *EnumHandle,WINBOOL CopyStrings,RPC_EXTENDED_ERROR_INFO *ErrorInfo);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorEndEnumeration(RPC_ERROR_ENUM_HANDLE *EnumHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorResetEnumeration(RPC_ERROR_ENUM_HANDLE *EnumHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorGetNumberOfRecords(RPC_ERROR_ENUM_HANDLE *EnumHandle,int *Records);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorSaveErrorInfo(RPC_ERROR_ENUM_HANDLE *EnumHandle,PVOID *ErrorBlob,size_t *BlobSize);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorLoadErrorInfo(PVOID ErrorBlob,size_t BlobSize,RPC_ERROR_ENUM_HANDLE *EnumHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcErrorAddRecord(RPC_EXTENDED_ERROR_INFO *ErrorInfo);
|
|
__attribute__((dllimport)) void RpcErrorClearInformation(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcGetAuthorizationContextForClient(RPC_BINDING_HANDLE ClientBinding,WINBOOL ImpersonateOnReturn,PVOID Reserved1,PLARGE_INTEGER pExpirationTime,LUID Reserved2,DWORD Reserved3,PVOID Reserved4,PVOID *pAuthzClientContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcFreeAuthorizationContext(PVOID *pAuthzClientContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSsContextLockExclusive(RPC_BINDING_HANDLE ServerBindingHandle,PVOID UserContext);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSsContextLockShared(RPC_BINDING_HANDLE ServerBindingHandle,PVOID UserContext);
|
|
typedef struct tagRPC_CALL_ATTRIBUTES_V1_W {
|
|
unsigned int Version;
|
|
unsigned long Flags;
|
|
unsigned long ServerPrincipalNameBufferLength;
|
|
unsigned short *ServerPrincipalName;
|
|
unsigned long ClientPrincipalNameBufferLength;
|
|
unsigned short *ClientPrincipalName;
|
|
unsigned long AuthenticationLevel;
|
|
unsigned long AuthenticationService;
|
|
WINBOOL NullSession;
|
|
} RPC_CALL_ATTRIBUTES_V1_W;
|
|
typedef struct tagRPC_CALL_ATTRIBUTES_V1_A {
|
|
unsigned int Version;
|
|
unsigned long Flags;
|
|
unsigned long ServerPrincipalNameBufferLength;
|
|
unsigned char *ServerPrincipalName;
|
|
unsigned long ClientPrincipalNameBufferLength;
|
|
unsigned char *ClientPrincipalName;
|
|
unsigned long AuthenticationLevel;
|
|
unsigned long AuthenticationService;
|
|
WINBOOL NullSession;
|
|
} RPC_CALL_ATTRIBUTES_V1_A;
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerInqCallAttributesW(RPC_BINDING_HANDLE ClientBinding,void *RpcCallAttributes);
|
|
__attribute__((dllimport)) RPC_STATUS RpcServerInqCallAttributesA(RPC_BINDING_HANDLE ClientBinding,void *RpcCallAttributes);
|
|
typedef RPC_CALL_ATTRIBUTES_V1_A RPC_CALL_ATTRIBUTES;
|
|
RPC_STATUS I_RpcAsyncSetHandle(PRPC_MESSAGE Message,PRPC_ASYNC_STATE pAsync);
|
|
RPC_STATUS I_RpcAsyncAbortCall(PRPC_ASYNC_STATE pAsync,unsigned long ExceptionCode);
|
|
int I_RpcExceptionFilter(unsigned long ExceptionCode);
|
|
typedef union _RPC_ASYNC_NOTIFICATION_INFO {
|
|
struct {
|
|
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
|
|
HANDLE hThread;
|
|
} APC;
|
|
struct {
|
|
HANDLE hIOPort;
|
|
DWORD dwNumberOfBytesTransferred;
|
|
DWORD_PTR dwCompletionKey;
|
|
LPOVERLAPPED lpOverlapped;
|
|
} IOC;
|
|
struct {
|
|
HWND hWnd;
|
|
UINT Msg;
|
|
} HWND;
|
|
HANDLE hEvent;
|
|
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
|
|
} RPC_ASYNC_NOTIFICATION_INFO, *PRPC_ASYNC_NOTIFICATION_INFO;
|
|
RPC_STATUS RpcBindingBind(
|
|
PRPC_ASYNC_STATE pAsync,
|
|
RPC_BINDING_HANDLE Binding,
|
|
RPC_IF_HANDLE IfSpec
|
|
);
|
|
RPC_STATUS RpcBindingUnbind(
|
|
RPC_BINDING_HANDLE Binding
|
|
);
|
|
typedef enum _RpcCallType {
|
|
rctInvalid,
|
|
rctNormal,
|
|
rctTraining,
|
|
rctGuaranteed
|
|
} RpcCallType;
|
|
typedef enum _RpcLocalAddressFormat {
|
|
rlafInvalid,
|
|
rlafIPv4,
|
|
rlafIPv6
|
|
} RpcLocalAddressFormat;
|
|
typedef enum _RPC_NOTIFICATIONS {
|
|
RpcNotificationCallNone = 0,
|
|
RpcNotificationClientDisconnect = 1,
|
|
RpcNotificationCallCancel = 2
|
|
} RPC_NOTIFICATIONS;
|
|
typedef enum _RpcCallClientLocality {
|
|
rcclInvalid,
|
|
rcclLocal,
|
|
rcclRemote,
|
|
rcclClientUnknownLocality
|
|
} RpcCallClientLocality;
|
|
RPC_STATUS RpcServerSubscribeForNotification(
|
|
RPC_BINDING_HANDLE Binding,
|
|
DWORD Notification,
|
|
RPC_NOTIFICATION_TYPES NotificationType,
|
|
RPC_ASYNC_NOTIFICATION_INFO *NotificationInfo
|
|
);
|
|
RPC_STATUS RpcServerUnsubscribeForNotification(
|
|
RPC_BINDING_HANDLE Binding,
|
|
RPC_NOTIFICATIONS Notification,
|
|
unsigned long *NotificationsQueued
|
|
);
|
|
#pragma pack(pop)
|
|
#pragma pack(pop)
|
|
struct HDROP__ { int unused; }; typedef struct HDROP__ *HDROP;
|
|
__attribute__((dllimport)) UINT DragQueryFileA (HDROP hDrop, UINT iFile, LPSTR lpszFile, UINT cch);
|
|
__attribute__((dllimport)) UINT DragQueryFileW (HDROP hDrop, UINT iFile, LPWSTR lpszFile, UINT cch);
|
|
__attribute__((dllimport)) WINBOOL DragQueryPoint (HDROP hDrop, POINT *ppt);
|
|
__attribute__((dllimport)) void DragFinish (HDROP hDrop);
|
|
__attribute__((dllimport)) void DragAcceptFiles (HWND hWnd, WINBOOL fAccept);
|
|
__attribute__((dllimport)) HINSTANCE ShellExecuteA (HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, INT nShowCmd);
|
|
__attribute__((dllimport)) HINSTANCE ShellExecuteW (HWND hwnd, LPCWSTR lpOperation, LPCWSTR lpFile, LPCWSTR lpParameters, LPCWSTR lpDirectory, INT nShowCmd);
|
|
__attribute__((dllimport)) HINSTANCE FindExecutableA (LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult);
|
|
__attribute__((dllimport)) HINSTANCE FindExecutableW (LPCWSTR lpFile, LPCWSTR lpDirectory, LPWSTR lpResult);
|
|
__attribute__((dllimport)) LPWSTR * CommandLineToArgvW (LPCWSTR lpCmdLine, int *pNumArgs);
|
|
__attribute__((dllimport)) INT ShellAboutA (HWND hWnd, LPCSTR szApp, LPCSTR szOtherStuff, HICON hIcon);
|
|
__attribute__((dllimport)) INT ShellAboutW (HWND hWnd, LPCWSTR szApp, LPCWSTR szOtherStuff, HICON hIcon);
|
|
__attribute__((dllimport)) HICON DuplicateIcon (HINSTANCE hInst, HICON hIcon);
|
|
__attribute__((dllimport)) HICON ExtractAssociatedIconA (HINSTANCE hInst, LPSTR pszIconPath, WORD *piIcon);
|
|
__attribute__((dllimport)) HICON ExtractAssociatedIconW (HINSTANCE hInst, LPWSTR pszIconPath, WORD *piIcon);
|
|
__attribute__((dllimport)) HICON ExtractAssociatedIconExA (HINSTANCE hInst, LPSTR pszIconPath, WORD *piIconIndex, WORD *piIconId);
|
|
__attribute__((dllimport)) HICON ExtractAssociatedIconExW (HINSTANCE hInst, LPWSTR pszIconPath, WORD *piIconIndex, WORD *piIconId);
|
|
__attribute__((dllimport)) HICON ExtractIconA (HINSTANCE hInst, LPCSTR pszExeFileName, UINT nIconIndex);
|
|
__attribute__((dllimport)) HICON ExtractIconW (HINSTANCE hInst, LPCWSTR pszExeFileName, UINT nIconIndex);
|
|
typedef struct _DRAGINFOA {
|
|
UINT uSize;
|
|
POINT pt;
|
|
WINBOOL fNC;
|
|
LPSTR lpFileList;
|
|
DWORD grfKeyState;
|
|
} DRAGINFOA,*LPDRAGINFOA;
|
|
typedef struct _DRAGINFOW {
|
|
UINT uSize;
|
|
POINT pt;
|
|
WINBOOL fNC;
|
|
LPWSTR lpFileList;
|
|
DWORD grfKeyState;
|
|
} DRAGINFOW,*LPDRAGINFOW;
|
|
typedef DRAGINFOA DRAGINFO;
|
|
typedef LPDRAGINFOA LPDRAGINFO;
|
|
typedef struct _AppBarData {
|
|
DWORD cbSize;
|
|
HWND hWnd;
|
|
UINT uCallbackMessage;
|
|
UINT uEdge;
|
|
RECT rc;
|
|
LPARAM lParam;
|
|
} APPBARDATA,*PAPPBARDATA;
|
|
__attribute__((dllimport)) UINT_PTR SHAppBarMessage (DWORD dwMessage, PAPPBARDATA pData);
|
|
__attribute__((dllimport)) DWORD DoEnvironmentSubstA (LPSTR pszSrc, UINT cchSrc);
|
|
__attribute__((dllimport)) DWORD DoEnvironmentSubstW (LPWSTR pszSrc, UINT cchSrc);
|
|
__attribute__((dllimport)) UINT ExtractIconExA (LPCSTR lpszFile, int nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIcons);
|
|
__attribute__((dllimport)) UINT ExtractIconExW (LPCWSTR lpszFile, int nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIcons);
|
|
typedef WORD FILEOP_FLAGS;
|
|
typedef WORD PRINTEROP_FLAGS;
|
|
typedef struct _SHFILEOPSTRUCTA {
|
|
HWND hwnd;
|
|
UINT wFunc;
|
|
LPCSTR pFrom;
|
|
LPCSTR pTo;
|
|
FILEOP_FLAGS fFlags;
|
|
WINBOOL fAnyOperationsAborted;
|
|
LPVOID hNameMappings;
|
|
PCSTR lpszProgressTitle;
|
|
} SHFILEOPSTRUCTA,*LPSHFILEOPSTRUCTA;
|
|
typedef struct _SHFILEOPSTRUCTW {
|
|
HWND hwnd;
|
|
UINT wFunc;
|
|
LPCWSTR pFrom;
|
|
LPCWSTR pTo;
|
|
FILEOP_FLAGS fFlags;
|
|
WINBOOL fAnyOperationsAborted;
|
|
LPVOID hNameMappings;
|
|
PCWSTR lpszProgressTitle;
|
|
} SHFILEOPSTRUCTW,*LPSHFILEOPSTRUCTW;
|
|
typedef SHFILEOPSTRUCTA SHFILEOPSTRUCT;
|
|
typedef LPSHFILEOPSTRUCTA LPSHFILEOPSTRUCT;
|
|
__attribute__((dllimport)) int SHFileOperationA (LPSHFILEOPSTRUCTA lpFileOp);
|
|
__attribute__((dllimport)) int SHFileOperationW (LPSHFILEOPSTRUCTW lpFileOp);
|
|
__attribute__((dllimport)) void SHFreeNameMappings (HANDLE hNameMappings);
|
|
typedef struct _SHNAMEMAPPINGA {
|
|
LPSTR pszOldPath;
|
|
LPSTR pszNewPath;
|
|
int cchOldPath;
|
|
int cchNewPath;
|
|
} SHNAMEMAPPINGA,*LPSHNAMEMAPPINGA;
|
|
typedef struct _SHNAMEMAPPINGW {
|
|
LPWSTR pszOldPath;
|
|
LPWSTR pszNewPath;
|
|
int cchOldPath;
|
|
int cchNewPath;
|
|
} SHNAMEMAPPINGW,*LPSHNAMEMAPPINGW;
|
|
typedef SHNAMEMAPPINGA SHNAMEMAPPING;
|
|
typedef LPSHNAMEMAPPINGA LPSHNAMEMAPPING;
|
|
typedef struct _SHELLEXECUTEINFOA {
|
|
DWORD cbSize;
|
|
ULONG fMask;
|
|
HWND hwnd;
|
|
LPCSTR lpVerb;
|
|
LPCSTR lpFile;
|
|
LPCSTR lpParameters;
|
|
LPCSTR lpDirectory;
|
|
int nShow;
|
|
HINSTANCE hInstApp;
|
|
void *lpIDList;
|
|
LPCSTR lpClass;
|
|
HKEY hkeyClass;
|
|
DWORD dwHotKey;
|
|
__extension__ union {
|
|
HANDLE hIcon;
|
|
HANDLE hMonitor;
|
|
} ;
|
|
HANDLE hProcess;
|
|
} SHELLEXECUTEINFOA,*LPSHELLEXECUTEINFOA;
|
|
typedef struct _SHELLEXECUTEINFOW {
|
|
DWORD cbSize;
|
|
ULONG fMask;
|
|
HWND hwnd;
|
|
LPCWSTR lpVerb;
|
|
LPCWSTR lpFile;
|
|
LPCWSTR lpParameters;
|
|
LPCWSTR lpDirectory;
|
|
int nShow;
|
|
HINSTANCE hInstApp;
|
|
void *lpIDList;
|
|
LPCWSTR lpClass;
|
|
HKEY hkeyClass;
|
|
DWORD dwHotKey;
|
|
__extension__ union {
|
|
HANDLE hIcon;
|
|
HANDLE hMonitor;
|
|
} ;
|
|
HANDLE hProcess;
|
|
} SHELLEXECUTEINFOW,*LPSHELLEXECUTEINFOW;
|
|
typedef SHELLEXECUTEINFOA SHELLEXECUTEINFO;
|
|
typedef LPSHELLEXECUTEINFOA LPSHELLEXECUTEINFO;
|
|
__attribute__((dllimport)) WINBOOL ShellExecuteExA (SHELLEXECUTEINFOA *pExecInfo);
|
|
__attribute__((dllimport)) WINBOOL ShellExecuteExW (SHELLEXECUTEINFOW *pExecInfo);
|
|
typedef struct _SHCREATEPROCESSINFOW {
|
|
DWORD cbSize;
|
|
ULONG fMask;
|
|
HWND hwnd;
|
|
LPCWSTR pszFile;
|
|
LPCWSTR pszParameters;
|
|
LPCWSTR pszCurrentDirectory;
|
|
HANDLE hUserToken;
|
|
LPSECURITY_ATTRIBUTES lpProcessAttributes;
|
|
LPSECURITY_ATTRIBUTES lpThreadAttributes;
|
|
WINBOOL bInheritHandles;
|
|
DWORD dwCreationFlags;
|
|
LPSTARTUPINFOW lpStartupInfo;
|
|
LPPROCESS_INFORMATION lpProcessInformation;
|
|
} SHCREATEPROCESSINFOW,*PSHCREATEPROCESSINFOW;
|
|
__attribute__((dllimport)) WINBOOL SHCreateProcessAsUserW (PSHCREATEPROCESSINFOW pscpi);
|
|
typedef struct _SHQUERYRBINFO {
|
|
DWORD cbSize;
|
|
__extension__ long long i64Size;
|
|
__extension__ long long i64NumItems;
|
|
} SHQUERYRBINFO,*LPSHQUERYRBINFO;
|
|
__attribute__((dllimport)) HRESULT SHQueryRecycleBinA (LPCSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);
|
|
__attribute__((dllimport)) HRESULT SHQueryRecycleBinW (LPCWSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);
|
|
__attribute__((dllimport)) HRESULT SHEmptyRecycleBinA (HWND hwnd, LPCSTR pszRootPath, DWORD dwFlags);
|
|
__attribute__((dllimport)) HRESULT SHEmptyRecycleBinW (HWND hwnd, LPCWSTR pszRootPath, DWORD dwFlags);
|
|
typedef struct _NOTIFYICONDATAA {
|
|
DWORD cbSize;
|
|
HWND hWnd;
|
|
UINT uID;
|
|
UINT uFlags;
|
|
UINT uCallbackMessage;
|
|
HICON hIcon;
|
|
CHAR szTip[128];
|
|
DWORD dwState;
|
|
DWORD dwStateMask;
|
|
CHAR szInfo[256];
|
|
__extension__ union {
|
|
UINT uTimeout;
|
|
UINT uVersion;
|
|
} ;
|
|
CHAR szInfoTitle[64];
|
|
DWORD dwInfoFlags;
|
|
GUID guidItem;
|
|
} NOTIFYICONDATAA,*PNOTIFYICONDATAA;
|
|
typedef struct _NOTIFYICONDATAW {
|
|
DWORD cbSize;
|
|
HWND hWnd;
|
|
UINT uID;
|
|
UINT uFlags;
|
|
UINT uCallbackMessage;
|
|
HICON hIcon;
|
|
WCHAR szTip[128];
|
|
DWORD dwState;
|
|
DWORD dwStateMask;
|
|
WCHAR szInfo[256];
|
|
__extension__ union {
|
|
UINT uTimeout;
|
|
UINT uVersion;
|
|
} ;
|
|
WCHAR szInfoTitle[64];
|
|
DWORD dwInfoFlags;
|
|
GUID guidItem;
|
|
} NOTIFYICONDATAW,*PNOTIFYICONDATAW;
|
|
typedef NOTIFYICONDATAA NOTIFYICONDATA;
|
|
typedef PNOTIFYICONDATAA PNOTIFYICONDATA;
|
|
typedef struct _NOTIFYICONIDENTIFIER {
|
|
DWORD cbSize;
|
|
HWND hWnd;
|
|
UINT uID;
|
|
GUID guidItem;
|
|
} NOTIFYICONIDENTIFIER,*PNOTIFYICONIDENTIFIER;
|
|
__attribute__((dllimport)) WINBOOL Shell_NotifyIconA (DWORD dwMessage, PNOTIFYICONDATAA lpData);
|
|
__attribute__((dllimport)) WINBOOL Shell_NotifyIconW (DWORD dwMessage, PNOTIFYICONDATAW lpData);
|
|
typedef struct _SHFILEINFOA {
|
|
HICON hIcon;
|
|
int iIcon;
|
|
DWORD dwAttributes;
|
|
CHAR szDisplayName[260];
|
|
CHAR szTypeName[80];
|
|
} SHFILEINFOA;
|
|
typedef struct _SHFILEINFOW {
|
|
HICON hIcon;
|
|
int iIcon;
|
|
DWORD dwAttributes;
|
|
WCHAR szDisplayName[260];
|
|
WCHAR szTypeName[80];
|
|
} SHFILEINFOW;
|
|
typedef SHFILEINFOA SHFILEINFO;
|
|
__attribute__((dllimport)) DWORD_PTR SHGetFileInfoA (LPCSTR pszPath, DWORD dwFileAttributes, SHFILEINFOA *psfi, UINT cbFileInfo, UINT uFlags);
|
|
__attribute__((dllimport)) DWORD_PTR SHGetFileInfoW (LPCWSTR pszPath, DWORD dwFileAttributes, SHFILEINFOW *psfi, UINT cbFileInfo, UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL SHGetDiskFreeSpaceExA (LPCSTR pszDirectoryName, ULARGE_INTEGER *pulFreeBytesAvailableToCaller, ULARGE_INTEGER *pulTotalNumberOfBytes, ULARGE_INTEGER *pulTotalNumberOfFreeBytes);
|
|
__attribute__((dllimport)) WINBOOL SHGetDiskFreeSpaceExW (LPCWSTR pszDirectoryName, ULARGE_INTEGER *pulFreeBytesAvailableToCaller, ULARGE_INTEGER *pulTotalNumberOfBytes, ULARGE_INTEGER *pulTotalNumberOfFreeBytes);
|
|
__attribute__((dllimport)) WINBOOL SHGetNewLinkInfoA (LPCSTR pszLinkTo, LPCSTR pszDir, LPSTR pszName, WINBOOL *pfMustCopy, UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL SHGetNewLinkInfoW (LPCWSTR pszLinkTo, LPCWSTR pszDir, LPWSTR pszName, WINBOOL *pfMustCopy, UINT uFlags);
|
|
__attribute__((dllimport)) WINBOOL SHInvokePrinterCommandA (HWND hwnd, UINT uAction, LPCSTR lpBuf1, LPCSTR lpBuf2, WINBOOL fModal);
|
|
__attribute__((dllimport)) WINBOOL SHInvokePrinterCommandW (HWND hwnd, UINT uAction, LPCWSTR lpBuf1, LPCWSTR lpBuf2, WINBOOL fModal);
|
|
__attribute__((dllimport)) HRESULT SHLoadNonloadedIconOverlayIdentifiers (void);
|
|
__attribute__((dllimport)) HRESULT SHIsFileAvailableOffline (PCWSTR pwszPath, DWORD *pdwStatus);
|
|
__attribute__((dllimport)) HRESULT SHSetLocalizedName (PCWSTR pszPath, PCWSTR pszResModule, int idsRes);
|
|
extern __attribute__((dllimport)) int __attribute__((__cdecl__)) ShellMessageBoxA (HINSTANCE hAppInst, HWND hWnd, LPCSTR lpcText, LPCSTR lpcTitle, UINT fuStyle,...);
|
|
extern __attribute__((dllimport)) int __attribute__((__cdecl__)) ShellMessageBoxW (HINSTANCE hAppInst, HWND hWnd, LPCWSTR lpcText, LPCWSTR lpcTitle, UINT fuStyle,...);
|
|
__attribute__((dllimport)) WINBOOL IsLFNDriveA (LPCSTR pszPath);
|
|
__attribute__((dllimport)) WINBOOL IsLFNDriveW (LPCWSTR pszPath);
|
|
extern HRESULT SHEnumerateUnreadMailAccountsA (HKEY hKeyUser, DWORD dwIndex, LPSTR pszMailAddress, int cchMailAddress);
|
|
extern HRESULT SHEnumerateUnreadMailAccountsW (HKEY hKeyUser, DWORD dwIndex, LPWSTR pszMailAddress, int cchMailAddress);
|
|
extern HRESULT SHGetUnreadMailCountA (HKEY hKeyUser, LPCSTR pszMailAddress, DWORD *pdwCount, FILETIME *pFileTime, LPSTR pszShellExecuteCommand, int cchShellExecuteCommand);
|
|
extern HRESULT SHGetUnreadMailCountW (HKEY hKeyUser, LPCWSTR pszMailAddress, DWORD *pdwCount, FILETIME *pFileTime, LPWSTR pszShellExecuteCommand, int cchShellExecuteCommand);
|
|
extern HRESULT SHSetUnreadMailCountA (LPCSTR pszMailAddress, DWORD dwCount, LPCSTR pszShellExecuteCommand);
|
|
extern HRESULT SHSetUnreadMailCountW (LPCWSTR pszMailAddress, DWORD dwCount, LPCWSTR pszShellExecuteCommand);
|
|
extern WINBOOL SHTestTokenMembership (HANDLE hToken, ULONG ulRID);
|
|
__attribute__((dllimport)) HRESULT SHGetImageList (int iImageList, const IID *const riid, void **ppvObj);
|
|
typedef HRESULT ( *PFNCANSHAREFOLDERW) (PCWSTR pszPath);
|
|
typedef HRESULT ( *PFNSHOWSHAREFOLDERUIW) (HWND hwndParent, PCWSTR pszPath);
|
|
#pragma pack(push,8)
|
|
typedef struct _PERF_DATA_BLOCK {
|
|
WCHAR Signature[4];
|
|
DWORD LittleEndian;
|
|
DWORD Version;
|
|
DWORD Revision;
|
|
DWORD TotalByteLength;
|
|
DWORD HeaderLength;
|
|
DWORD NumObjectTypes;
|
|
LONG DefaultObject;
|
|
SYSTEMTIME SystemTime;
|
|
LARGE_INTEGER PerfTime;
|
|
LARGE_INTEGER PerfFreq;
|
|
LARGE_INTEGER PerfTime100nSec;
|
|
DWORD SystemNameLength;
|
|
DWORD SystemNameOffset;
|
|
} PERF_DATA_BLOCK,*PPERF_DATA_BLOCK;
|
|
typedef struct _PERF_OBJECT_TYPE {
|
|
DWORD TotalByteLength;
|
|
DWORD DefinitionLength;
|
|
DWORD HeaderLength;
|
|
DWORD ObjectNameTitleIndex;
|
|
DWORD ObjectNameTitle;
|
|
DWORD ObjectHelpTitleIndex;
|
|
DWORD ObjectHelpTitle;
|
|
DWORD DetailLevel;
|
|
DWORD NumCounters;
|
|
LONG DefaultCounter;
|
|
LONG NumInstances;
|
|
DWORD CodePage;
|
|
LARGE_INTEGER PerfTime;
|
|
LARGE_INTEGER PerfFreq;
|
|
} PERF_OBJECT_TYPE,*PPERF_OBJECT_TYPE;
|
|
typedef struct _PERF_COUNTER_DEFINITION {
|
|
DWORD ByteLength;
|
|
DWORD CounterNameTitleIndex;
|
|
DWORD CounterNameTitle;
|
|
DWORD CounterHelpTitleIndex;
|
|
DWORD CounterHelpTitle;
|
|
LONG DefaultScale;
|
|
DWORD DetailLevel;
|
|
DWORD CounterType;
|
|
DWORD CounterSize;
|
|
DWORD CounterOffset;
|
|
} PERF_COUNTER_DEFINITION,*PPERF_COUNTER_DEFINITION;
|
|
typedef struct _PERF_INSTANCE_DEFINITION {
|
|
DWORD ByteLength;
|
|
DWORD ParentObjectTitleIndex;
|
|
DWORD ParentObjectInstance;
|
|
LONG UniqueID;
|
|
DWORD NameOffset;
|
|
DWORD NameLength;
|
|
} PERF_INSTANCE_DEFINITION,*PPERF_INSTANCE_DEFINITION;
|
|
typedef struct _PERF_COUNTER_BLOCK {
|
|
DWORD ByteLength;
|
|
} PERF_COUNTER_BLOCK,*PPERF_COUNTER_BLOCK;
|
|
typedef DWORD ( PM_OPEN_PROC)(LPWSTR);
|
|
typedef DWORD ( PM_COLLECT_PROC)(LPWSTR,LPVOID *,LPDWORD,LPDWORD);
|
|
typedef DWORD ( PM_CLOSE_PROC)(void);
|
|
typedef DWORD ( PM_QUERY_PROC)(LPDWORD,LPVOID *,LPDWORD,LPDWORD);
|
|
#pragma pack(pop)
|
|
typedef unsigned int ALG_ID;
|
|
typedef ULONG_PTR HCRYPTHASH;
|
|
typedef ULONG_PTR HCRYPTKEY;
|
|
typedef ULONG_PTR HCRYPTPROV;
|
|
typedef struct _CMS_KEY_INFO {
|
|
DWORD dwVersion;
|
|
ALG_ID Algid;
|
|
BYTE *pbOID;
|
|
DWORD cbOID;
|
|
} CMS_KEY_INFO,*PCMS_KEY_INFO;
|
|
typedef struct _HMAC_Info {
|
|
ALG_ID HashAlgid;
|
|
BYTE *pbInnerString;
|
|
DWORD cbInnerString;
|
|
BYTE *pbOuterString;
|
|
DWORD cbOuterString;
|
|
} HMAC_INFO,*PHMAC_INFO;
|
|
typedef struct _SCHANNEL_ALG {
|
|
DWORD dwUse;
|
|
ALG_ID Algid;
|
|
DWORD cBits;
|
|
DWORD dwFlags;
|
|
DWORD dwReserved;
|
|
} SCHANNEL_ALG,*PSCHANNEL_ALG;
|
|
typedef struct _PROV_ENUMALGS {
|
|
ALG_ID aiAlgid;
|
|
DWORD dwBitLen;
|
|
DWORD dwNameLen;
|
|
CHAR szName[20];
|
|
} PROV_ENUMALGS;
|
|
typedef struct _PROV_ENUMALGS_EX {
|
|
ALG_ID aiAlgid;
|
|
DWORD dwDefaultLen;
|
|
DWORD dwMinLen;
|
|
DWORD dwMaxLen;
|
|
DWORD dwProtocols;
|
|
DWORD dwNameLen;
|
|
CHAR szName[20];
|
|
DWORD dwLongNameLen;
|
|
CHAR szLongName[40];
|
|
} PROV_ENUMALGS_EX;
|
|
typedef struct _PUBLICKEYSTRUC {
|
|
BYTE bType;
|
|
BYTE bVersion;
|
|
WORD reserved;
|
|
ALG_ID aiKeyAlg;
|
|
} BLOBHEADER,PUBLICKEYSTRUC;
|
|
typedef struct _RSAPUBKEY {
|
|
DWORD magic;
|
|
DWORD bitlen;
|
|
DWORD pubexp;
|
|
} RSAPUBKEY;
|
|
typedef struct _PUBKEY {
|
|
DWORD magic;
|
|
DWORD bitlen;
|
|
} DHPUBKEY,DSSPUBKEY,KEAPUBKEY,TEKPUBKEY;
|
|
typedef struct _DSSSEED {
|
|
DWORD counter;
|
|
BYTE seed[20];
|
|
} DSSSEED;
|
|
typedef struct _PUBKEYVER3 {
|
|
DWORD magic;
|
|
DWORD bitlenP;
|
|
DWORD bitlenQ;
|
|
DWORD bitlenJ;
|
|
DSSSEED DSSSeed;
|
|
} DHPUBKEY_VER3, DSSPUBKEY_VER3;
|
|
typedef struct _PRIVKEYVER3 {
|
|
DWORD magic;
|
|
DWORD bitlenP;
|
|
DWORD bitlenQ;
|
|
DWORD bitlenJ;
|
|
DWORD bitlenX;
|
|
DSSSEED DSSSeed;
|
|
} DHPRIVKEY_VER3,DSSPRIVKEY_VER3;
|
|
typedef struct _KEY_TYPE_SUBTYPE {
|
|
DWORD dwKeySpec;
|
|
GUID Type;
|
|
GUID Subtype;
|
|
} KEY_TYPE_SUBTYPE,*PKEY_TYPE_SUBTYPE;
|
|
typedef struct _CERT_FORTEZZA_DATA_PROP {
|
|
unsigned char SerialNumber[8];
|
|
int CertIndex;
|
|
unsigned char CertLabel[36];
|
|
} CERT_FORTEZZA_DATA_PROP;
|
|
typedef struct _CRYPT_RC4_KEY_STATE {
|
|
unsigned char Key[16];
|
|
unsigned char SBox[256];
|
|
unsigned char i;
|
|
unsigned char j;
|
|
} CRYPT_RC4_KEY_STATE,*PCRYPT_RC4_KEY_STATE;
|
|
typedef struct _CRYPT_DES_KEY_STATE {
|
|
unsigned char Key[8];
|
|
unsigned char IV[8];
|
|
unsigned char Feedback[8];
|
|
} CRYPT_DES_KEY_STATE,*PCRYPT_DES_KEY_STATE;
|
|
typedef struct _CRYPT_3DES_KEY_STATE {
|
|
unsigned char Key[24];
|
|
unsigned char IV[8];
|
|
unsigned char Feedback[8];
|
|
} CRYPT_3DES_KEY_STATE,*PCRYPT_3DES_KEY_STATE;
|
|
typedef struct _CRYPTOAPI_BLOB {
|
|
DWORD cbData;
|
|
BYTE *pbData;
|
|
} CRYPT_INTEGER_BLOB,*PCRYPT_INTEGER_BLOB,CRYPT_UINT_BLOB,*PCRYPT_UINT_BLOB,CRYPT_OBJID_BLOB,*PCRYPT_OBJID_BLOB,CERT_NAME_BLOB,*PCERT_NAME_BLOB,CERT_RDN_VALUE_BLOB,*PCERT_RDN_VALUE_BLOB,CERT_BLOB,*PCERT_BLOB,CRL_BLOB,*PCRL_BLOB,DATA_BLOB,*PDATA_BLOB,CRYPT_DATA_BLOB,*PCRYPT_DATA_BLOB,CRYPT_HASH_BLOB,*PCRYPT_HASH_BLOB,CRYPT_DIGEST_BLOB,*PCRYPT_DIGEST_BLOB,CRYPT_DER_BLOB,*PCRYPT_DER_BLOB,CRYPT_ATTR_BLOB,*PCRYPT_ATTR_BLOB;
|
|
__attribute__((dllimport)) WINBOOL CryptAcquireContextA (HCRYPTPROV *phProv, LPCSTR szContainer, LPCSTR szProvider, DWORD dwProvType, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptAcquireContextW (HCRYPTPROV *phProv, LPCWSTR szContainer, LPCWSTR szProvider, DWORD dwProvType, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptReleaseContext (HCRYPTPROV hProv, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGenRandom (HCRYPTPROV hProv, DWORD dwLen, BYTE *pbBuffer);
|
|
typedef struct _CMS_DH_KEY_INFO {
|
|
DWORD dwVersion;
|
|
ALG_ID Algid;
|
|
LPSTR pszContentEncObjId;
|
|
CRYPT_DATA_BLOB PubInfo;
|
|
void *pReserved;
|
|
} CMS_DH_KEY_INFO,*PCMS_DH_KEY_INFO;
|
|
__attribute__((dllimport)) WINBOOL CryptGenKey (HCRYPTPROV hProv, ALG_ID Algid, DWORD dwFlags, HCRYPTKEY *phKey);
|
|
__attribute__((dllimport)) WINBOOL CryptDeriveKey (HCRYPTPROV hProv, ALG_ID Algid, HCRYPTHASH hBaseData, DWORD dwFlags, HCRYPTKEY *phKey);
|
|
__attribute__((dllimport)) WINBOOL CryptDestroyKey (HCRYPTKEY hKey);
|
|
__attribute__((dllimport)) WINBOOL CryptSetKeyParam (HCRYPTKEY hKey, DWORD dwParam, const BYTE *pbData, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGetKeyParam (HCRYPTKEY hKey, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptSetHashParam (HCRYPTHASH hHash, DWORD dwParam, const BYTE *pbData, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGetHashParam (HCRYPTHASH hHash, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptSetProvParam (HCRYPTPROV hProv, DWORD dwParam, const BYTE *pbData, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGetProvParam (HCRYPTPROV hProv, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGetUserKey (HCRYPTPROV hProv, DWORD dwKeySpec, HCRYPTKEY *phUserKey);
|
|
__attribute__((dllimport)) WINBOOL CryptExportKey (HCRYPTKEY hKey, HCRYPTKEY hExpKey, DWORD dwBlobType, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen);
|
|
__attribute__((dllimport)) WINBOOL CryptImportKey (HCRYPTPROV hProv, const BYTE *pbData, DWORD dwDataLen, HCRYPTKEY hPubKey, DWORD dwFlags, HCRYPTKEY *phKey);
|
|
__attribute__((dllimport)) WINBOOL CryptEncrypt (HCRYPTKEY hKey, HCRYPTHASH hHash, WINBOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen, DWORD dwBufLen);
|
|
__attribute__((dllimport)) WINBOOL CryptDecrypt (HCRYPTKEY hKey, HCRYPTHASH hHash, WINBOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen);
|
|
__attribute__((dllimport)) WINBOOL CryptCreateHash (HCRYPTPROV hProv, ALG_ID Algid, HCRYPTKEY hKey, DWORD dwFlags, HCRYPTHASH *phHash);
|
|
__attribute__((dllimport)) WINBOOL CryptHashData (HCRYPTHASH hHash, const BYTE *pbData, DWORD dwDataLen, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptHashSessionKey (HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptDestroyHash (HCRYPTHASH hHash);
|
|
__attribute__((dllimport)) WINBOOL CryptSignHashA (HCRYPTHASH hHash, DWORD dwKeySpec, LPCSTR szDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen);
|
|
__attribute__((dllimport)) WINBOOL CryptSignHashW (HCRYPTHASH hHash, DWORD dwKeySpec, LPCWSTR szDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifySignatureA (HCRYPTHASH hHash, const BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCSTR szDescription, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifySignatureW (HCRYPTHASH hHash, const BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCWSTR szDescription, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptSetProviderA (LPCSTR pszProvName, DWORD dwProvType);
|
|
__attribute__((dllimport)) WINBOOL CryptSetProviderW (LPCWSTR pszProvName, DWORD dwProvType);
|
|
__attribute__((dllimport)) WINBOOL CryptSetProviderExA (LPCSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptSetProviderExW (LPCWSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGetDefaultProviderA (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPSTR pszProvName, DWORD *pcbProvName);
|
|
__attribute__((dllimport)) WINBOOL CryptGetDefaultProviderW (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPWSTR pszProvName, DWORD *pcbProvName);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumProviderTypesA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szTypeName, DWORD *pcbTypeName);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumProviderTypesW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szTypeName, DWORD *pcbTypeName);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumProvidersA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD *pcbProvName);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumProvidersW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD *pcbProvName);
|
|
__attribute__((dllimport)) WINBOOL CryptContextAddRef (HCRYPTPROV hProv, DWORD *pdwReserved, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptDuplicateKey (HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
|
|
__attribute__((dllimport)) WINBOOL CryptDuplicateHash (HCRYPTHASH hHash, DWORD *pdwReserved, DWORD dwFlags, HCRYPTHASH *phHash);
|
|
WINBOOL __attribute__((__cdecl__)) GetEncSChannel (BYTE **pData, DWORD *dwDecSize);
|
|
typedef ULONG_PTR HCRYPTPROV_OR_NCRYPT_KEY_HANDLE;
|
|
typedef ULONG_PTR HCRYPTPROV_LEGACY;
|
|
typedef LONG NTSTATUS,*PNTSTATUS;
|
|
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;
|
|
typedef struct _BCryptBuffer {
|
|
ULONG cbBuffer;
|
|
ULONG BufferType;
|
|
PVOID pvBuffer;
|
|
} BCryptBuffer,*PBCryptBuffer;
|
|
typedef struct _BCryptBufferDesc {
|
|
ULONG ulVersion;
|
|
ULONG cBuffers;
|
|
PBCryptBuffer pBuffers;
|
|
} BCryptBufferDesc,*PBCryptBufferDesc;
|
|
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 BCryptOpenAlgorithmProvider (BCRYPT_ALG_HANDLE *phAlgorithm, LPCWSTR pszAlgId, LPCWSTR pszImplementation, ULONG dwFlags);
|
|
NTSTATUS BCryptEnumAlgorithms (ULONG dwAlgOperations, ULONG *pAlgCount, BCRYPT_ALGORITHM_IDENTIFIER **ppAlgList, ULONG dwFlags);
|
|
NTSTATUS BCryptEnumProviders (LPCWSTR pszAlgId, ULONG *pImplCount, BCRYPT_PROVIDER_NAME **ppImplList, ULONG dwFlags);
|
|
NTSTATUS BCryptGetProperty (BCRYPT_HANDLE hObject, LPCWSTR pszProperty, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS BCryptSetProperty (BCRYPT_HANDLE hObject, LPCWSTR pszProperty, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
|
|
NTSTATUS BCryptCloseAlgorithmProvider (BCRYPT_ALG_HANDLE hAlgorithm, ULONG dwFlags);
|
|
void BCryptFreeBuffer (PVOID pvBuffer);
|
|
NTSTATUS BCryptGenerateSymmetricKey (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbKeyObject, ULONG cbKeyObject, PUCHAR pbSecret, ULONG cbSecret, ULONG dwFlags);
|
|
NTSTATUS BCryptGenerateKeyPair (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE *phKey, ULONG dwLength, ULONG dwFlags);
|
|
NTSTATUS BCryptEncrypt (BCRYPT_KEY_HANDLE hKey, PUCHAR pbInput, ULONG cbInput, void *pPaddingInfo, PUCHAR pbIV, ULONG cbIV, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS BCryptDecrypt (BCRYPT_KEY_HANDLE hKey, PUCHAR pbInput, ULONG cbInput, void *pPaddingInfo, PUCHAR pbIV, ULONG cbIV, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS BCryptExportKey (BCRYPT_KEY_HANDLE hKey, BCRYPT_KEY_HANDLE hExportKey, LPCWSTR pszBlobType, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS 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 BCryptImportKeyPair (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, BCRYPT_KEY_HANDLE *phKey, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
|
|
NTSTATUS BCryptDuplicateKey (BCRYPT_KEY_HANDLE hKey, BCRYPT_KEY_HANDLE *phNewKey, PUCHAR pbKeyObject, ULONG cbKeyObject, ULONG dwFlags);
|
|
NTSTATUS BCryptFinalizeKeyPair (BCRYPT_KEY_HANDLE hKey, ULONG dwFlags);
|
|
NTSTATUS BCryptDestroyKey (BCRYPT_KEY_HANDLE hKey);
|
|
NTSTATUS BCryptDestroySecret (BCRYPT_SECRET_HANDLE hSecret);
|
|
NTSTATUS BCryptSignHash (BCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PUCHAR pbInput, ULONG cbInput, PUCHAR pbOutput, ULONG cbOutput, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS BCryptVerifySignature (BCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PUCHAR pbHash, ULONG cbHash, PUCHAR pbSignature, ULONG cbSignature, ULONG dwFlags);
|
|
NTSTATUS BCryptSecretAgreement (BCRYPT_KEY_HANDLE hPrivKey, BCRYPT_KEY_HANDLE hPubKey, BCRYPT_SECRET_HANDLE *phAgreedSecret, ULONG dwFlags);
|
|
NTSTATUS BCryptDeriveKey (BCRYPT_SECRET_HANDLE hSharedSecret, LPCWSTR pwszKDF, BCryptBufferDesc *pParameterList, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS BCryptKeyDerivation (BCRYPT_KEY_HANDLE hKey, BCryptBufferDesc *pParameterList, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG *pcbResult, ULONG dwFlags);
|
|
NTSTATUS BCryptCreateHash (BCRYPT_ALG_HANDLE hAlgorithm, BCRYPT_HASH_HANDLE *phHash, PUCHAR pbHashObject, ULONG cbHashObject, PUCHAR pbSecret, ULONG cbSecret, ULONG dwFlags);
|
|
NTSTATUS BCryptHashData (BCRYPT_HASH_HANDLE hHash, PUCHAR pbInput, ULONG cbInput, ULONG dwFlags);
|
|
NTSTATUS BCryptFinishHash (BCRYPT_HASH_HANDLE hHash, PUCHAR pbOutput, ULONG cbOutput, ULONG dwFlags);
|
|
NTSTATUS BCryptDuplicateHash (BCRYPT_HASH_HANDLE hHash, BCRYPT_HASH_HANDLE *phNewHash, PUCHAR pbHashObject, ULONG cbHashObject, ULONG dwFlags);
|
|
NTSTATUS BCryptDestroyHash (BCRYPT_HASH_HANDLE hHash);
|
|
NTSTATUS BCryptGenRandom (BCRYPT_ALG_HANDLE hAlgorithm, PUCHAR pbBuffer, ULONG cbBuffer, ULONG dwFlags);
|
|
NTSTATUS BCryptDeriveKeyCapi (BCRYPT_HASH_HANDLE hHash, BCRYPT_ALG_HANDLE hTargetAlg, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG dwFlags);
|
|
NTSTATUS BCryptDeriveKeyPBKDF2 (BCRYPT_ALG_HANDLE hPrf, PUCHAR pbPassword, ULONG cbPassword, PUCHAR pbSalt, ULONG cbSalt, ULONGLONG cIterations, PUCHAR pbDerivedKey, ULONG cbDerivedKey, ULONG dwFlags);
|
|
NTSTATUS BCryptResolveProviders (LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProvider, ULONG dwMode, ULONG dwFlags, ULONG *pcbBuffer, PCRYPT_PROVIDER_REFS *ppBuffer);
|
|
NTSTATUS BCryptGetFipsAlgorithmMode (BOOLEAN *pfEnabled);
|
|
NTSTATUS BCryptQueryProviderRegistration (LPCWSTR pszProvider, ULONG dwMode, ULONG dwInterface, ULONG *pcbBuffer, PCRYPT_PROVIDER_REG *ppBuffer);
|
|
NTSTATUS BCryptEnumRegisteredProviders (ULONG *pcbBuffer, PCRYPT_PROVIDERS *ppBuffer);
|
|
NTSTATUS BCryptCreateContext (ULONG dwTable, LPCWSTR pszContext, PCRYPT_CONTEXT_CONFIG pConfig);
|
|
NTSTATUS BCryptDeleteContext (ULONG dwTable, LPCWSTR pszContext);
|
|
NTSTATUS BCryptEnumContexts (ULONG dwTable, ULONG *pcbBuffer, PCRYPT_CONTEXTS *ppBuffer);
|
|
NTSTATUS BCryptConfigureContext (ULONG dwTable, LPCWSTR pszContext, PCRYPT_CONTEXT_CONFIG pConfig);
|
|
NTSTATUS BCryptQueryContextConfiguration (ULONG dwTable, LPCWSTR pszContext, ULONG *pcbBuffer, PCRYPT_CONTEXT_CONFIG *ppBuffer);
|
|
NTSTATUS BCryptAddContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG dwPosition);
|
|
NTSTATUS BCryptRemoveContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction);
|
|
NTSTATUS BCryptEnumContextFunctions (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTIONS *ppBuffer);
|
|
NTSTATUS BCryptConfigureContextFunction (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, PCRYPT_CONTEXT_FUNCTION_CONFIG pConfig);
|
|
NTSTATUS BCryptQueryContextFunctionConfiguration (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTION_CONFIG *ppBuffer);
|
|
NTSTATUS BCryptEnumContextFunctionProviders (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, ULONG *pcbBuffer, PCRYPT_CONTEXT_FUNCTION_PROVIDERS *ppBuffer);
|
|
NTSTATUS BCryptSetContextFunctionProperty (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProperty, ULONG cbValue, PUCHAR pbValue);
|
|
NTSTATUS BCryptQueryContextFunctionProperty (ULONG dwTable, LPCWSTR pszContext, ULONG dwInterface, LPCWSTR pszFunction, LPCWSTR pszProperty, ULONG *pcbValue, PUCHAR *ppbValue);
|
|
NTSTATUS BCryptRegisterConfigChangeNotify (HANDLE *phEvent);
|
|
typedef LONG SECURITY_STATUS;
|
|
typedef LPVOID ( *PFN_NCRYPT_ALLOC) (SIZE_T cbSize);
|
|
typedef void ( *PFN_NCRYPT_FREE) (LPVOID pv);
|
|
typedef struct NCRYPT_ALLOC_PARA {
|
|
DWORD cbSize;
|
|
PFN_NCRYPT_ALLOC pfnAlloc;
|
|
PFN_NCRYPT_FREE pfnFree;
|
|
} NCRYPT_ALLOC_PARA;
|
|
typedef BCryptBuffer NCryptBuffer;
|
|
typedef BCryptBuffer *PNCryptBuffer;
|
|
typedef BCryptBufferDesc NCryptBufferDesc;
|
|
typedef BCryptBufferDesc *PNCryptBufferDesc;
|
|
typedef ULONG_PTR NCRYPT_HANDLE;
|
|
typedef ULONG_PTR NCRYPT_PROV_HANDLE;
|
|
typedef ULONG_PTR NCRYPT_KEY_HANDLE;
|
|
typedef ULONG_PTR NCRYPT_HASH_HANDLE;
|
|
typedef ULONG_PTR NCRYPT_SECRET_HANDLE;
|
|
typedef struct _NCryptAlgorithmName {
|
|
LPWSTR pszName;
|
|
DWORD dwClass;
|
|
DWORD dwAlgOperations;
|
|
DWORD dwFlags;
|
|
} NCryptAlgorithmName;
|
|
typedef struct NCryptKeyName {
|
|
LPWSTR pszName;
|
|
LPWSTR pszAlgid;
|
|
DWORD dwLegacyKeySpec;
|
|
DWORD dwFlags;
|
|
} NCryptKeyName;
|
|
typedef struct NCryptProviderName {
|
|
LPWSTR pszName;
|
|
LPWSTR pszComment;
|
|
} NCryptProviderName;
|
|
SECURITY_STATUS NCryptOpenStorageProvider (NCRYPT_PROV_HANDLE *phProvider, LPCWSTR pszProviderName, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptEnumAlgorithms (NCRYPT_PROV_HANDLE hProvider, DWORD dwAlgOperations, DWORD *pdwAlgCount, NCryptAlgorithmName **ppAlgList, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptIsAlgSupported (NCRYPT_PROV_HANDLE hProvider, LPCWSTR pszAlgId, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptEnumKeys (NCRYPT_PROV_HANDLE hProvider, LPCWSTR pszScope, NCryptKeyName **ppKeyName, PVOID *ppEnumState, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptEnumStorageProviders (DWORD *pdwProviderCount, NCryptProviderName **ppProviderList, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptFreeBuffer (PVOID pvInput);
|
|
SECURITY_STATUS NCryptOpenKey (NCRYPT_PROV_HANDLE hProvider, NCRYPT_KEY_HANDLE *phKey, LPCWSTR pszKeyName, DWORD dwLegacyKeySpec, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptCreatePersistedKey (NCRYPT_PROV_HANDLE hProvider, NCRYPT_KEY_HANDLE *phKey, LPCWSTR pszAlgId, LPCWSTR pszKeyName, DWORD dwLegacyKeySpec, DWORD dwFlags);
|
|
typedef struct __NCRYPT_UI_POLICY {
|
|
DWORD dwVersion;
|
|
DWORD dwFlags;
|
|
LPCWSTR pszCreationTitle;
|
|
LPCWSTR pszFriendlyName;
|
|
LPCWSTR pszDescription;
|
|
} NCRYPT_UI_POLICY;
|
|
typedef struct __NCRYPT_SUPPORTED_LENGTHS {
|
|
DWORD dwMinLength;
|
|
DWORD dwMaxLength;
|
|
DWORD dwIncrement;
|
|
DWORD dwDefaultLength;
|
|
} NCRYPT_SUPPORTED_LENGTHS;
|
|
SECURITY_STATUS NCryptGetProperty (NCRYPT_HANDLE hObject, LPCWSTR pszProperty, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptSetProperty (NCRYPT_HANDLE hObject, LPCWSTR pszProperty, PBYTE pbInput, DWORD cbInput, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptFinalizeKey (NCRYPT_KEY_HANDLE hKey, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptEncrypt (NCRYPT_KEY_HANDLE hKey, PBYTE pbInput, DWORD cbInput, void *pPaddingInfo, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptDecrypt (NCRYPT_KEY_HANDLE hKey, PBYTE pbInput, DWORD cbInput, void *pPaddingInfo, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptImportKey (NCRYPT_PROV_HANDLE hProvider, NCRYPT_KEY_HANDLE hImportKey, LPCWSTR pszBlobType, NCryptBufferDesc *pParameterList, NCRYPT_KEY_HANDLE *phKey, PBYTE pbData, DWORD cbData, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptExportKey (NCRYPT_KEY_HANDLE hKey, NCRYPT_KEY_HANDLE hExportKey, LPCWSTR pszBlobType, NCryptBufferDesc *pParameterList, PBYTE pbOutput, DWORD cbOutput, DWORD *pcbResult, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptSignHash (NCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PBYTE pbHashValue, DWORD cbHashValue, PBYTE pbSignature, DWORD cbSignature, DWORD *pcbResult, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptVerifySignature (NCRYPT_KEY_HANDLE hKey, void *pPaddingInfo, PBYTE pbHashValue, DWORD cbHashValue, PBYTE pbSignature, DWORD cbSignature, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptDeleteKey (NCRYPT_KEY_HANDLE hKey, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptFreeObject (NCRYPT_HANDLE hObject);
|
|
WINBOOL NCryptIsKeyHandle (NCRYPT_KEY_HANDLE hKey);
|
|
SECURITY_STATUS NCryptTranslateHandle (NCRYPT_PROV_HANDLE *phProvider, NCRYPT_KEY_HANDLE *phKey, HCRYPTPROV hLegacyProv, HCRYPTKEY hLegacyKey, DWORD dwLegacyKeySpec, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptNotifyChangeKey (NCRYPT_PROV_HANDLE hProvider, HANDLE *phEvent, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptSecretAgreement (NCRYPT_KEY_HANDLE hPrivKey, NCRYPT_KEY_HANDLE hPubKey, NCRYPT_SECRET_HANDLE *phAgreedSecret, DWORD dwFlags);
|
|
SECURITY_STATUS NCryptDeriveKey (NCRYPT_SECRET_HANDLE hSharedSecret, LPCWSTR pwszKDF, NCryptBufferDesc *pParameterList, PBYTE pbDerivedKey, DWORD cbDerivedKey, DWORD *pcbResult, ULONG dwFlags);
|
|
typedef struct _CRYPT_BIT_BLOB {
|
|
DWORD cbData;
|
|
BYTE *pbData;
|
|
DWORD cUnusedBits;
|
|
} CRYPT_BIT_BLOB,*PCRYPT_BIT_BLOB;
|
|
typedef struct _CRYPT_ALGORITHM_IDENTIFIER {
|
|
LPSTR pszObjId;
|
|
CRYPT_OBJID_BLOB Parameters;
|
|
} CRYPT_ALGORITHM_IDENTIFIER,*PCRYPT_ALGORITHM_IDENTIFIER;
|
|
typedef struct _CRYPT_OBJID_TABLE {
|
|
DWORD dwAlgId;
|
|
LPCSTR pszObjId;
|
|
} CRYPT_OBJID_TABLE,*PCRYPT_OBJID_TABLE;
|
|
typedef struct _CRYPT_HASH_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_HASH_BLOB Hash;
|
|
} CRYPT_HASH_INFO,*PCRYPT_HASH_INFO;
|
|
typedef struct _CERT_EXTENSION {
|
|
LPSTR pszObjId;
|
|
WINBOOL fCritical;
|
|
CRYPT_OBJID_BLOB Value;
|
|
} CERT_EXTENSION,*PCERT_EXTENSION;
|
|
typedef const CERT_EXTENSION *PCCERT_EXTENSION;
|
|
typedef struct _CRYPT_ATTRIBUTE_TYPE_VALUE {
|
|
LPSTR pszObjId;
|
|
CRYPT_OBJID_BLOB Value;
|
|
} CRYPT_ATTRIBUTE_TYPE_VALUE,*PCRYPT_ATTRIBUTE_TYPE_VALUE;
|
|
typedef struct _CRYPT_ATTRIBUTE {
|
|
LPSTR pszObjId;
|
|
DWORD cValue;
|
|
PCRYPT_ATTR_BLOB rgValue;
|
|
} CRYPT_ATTRIBUTE,*PCRYPT_ATTRIBUTE;
|
|
typedef struct _CRYPT_ATTRIBUTES {
|
|
DWORD cAttr;
|
|
PCRYPT_ATTRIBUTE rgAttr;
|
|
} CRYPT_ATTRIBUTES,*PCRYPT_ATTRIBUTES;
|
|
typedef struct _CERT_RDN_ATTR {
|
|
LPSTR pszObjId;
|
|
DWORD dwValueType;
|
|
CERT_RDN_VALUE_BLOB Value;
|
|
} CERT_RDN_ATTR,*PCERT_RDN_ATTR;
|
|
typedef struct _CERT_RDN {
|
|
DWORD cRDNAttr;
|
|
PCERT_RDN_ATTR rgRDNAttr;
|
|
} CERT_RDN,*PCERT_RDN;
|
|
typedef struct _CERT_NAME_INFO {
|
|
DWORD cRDN;
|
|
PCERT_RDN rgRDN;
|
|
} CERT_NAME_INFO,*PCERT_NAME_INFO;
|
|
typedef struct _CERT_NAME_VALUE {
|
|
DWORD dwValueType;
|
|
CERT_RDN_VALUE_BLOB Value;
|
|
} CERT_NAME_VALUE,*PCERT_NAME_VALUE;
|
|
typedef struct _CERT_PUBLIC_KEY_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
|
|
CRYPT_BIT_BLOB PublicKey;
|
|
} CERT_PUBLIC_KEY_INFO,*PCERT_PUBLIC_KEY_INFO;
|
|
typedef struct _CRYPT_ECC_PRIVATE_KEY_INFO {
|
|
DWORD dwVersion;
|
|
CRYPT_DER_BLOB PrivateKey;
|
|
LPSTR szCurveOid;
|
|
CRYPT_BIT_BLOB PublicKey;
|
|
} CRYPT_ECC_PRIVATE_KEY_INFO,*PCRYPT_ECC_PRIVATE_KEY_INFO;
|
|
typedef struct _CRYPT_PRIVATE_KEY_INFO {
|
|
DWORD Version;
|
|
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
|
|
CRYPT_DER_BLOB PrivateKey;
|
|
PCRYPT_ATTRIBUTES pAttributes;
|
|
} CRYPT_PRIVATE_KEY_INFO,*PCRYPT_PRIVATE_KEY_INFO;
|
|
typedef struct _CRYPT_ENCRYPTED_PRIVATE_KEY_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER EncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedPrivateKey;
|
|
} CRYPT_ENCRYPTED_PRIVATE_KEY_INFO,*PCRYPT_ENCRYPTED_PRIVATE_KEY_INFO;
|
|
typedef WINBOOL ( *PCRYPT_DECRYPT_PRIVATE_KEY_FUNC) (CRYPT_ALGORITHM_IDENTIFIER Algorithm, CRYPT_DATA_BLOB EncryptedPrivateKey, BYTE *pbClearTextKey, DWORD *pcbClearTextKey, LPVOID pVoidDecryptFunc);
|
|
typedef WINBOOL ( *PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC) (CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm, CRYPT_DATA_BLOB *pClearTextPrivateKey, BYTE *pbEncryptedKey, DWORD *pcbEncryptedKey, LPVOID pVoidEncryptFunc);
|
|
typedef WINBOOL ( *PCRYPT_RESOLVE_HCRYPTPROV_FUNC) (CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo, HCRYPTPROV *phCryptProv, LPVOID pVoidResolveFunc);
|
|
typedef struct _CRYPT_PKCS8_IMPORT_PARAMS {
|
|
CRYPT_DIGEST_BLOB PrivateKey;
|
|
PCRYPT_RESOLVE_HCRYPTPROV_FUNC pResolvehCryptProvFunc;
|
|
LPVOID pVoidResolveFunc;
|
|
PCRYPT_DECRYPT_PRIVATE_KEY_FUNC pDecryptPrivateKeyFunc;
|
|
LPVOID pVoidDecryptFunc;
|
|
} CRYPT_PKCS8_IMPORT_PARAMS,*PCRYPT_PKCS8_IMPORT_PARAMS, CRYPT_PRIVATE_KEY_BLOB_AND_PARAMS,*PCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS;
|
|
typedef struct _CRYPT_PKCS8_EXPORT_PARAMS {
|
|
HCRYPTPROV hCryptProv;
|
|
DWORD dwKeySpec;
|
|
LPSTR pszPrivateKeyObjId;
|
|
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC pEncryptPrivateKeyFunc;
|
|
LPVOID pVoidEncryptFunc;
|
|
} CRYPT_PKCS8_EXPORT_PARAMS,*PCRYPT_PKCS8_EXPORT_PARAMS;
|
|
typedef struct _CERT_INFO {
|
|
DWORD dwVersion;
|
|
CRYPT_INTEGER_BLOB SerialNumber;
|
|
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
|
|
CERT_NAME_BLOB Issuer;
|
|
FILETIME NotBefore;
|
|
FILETIME NotAfter;
|
|
CERT_NAME_BLOB Subject;
|
|
CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
|
|
CRYPT_BIT_BLOB IssuerUniqueId;
|
|
CRYPT_BIT_BLOB SubjectUniqueId;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} CERT_INFO,*PCERT_INFO;
|
|
typedef struct _CRL_ENTRY {
|
|
CRYPT_INTEGER_BLOB SerialNumber;
|
|
FILETIME RevocationDate;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} CRL_ENTRY,*PCRL_ENTRY;
|
|
typedef struct _CRL_INFO {
|
|
DWORD dwVersion;
|
|
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
|
|
CERT_NAME_BLOB Issuer;
|
|
FILETIME ThisUpdate;
|
|
FILETIME NextUpdate;
|
|
DWORD cCRLEntry;
|
|
PCRL_ENTRY rgCRLEntry;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} CRL_INFO,*PCRL_INFO;
|
|
typedef struct _CERT_OR_CRL_BLOB {
|
|
DWORD dwChoice;
|
|
DWORD cbEncoded;
|
|
BYTE *pbEncoded;
|
|
} CERT_OR_CRL_BLOB,*PCERT_OR_CRL_BLOB;
|
|
typedef struct _CERT_OR_CRL_BUNDLE {
|
|
DWORD cItem;
|
|
PCERT_OR_CRL_BLOB rgItem;
|
|
} CERT_OR_CRL_BUNDLE,*PCERT_OR_CRL_BUNDLE;
|
|
typedef struct _CERT_REQUEST_INFO {
|
|
DWORD dwVersion;
|
|
CERT_NAME_BLOB Subject;
|
|
CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
|
|
DWORD cAttribute;
|
|
PCRYPT_ATTRIBUTE rgAttribute;
|
|
} CERT_REQUEST_INFO,*PCERT_REQUEST_INFO;
|
|
typedef struct _CERT_KEYGEN_REQUEST_INFO {
|
|
DWORD dwVersion;
|
|
CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
|
|
LPWSTR pwszChallengeString;
|
|
} CERT_KEYGEN_REQUEST_INFO,*PCERT_KEYGEN_REQUEST_INFO;
|
|
typedef struct _CERT_SIGNED_CONTENT_INFO {
|
|
CRYPT_DER_BLOB ToBeSigned;
|
|
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
|
|
CRYPT_BIT_BLOB Signature;
|
|
} CERT_SIGNED_CONTENT_INFO,*PCERT_SIGNED_CONTENT_INFO;
|
|
typedef struct _CTL_USAGE {
|
|
DWORD cUsageIdentifier;
|
|
LPSTR *rgpszUsageIdentifier;
|
|
} CTL_USAGE,*PCTL_USAGE,CERT_ENHKEY_USAGE,*PCERT_ENHKEY_USAGE;
|
|
typedef const CTL_USAGE *PCCTL_USAGE;
|
|
typedef const CERT_ENHKEY_USAGE *PCCERT_ENHKEY_USAGE;
|
|
typedef struct _CTL_ENTRY {
|
|
CRYPT_DATA_BLOB SubjectIdentifier;
|
|
DWORD cAttribute;
|
|
PCRYPT_ATTRIBUTE rgAttribute;
|
|
} CTL_ENTRY,*PCTL_ENTRY;
|
|
typedef struct _CTL_INFO {
|
|
DWORD dwVersion;
|
|
CTL_USAGE SubjectUsage;
|
|
CRYPT_DATA_BLOB ListIdentifier;
|
|
CRYPT_INTEGER_BLOB SequenceNumber;
|
|
FILETIME ThisUpdate;
|
|
FILETIME NextUpdate;
|
|
CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm;
|
|
DWORD cCTLEntry;
|
|
PCTL_ENTRY rgCTLEntry;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} CTL_INFO,*PCTL_INFO;
|
|
typedef struct _CRYPT_TIME_STAMP_REQUEST_INFO {
|
|
LPSTR pszTimeStampAlgorithm;
|
|
LPSTR pszContentType;
|
|
CRYPT_OBJID_BLOB Content;
|
|
DWORD cAttribute;
|
|
PCRYPT_ATTRIBUTE rgAttribute;
|
|
} CRYPT_TIME_STAMP_REQUEST_INFO,*PCRYPT_TIME_STAMP_REQUEST_INFO;
|
|
typedef struct _CRYPT_ENROLLMENT_NAME_VALUE_PAIR {
|
|
LPWSTR pwszName;
|
|
LPWSTR pwszValue;
|
|
} CRYPT_ENROLLMENT_NAME_VALUE_PAIR,*PCRYPT_ENROLLMENT_NAME_VALUE_PAIR;
|
|
typedef struct _CRYPT_CSP_PROVIDER {
|
|
DWORD dwKeySpec;
|
|
LPWSTR pwszProviderName;
|
|
CRYPT_BIT_BLOB Signature;
|
|
} CRYPT_CSP_PROVIDER,*PCRYPT_CSP_PROVIDER;
|
|
__attribute__((dllimport)) WINBOOL CryptFormatObject (DWORD dwCertEncodingType, DWORD dwFormatType, DWORD dwFormatStrType, void *pFormatStruct, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, void *pbFormat, DWORD *pcbFormat);
|
|
typedef LPVOID ( *PFN_CRYPT_ALLOC)(size_t cbSize);
|
|
typedef void ( *PFN_CRYPT_FREE)(LPVOID pv);
|
|
typedef struct _CRYPT_ENCODE_PARA {
|
|
DWORD cbSize;
|
|
PFN_CRYPT_ALLOC pfnAlloc;
|
|
PFN_CRYPT_FREE pfnFree;
|
|
} CRYPT_ENCODE_PARA,*PCRYPT_ENCODE_PARA;
|
|
__attribute__((dllimport)) WINBOOL CryptEncodeObjectEx (DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, DWORD dwFlags, PCRYPT_ENCODE_PARA pEncodePara, void *pvEncoded, DWORD *pcbEncoded);
|
|
__attribute__((dllimport)) WINBOOL CryptEncodeObject (DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, BYTE *pbEncoded, DWORD *pcbEncoded);
|
|
typedef struct _CRYPT_DECODE_PARA {
|
|
DWORD cbSize;
|
|
PFN_CRYPT_ALLOC pfnAlloc;
|
|
PFN_CRYPT_FREE pfnFree;
|
|
} CRYPT_DECODE_PARA,*PCRYPT_DECODE_PARA;
|
|
__attribute__((dllimport)) WINBOOL CryptDecodeObjectEx (DWORD dwCertEncodingType, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, PCRYPT_DECODE_PARA pDecodePara, void *pvStructInfo, DWORD *pcbStructInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptDecodeObject (DWORD dwCertEncodingType, LPCSTR lpszStructType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, void *pvStructInfo, DWORD *pcbStructInfo);
|
|
typedef struct _CERT_EXTENSIONS {
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} CERT_EXTENSIONS,*PCERT_EXTENSIONS;
|
|
typedef struct _CERT_AUTHORITY_KEY_ID_INFO {
|
|
CRYPT_DATA_BLOB KeyId;
|
|
CERT_NAME_BLOB CertIssuer;
|
|
CRYPT_INTEGER_BLOB CertSerialNumber;
|
|
} CERT_AUTHORITY_KEY_ID_INFO,*PCERT_AUTHORITY_KEY_ID_INFO;
|
|
typedef struct _CERT_PRIVATE_KEY_VALIDITY {
|
|
FILETIME NotBefore;
|
|
FILETIME NotAfter;
|
|
} CERT_PRIVATE_KEY_VALIDITY,*PCERT_PRIVATE_KEY_VALIDITY;
|
|
typedef struct _CERT_KEY_ATTRIBUTES_INFO {
|
|
CRYPT_DATA_BLOB KeyId;
|
|
CRYPT_BIT_BLOB IntendedKeyUsage;
|
|
PCERT_PRIVATE_KEY_VALIDITY pPrivateKeyUsagePeriod;
|
|
} CERT_KEY_ATTRIBUTES_INFO,*PCERT_KEY_ATTRIBUTES_INFO;
|
|
typedef struct _CERT_POLICY_ID {
|
|
DWORD cCertPolicyElementId;
|
|
LPSTR *rgpszCertPolicyElementId;
|
|
} CERT_POLICY_ID,*PCERT_POLICY_ID;
|
|
typedef struct _CERT_KEY_USAGE_RESTRICTION_INFO {
|
|
DWORD cCertPolicyId;
|
|
PCERT_POLICY_ID rgCertPolicyId;
|
|
CRYPT_BIT_BLOB RestrictedKeyUsage;
|
|
} CERT_KEY_USAGE_RESTRICTION_INFO,*PCERT_KEY_USAGE_RESTRICTION_INFO;
|
|
typedef struct _CERT_OTHER_NAME {
|
|
LPSTR pszObjId;
|
|
CRYPT_OBJID_BLOB Value;
|
|
} CERT_OTHER_NAME,*PCERT_OTHER_NAME;
|
|
typedef struct _CERT_ALT_NAME_ENTRY {
|
|
DWORD dwAltNameChoice;
|
|
__extension__ union {
|
|
PCERT_OTHER_NAME pOtherName;
|
|
LPWSTR pwszRfc822Name;
|
|
LPWSTR pwszDNSName;
|
|
CERT_NAME_BLOB DirectoryName;
|
|
LPWSTR pwszURL;
|
|
CRYPT_DATA_BLOB IPAddress;
|
|
LPSTR pszRegisteredID;
|
|
};
|
|
} CERT_ALT_NAME_ENTRY,*PCERT_ALT_NAME_ENTRY;
|
|
typedef struct _CERT_ALT_NAME_INFO {
|
|
DWORD cAltEntry;
|
|
PCERT_ALT_NAME_ENTRY rgAltEntry;
|
|
} CERT_ALT_NAME_INFO,*PCERT_ALT_NAME_INFO;
|
|
typedef struct _CERT_BASIC_CONSTRAINTS_INFO {
|
|
CRYPT_BIT_BLOB SubjectType;
|
|
WINBOOL fPathLenConstraint;
|
|
DWORD dwPathLenConstraint;
|
|
DWORD cSubtreesConstraint;
|
|
CERT_NAME_BLOB *rgSubtreesConstraint;
|
|
} CERT_BASIC_CONSTRAINTS_INFO, *PCERT_BASIC_CONSTRAINTS_INFO;
|
|
typedef struct _CERT_BASIC_CONSTRAINTS2_INFO {
|
|
WINBOOL fCA;
|
|
WINBOOL fPathLenConstraint;
|
|
DWORD dwPathLenConstraint;
|
|
} CERT_BASIC_CONSTRAINTS2_INFO,*PCERT_BASIC_CONSTRAINTS2_INFO;
|
|
typedef struct _CERT_POLICY_QUALIFIER_INFO {
|
|
LPSTR pszPolicyQualifierId;
|
|
CRYPT_OBJID_BLOB Qualifier;
|
|
} CERT_POLICY_QUALIFIER_INFO,*PCERT_POLICY_QUALIFIER_INFO;
|
|
typedef struct _CERT_POLICY_INFO {
|
|
LPSTR pszPolicyIdentifier;
|
|
DWORD cPolicyQualifier;
|
|
CERT_POLICY_QUALIFIER_INFO *rgPolicyQualifier;
|
|
} CERT_POLICY_INFO,*PCERT_POLICY_INFO;
|
|
typedef struct _CERT_POLICIES_INFO {
|
|
DWORD cPolicyInfo;
|
|
CERT_POLICY_INFO *rgPolicyInfo;
|
|
} CERT_POLICIES_INFO,*PCERT_POLICIES_INFO;
|
|
typedef struct _CERT_POLICY_QUALIFIER_NOTICE_REFERENCE {
|
|
LPSTR pszOrganization;
|
|
DWORD cNoticeNumbers;
|
|
int *rgNoticeNumbers;
|
|
} CERT_POLICY_QUALIFIER_NOTICE_REFERENCE,*PCERT_POLICY_QUALIFIER_NOTICE_REFERENCE;
|
|
typedef struct _CERT_POLICY_QUALIFIER_USER_NOTICE {
|
|
CERT_POLICY_QUALIFIER_NOTICE_REFERENCE *pNoticeReference;
|
|
LPWSTR pszDisplayText;
|
|
} CERT_POLICY_QUALIFIER_USER_NOTICE,*PCERT_POLICY_QUALIFIER_USER_NOTICE;
|
|
typedef struct _CPS_URLS {
|
|
LPWSTR pszURL;
|
|
CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm;
|
|
CRYPT_DATA_BLOB *pDigest;
|
|
} CPS_URLS,*PCPS_URLS;
|
|
typedef struct _CERT_POLICY95_QUALIFIER1 {
|
|
LPWSTR pszPracticesReference;
|
|
LPSTR pszNoticeIdentifier;
|
|
LPSTR pszNSINoticeIdentifier;
|
|
DWORD cCPSURLs;
|
|
CPS_URLS *rgCPSURLs;
|
|
} CERT_POLICY95_QUALIFIER1,*PCERT_POLICY95_QUALIFIER1;
|
|
typedef struct _CERT_POLICY_MAPPING {
|
|
LPSTR pszIssuerDomainPolicy;
|
|
LPSTR pszSubjectDomainPolicy;
|
|
} CERT_POLICY_MAPPING,*PCERT_POLICY_MAPPING;
|
|
typedef struct _CERT_POLICY_MAPPINGS_INFO {
|
|
DWORD cPolicyMapping;
|
|
PCERT_POLICY_MAPPING rgPolicyMapping;
|
|
} CERT_POLICY_MAPPINGS_INFO,*PCERT_POLICY_MAPPINGS_INFO;
|
|
typedef struct _CERT_POLICY_CONSTRAINTS_INFO {
|
|
WINBOOL fRequireExplicitPolicy;
|
|
DWORD dwRequireExplicitPolicySkipCerts;
|
|
WINBOOL fInhibitPolicyMapping;
|
|
DWORD dwInhibitPolicyMappingSkipCerts;
|
|
} CERT_POLICY_CONSTRAINTS_INFO,*PCERT_POLICY_CONSTRAINTS_INFO;
|
|
typedef struct _CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY {
|
|
LPSTR pszObjId;
|
|
DWORD cValue;
|
|
PCRYPT_DER_BLOB rgValue;
|
|
} CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY,*PCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY;
|
|
typedef struct _CRYPT_CONTENT_INFO {
|
|
LPSTR pszObjId;
|
|
CRYPT_DER_BLOB Content;
|
|
} CRYPT_CONTENT_INFO,*PCRYPT_CONTENT_INFO;
|
|
typedef struct _CRYPT_SEQUENCE_OF_ANY {
|
|
DWORD cValue;
|
|
PCRYPT_DER_BLOB rgValue;
|
|
} CRYPT_SEQUENCE_OF_ANY,*PCRYPT_SEQUENCE_OF_ANY;
|
|
typedef struct _CERT_AUTHORITY_KEY_ID2_INFO {
|
|
CRYPT_DATA_BLOB KeyId;
|
|
CERT_ALT_NAME_INFO AuthorityCertIssuer;
|
|
CRYPT_INTEGER_BLOB AuthorityCertSerialNumber;
|
|
} CERT_AUTHORITY_KEY_ID2_INFO,*PCERT_AUTHORITY_KEY_ID2_INFO;
|
|
typedef struct _CERT_ACCESS_DESCRIPTION {
|
|
LPSTR pszAccessMethod;
|
|
CERT_ALT_NAME_ENTRY AccessLocation;
|
|
} CERT_ACCESS_DESCRIPTION,*PCERT_ACCESS_DESCRIPTION;
|
|
typedef struct _CERT_AUTHORITY_INFO_ACCESS {
|
|
DWORD cAccDescr;
|
|
PCERT_ACCESS_DESCRIPTION rgAccDescr;
|
|
} CERT_AUTHORITY_INFO_ACCESS,*PCERT_AUTHORITY_INFO_ACCESS;
|
|
typedef CERT_AUTHORITY_INFO_ACCESS CERT_SUBJECT_INFO_ACCESS,*PCERT_SUBJECT_INFO_ACCESS;
|
|
typedef struct _CRL_DIST_POINT_NAME {
|
|
DWORD dwDistPointNameChoice;
|
|
__extension__ union {
|
|
CERT_ALT_NAME_INFO FullName;
|
|
};
|
|
} CRL_DIST_POINT_NAME,*PCRL_DIST_POINT_NAME;
|
|
typedef struct _CRL_DIST_POINT {
|
|
CRL_DIST_POINT_NAME DistPointName;
|
|
CRYPT_BIT_BLOB ReasonFlags;
|
|
CERT_ALT_NAME_INFO CRLIssuer;
|
|
} CRL_DIST_POINT,*PCRL_DIST_POINT;
|
|
typedef struct _CRL_DIST_POINTS_INFO {
|
|
DWORD cDistPoint;
|
|
PCRL_DIST_POINT rgDistPoint;
|
|
} CRL_DIST_POINTS_INFO,*PCRL_DIST_POINTS_INFO;
|
|
typedef struct _CROSS_CERT_DIST_POINTS_INFO {
|
|
DWORD dwSyncDeltaTime;
|
|
DWORD cDistPoint;
|
|
PCERT_ALT_NAME_INFO rgDistPoint;
|
|
} CROSS_CERT_DIST_POINTS_INFO,*PCROSS_CERT_DIST_POINTS_INFO;
|
|
typedef struct _CERT_PAIR {
|
|
CERT_BLOB Forward;
|
|
CERT_BLOB Reverse;
|
|
} CERT_PAIR,*PCERT_PAIR;
|
|
typedef struct _CRL_ISSUING_DIST_POINT {
|
|
CRL_DIST_POINT_NAME DistPointName;
|
|
WINBOOL fOnlyContainsUserCerts;
|
|
WINBOOL fOnlyContainsCACerts;
|
|
CRYPT_BIT_BLOB OnlySomeReasonFlags;
|
|
WINBOOL fIndirectCRL;
|
|
} CRL_ISSUING_DIST_POINT,*PCRL_ISSUING_DIST_POINT;
|
|
typedef struct _CERT_GENERAL_SUBTREE {
|
|
CERT_ALT_NAME_ENTRY Base;
|
|
DWORD dwMinimum;
|
|
WINBOOL fMaximum;
|
|
DWORD dwMaximum;
|
|
} CERT_GENERAL_SUBTREE,*PCERT_GENERAL_SUBTREE;
|
|
typedef struct _CERT_NAME_CONSTRAINTS_INFO {
|
|
DWORD cPermittedSubtree;
|
|
PCERT_GENERAL_SUBTREE rgPermittedSubtree;
|
|
DWORD cExcludedSubtree;
|
|
PCERT_GENERAL_SUBTREE rgExcludedSubtree;
|
|
} CERT_NAME_CONSTRAINTS_INFO,*PCERT_NAME_CONSTRAINTS_INFO;
|
|
typedef struct _CERT_DSS_PARAMETERS {
|
|
CRYPT_UINT_BLOB p;
|
|
CRYPT_UINT_BLOB q;
|
|
CRYPT_UINT_BLOB g;
|
|
} CERT_DSS_PARAMETERS,*PCERT_DSS_PARAMETERS;
|
|
typedef struct _CERT_DH_PARAMETERS {
|
|
CRYPT_UINT_BLOB p;
|
|
CRYPT_UINT_BLOB g;
|
|
} CERT_DH_PARAMETERS,*PCERT_DH_PARAMETERS;
|
|
typedef struct _CERT_ECC_SIGNATURE {
|
|
CRYPT_UINT_BLOB r;
|
|
CRYPT_UINT_BLOB s;
|
|
} CERT_ECC_SIGNATURE,*PCERT_ECC_SIGNATURE;
|
|
typedef struct _CERT_X942_DH_VALIDATION_PARAMS {
|
|
CRYPT_BIT_BLOB seed;
|
|
DWORD pgenCounter;
|
|
} CERT_X942_DH_VALIDATION_PARAMS,*PCERT_X942_DH_VALIDATION_PARAMS;
|
|
typedef struct _CERT_X942_DH_PARAMETERS {
|
|
CRYPT_UINT_BLOB p;
|
|
CRYPT_UINT_BLOB g;
|
|
CRYPT_UINT_BLOB q;
|
|
CRYPT_UINT_BLOB j;
|
|
PCERT_X942_DH_VALIDATION_PARAMS pValidationParams;
|
|
} CERT_X942_DH_PARAMETERS,*PCERT_X942_DH_PARAMETERS;
|
|
typedef struct _CRYPT_X942_OTHER_INFO {
|
|
LPSTR pszContentEncryptionObjId;
|
|
BYTE rgbCounter[4];
|
|
BYTE rgbKeyLength[4];
|
|
CRYPT_DATA_BLOB PubInfo;
|
|
} CRYPT_X942_OTHER_INFO,*PCRYPT_X942_OTHER_INFO;
|
|
typedef struct _CRYPT_ECC_CMS_SHARED_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
|
|
CRYPT_DATA_BLOB EntityUInfo;
|
|
BYTE rgbSuppPubInfo[4];
|
|
} CRYPT_ECC_CMS_SHARED_INFO,*PCRYPT_ECC_CMS_SHARED_INFO;
|
|
typedef struct _CRYPT_RC2_CBC_PARAMETERS {
|
|
DWORD dwVersion;
|
|
WINBOOL fIV;
|
|
BYTE rgbIV[8];
|
|
} CRYPT_RC2_CBC_PARAMETERS,*PCRYPT_RC2_CBC_PARAMETERS;
|
|
typedef struct _CRYPT_SMIME_CAPABILITY {
|
|
LPSTR pszObjId;
|
|
CRYPT_OBJID_BLOB Parameters;
|
|
} CRYPT_SMIME_CAPABILITY,*PCRYPT_SMIME_CAPABILITY;
|
|
typedef struct _CRYPT_SMIME_CAPABILITIES {
|
|
DWORD cCapability;
|
|
PCRYPT_SMIME_CAPABILITY rgCapability;
|
|
} CRYPT_SMIME_CAPABILITIES,*PCRYPT_SMIME_CAPABILITIES;
|
|
typedef struct _CERT_QC_STATEMENT {
|
|
LPSTR pszStatementId;
|
|
CRYPT_OBJID_BLOB StatementInfo;
|
|
} CERT_QC_STATEMENT,*PCERT_QC_STATEMENT;
|
|
typedef struct _CERT_QC_STATEMENTS_EXT_INFO {
|
|
DWORD cStatement;
|
|
PCERT_QC_STATEMENT rgStatement;
|
|
} CERT_QC_STATEMENTS_EXT_INFO,*PCERT_QC_STATEMENTS_EXT_INFO;
|
|
typedef struct _CRYPT_MASK_GEN_ALGORITHM {
|
|
LPSTR pszObjId;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
} CRYPT_MASK_GEN_ALGORITHM,*PCRYPT_MASK_GEN_ALGORITHM;
|
|
typedef struct _CRYPT_RSA_SSA_PSS_PARAMETERS {
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_MASK_GEN_ALGORITHM MaskGenAlgorithm;
|
|
DWORD dwSaltLength;
|
|
DWORD dwTrailerField;
|
|
} CRYPT_RSA_SSA_PSS_PARAMETERS,*PCRYPT_RSA_SSA_PSS_PARAMETERS;
|
|
typedef struct _CRYPT_PSOURCE_ALGORITHM {
|
|
LPSTR pszObjId;
|
|
CRYPT_DATA_BLOB EncodingParameters;
|
|
} CRYPT_PSOURCE_ALGORITHM,*PCRYPT_PSOURCE_ALGORITHM;
|
|
typedef struct _CRYPT_RSAES_OAEP_PARAMETERS {
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_MASK_GEN_ALGORITHM MaskGenAlgorithm;
|
|
CRYPT_PSOURCE_ALGORITHM PSourceAlgorithm;
|
|
} CRYPT_RSAES_OAEP_PARAMETERS,*PCRYPT_RSAES_OAEP_PARAMETERS;
|
|
typedef struct _CMC_TAGGED_ATTRIBUTE {
|
|
DWORD dwBodyPartID;
|
|
CRYPT_ATTRIBUTE Attribute;
|
|
} CMC_TAGGED_ATTRIBUTE,*PCMC_TAGGED_ATTRIBUTE;
|
|
typedef struct _CMC_TAGGED_CERT_REQUEST {
|
|
DWORD dwBodyPartID;
|
|
CRYPT_DER_BLOB SignedCertRequest;
|
|
} CMC_TAGGED_CERT_REQUEST,*PCMC_TAGGED_CERT_REQUEST;
|
|
typedef struct _CMC_TAGGED_REQUEST {
|
|
DWORD dwTaggedRequestChoice;
|
|
__extension__ union {
|
|
PCMC_TAGGED_CERT_REQUEST pTaggedCertRequest;
|
|
};
|
|
} CMC_TAGGED_REQUEST,*PCMC_TAGGED_REQUEST;
|
|
typedef struct _CMC_TAGGED_CONTENT_INFO {
|
|
DWORD dwBodyPartID;
|
|
CRYPT_DER_BLOB EncodedContentInfo;
|
|
} CMC_TAGGED_CONTENT_INFO,*PCMC_TAGGED_CONTENT_INFO;
|
|
typedef struct _CMC_TAGGED_OTHER_MSG {
|
|
DWORD dwBodyPartID;
|
|
LPSTR pszObjId;
|
|
CRYPT_OBJID_BLOB Value;
|
|
} CMC_TAGGED_OTHER_MSG,*PCMC_TAGGED_OTHER_MSG;
|
|
typedef struct _CMC_DATA_INFO {
|
|
DWORD cTaggedAttribute;
|
|
PCMC_TAGGED_ATTRIBUTE rgTaggedAttribute;
|
|
DWORD cTaggedRequest;
|
|
PCMC_TAGGED_REQUEST rgTaggedRequest;
|
|
DWORD cTaggedContentInfo;
|
|
PCMC_TAGGED_CONTENT_INFO rgTaggedContentInfo;
|
|
DWORD cTaggedOtherMsg;
|
|
PCMC_TAGGED_OTHER_MSG rgTaggedOtherMsg;
|
|
} CMC_DATA_INFO,*PCMC_DATA_INFO;
|
|
typedef struct _CMC_RESPONSE_INFO {
|
|
DWORD cTaggedAttribute;
|
|
PCMC_TAGGED_ATTRIBUTE rgTaggedAttribute;
|
|
DWORD cTaggedContentInfo;
|
|
PCMC_TAGGED_CONTENT_INFO rgTaggedContentInfo;
|
|
DWORD cTaggedOtherMsg;
|
|
PCMC_TAGGED_OTHER_MSG rgTaggedOtherMsg;
|
|
} CMC_RESPONSE_INFO,*PCMC_RESPONSE_INFO;
|
|
typedef struct _CMC_PEND_INFO {
|
|
CRYPT_DATA_BLOB PendToken;
|
|
FILETIME PendTime;
|
|
} CMC_PEND_INFO,*PCMC_PEND_INFO;
|
|
typedef struct _CMC_STATUS_INFO {
|
|
DWORD dwStatus;
|
|
DWORD cBodyList;
|
|
DWORD *rgdwBodyList;
|
|
LPWSTR pwszStatusString;
|
|
DWORD dwOtherInfoChoice;
|
|
__extension__ union {
|
|
DWORD dwFailInfo;
|
|
PCMC_PEND_INFO pPendInfo;
|
|
};
|
|
} CMC_STATUS_INFO,*PCMC_STATUS_INFO;
|
|
typedef struct _CMC_ADD_EXTENSIONS_INFO {
|
|
DWORD dwCmcDataReference;
|
|
DWORD cCertReference;
|
|
DWORD *rgdwCertReference;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} CMC_ADD_EXTENSIONS_INFO,*PCMC_ADD_EXTENSIONS_INFO;
|
|
typedef struct _CMC_ADD_ATTRIBUTES_INFO {
|
|
DWORD dwCmcDataReference;
|
|
DWORD cCertReference;
|
|
DWORD *rgdwCertReference;
|
|
DWORD cAttribute;
|
|
PCRYPT_ATTRIBUTE rgAttribute;
|
|
} CMC_ADD_ATTRIBUTES_INFO,*PCMC_ADD_ATTRIBUTES_INFO;
|
|
typedef struct _CERT_TEMPLATE_EXT {
|
|
LPSTR pszObjId;
|
|
DWORD dwMajorVersion;
|
|
WINBOOL fMinorVersion;
|
|
DWORD dwMinorVersion;
|
|
} CERT_TEMPLATE_EXT,*PCERT_TEMPLATE_EXT;
|
|
typedef struct _CERT_HASHED_URL {
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_HASH_BLOB Hash;
|
|
LPWSTR pwszUrl;
|
|
} CERT_HASHED_URL,*PCERT_HASHED_URL;
|
|
typedef struct _CERT_LOGOTYPE_DETAILS {
|
|
LPWSTR pwszMimeType;
|
|
DWORD cHashedUrl;
|
|
PCERT_HASHED_URL rgHashedUrl;
|
|
} CERT_LOGOTYPE_DETAILS,*PCERT_LOGOTYPE_DETAILS;
|
|
typedef struct _CERT_LOGOTYPE_REFERENCE {
|
|
DWORD cHashedUrl;
|
|
PCERT_HASHED_URL rgHashedUrl;
|
|
} CERT_LOGOTYPE_REFERENCE,*PCERT_LOGOTYPE_REFERENCE;
|
|
typedef struct _CERT_LOGOTYPE_IMAGE_INFO {
|
|
DWORD dwLogotypeImageInfoChoice;
|
|
DWORD dwFileSize;
|
|
DWORD dwXSize;
|
|
DWORD dwYSize;
|
|
DWORD dwLogotypeImageResolutionChoice;
|
|
__extension__ union {
|
|
DWORD dwNumBits;
|
|
DWORD dwTableSize;
|
|
};
|
|
LPWSTR pwszLanguage;
|
|
} CERT_LOGOTYPE_IMAGE_INFO,*PCERT_LOGOTYPE_IMAGE_INFO;
|
|
typedef struct _CERT_LOGOTYPE_IMAGE {
|
|
CERT_LOGOTYPE_DETAILS LogotypeDetails;
|
|
PCERT_LOGOTYPE_IMAGE_INFO pLogotypeImageInfo;
|
|
} CERT_LOGOTYPE_IMAGE,*PCERT_LOGOTYPE_IMAGE;
|
|
typedef struct _CERT_LOGOTYPE_AUDIO_INFO {
|
|
DWORD dwFileSize;
|
|
DWORD dwPlayTime;
|
|
DWORD dwChannels;
|
|
DWORD dwSampleRate;
|
|
LPWSTR pwszLanguage;
|
|
} CERT_LOGOTYPE_AUDIO_INFO,*PCERT_LOGOTYPE_AUDIO_INFO;
|
|
typedef struct _CERT_LOGOTYPE_AUDIO {
|
|
CERT_LOGOTYPE_DETAILS LogotypeDetails;
|
|
PCERT_LOGOTYPE_AUDIO_INFO pLogotypeAudioInfo;
|
|
} CERT_LOGOTYPE_AUDIO,*PCERT_LOGOTYPE_AUDIO;
|
|
typedef struct _CERT_LOGOTYPE_DATA {
|
|
DWORD cLogotypeImage;
|
|
PCERT_LOGOTYPE_IMAGE rgLogotypeImage;
|
|
DWORD cLogotypeAudio;
|
|
PCERT_LOGOTYPE_AUDIO rgLogotypeAudio;
|
|
} CERT_LOGOTYPE_DATA,*PCERT_LOGOTYPE_DATA;
|
|
typedef struct _CERT_LOGOTYPE_INFO {
|
|
DWORD dwLogotypeInfoChoice;
|
|
__extension__ union {
|
|
PCERT_LOGOTYPE_DATA pLogotypeDirectInfo;
|
|
PCERT_LOGOTYPE_REFERENCE pLogotypeIndirectInfo;
|
|
};
|
|
} CERT_LOGOTYPE_INFO,*PCERT_LOGOTYPE_INFO;
|
|
typedef struct _CERT_OTHER_LOGOTYPE_INFO {
|
|
LPSTR pszObjId;
|
|
CERT_LOGOTYPE_INFO LogotypeInfo;
|
|
} CERT_OTHER_LOGOTYPE_INFO,*PCERT_OTHER_LOGOTYPE_INFO;
|
|
typedef struct _CERT_LOGOTYPE_EXT_INFO {
|
|
DWORD cCommunityLogo;
|
|
PCERT_LOGOTYPE_INFO rgCommunityLogo;
|
|
PCERT_LOGOTYPE_INFO pIssuerLogo;
|
|
PCERT_LOGOTYPE_INFO pSubjectLogo;
|
|
DWORD cOtherLogo;
|
|
PCERT_OTHER_LOGOTYPE_INFO rgOtherLogo;
|
|
} CERT_LOGOTYPE_EXT_INFO,*PCERT_LOGOTYPE_EXT_INFO;
|
|
typedef struct _CERT_BIOMETRIC_DATA {
|
|
DWORD dwTypeOfBiometricDataChoice;
|
|
__extension__ union {
|
|
DWORD dwPredefined;
|
|
LPSTR pszObjId;
|
|
};
|
|
CERT_HASHED_URL HashedUrl;
|
|
} CERT_BIOMETRIC_DATA,*PCERT_BIOMETRIC_DATA;
|
|
typedef struct _CERT_BIOMETRIC_EXT_INFO {
|
|
DWORD cBiometricData;
|
|
PCERT_BIOMETRIC_DATA rgBiometricData;
|
|
} CERT_BIOMETRIC_EXT_INFO,*PCERT_BIOMETRIC_EXT_INFO;
|
|
typedef struct _OCSP_SIGNATURE_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
|
|
CRYPT_BIT_BLOB Signature;
|
|
DWORD cCertEncoded;
|
|
PCERT_BLOB rgCertEncoded;
|
|
} OCSP_SIGNATURE_INFO,*POCSP_SIGNATURE_INFO;
|
|
typedef struct _OCSP_SIGNED_REQUEST_INFO {
|
|
CRYPT_DER_BLOB ToBeSigned;
|
|
POCSP_SIGNATURE_INFO pOptionalSignatureInfo;
|
|
} OCSP_SIGNED_REQUEST_INFO,*POCSP_SIGNED_REQUEST_INFO;
|
|
typedef struct _OCSP_CERT_ID {
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_HASH_BLOB IssuerNameHash;
|
|
CRYPT_HASH_BLOB IssuerKeyHash;
|
|
CRYPT_INTEGER_BLOB SerialNumber;
|
|
} OCSP_CERT_ID,*POCSP_CERT_ID;
|
|
typedef struct _OCSP_REQUEST_ENTRY {
|
|
OCSP_CERT_ID CertId;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} OCSP_REQUEST_ENTRY,*POCSP_REQUEST_ENTRY;
|
|
typedef struct _OCSP_REQUEST_INFO {
|
|
DWORD dwVersion;
|
|
PCERT_ALT_NAME_ENTRY pRequestorName;
|
|
DWORD cRequestEntry;
|
|
POCSP_REQUEST_ENTRY rgRequestEntry;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} OCSP_REQUEST_INFO,*POCSP_REQUEST_INFO;
|
|
typedef struct _OCSP_RESPONSE_INFO {
|
|
DWORD dwStatus;
|
|
LPSTR pszObjId;
|
|
CRYPT_OBJID_BLOB Value;
|
|
} OCSP_RESPONSE_INFO,*POCSP_RESPONSE_INFO;
|
|
typedef struct _OCSP_BASIC_SIGNED_RESPONSE_INFO {
|
|
CRYPT_DER_BLOB ToBeSigned;
|
|
OCSP_SIGNATURE_INFO SignatureInfo;
|
|
} OCSP_BASIC_SIGNED_RESPONSE_INFO,*POCSP_BASIC_SIGNED_RESPONSE_INFO;
|
|
typedef struct _OCSP_BASIC_REVOKED_INFO {
|
|
FILETIME RevocationDate;
|
|
DWORD dwCrlReasonCode;
|
|
} OCSP_BASIC_REVOKED_INFO,*POCSP_BASIC_REVOKED_INFO;
|
|
typedef struct _OCSP_BASIC_RESPONSE_ENTRY {
|
|
OCSP_CERT_ID CertId;
|
|
DWORD dwCertStatus;
|
|
__extension__ union {
|
|
POCSP_BASIC_REVOKED_INFO pRevokedInfo;
|
|
};
|
|
FILETIME ThisUpdate;
|
|
FILETIME NextUpdate;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} OCSP_BASIC_RESPONSE_ENTRY,*POCSP_BASIC_RESPONSE_ENTRY;
|
|
typedef struct _OCSP_BASIC_RESPONSE_INFO {
|
|
DWORD dwVersion;
|
|
DWORD dwResponderIdChoice;
|
|
__extension__ union {
|
|
CERT_NAME_BLOB ByNameResponderId;
|
|
CRYPT_HASH_BLOB ByKeyResponderId;
|
|
};
|
|
FILETIME ProducedAt;
|
|
DWORD cResponseEntry;
|
|
POCSP_BASIC_RESPONSE_ENTRY rgResponseEntry;
|
|
DWORD cExtension;
|
|
PCERT_EXTENSION rgExtension;
|
|
} OCSP_BASIC_RESPONSE_INFO,*POCSP_BASIC_RESPONSE_INFO;
|
|
typedef struct _CERT_SUPPORTED_ALGORITHM_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER Algorithm;
|
|
CRYPT_BIT_BLOB IntendedKeyUsage;
|
|
CERT_POLICIES_INFO IntendedCertPolicies;
|
|
} CERT_SUPPORTED_ALGORITHM_INFO, *PCERT_SUPPORTED_ALGORITHM_INFO;
|
|
typedef struct _CERT_TPM_SPECIFICATION_INFO {
|
|
LPWSTR pwszFamily;
|
|
DWORD dwLevel;
|
|
DWORD dwRevision;
|
|
} CERT_TPM_SPECIFICATION_INFO, *PCERT_TPM_SPECIFICATION_INFO;
|
|
typedef void *HCRYPTOIDFUNCSET;
|
|
typedef void *HCRYPTOIDFUNCADDR;
|
|
typedef struct _CRYPT_OID_FUNC_ENTRY {
|
|
LPCSTR pszOID;
|
|
void *pvFuncAddr;
|
|
} CRYPT_OID_FUNC_ENTRY,*PCRYPT_OID_FUNC_ENTRY;
|
|
__attribute__((dllimport)) WINBOOL CryptInstallOIDFunctionAddress (HMODULE hModule, DWORD dwEncodingType, LPCSTR pszFuncName, DWORD cFuncEntry, const CRYPT_OID_FUNC_ENTRY rgFuncEntry[], DWORD dwFlags);
|
|
__attribute__((dllimport)) HCRYPTOIDFUNCSET CryptInitOIDFunctionSet (LPCSTR pszFuncName, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptGetOIDFunctionAddress (HCRYPTOIDFUNCSET hFuncSet, DWORD dwEncodingType, LPCSTR pszOID, DWORD dwFlags, void **ppvFuncAddr, HCRYPTOIDFUNCADDR *phFuncAddr);
|
|
__attribute__((dllimport)) WINBOOL CryptGetDefaultOIDDllList (HCRYPTOIDFUNCSET hFuncSet, DWORD dwEncodingType, WCHAR *pwszDllList, DWORD *pcchDllList);
|
|
__attribute__((dllimport)) WINBOOL CryptGetDefaultOIDFunctionAddress (HCRYPTOIDFUNCSET hFuncSet, DWORD dwEncodingType, LPCWSTR pwszDll, DWORD dwFlags, void **ppvFuncAddr, HCRYPTOIDFUNCADDR *phFuncAddr);
|
|
__attribute__((dllimport)) WINBOOL CryptFreeOIDFunctionAddress (HCRYPTOIDFUNCADDR hFuncAddr, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptRegisterOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, LPCWSTR pwszDll, LPCSTR pszOverrideFuncName);
|
|
__attribute__((dllimport)) WINBOOL CryptUnregisterOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID);
|
|
__attribute__((dllimport)) WINBOOL CryptRegisterDefaultOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, DWORD dwIndex, LPCWSTR pwszDll);
|
|
__attribute__((dllimport)) WINBOOL CryptUnregisterDefaultOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCWSTR pwszDll);
|
|
__attribute__((dllimport)) WINBOOL CryptSetOIDFunctionValue (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, LPCWSTR pwszValueName, DWORD dwValueType, const BYTE *pbValueData, DWORD cbValueData);
|
|
__attribute__((dllimport)) WINBOOL CryptGetOIDFunctionValue (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, LPCWSTR pwszValueName, DWORD *pdwValueType, BYTE *pbValueData, DWORD *pcbValueData);
|
|
typedef WINBOOL ( *PFN_CRYPT_ENUM_OID_FUNC) (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, DWORD cValue, const DWORD rgdwValueType[], LPCWSTR const rgpwszValueName[], const BYTE *const rgpbValueData[], const DWORD rgcbValueData[], void *pvArg);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumOIDFunction (DWORD dwEncodingType, LPCSTR pszFuncName, LPCSTR pszOID, DWORD dwFlags, void *pvArg, PFN_CRYPT_ENUM_OID_FUNC pfnEnumOIDFunc);
|
|
typedef struct _CRYPT_OID_INFO {
|
|
DWORD cbSize;
|
|
LPCSTR pszOID;
|
|
LPCWSTR pwszName;
|
|
DWORD dwGroupId;
|
|
__extension__ union {
|
|
DWORD dwValue;
|
|
ALG_ID Algid;
|
|
DWORD dwLength;
|
|
};
|
|
CRYPT_DATA_BLOB ExtraInfo;
|
|
} CRYPT_OID_INFO,*PCRYPT_OID_INFO;
|
|
typedef const CRYPT_OID_INFO CCRYPT_OID_INFO,*PCCRYPT_OID_INFO;
|
|
__attribute__((dllimport)) PCCRYPT_OID_INFO CryptFindOIDInfo (DWORD dwKeyType, void *pvKey, DWORD dwGroupId);
|
|
typedef WINBOOL ( *PFN_CRYPT_ENUM_OID_INFO) (PCCRYPT_OID_INFO pInfo, void *pvArg);
|
|
__attribute__((dllimport)) WINBOOL CryptRegisterOIDInfo (PCCRYPT_OID_INFO pInfo, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptUnregisterOIDInfo (PCCRYPT_OID_INFO pInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumOIDInfo (DWORD dwGroupId, DWORD dwFlags, void *pvArg, PFN_CRYPT_ENUM_OID_INFO pfnEnumOIDInfo);
|
|
__attribute__((dllimport)) LPCWSTR CryptFindLocalizedName (LPCWSTR pwszCryptName);
|
|
typedef struct _CERT_STRONG_SIGN_SERIALIZED_INFO {
|
|
DWORD dwFlags;
|
|
LPWSTR pwszCNGSignHashAlgids;
|
|
LPWSTR pwszCNGPubKeyMinBitLengths;
|
|
} CERT_STRONG_SIGN_SERIALIZED_INFO,*PCERT_STRONG_SIGN_SERIALIZED_INFO;
|
|
typedef struct _CERT_STRONG_SIGN_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwInfoChoice;
|
|
__extension__ union {
|
|
void *pvInfo;
|
|
PCERT_STRONG_SIGN_SERIALIZED_INFO pSerializedInfo;
|
|
LPSTR pszOID;
|
|
};
|
|
} CERT_STRONG_SIGN_PARA,*PCERT_STRONG_SIGN_PARA;
|
|
typedef const CERT_STRONG_SIGN_PARA *PCCERT_STRONG_SIGN_PARA;
|
|
typedef void *HCRYPTMSG;
|
|
typedef struct _CERT_ISSUER_SERIAL_NUMBER {
|
|
CERT_NAME_BLOB Issuer;
|
|
CRYPT_INTEGER_BLOB SerialNumber;
|
|
} CERT_ISSUER_SERIAL_NUMBER,*PCERT_ISSUER_SERIAL_NUMBER;
|
|
typedef struct _CERT_ID {
|
|
DWORD dwIdChoice;
|
|
__extension__ union {
|
|
CERT_ISSUER_SERIAL_NUMBER IssuerSerialNumber;
|
|
CRYPT_HASH_BLOB KeyId;
|
|
CRYPT_HASH_BLOB HashId;
|
|
};
|
|
} CERT_ID,*PCERT_ID;
|
|
typedef struct _CMSG_SIGNER_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
PCERT_INFO pCertInfo;
|
|
__extension__ union {
|
|
HCRYPTPROV hCryptProv;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
};
|
|
DWORD dwKeySpec;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
void *pvHashAuxInfo;
|
|
DWORD cAuthAttr;
|
|
PCRYPT_ATTRIBUTE rgAuthAttr;
|
|
DWORD cUnauthAttr;
|
|
PCRYPT_ATTRIBUTE rgUnauthAttr;
|
|
} CMSG_SIGNER_ENCODE_INFO,*PCMSG_SIGNER_ENCODE_INFO;
|
|
typedef struct _CMSG_SIGNED_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
DWORD cSigners;
|
|
PCMSG_SIGNER_ENCODE_INFO rgSigners;
|
|
DWORD cCertEncoded;
|
|
PCERT_BLOB rgCertEncoded;
|
|
DWORD cCrlEncoded;
|
|
PCRL_BLOB rgCrlEncoded;
|
|
} CMSG_SIGNED_ENCODE_INFO,*PCMSG_SIGNED_ENCODE_INFO;
|
|
typedef struct _CMSG_RECIPIENT_ENCODE_INFO CMSG_RECIPIENT_ENCODE_INFO,*PCMSG_RECIPIENT_ENCODE_INFO;
|
|
typedef struct _CMSG_ENVELOPED_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
|
|
void *pvEncryptionAuxInfo;
|
|
DWORD cRecipients;
|
|
PCERT_INFO *rgpRecipients;
|
|
} CMSG_ENVELOPED_ENCODE_INFO,*PCMSG_ENVELOPED_ENCODE_INFO;
|
|
typedef struct _CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
void *pvKeyEncryptionAuxInfo;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
CRYPT_BIT_BLOB RecipientPublicKey;
|
|
CERT_ID RecipientId;
|
|
} CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO,*PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO;
|
|
typedef struct _CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_BIT_BLOB RecipientPublicKey;
|
|
CERT_ID RecipientId;
|
|
FILETIME Date;
|
|
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
|
|
} CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO,*PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO;
|
|
typedef struct _CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
void *pvKeyEncryptionAuxInfo;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyWrapAlgorithm;
|
|
void *pvKeyWrapAuxInfo;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
DWORD dwKeySpec;
|
|
DWORD dwKeyChoice;
|
|
__extension__ union {
|
|
PCRYPT_ALGORITHM_IDENTIFIER pEphemeralAlgorithm;
|
|
PCERT_ID pSenderId;
|
|
};
|
|
CRYPT_DATA_BLOB UserKeyingMaterial;
|
|
DWORD cRecipientEncryptedKeys;
|
|
PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO *rgpRecipientEncryptedKeys;
|
|
} CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO,*PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO;
|
|
typedef struct _CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
void *pvKeyEncryptionAuxInfo;
|
|
HCRYPTPROV hCryptProv;
|
|
DWORD dwKeyChoice;
|
|
__extension__ union {
|
|
HCRYPTKEY hKeyEncryptionKey;
|
|
void *pvKeyEncryptionKey;
|
|
};
|
|
CRYPT_DATA_BLOB KeyId;
|
|
FILETIME Date;
|
|
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
|
|
} CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO,*PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO;
|
|
struct _CMSG_RECIPIENT_ENCODE_INFO {
|
|
DWORD dwRecipientChoice;
|
|
__extension__ union {
|
|
PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTrans;
|
|
PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO pKeyAgree;
|
|
PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO pMailList;
|
|
};
|
|
};
|
|
typedef struct _CMSG_RC2_AUX_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwBitLen;
|
|
} CMSG_RC2_AUX_INFO,*PCMSG_RC2_AUX_INFO;
|
|
typedef struct _CMSG_SP3_COMPATIBLE_AUX_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwFlags;
|
|
} CMSG_SP3_COMPATIBLE_AUX_INFO,*PCMSG_SP3_COMPATIBLE_AUX_INFO;
|
|
typedef struct _CMSG_RC4_AUX_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwBitLen;
|
|
} CMSG_RC4_AUX_INFO,*PCMSG_RC4_AUX_INFO;
|
|
typedef struct _CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
CMSG_SIGNED_ENCODE_INFO SignedInfo;
|
|
CMSG_ENVELOPED_ENCODE_INFO EnvelopedInfo;
|
|
} CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO,*PCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO;
|
|
typedef struct _CMSG_HASHED_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
void *pvHashAuxInfo;
|
|
} CMSG_HASHED_ENCODE_INFO,*PCMSG_HASHED_ENCODE_INFO;
|
|
typedef struct _CMSG_ENCRYPTED_ENCODE_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
|
|
void *pvEncryptionAuxInfo;
|
|
} CMSG_ENCRYPTED_ENCODE_INFO,*PCMSG_ENCRYPTED_ENCODE_INFO;
|
|
typedef WINBOOL ( *PFN_CMSG_STREAM_OUTPUT) (const void *pvArg, BYTE *pbData, DWORD cbData, WINBOOL fFinal);
|
|
typedef struct _CMSG_STREAM_INFO {
|
|
DWORD cbContent;
|
|
PFN_CMSG_STREAM_OUTPUT pfnStreamOutput;
|
|
void *pvArg;
|
|
} CMSG_STREAM_INFO,*PCMSG_STREAM_INFO;
|
|
__attribute__((dllimport)) HCRYPTMSG CryptMsgOpenToEncode (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, void const *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, PCMSG_STREAM_INFO pStreamInfo);
|
|
__attribute__((dllimport)) DWORD CryptMsgCalculateEncodedLength (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, void const *pvMsgEncodeInfo, LPSTR pszInnerContentObjID, DWORD cbData);
|
|
__attribute__((dllimport)) HCRYPTMSG CryptMsgOpenToDecode (DWORD dwMsgEncodingType, DWORD dwFlags, DWORD dwMsgType, HCRYPTPROV_LEGACY hCryptProv, PCERT_INFO pRecipientInfo, PCMSG_STREAM_INFO pStreamInfo);
|
|
__attribute__((dllimport)) HCRYPTMSG CryptMsgDuplicate (HCRYPTMSG hCryptMsg);
|
|
__attribute__((dllimport)) WINBOOL CryptMsgClose (HCRYPTMSG hCryptMsg);
|
|
__attribute__((dllimport)) WINBOOL CryptMsgUpdate (HCRYPTMSG hCryptMsg, const BYTE *pbData, DWORD cbData, WINBOOL fFinal);
|
|
__attribute__((dllimport)) WINBOOL CryptMsgGetParam (HCRYPTMSG hCryptMsg, DWORD dwParamType, DWORD dwIndex, void *pvData, DWORD *pcbData);
|
|
typedef struct _CMSG_SIGNER_INFO {
|
|
DWORD dwVersion;
|
|
CERT_NAME_BLOB Issuer;
|
|
CRYPT_INTEGER_BLOB SerialNumber;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedHash;
|
|
CRYPT_ATTRIBUTES AuthAttrs;
|
|
CRYPT_ATTRIBUTES UnauthAttrs;
|
|
} CMSG_SIGNER_INFO,*PCMSG_SIGNER_INFO;
|
|
typedef struct _CMSG_CMS_SIGNER_INFO {
|
|
DWORD dwVersion;
|
|
CERT_ID SignerId;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedHash;
|
|
CRYPT_ATTRIBUTES AuthAttrs;
|
|
CRYPT_ATTRIBUTES UnauthAttrs;
|
|
} CMSG_CMS_SIGNER_INFO,*PCMSG_CMS_SIGNER_INFO;
|
|
typedef CRYPT_ATTRIBUTES CMSG_ATTR;
|
|
typedef CRYPT_ATTRIBUTES *PCMSG_ATTR;
|
|
typedef struct _CMSG_KEY_TRANS_RECIPIENT_INFO {
|
|
DWORD dwVersion;
|
|
CERT_ID RecipientId;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedKey;
|
|
} CMSG_KEY_TRANS_RECIPIENT_INFO,*PCMSG_KEY_TRANS_RECIPIENT_INFO;
|
|
typedef struct _CMSG_RECIPIENT_ENCRYPTED_KEY_INFO {
|
|
CERT_ID RecipientId;
|
|
CRYPT_DATA_BLOB EncryptedKey;
|
|
FILETIME Date;
|
|
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
|
|
} CMSG_RECIPIENT_ENCRYPTED_KEY_INFO,*PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO;
|
|
typedef struct _CMSG_KEY_AGREE_RECIPIENT_INFO {
|
|
DWORD dwVersion;
|
|
DWORD dwOriginatorChoice;
|
|
__extension__ union {
|
|
CERT_ID OriginatorCertId;
|
|
CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
|
|
};
|
|
CRYPT_DATA_BLOB UserKeyingMaterial;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
DWORD cRecipientEncryptedKeys;
|
|
PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO *rgpRecipientEncryptedKeys;
|
|
} CMSG_KEY_AGREE_RECIPIENT_INFO,*PCMSG_KEY_AGREE_RECIPIENT_INFO;
|
|
typedef struct _CMSG_MAIL_LIST_RECIPIENT_INFO {
|
|
DWORD dwVersion;
|
|
CRYPT_DATA_BLOB KeyId;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedKey;
|
|
FILETIME Date;
|
|
PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
|
|
} CMSG_MAIL_LIST_RECIPIENT_INFO,*PCMSG_MAIL_LIST_RECIPIENT_INFO;
|
|
typedef struct _CMSG_CMS_RECIPIENT_INFO {
|
|
DWORD dwRecipientChoice;
|
|
__extension__ union {
|
|
PCMSG_KEY_TRANS_RECIPIENT_INFO pKeyTrans;
|
|
PCMSG_KEY_AGREE_RECIPIENT_INFO pKeyAgree;
|
|
PCMSG_MAIL_LIST_RECIPIENT_INFO pMailList;
|
|
};
|
|
} CMSG_CMS_RECIPIENT_INFO,*PCMSG_CMS_RECIPIENT_INFO;
|
|
__attribute__((dllimport)) WINBOOL CryptMsgControl (HCRYPTMSG hCryptMsg, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara);
|
|
typedef struct _CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA {
|
|
DWORD cbSize;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
DWORD dwSignerIndex;
|
|
DWORD dwSignerType;
|
|
void *pvSigner;
|
|
} CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA,*PCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA;
|
|
typedef struct _CMSG_CTRL_DECRYPT_PARA {
|
|
DWORD cbSize;
|
|
__extension__ union {
|
|
HCRYPTPROV hCryptProv;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
};
|
|
DWORD dwKeySpec;
|
|
DWORD dwRecipientIndex;
|
|
} CMSG_CTRL_DECRYPT_PARA,*PCMSG_CTRL_DECRYPT_PARA;
|
|
typedef struct _CMSG_CTRL_KEY_TRANS_DECRYPT_PARA {
|
|
DWORD cbSize;
|
|
__extension__ union {
|
|
HCRYPTPROV hCryptProv;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
};
|
|
DWORD dwKeySpec;
|
|
PCMSG_KEY_TRANS_RECIPIENT_INFO pKeyTrans;
|
|
DWORD dwRecipientIndex;
|
|
} CMSG_CTRL_KEY_TRANS_DECRYPT_PARA,*PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA;
|
|
typedef struct _CMSG_CTRL_KEY_AGREE_DECRYPT_PARA {
|
|
DWORD cbSize;
|
|
__extension__ union {
|
|
HCRYPTPROV hCryptProv;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
};
|
|
DWORD dwKeySpec;
|
|
PCMSG_KEY_AGREE_RECIPIENT_INFO pKeyAgree;
|
|
DWORD dwRecipientIndex;
|
|
DWORD dwRecipientEncryptedKeyIndex;
|
|
CRYPT_BIT_BLOB OriginatorPublicKey;
|
|
} CMSG_CTRL_KEY_AGREE_DECRYPT_PARA,*PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA;
|
|
typedef struct _CMSG_CTRL_MAIL_LIST_DECRYPT_PARA {
|
|
DWORD cbSize;
|
|
HCRYPTPROV hCryptProv;
|
|
PCMSG_MAIL_LIST_RECIPIENT_INFO pMailList;
|
|
DWORD dwRecipientIndex;
|
|
DWORD dwKeyChoice;
|
|
__extension__ union {
|
|
HCRYPTKEY hKeyEncryptionKey;
|
|
void *pvKeyEncryptionKey;
|
|
};
|
|
} CMSG_CTRL_MAIL_LIST_DECRYPT_PARA,*PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA;
|
|
typedef struct _CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwSignerIndex;
|
|
CRYPT_DATA_BLOB blob;
|
|
} CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA,*PCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA;
|
|
typedef struct _CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwSignerIndex;
|
|
DWORD dwUnauthAttrIndex;
|
|
} CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA,*PCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA;
|
|
WINBOOL CryptMsgVerifyCountersignatureEncoded (HCRYPTPROV_LEGACY hCryptProv, DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, PBYTE pbSignerInfoCountersignature, DWORD cbSignerInfoCountersignature, PCERT_INFO pciCountersigner);
|
|
WINBOOL CryptMsgVerifyCountersignatureEncodedEx (HCRYPTPROV_LEGACY hCryptProv, DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, PBYTE pbSignerInfoCountersignature, DWORD cbSignerInfoCountersignature, DWORD dwSignerType, void *pvSigner, DWORD dwFlags, void *pvExtra);
|
|
WINBOOL CryptMsgCountersign (HCRYPTMSG hCryptMsg, DWORD dwIndex, DWORD cCountersigners, PCMSG_SIGNER_ENCODE_INFO rgCountersigners);
|
|
WINBOOL CryptMsgCountersignEncoded (DWORD dwEncodingType, PBYTE pbSignerInfo, DWORD cbSignerInfo, DWORD cCountersigners, PCMSG_SIGNER_ENCODE_INFO rgCountersigners, PBYTE pbCountersignature, PDWORD pcbCountersignature);
|
|
typedef void *( *PFN_CMSG_ALLOC) (size_t cb);
|
|
typedef void ( *PFN_CMSG_FREE) (void *pv);
|
|
typedef WINBOOL ( *PFN_CMSG_GEN_ENCRYPT_KEY) (HCRYPTPROV *phCryptProv, PCRYPT_ALGORITHM_IDENTIFIER paiEncrypt, PVOID pvEncryptAuxInfo, PCERT_PUBLIC_KEY_INFO pPublicKeyInfo, PFN_CMSG_ALLOC pfnAlloc, HCRYPTKEY *phEncryptKey, PBYTE *ppbEncryptParameters, PDWORD pcbEncryptParameters);
|
|
typedef WINBOOL ( *PFN_CMSG_EXPORT_ENCRYPT_KEY) (HCRYPTPROV hCryptProv, HCRYPTKEY hEncryptKey, PCERT_PUBLIC_KEY_INFO pPublicKeyInfo, PBYTE pbData, PDWORD pcbData);
|
|
typedef WINBOOL ( *PFN_CMSG_IMPORT_ENCRYPT_KEY) (HCRYPTPROV hCryptProv, DWORD dwKeySpec, PCRYPT_ALGORITHM_IDENTIFIER paiEncrypt, PCRYPT_ALGORITHM_IDENTIFIER paiPubKey, PBYTE pbEncodedKey, DWORD cbEncodedKey, HCRYPTKEY *phEncryptKey);
|
|
typedef struct _CMSG_CONTENT_ENCRYPT_INFO {
|
|
DWORD cbSize;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
|
|
void *pvEncryptionAuxInfo;
|
|
DWORD cRecipients;
|
|
PCMSG_RECIPIENT_ENCODE_INFO rgCmsRecipients;
|
|
PFN_CMSG_ALLOC pfnAlloc;
|
|
PFN_CMSG_FREE pfnFree;
|
|
DWORD dwEncryptFlags;
|
|
__extension__ union {
|
|
HCRYPTKEY hContentEncryptKey;
|
|
BCRYPT_KEY_HANDLE hCNGContentEncryptKey;
|
|
};
|
|
DWORD dwFlags;
|
|
WINBOOL fCNG;
|
|
BYTE *pbCNGContentEncryptKeyObject;
|
|
BYTE *pbContentEncryptKey;
|
|
DWORD cbContentEncryptKey;
|
|
} CMSG_CONTENT_ENCRYPT_INFO,*PCMSG_CONTENT_ENCRYPT_INFO;
|
|
typedef WINBOOL ( *PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, DWORD dwFlags, void *pvReserved);
|
|
typedef struct _CMSG_KEY_TRANS_ENCRYPT_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwRecipientIndex;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedKey;
|
|
DWORD dwFlags;
|
|
} CMSG_KEY_TRANS_ENCRYPT_INFO,*PCMSG_KEY_TRANS_ENCRYPT_INFO;
|
|
typedef WINBOOL ( *PFN_CMSG_EXPORT_KEY_TRANS) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTransEncodeInfo, PCMSG_KEY_TRANS_ENCRYPT_INFO pKeyTransEncryptInfo, DWORD dwFlags, void *pvReserved);
|
|
typedef struct _CMSG_KEY_AGREE_KEY_ENCRYPT_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_DATA_BLOB EncryptedKey;
|
|
} CMSG_KEY_AGREE_KEY_ENCRYPT_INFO,*PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO;
|
|
typedef struct _CMSG_KEY_AGREE_ENCRYPT_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwRecipientIndex;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB UserKeyingMaterial;
|
|
DWORD dwOriginatorChoice;
|
|
__extension__ union {
|
|
CERT_ID OriginatorCertId;
|
|
CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
|
|
};
|
|
DWORD cKeyAgreeKeyEncryptInfo;
|
|
PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO *rgpKeyAgreeKeyEncryptInfo;
|
|
DWORD dwFlags;
|
|
} CMSG_KEY_AGREE_ENCRYPT_INFO,*PCMSG_KEY_AGREE_ENCRYPT_INFO;
|
|
typedef WINBOOL ( *PFN_CMSG_EXPORT_KEY_AGREE) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO pKeyAgreeEncodeInfo, PCMSG_KEY_AGREE_ENCRYPT_INFO pKeyAgreeEncryptInfo, DWORD dwFlags, void *pvReserved);
|
|
typedef struct _CMSG_MAIL_LIST_ENCRYPT_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwRecipientIndex;
|
|
CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
|
|
CRYPT_DATA_BLOB EncryptedKey;
|
|
DWORD dwFlags;
|
|
} CMSG_MAIL_LIST_ENCRYPT_INFO,*PCMSG_MAIL_LIST_ENCRYPT_INFO;
|
|
typedef WINBOOL ( *PFN_CMSG_EXPORT_MAIL_LIST) (PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo, PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO pMailListEncodeInfo, PCMSG_MAIL_LIST_ENCRYPT_INFO pMailListEncryptInfo, DWORD dwFlags, void *pvReserved);
|
|
typedef WINBOOL ( *PFN_CMSG_IMPORT_KEY_TRANS) (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey);
|
|
typedef WINBOOL ( *PFN_CMSG_IMPORT_KEY_AGREE) (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey);
|
|
typedef WINBOOL ( *PFN_CMSG_IMPORT_MAIL_LIST) (PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm, PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA pMailListDecryptPara, DWORD dwFlags, void *pvReserved, HCRYPTKEY *phContentEncryptKey);
|
|
typedef struct _CMSG_CNG_CONTENT_DECRYPT_INFO {
|
|
DWORD cbSize;
|
|
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
|
|
PFN_CMSG_ALLOC pfnAlloc;
|
|
PFN_CMSG_FREE pfnFree;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
BYTE *pbContentEncryptKey;
|
|
DWORD cbContentEncryptKey;
|
|
BCRYPT_KEY_HANDLE hCNGContentEncryptKey;
|
|
BYTE *pbCNGContentEncryptKeyObject;
|
|
} CMSG_CNG_CONTENT_DECRYPT_INFO,*PCMSG_CNG_CONTENT_DECRYPT_INFO;
|
|
typedef WINBOOL ( *PFN_CMSG_CNG_IMPORT_KEY_TRANS) (PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo, PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara, DWORD dwFlags, void *pvReserved);
|
|
typedef WINBOOL ( *PFN_CMSG_CNG_IMPORT_KEY_AGREE) (PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo, PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara, DWORD dwFlags, void *pvReserved);
|
|
typedef WINBOOL ( *PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY) (PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo, DWORD dwFlags, void *pvReserved);
|
|
typedef void *HCERTSTORE;
|
|
typedef struct _CERT_CONTEXT {
|
|
DWORD dwCertEncodingType;
|
|
BYTE *pbCertEncoded;
|
|
DWORD cbCertEncoded;
|
|
PCERT_INFO pCertInfo;
|
|
HCERTSTORE hCertStore;
|
|
} CERT_CONTEXT,*PCERT_CONTEXT;
|
|
typedef const CERT_CONTEXT *PCCERT_CONTEXT;
|
|
typedef struct _CRL_CONTEXT {
|
|
DWORD dwCertEncodingType;
|
|
BYTE *pbCrlEncoded;
|
|
DWORD cbCrlEncoded;
|
|
PCRL_INFO pCrlInfo;
|
|
HCERTSTORE hCertStore;
|
|
} CRL_CONTEXT,*PCRL_CONTEXT;
|
|
typedef const CRL_CONTEXT *PCCRL_CONTEXT;
|
|
typedef struct _CTL_CONTEXT {
|
|
DWORD dwMsgAndCertEncodingType;
|
|
BYTE *pbCtlEncoded;
|
|
DWORD cbCtlEncoded;
|
|
PCTL_INFO pCtlInfo;
|
|
HCERTSTORE hCertStore;
|
|
HCRYPTMSG hCryptMsg;
|
|
BYTE *pbCtlContent;
|
|
DWORD cbCtlContent;
|
|
} CTL_CONTEXT,*PCTL_CONTEXT;
|
|
typedef const CTL_CONTEXT *PCCTL_CONTEXT;
|
|
typedef enum CertKeyType {
|
|
KeyTypeOther = 0,
|
|
KeyTypeVirtualSmartCard = 1,
|
|
KeyTypePhysicalSmartCard = 2,
|
|
KeyTypePassport = 3,
|
|
KeyTypePassportRemote = 4,
|
|
KeyTypePassportSmartCard = 5,
|
|
KeyTypeHardware = 6,
|
|
KeyTypeSoftware = 7,
|
|
KeyTypeSelfSigned = 8
|
|
} CertKeyType;
|
|
typedef struct _CRYPT_KEY_PROV_PARAM {
|
|
DWORD dwParam;
|
|
BYTE *pbData;
|
|
DWORD cbData;
|
|
DWORD dwFlags;
|
|
} CRYPT_KEY_PROV_PARAM,*PCRYPT_KEY_PROV_PARAM;
|
|
typedef struct _CRYPT_KEY_PROV_INFO {
|
|
LPWSTR pwszContainerName;
|
|
LPWSTR pwszProvName;
|
|
DWORD dwProvType;
|
|
DWORD dwFlags;
|
|
DWORD cProvParam;
|
|
PCRYPT_KEY_PROV_PARAM rgProvParam;
|
|
DWORD dwKeySpec;
|
|
} CRYPT_KEY_PROV_INFO,*PCRYPT_KEY_PROV_INFO;
|
|
typedef struct _CERT_KEY_CONTEXT {
|
|
DWORD cbSize;
|
|
__extension__ union {
|
|
HCRYPTPROV hCryptProv;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
};
|
|
DWORD dwKeySpec;
|
|
} CERT_KEY_CONTEXT,*PCERT_KEY_CONTEXT;
|
|
typedef struct _ROOT_INFO_LUID {
|
|
DWORD LowPart;
|
|
LONG HighPart;
|
|
} ROOT_INFO_LUID,*PROOT_INFO_LUID;
|
|
typedef struct _CRYPT_SMART_CARD_ROOT_INFO {
|
|
BYTE rgbCardID [16];
|
|
ROOT_INFO_LUID luid;
|
|
} CRYPT_SMART_CARD_ROOT_INFO,*PCRYPT_SMART_CARD_ROOT_INFO;
|
|
typedef struct _CERT_SYSTEM_STORE_RELOCATE_PARA {
|
|
__extension__ union {
|
|
HKEY hKeyBase;
|
|
void *pvBase;
|
|
};
|
|
__extension__ union {
|
|
void *pvSystemStore;
|
|
LPCSTR pszSystemStore;
|
|
LPCWSTR pwszSystemStore;
|
|
};
|
|
} CERT_SYSTEM_STORE_RELOCATE_PARA,*PCERT_SYSTEM_STORE_RELOCATE_PARA;
|
|
typedef struct _CERT_REGISTRY_STORE_CLIENT_GPT_PARA {
|
|
HKEY hKeyBase;
|
|
LPWSTR pwszRegPath;
|
|
} CERT_REGISTRY_STORE_CLIENT_GPT_PARA,*PCERT_REGISTRY_STORE_CLIENT_GPT_PARA;
|
|
typedef struct _CERT_REGISTRY_STORE_ROAMING_PARA {
|
|
HKEY hKey;
|
|
LPWSTR pwszStoreDirectory;
|
|
} CERT_REGISTRY_STORE_ROAMING_PARA,*PCERT_REGISTRY_STORE_ROAMING_PARA;
|
|
typedef struct _CERT_LDAP_STORE_OPENED_PARA {
|
|
void *pvLdapSessionHandle;
|
|
LPCWSTR pwszLdapUrl;
|
|
} CERT_LDAP_STORE_OPENED_PARA,*PCERT_LDAP_STORE_OPENED_PARA;
|
|
__attribute__((dllimport)) HCERTSTORE CertOpenStore (LPCSTR lpszStoreProvider, DWORD dwEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const void *pvPara);
|
|
typedef void *HCERTSTOREPROV;
|
|
typedef struct _CERT_STORE_PROV_INFO {
|
|
DWORD cbSize;
|
|
DWORD cStoreProvFunc;
|
|
void **rgpvStoreProvFunc;
|
|
HCERTSTOREPROV hStoreProv;
|
|
DWORD dwStoreProvFlags;
|
|
HCRYPTOIDFUNCADDR hStoreProvFuncAddr2;
|
|
} CERT_STORE_PROV_INFO,*PCERT_STORE_PROV_INFO;
|
|
typedef WINBOOL ( *PFN_CERT_DLL_OPEN_STORE_PROV_FUNC) (LPCSTR lpszStoreProvider, DWORD dwEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const void *pvPara, HCERTSTORE hCertStore, PCERT_STORE_PROV_INFO pStoreProvInfo);
|
|
typedef void ( *PFN_CERT_STORE_PROV_CLOSE) (HCERTSTOREPROV hStoreProv, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_READ_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pStoreCertContext, DWORD dwFlags, PCCERT_CONTEXT *ppProvCertContext);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_WRITE_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_DELETE_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_SET_CERT_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_READ_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pStoreCrlContext, DWORD dwFlags, PCCRL_CONTEXT *ppProvCrlContext);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_WRITE_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_DELETE_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_SET_CRL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_READ_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pStoreCtlContext, DWORD dwFlags, PCCTL_CONTEXT *ppProvCtlContext);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_WRITE_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_DELETE_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_SET_CTL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_CONTROL) (HCERTSTOREPROV hStoreProv, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara);
|
|
typedef struct _CERT_STORE_PROV_FIND_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwMsgAndCertEncodingType;
|
|
DWORD dwFindFlags;
|
|
DWORD dwFindType;
|
|
const void *pvFindPara;
|
|
} CERT_STORE_PROV_FIND_INFO,*PCERT_STORE_PROV_FIND_INFO;
|
|
typedef const CERT_STORE_PROV_FIND_INFO CCERT_STORE_PROV_FIND_INFO,*PCCERT_STORE_PROV_FIND_INFO;
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_FIND_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_STORE_PROV_FIND_INFO pFindInfo, PCCERT_CONTEXT pPrevCertContext, DWORD dwFlags, void **ppvStoreProvFindInfo, PCCERT_CONTEXT *ppProvCertContext);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_FREE_FIND_CERT) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, void *pvStoreProvFindInfo, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_GET_CERT_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, void *pvData, DWORD *pcbData);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_FIND_CRL) (HCERTSTOREPROV hStoreProv, PCCERT_STORE_PROV_FIND_INFO pFindInfo, PCCRL_CONTEXT pPrevCrlContext, DWORD dwFlags, void **ppvStoreProvFindInfo, PCCRL_CONTEXT *ppProvCrlContext);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_FREE_FIND_CRL) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, void *pvStoreProvFindInfo, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_GET_CRL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCRL_CONTEXT pCrlContext, DWORD dwPropId, DWORD dwFlags, void *pvData, DWORD *pcbData);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_FIND_CTL) (HCERTSTOREPROV hStoreProv, PCCERT_STORE_PROV_FIND_INFO pFindInfo, PCCTL_CONTEXT pPrevCtlContext, DWORD dwFlags, void **ppvStoreProvFindInfo, PCCTL_CONTEXT *ppProvCtlContext);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_FREE_FIND_CTL) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, void *pvStoreProvFindInfo, DWORD dwFlags);
|
|
typedef WINBOOL ( *PFN_CERT_STORE_PROV_GET_CTL_PROPERTY) (HCERTSTOREPROV hStoreProv, PCCTL_CONTEXT pCtlContext, DWORD dwPropId, DWORD dwFlags, void *pvData, DWORD *pcbData);
|
|
__attribute__((dllimport)) HCERTSTORE CertDuplicateStore (HCERTSTORE hCertStore);
|
|
__attribute__((dllimport)) WINBOOL CertSaveStore (HCERTSTORE hCertStore, DWORD dwEncodingType, DWORD dwSaveAs, DWORD dwSaveTo, void *pvSaveToPara, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CertCloseStore (HCERTSTORE hCertStore, DWORD dwFlags);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertGetSubjectCertificateFromStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, PCERT_INFO pCertId);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertEnumCertificatesInStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pPrevCertContext);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertFindCertificateInStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCERT_CONTEXT pPrevCertContext);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertGetIssuerCertificateFromStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pSubjectContext, PCCERT_CONTEXT pPrevIssuerContext, DWORD *pdwFlags);
|
|
__attribute__((dllimport)) WINBOOL CertVerifySubjectCertificateContext (PCCERT_CONTEXT pSubject, PCCERT_CONTEXT pIssuer, DWORD *pdwFlags);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertDuplicateCertificateContext (PCCERT_CONTEXT pCertContext);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertCreateCertificateContext (DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded);
|
|
__attribute__((dllimport)) WINBOOL CertFreeCertificateContext (PCCERT_CONTEXT pCertContext);
|
|
__attribute__((dllimport)) WINBOOL CertSetCertificateContextProperty (PCCERT_CONTEXT pCertContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
typedef struct _CRL_FIND_ISSUED_FOR_PARA {
|
|
PCCERT_CONTEXT pSubjectCert;
|
|
PCCERT_CONTEXT pIssuerCert;
|
|
} CRL_FIND_ISSUED_FOR_PARA,*PCRL_FIND_ISSUED_FOR_PARA;
|
|
typedef struct _CTL_ANY_SUBJECT_INFO {
|
|
CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm;
|
|
CRYPT_DATA_BLOB SubjectIdentifier;
|
|
} CTL_ANY_SUBJECT_INFO,*PCTL_ANY_SUBJECT_INFO;
|
|
__attribute__((dllimport)) PCCRL_CONTEXT CertEnumCRLsInStore (HCERTSTORE hCertStore, PCCRL_CONTEXT pPrevCrlContext);
|
|
__attribute__((dllimport)) WINBOOL CertDeleteCRLFromStore (PCCRL_CONTEXT pCrlContext);
|
|
__attribute__((dllimport)) PCCRL_CONTEXT CertDuplicateCRLContext (PCCRL_CONTEXT pCrlContext);
|
|
__attribute__((dllimport)) PCCRL_CONTEXT CertFindCRLInStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCRL_CONTEXT pPrevCrlContext);
|
|
__attribute__((dllimport)) WINBOOL CertFreeCRLContext (PCCRL_CONTEXT pCrlContext);
|
|
__attribute__((dllimport)) WINBOOL CertGetCertificateContextProperty (PCCERT_CONTEXT pCertContext, DWORD dwPropId, void *pvData, DWORD *pcbData);
|
|
__attribute__((dllimport)) DWORD CertEnumCertificateContextProperties (PCCERT_CONTEXT pCertContext, DWORD dwPropId);
|
|
__attribute__((dllimport)) WINBOOL CertDeleteCertificateFromStore (PCCERT_CONTEXT pCertContext);
|
|
__attribute__((dllimport)) WINBOOL CertCreateCTLEntryFromCertificateContextProperties (PCCERT_CONTEXT pCertContext, DWORD cOptAttr, PCRYPT_ATTRIBUTE rgOptAttr, DWORD dwFlags, void *pvReserved, PCTL_ENTRY pCtlEntry, DWORD *pcbCtlEntry);
|
|
__attribute__((dllimport)) WINBOOL CertSetCertificateContextPropertiesFromCTLEntry (PCCERT_CONTEXT pCertContext, PCTL_ENTRY pCtlEntry, DWORD dwFlags);
|
|
__attribute__((dllimport)) PCCRL_CONTEXT CertGetCRLFromStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pIssuerContext, PCCRL_CONTEXT pPrevCrlContext, DWORD *pdwFlags);
|
|
__attribute__((dllimport)) PCCRL_CONTEXT CertCreateCRLContext (DWORD dwCertEncodingType, const BYTE *pbCrlEncoded, DWORD cbCrlEncoded);
|
|
__attribute__((dllimport)) WINBOOL CertSetCRLContextProperty (PCCRL_CONTEXT pCrlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
__attribute__((dllimport)) WINBOOL CertGetCRLContextProperty (PCCRL_CONTEXT pCrlContext, DWORD dwPropId, void *pvData, DWORD *pcbData);
|
|
__attribute__((dllimport)) DWORD CertEnumCRLContextProperties (PCCRL_CONTEXT pCrlContext, DWORD dwPropId);
|
|
__attribute__((dllimport)) WINBOOL CertFindCertificateInCRL (PCCERT_CONTEXT pCert, PCCRL_CONTEXT pCrlContext, DWORD dwFlags, void *pvReserved, PCRL_ENTRY *ppCrlEntry);
|
|
__attribute__((dllimport)) WINBOOL CertIsValidCRLForCertificate (PCCERT_CONTEXT pCert, PCCRL_CONTEXT pCrl, DWORD dwFlags, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CertAddEncodedCertificateToStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbCertEncoded, DWORD cbCertEncoded, DWORD dwAddDisposition, PCCERT_CONTEXT *ppCertContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddCertificateContextToStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pCertContext, DWORD dwAddDisposition, PCCERT_CONTEXT *ppStoreContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddSerializedElementToStore (HCERTSTORE hCertStore, const BYTE *pbElement, DWORD cbElement, DWORD dwAddDisposition, DWORD dwFlags, DWORD dwContextTypeFlags, DWORD *pdwContextType, const void **ppvContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddEncodedCRLToStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, const BYTE *pbCrlEncoded, DWORD cbCrlEncoded, DWORD dwAddDisposition, PCCRL_CONTEXT *ppCrlContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddCRLContextToStore (HCERTSTORE hCertStore, PCCRL_CONTEXT pCrlContext, DWORD dwAddDisposition, PCCRL_CONTEXT *ppStoreContext);
|
|
__attribute__((dllimport)) WINBOOL CertSerializeCertificateStoreElement (PCCERT_CONTEXT pCertContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement);
|
|
__attribute__((dllimport)) WINBOOL CertSerializeCRLStoreElement (PCCRL_CONTEXT pCrlContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement);
|
|
__attribute__((dllimport)) PCCTL_CONTEXT CertDuplicateCTLContext (PCCTL_CONTEXT pCtlContext);
|
|
__attribute__((dllimport)) PCCTL_CONTEXT CertCreateCTLContext (DWORD dwMsgAndCertEncodingType, const BYTE *pbCtlEncoded, DWORD cbCtlEncoded);
|
|
__attribute__((dllimport)) WINBOOL CertFreeCTLContext (PCCTL_CONTEXT pCtlContext);
|
|
__attribute__((dllimport)) WINBOOL CertSetCTLContextProperty (PCCTL_CONTEXT pCtlContext, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
__attribute__((dllimport)) WINBOOL CertGetCTLContextProperty (PCCTL_CONTEXT pCtlContext, DWORD dwPropId, void *pvData, DWORD *pcbData);
|
|
__attribute__((dllimport)) DWORD CertEnumCTLContextProperties (PCCTL_CONTEXT pCtlContext, DWORD dwPropId);
|
|
__attribute__((dllimport)) PCCTL_CONTEXT CertEnumCTLsInStore (HCERTSTORE hCertStore, PCCTL_CONTEXT pPrevCtlContext);
|
|
__attribute__((dllimport)) PCTL_ENTRY CertFindSubjectInCTL (DWORD dwEncodingType, DWORD dwSubjectType, void *pvSubject, PCCTL_CONTEXT pCtlContext, DWORD dwFlags);
|
|
__attribute__((dllimport)) PCCTL_CONTEXT CertFindCTLInStore (HCERTSTORE hCertStore, DWORD dwMsgAndCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCTL_CONTEXT pPrevCtlContext);
|
|
typedef struct _CTL_FIND_USAGE_PARA {
|
|
DWORD cbSize;
|
|
CTL_USAGE SubjectUsage;
|
|
CRYPT_DATA_BLOB ListIdentifier;
|
|
PCERT_INFO pSigner;
|
|
} CTL_FIND_USAGE_PARA,*PCTL_FIND_USAGE_PARA;
|
|
typedef struct _CTL_FIND_SUBJECT_PARA {
|
|
DWORD cbSize;
|
|
PCTL_FIND_USAGE_PARA pUsagePara;
|
|
DWORD dwSubjectType;
|
|
void *pvSubject;
|
|
} CTL_FIND_SUBJECT_PARA,*PCTL_FIND_SUBJECT_PARA;
|
|
typedef WINBOOL ( *PFN_CERT_CREATE_CONTEXT_SORT_FUNC) (DWORD cbTotalEncoded, DWORD cbRemainEncoded, DWORD cEntry, void *pvSort);
|
|
typedef struct _CERT_CREATE_CONTEXT_PARA {
|
|
DWORD cbSize;
|
|
PFN_CRYPT_FREE pfnFree;
|
|
void *pvFree;
|
|
PFN_CERT_CREATE_CONTEXT_SORT_FUNC pfnSort;
|
|
void *pvSort;
|
|
} CERT_CREATE_CONTEXT_PARA,*PCERT_CREATE_CONTEXT_PARA;
|
|
typedef struct _CERT_SYSTEM_STORE_INFO {
|
|
DWORD cbSize;
|
|
} CERT_SYSTEM_STORE_INFO,*PCERT_SYSTEM_STORE_INFO;
|
|
typedef struct _CERT_PHYSICAL_STORE_INFO {
|
|
DWORD cbSize;
|
|
LPSTR pszOpenStoreProvider;
|
|
DWORD dwOpenEncodingType;
|
|
DWORD dwOpenFlags;
|
|
CRYPT_DATA_BLOB OpenParameters;
|
|
DWORD dwFlags;
|
|
DWORD dwPriority;
|
|
} CERT_PHYSICAL_STORE_INFO,*PCERT_PHYSICAL_STORE_INFO;
|
|
__attribute__((dllimport)) WINBOOL CertAddEncodedCTLToStore (HCERTSTORE hCertStore, DWORD dwMsgAndCertEncodingType, const BYTE *pbCtlEncoded, DWORD cbCtlEncoded, DWORD dwAddDisposition, PCCTL_CONTEXT *ppCtlContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddCTLContextToStore (HCERTSTORE hCertStore, PCCTL_CONTEXT pCtlContext, DWORD dwAddDisposition, PCCTL_CONTEXT *ppStoreContext);
|
|
__attribute__((dllimport)) WINBOOL CertSerializeCTLStoreElement (PCCTL_CONTEXT pCtlContext, DWORD dwFlags, BYTE *pbElement, DWORD *pcbElement);
|
|
__attribute__((dllimport)) WINBOOL CertDeleteCTLFromStore (PCCTL_CONTEXT pCtlContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddCertificateLinkToStore (HCERTSTORE hCertStore, PCCERT_CONTEXT pCertContext, DWORD dwAddDisposition, PCCERT_CONTEXT *ppStoreContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddCRLLinkToStore (HCERTSTORE hCertStore, PCCRL_CONTEXT pCrlContext, DWORD dwAddDisposition, PCCRL_CONTEXT *ppStoreContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddCTLLinkToStore (HCERTSTORE hCertStore, PCCTL_CONTEXT pCtlContext, DWORD dwAddDisposition, PCCTL_CONTEXT *ppStoreContext);
|
|
__attribute__((dllimport)) WINBOOL CertAddStoreToCollection (HCERTSTORE hCollectionStore, HCERTSTORE hSiblingStore, DWORD dwUpdateFlags, DWORD dwPriority);
|
|
__attribute__((dllimport)) void CertRemoveStoreFromCollection (HCERTSTORE hCollectionStore, HCERTSTORE hSiblingStore);
|
|
__attribute__((dllimport)) WINBOOL CertControlStore (HCERTSTORE hCertStore, DWORD dwFlags, DWORD dwCtrlType, void const *pvCtrlPara);
|
|
__attribute__((dllimport)) WINBOOL CertSetStoreProperty (HCERTSTORE hCertStore, DWORD dwPropId, DWORD dwFlags, const void *pvData);
|
|
__attribute__((dllimport)) WINBOOL CertGetStoreProperty (HCERTSTORE hCertStore, DWORD dwPropId, void *pvData, DWORD *pcbData);
|
|
__attribute__((dllimport)) const void * CertCreateContext (DWORD dwContextType, DWORD dwEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, DWORD dwFlags, PCERT_CREATE_CONTEXT_PARA pCreatePara);
|
|
__attribute__((dllimport)) WINBOOL CertRegisterSystemStore (const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CertRegisterPhysicalStore (const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName, PCERT_PHYSICAL_STORE_INFO pStoreInfo, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CertUnregisterSystemStore (const void *pvSystemStore, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CertUnregisterPhysicalStore (const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName);
|
|
typedef WINBOOL ( *PFN_CERT_ENUM_SYSTEM_STORE_LOCATION) (LPCWSTR pwszStoreLocation, DWORD dwFlags, void *pvReserved, void *pvArg);
|
|
typedef WINBOOL ( *PFN_CERT_ENUM_SYSTEM_STORE) (const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved, void *pvArg);
|
|
typedef WINBOOL ( *PFN_CERT_ENUM_PHYSICAL_STORE) (const void *pvSystemStore, DWORD dwFlags, LPCWSTR pwszStoreName, PCERT_PHYSICAL_STORE_INFO pStoreInfo, void *pvReserved, void *pvArg);
|
|
__attribute__((dllimport)) WINBOOL CertEnumSystemStoreLocation (DWORD dwFlags, void *pvArg, PFN_CERT_ENUM_SYSTEM_STORE_LOCATION pfnEnum);
|
|
__attribute__((dllimport)) WINBOOL CertEnumSystemStore (DWORD dwFlags, void *pvSystemStoreLocationPara, void *pvArg, PFN_CERT_ENUM_SYSTEM_STORE pfnEnum);
|
|
__attribute__((dllimport)) WINBOOL CertEnumPhysicalStore (const void *pvSystemStore, DWORD dwFlags, void *pvArg, PFN_CERT_ENUM_PHYSICAL_STORE pfnEnum);
|
|
__attribute__((dllimport)) WINBOOL CertGetEnhancedKeyUsage (PCCERT_CONTEXT pCertContext, DWORD dwFlags, PCERT_ENHKEY_USAGE pUsage, DWORD *pcbUsage);
|
|
__attribute__((dllimport)) WINBOOL CertSetEnhancedKeyUsage (PCCERT_CONTEXT pCertContext, PCERT_ENHKEY_USAGE pUsage);
|
|
__attribute__((dllimport)) WINBOOL CertAddEnhancedKeyUsageIdentifier (PCCERT_CONTEXT pCertContext, LPCSTR pszUsageIdentifier);
|
|
__attribute__((dllimport)) WINBOOL CertRemoveEnhancedKeyUsageIdentifier (PCCERT_CONTEXT pCertContext, LPCSTR pszUsageIdentifier);
|
|
__attribute__((dllimport)) WINBOOL CertGetValidUsages (DWORD cCerts, PCCERT_CONTEXT *rghCerts, int *cNumOIDs, LPSTR *rghOIDs, DWORD *pcbOIDs);
|
|
__attribute__((dllimport)) WINBOOL CryptMsgGetAndVerifySigner (HCRYPTMSG hCryptMsg, DWORD cSignerStore, HCERTSTORE *rghSignerStore, DWORD dwFlags, PCCERT_CONTEXT *ppSigner, DWORD *pdwSignerIndex);
|
|
__attribute__((dllimport)) WINBOOL CryptMsgSignCTL (DWORD dwMsgEncodingType, BYTE *pbCtlContent, DWORD cbCtlContent, PCMSG_SIGNED_ENCODE_INFO pSignInfo, DWORD dwFlags, BYTE *pbEncoded, DWORD *pcbEncoded);
|
|
__attribute__((dllimport)) WINBOOL CryptMsgEncodeAndSignCTL (DWORD dwMsgEncodingType, PCTL_INFO pCtlInfo, PCMSG_SIGNED_ENCODE_INFO pSignInfo, DWORD dwFlags, BYTE *pbEncoded, DWORD *pcbEncoded);
|
|
__attribute__((dllimport)) WINBOOL CertFindSubjectInSortedCTL (PCRYPT_DATA_BLOB pSubjectIdentifier, PCCTL_CONTEXT pCtlContext, DWORD dwFlags, void *pvReserved, PCRYPT_DER_BLOB pEncodedAttributes);
|
|
__attribute__((dllimport)) WINBOOL CertEnumSubjectInSortedCTL (PCCTL_CONTEXT pCtlContext, void **ppvNextSubject, PCRYPT_DER_BLOB pSubjectIdentifier, PCRYPT_DER_BLOB pEncodedAttributes);
|
|
typedef struct _CTL_VERIFY_USAGE_PARA {
|
|
DWORD cbSize;
|
|
CRYPT_DATA_BLOB ListIdentifier;
|
|
DWORD cCtlStore;
|
|
HCERTSTORE *rghCtlStore;
|
|
DWORD cSignerStore;
|
|
HCERTSTORE *rghSignerStore;
|
|
} CTL_VERIFY_USAGE_PARA,*PCTL_VERIFY_USAGE_PARA;
|
|
typedef struct _CTL_VERIFY_USAGE_STATUS {
|
|
DWORD cbSize;
|
|
DWORD dwError;
|
|
DWORD dwFlags;
|
|
PCCTL_CONTEXT *ppCtl;
|
|
DWORD dwCtlEntryIndex;
|
|
PCCERT_CONTEXT *ppSigner;
|
|
DWORD dwSignerIndex;
|
|
} CTL_VERIFY_USAGE_STATUS,*PCTL_VERIFY_USAGE_STATUS;
|
|
__attribute__((dllimport)) WINBOOL CertVerifyCTLUsage (DWORD dwEncodingType, DWORD dwSubjectType, void *pvSubject, PCTL_USAGE pSubjectUsage, DWORD dwFlags, PCTL_VERIFY_USAGE_PARA pVerifyUsagePara, PCTL_VERIFY_USAGE_STATUS pVerifyUsageStatus);
|
|
typedef struct _CERT_REVOCATION_CRL_INFO {
|
|
DWORD cbSize;
|
|
PCCRL_CONTEXT pBaseCrlContext;
|
|
PCCRL_CONTEXT pDeltaCrlContext;
|
|
PCRL_ENTRY pCrlEntry;
|
|
WINBOOL fDeltaCrlEntry;
|
|
} CERT_REVOCATION_CRL_INFO,*PCERT_REVOCATION_CRL_INFO;
|
|
typedef struct _CERT_REVOCATION_CHAIN_PARA CERT_REVOCATION_CHAIN_PARA,*PCERT_REVOCATION_CHAIN_PARA;
|
|
typedef struct _CERT_REVOCATION_PARA {
|
|
DWORD cbSize;
|
|
PCCERT_CONTEXT pIssuerCert;
|
|
DWORD cCertStore;
|
|
HCERTSTORE *rgCertStore;
|
|
HCERTSTORE hCrlStore;
|
|
LPFILETIME pftTimeToUse;
|
|
} CERT_REVOCATION_PARA,*PCERT_REVOCATION_PARA;
|
|
typedef struct _CERT_REVOCATION_STATUS {
|
|
DWORD cbSize;
|
|
DWORD dwIndex;
|
|
DWORD dwError;
|
|
DWORD dwReason;
|
|
WINBOOL fHasFreshnessTime;
|
|
DWORD dwFreshnessTime;
|
|
} CERT_REVOCATION_STATUS,*PCERT_REVOCATION_STATUS;
|
|
typedef struct _CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO {
|
|
CRYPT_DATA_BLOB CertSignHashCNGAlgPropData;
|
|
CRYPT_DATA_BLOB CertIssuerPubKeyBitLengthPropData;
|
|
} CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO, *PCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO;
|
|
typedef WINBOOL ( *PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC) (DWORD dwCertEncodingType, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, void **ppvDecodedSignPara, LPWSTR *ppwszCNGHashAlgid);
|
|
typedef WINBOOL ( *PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC) (NCRYPT_KEY_HANDLE hKey, DWORD dwCertEncodingType, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, void *pvDecodedSignPara, LPCWSTR pwszCNGPubKeyAlgid, LPCWSTR pwszCNGHashAlgid, BYTE *pbComputedHash, DWORD cbComputedHash, BYTE *pbSignature, DWORD *pcbSignature);
|
|
typedef WINBOOL ( *PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC) (DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pPubKeyInfo, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, void *pvDecodedSignPara, LPCWSTR pwszCNGPubKeyAlgid, LPCWSTR pwszCNGHashAlgid, BYTE *pbComputedHash, DWORD cbComputedHash, BYTE *pbSignature, DWORD cbSignature);
|
|
typedef void *HCRYPTDEFAULTCONTEXT;
|
|
typedef struct _CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA {
|
|
DWORD cOID;
|
|
LPSTR *rgpszOID;
|
|
} CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA,*PCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA;
|
|
__attribute__((dllimport)) WINBOOL CertVerifyRevocation (DWORD dwEncodingType, DWORD dwRevType, DWORD cContext, PVOID rgpvContext[], DWORD dwFlags, PCERT_REVOCATION_PARA pRevPara, PCERT_REVOCATION_STATUS pRevStatus);
|
|
WINBOOL CertCompareIntegerBlob (PCRYPT_INTEGER_BLOB pInt1, PCRYPT_INTEGER_BLOB pInt2);
|
|
__attribute__((dllimport)) WINBOOL CertCompareCertificate (DWORD dwCertEncodingType, PCERT_INFO pCertId1, PCERT_INFO pCertId2);
|
|
__attribute__((dllimport)) WINBOOL CertCompareCertificateName (DWORD dwCertEncodingType, PCERT_NAME_BLOB pCertName1, PCERT_NAME_BLOB pCertName2);
|
|
__attribute__((dllimport)) WINBOOL CertIsRDNAttrsInCertificateName (DWORD dwCertEncodingType, DWORD dwFlags, PCERT_NAME_BLOB pCertName, PCERT_RDN pRDN);
|
|
__attribute__((dllimport)) WINBOOL CertComparePublicKeyInfo (DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pPublicKey1, PCERT_PUBLIC_KEY_INFO pPublicKey2);
|
|
__attribute__((dllimport)) DWORD CertGetPublicKeyLength (DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pPublicKey);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyCertificateSignature (HCRYPTPROV_LEGACY hCryptProv, DWORD dwCertEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, PCERT_PUBLIC_KEY_INFO pPublicKey);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyCertificateSignatureEx (HCRYPTPROV_LEGACY hCryptProv, DWORD dwCertEncodingType, DWORD dwSubjectType, void *pvSubject, DWORD dwIssuerType, void *pvIssuer, DWORD dwFlags, void *pvExtra);
|
|
__attribute__((dllimport)) WINBOOL CertIsStrongHashToSign (PCCERT_STRONG_SIGN_PARA pStrongSignPara, LPCWSTR pwszCNGHashAlgid, PCCERT_CONTEXT pSigningCert);
|
|
__attribute__((dllimport)) WINBOOL CryptHashToBeSigned (HCRYPTPROV_LEGACY hCryptProv, DWORD dwCertEncodingType, const BYTE *pbEncoded, DWORD cbEncoded, BYTE *pbComputedHash, DWORD *pcbComputedHash);
|
|
__attribute__((dllimport)) WINBOOL CryptHashCertificate (HCRYPTPROV_LEGACY hCryptProv, ALG_ID Algid, DWORD dwFlags, const BYTE *pbEncoded, DWORD cbEncoded, BYTE *pbComputedHash, DWORD *pcbComputedHash);
|
|
__attribute__((dllimport)) WINBOOL CryptSignCertificate (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, const BYTE *pbEncodedToBeSigned, DWORD cbEncodedToBeSigned, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, const void *pvHashAuxInfo, BYTE *pbSignature, DWORD *pcbSignature);
|
|
__attribute__((dllimport)) WINBOOL CryptSignAndEncodeCertificate (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, LPCSTR lpszStructType, const void *pvStructInfo, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, const void *pvHashAuxInfo, BYTE *pbEncoded, DWORD *pcbEncoded);
|
|
__attribute__((dllimport)) LONG CertVerifyTimeValidity (LPFILETIME pTimeToVerify, PCERT_INFO pCertInfo);
|
|
__attribute__((dllimport)) LONG CertVerifyCRLTimeValidity (LPFILETIME pTimeToVerify, PCRL_INFO pCrlInfo);
|
|
__attribute__((dllimport)) WINBOOL CertVerifyValidityNesting (PCERT_INFO pSubjectInfo, PCERT_INFO pIssuerInfo);
|
|
__attribute__((dllimport)) WINBOOL CertVerifyCRLRevocation (DWORD dwCertEncodingType, PCERT_INFO pCertId, DWORD cCrlInfo, PCRL_INFO rgpCrlInfo[]);
|
|
__attribute__((dllimport)) LPCSTR CertAlgIdToOID (DWORD dwAlgId);
|
|
__attribute__((dllimport)) DWORD CertOIDToAlgId (LPCSTR pszObjId);
|
|
__attribute__((dllimport)) PCERT_EXTENSION CertFindExtension (LPCSTR pszObjId, DWORD cExtensions, CERT_EXTENSION rgExtensions[]);
|
|
__attribute__((dllimport)) PCRYPT_ATTRIBUTE CertFindAttribute (LPCSTR pszObjId, DWORD cAttr, CRYPT_ATTRIBUTE rgAttr[]);
|
|
__attribute__((dllimport)) PCERT_RDN_ATTR CertFindRDNAttr (LPCSTR pszObjId, PCERT_NAME_INFO pName);
|
|
__attribute__((dllimport)) WINBOOL CertGetIntendedKeyUsage (DWORD dwCertEncodingType, PCERT_INFO pCertInfo, BYTE *pbKeyUsage, DWORD cbKeyUsage);
|
|
__attribute__((dllimport)) WINBOOL CryptInstallDefaultContext (HCRYPTPROV hCryptProv, DWORD dwDefaultType, const void *pvDefaultPara, DWORD dwFlags, void *pvReserved, HCRYPTDEFAULTCONTEXT *phDefaultContext);
|
|
__attribute__((dllimport)) WINBOOL CryptUninstallDefaultContext (HCRYPTDEFAULTCONTEXT hDefaultContext, DWORD dwFlags, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CryptExportPublicKeyInfo (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, DWORD *pcbInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptExportPublicKeyInfoEx (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, DWORD dwKeySpec, DWORD dwCertEncodingType, LPSTR pszPublicKeyObjId, DWORD dwFlags, void *pvAuxInfo, PCERT_PUBLIC_KEY_INFO pInfo, DWORD *pcbInfo);
|
|
typedef WINBOOL ( *PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC) (NCRYPT_KEY_HANDLE hNCryptKey, DWORD dwCertEncodingType, LPSTR pszPublicKeyObjId, DWORD dwFlags, void *pvAuxInfo, PCERT_PUBLIC_KEY_INFO pInfo, DWORD *pcbInfo);
|
|
typedef WINBOOL ( *PFN_IMPORT_PRIV_KEY_FUNC) (HCRYPTPROV hCryptProv, CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo, DWORD dwFlags, void *pvAuxInfo);
|
|
typedef WINBOOL ( *PFN_EXPORT_PRIV_KEY_FUNC) (HCRYPTPROV hCryptProv, DWORD dwKeySpec, LPSTR pszPrivateKeyObjId, DWORD dwFlags, void *pvAuxInfo, CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo, DWORD *pcbPrivateKeyInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptImportPublicKeyInfo (HCRYPTPROV hCryptProv, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, HCRYPTKEY *phKey);
|
|
__attribute__((dllimport)) WINBOOL CryptImportPublicKeyInfoEx (HCRYPTPROV hCryptProv, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, ALG_ID aiKeyAlg, DWORD dwFlags, void *pvAuxInfo, HCRYPTKEY *phKey);
|
|
__attribute__((dllimport)) WINBOOL CryptAcquireCertificatePrivateKey (PCCERT_CONTEXT pCert, DWORD dwFlags, void *pvParameters, HCRYPTPROV_OR_NCRYPT_KEY_HANDLE *phCryptProvOrNCryptKey, DWORD *pdwKeySpec, WINBOOL *pfCallerFreeProvOrNCryptKey);
|
|
__attribute__((dllimport)) WINBOOL CryptFindCertificateKeyProvInfo (PCCERT_CONTEXT pCert, DWORD dwFlags, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CryptImportPKCS8 (CRYPT_PKCS8_IMPORT_PARAMS sPrivateKeyAndParams, DWORD dwFlags, HCRYPTPROV *phCryptProv, void *pvAuxInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptExportPKCS8 (HCRYPTPROV hCryptProv, DWORD dwKeySpec, LPSTR pszPrivateKeyObjId, DWORD dwFlags, void *pvAuxInfo, BYTE *pbPrivateKeyBlob, DWORD *pcbPrivateKeyBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptExportPKCS8Ex (CRYPT_PKCS8_EXPORT_PARAMS *psExportParams, DWORD dwFlags, void *pvAuxInfo, BYTE *pbPrivateKeyBlob, DWORD *pcbPrivateKeyBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptHashPublicKeyInfo (HCRYPTPROV_LEGACY hCryptProv, ALG_ID Algid, DWORD dwFlags, DWORD dwCertEncodingType, PCERT_PUBLIC_KEY_INFO pInfo, BYTE *pbComputedHash, DWORD *pcbComputedHash);
|
|
__attribute__((dllimport)) DWORD CertRDNValueToStrA (DWORD dwValueType, PCERT_RDN_VALUE_BLOB pValue, LPSTR psz, DWORD csz);
|
|
__attribute__((dllimport)) DWORD CertRDNValueToStrW (DWORD dwValueType, PCERT_RDN_VALUE_BLOB pValue, LPWSTR psz, DWORD csz);
|
|
__attribute__((dllimport)) DWORD CertNameToStrA (DWORD dwCertEncodingType, PCERT_NAME_BLOB pName, DWORD dwStrType, LPSTR psz, DWORD csz);
|
|
__attribute__((dllimport)) DWORD CertNameToStrW (DWORD dwCertEncodingType, PCERT_NAME_BLOB pName, DWORD dwStrType, LPWSTR psz, DWORD csz);
|
|
__attribute__((dllimport)) WINBOOL CertStrToNameA (DWORD dwCertEncodingType, LPCSTR pszX500, DWORD dwStrType, void *pvReserved, BYTE *pbEncoded, DWORD *pcbEncoded, LPCSTR *ppszError);
|
|
__attribute__((dllimport)) WINBOOL CertStrToNameW (DWORD dwCertEncodingType, LPCWSTR pszX500, DWORD dwStrType, void *pvReserved, BYTE *pbEncoded, DWORD *pcbEncoded, LPCWSTR *ppszError);
|
|
__attribute__((dllimport)) DWORD CertGetNameStringA (PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD dwFlags, void *pvTypePara, LPSTR pszNameString, DWORD cchNameString);
|
|
__attribute__((dllimport)) DWORD CertGetNameStringW (PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD dwFlags, void *pvTypePara, LPWSTR pszNameString, DWORD cchNameString);
|
|
typedef PCCERT_CONTEXT ( *PFN_CRYPT_GET_SIGNER_CERTIFICATE) (void *pvGetArg, DWORD dwCertEncodingType, PCERT_INFO pSignerId, HCERTSTORE hMsgCertStore);
|
|
typedef struct _CRYPT_SIGN_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgEncodingType;
|
|
PCCERT_CONTEXT pSigningCert;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
void *pvHashAuxInfo;
|
|
DWORD cMsgCert;
|
|
PCCERT_CONTEXT *rgpMsgCert;
|
|
DWORD cMsgCrl;
|
|
PCCRL_CONTEXT *rgpMsgCrl;
|
|
DWORD cAuthAttr;
|
|
PCRYPT_ATTRIBUTE rgAuthAttr;
|
|
DWORD cUnauthAttr;
|
|
PCRYPT_ATTRIBUTE rgUnauthAttr;
|
|
DWORD dwFlags;
|
|
DWORD dwInnerContentType;
|
|
} CRYPT_SIGN_MESSAGE_PARA,*PCRYPT_SIGN_MESSAGE_PARA;
|
|
typedef struct _CRYPT_VERIFY_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgAndCertEncodingType;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
PFN_CRYPT_GET_SIGNER_CERTIFICATE pfnGetSignerCertificate;
|
|
void *pvGetArg;
|
|
} CRYPT_VERIFY_MESSAGE_PARA,*PCRYPT_VERIFY_MESSAGE_PARA;
|
|
typedef struct _CRYPT_ENCRYPT_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgEncodingType;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
|
|
void *pvEncryptionAuxInfo;
|
|
DWORD dwFlags;
|
|
DWORD dwInnerContentType;
|
|
} CRYPT_ENCRYPT_MESSAGE_PARA,*PCRYPT_ENCRYPT_MESSAGE_PARA;
|
|
typedef struct _CRYPT_DECRYPT_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgAndCertEncodingType;
|
|
DWORD cCertStore;
|
|
HCERTSTORE *rghCertStore;
|
|
} CRYPT_DECRYPT_MESSAGE_PARA,*PCRYPT_DECRYPT_MESSAGE_PARA;
|
|
typedef struct _CRYPT_HASH_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgEncodingType;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
void *pvHashAuxInfo;
|
|
} CRYPT_HASH_MESSAGE_PARA,*PCRYPT_HASH_MESSAGE_PARA;
|
|
typedef struct _CRYPT_KEY_SIGN_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgAndCertEncodingType;
|
|
__extension__ union {
|
|
HCRYPTPROV hCryptProv;
|
|
NCRYPT_KEY_HANDLE hNCryptKey;
|
|
};
|
|
DWORD dwKeySpec;
|
|
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
|
|
void *pvHashAuxInfo;
|
|
CRYPT_ALGORITHM_IDENTIFIER PubKeyAlgorithm;
|
|
} CRYPT_KEY_SIGN_MESSAGE_PARA,*PCRYPT_KEY_SIGN_MESSAGE_PARA;
|
|
typedef struct _CRYPT_KEY_VERIFY_MESSAGE_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwMsgEncodingType;
|
|
HCRYPTPROV_LEGACY hCryptProv;
|
|
} CRYPT_KEY_VERIFY_MESSAGE_PARA,*PCRYPT_KEY_VERIFY_MESSAGE_PARA;
|
|
typedef struct _CERT_CHAIN {
|
|
DWORD cCerts;
|
|
PCERT_BLOB certs;
|
|
CRYPT_KEY_PROV_INFO keyLocatorInfo;
|
|
} CERT_CHAIN,*PCERT_CHAIN;
|
|
__attribute__((dllimport)) WINBOOL CryptSignMessage (PCRYPT_SIGN_MESSAGE_PARA pSignPara, WINBOOL fDetachedSignature, DWORD cToBeSigned, const BYTE *rgpbToBeSigned[], DWORD rgcbToBeSigned[], BYTE *pbSignedBlob, DWORD *pcbSignedBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyMessageSignature (PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbSignedBlob, DWORD cbSignedBlob, BYTE *pbDecoded, DWORD *pcbDecoded, PCCERT_CONTEXT *ppSignerCert);
|
|
__attribute__((dllimport)) LONG CryptGetMessageSignerCount (DWORD dwMsgEncodingType, const BYTE *pbSignedBlob, DWORD cbSignedBlob);
|
|
__attribute__((dllimport)) HCERTSTORE CryptGetMessageCertificates (DWORD dwMsgAndCertEncodingType, HCRYPTPROV_LEGACY hCryptProv, DWORD dwFlags, const BYTE *pbSignedBlob, DWORD cbSignedBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyDetachedMessageSignature (PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbDetachedSignBlob, DWORD cbDetachedSignBlob, DWORD cToBeSigned, const BYTE *rgpbToBeSigned[], DWORD rgcbToBeSigned[], PCCERT_CONTEXT *ppSignerCert);
|
|
__attribute__((dllimport)) WINBOOL CryptEncryptMessage (PCRYPT_ENCRYPT_MESSAGE_PARA pEncryptPara, DWORD cRecipientCert, PCCERT_CONTEXT rgpRecipientCert[], const BYTE *pbToBeEncrypted, DWORD cbToBeEncrypted, BYTE *pbEncryptedBlob, DWORD *pcbEncryptedBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptDecryptMessage (PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara, const BYTE *pbEncryptedBlob, DWORD cbEncryptedBlob, BYTE *pbDecrypted, DWORD *pcbDecrypted, PCCERT_CONTEXT *ppXchgCert);
|
|
__attribute__((dllimport)) WINBOOL CryptSignAndEncryptMessage (PCRYPT_SIGN_MESSAGE_PARA pSignPara, PCRYPT_ENCRYPT_MESSAGE_PARA pEncryptPara, DWORD cRecipientCert, PCCERT_CONTEXT rgpRecipientCert[], const BYTE *pbToBeSignedAndEncrypted, DWORD cbToBeSignedAndEncrypted, BYTE *pbSignedAndEncryptedBlob, DWORD *pcbSignedAndEncryptedBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptDecryptAndVerifyMessageSignature (PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara, PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbEncryptedBlob, DWORD cbEncryptedBlob, BYTE *pbDecrypted, DWORD *pcbDecrypted, PCCERT_CONTEXT *ppXchgCert, PCCERT_CONTEXT *ppSignerCert);
|
|
__attribute__((dllimport)) WINBOOL CryptDecodeMessage (DWORD dwMsgTypeFlags, PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara, PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara, DWORD dwSignerIndex, const BYTE *pbEncodedBlob, DWORD cbEncodedBlob, DWORD dwPrevInnerContentType, DWORD *pdwMsgType, DWORD *pdwInnerContentType, BYTE *pbDecoded, DWORD *pcbDecoded, PCCERT_CONTEXT *ppXchgCert, PCCERT_CONTEXT *ppSignerCert);
|
|
__attribute__((dllimport)) WINBOOL CryptHashMessage (PCRYPT_HASH_MESSAGE_PARA pHashPara, WINBOOL fDetachedHash, DWORD cToBeHashed, const BYTE *rgpbToBeHashed[], DWORD rgcbToBeHashed[], BYTE *pbHashedBlob, DWORD *pcbHashedBlob, BYTE *pbComputedHash, DWORD *pcbComputedHash);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyMessageHash (PCRYPT_HASH_MESSAGE_PARA pHashPara, BYTE *pbHashedBlob, DWORD cbHashedBlob, BYTE *pbToBeHashed, DWORD *pcbToBeHashed, BYTE *pbComputedHash, DWORD *pcbComputedHash);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyDetachedMessageHash (PCRYPT_HASH_MESSAGE_PARA pHashPara, BYTE *pbDetachedHashBlob, DWORD cbDetachedHashBlob, DWORD cToBeHashed, const BYTE *rgpbToBeHashed[], DWORD rgcbToBeHashed[], BYTE *pbComputedHash, DWORD *pcbComputedHash);
|
|
__attribute__((dllimport)) WINBOOL CryptSignMessageWithKey (PCRYPT_KEY_SIGN_MESSAGE_PARA pSignPara, const BYTE *pbToBeSigned, DWORD cbToBeSigned, BYTE *pbSignedBlob, DWORD *pcbSignedBlob);
|
|
__attribute__((dllimport)) WINBOOL CryptVerifyMessageSignatureWithKey (PCRYPT_KEY_VERIFY_MESSAGE_PARA pVerifyPara, PCERT_PUBLIC_KEY_INFO pPublicKeyInfo, const BYTE *pbSignedBlob, DWORD cbSignedBlob, BYTE *pbDecoded, DWORD *pcbDecoded);
|
|
__attribute__((dllimport)) HCERTSTORE CertOpenSystemStoreA (HCRYPTPROV_LEGACY hProv, LPCSTR szSubsystemProtocol);
|
|
__attribute__((dllimport)) HCERTSTORE CertOpenSystemStoreW (HCRYPTPROV_LEGACY hProv, LPCWSTR szSubsystemProtocol);
|
|
__attribute__((dllimport)) WINBOOL CertAddEncodedCertificateToSystemStoreA (LPCSTR szCertStoreName, const BYTE *pbCertEncoded, DWORD cbCertEncoded);
|
|
__attribute__((dllimport)) WINBOOL CertAddEncodedCertificateToSystemStoreW (LPCWSTR szCertStoreName, const BYTE *pbCertEncoded, DWORD cbCertEncoded);
|
|
HRESULT FindCertsByIssuer (PCERT_CHAIN pCertChains, DWORD *pcbCertChains, DWORD *pcCertChains, BYTE *pbEncodedIssuerName, DWORD cbEncodedIssuerName, LPCWSTR pwszPurpose, DWORD dwKeySpec);
|
|
__attribute__((dllimport)) WINBOOL CryptQueryObject (DWORD dwObjectType, const void *pvObject, DWORD dwExpectedContentTypeFlags, DWORD dwExpectedFormatTypeFlags, DWORD dwFlags, DWORD *pdwMsgAndCertEncodingType, DWORD *pdwContentType, DWORD *pdwFormatType, HCERTSTORE *phCertStore, HCRYPTMSG *phMsg, const void **ppvContext);
|
|
typedef HANDLE HCRYPTASYNC,*PHCRYPTASYNC;
|
|
typedef void ( *PFN_CRYPT_ASYNC_PARAM_FREE_FUNC) (LPSTR pszParamOid, LPVOID pvParam);
|
|
__attribute__((dllimport)) LPVOID CryptMemAlloc (ULONG cbSize);
|
|
__attribute__((dllimport)) LPVOID CryptMemRealloc (LPVOID pv, ULONG cbSize);
|
|
__attribute__((dllimport)) void CryptMemFree (LPVOID pv);
|
|
__attribute__((dllimport)) WINBOOL CryptCreateAsyncHandle (DWORD dwFlags, PHCRYPTASYNC phAsync);
|
|
__attribute__((dllimport)) WINBOOL CryptSetAsyncParam (HCRYPTASYNC hAsync, LPSTR pszParamOid, LPVOID pvParam, PFN_CRYPT_ASYNC_PARAM_FREE_FUNC pfnFree);
|
|
__attribute__((dllimport)) WINBOOL CryptGetAsyncParam (HCRYPTASYNC hAsync, LPSTR pszParamOid, LPVOID *ppvParam, PFN_CRYPT_ASYNC_PARAM_FREE_FUNC *ppfnFree);
|
|
__attribute__((dllimport)) WINBOOL CryptCloseAsyncHandle (HCRYPTASYNC hAsync);
|
|
typedef struct _CRYPT_BLOB_ARRAY {
|
|
DWORD cBlob;
|
|
PCRYPT_DATA_BLOB rgBlob;
|
|
} CRYPT_BLOB_ARRAY,*PCRYPT_BLOB_ARRAY;
|
|
typedef struct _CRYPT_CREDENTIALS {
|
|
DWORD cbSize;
|
|
LPCSTR pszCredentialsOid;
|
|
LPVOID pvCredentials;
|
|
} CRYPT_CREDENTIALS,*PCRYPT_CREDENTIALS;
|
|
typedef struct _CRYPT_PASSWORD_CREDENTIALSA {
|
|
DWORD cbSize;
|
|
LPSTR pszUsername;
|
|
LPSTR pszPassword;
|
|
} CRYPT_PASSWORD_CREDENTIALSA,*PCRYPT_PASSWORD_CREDENTIALSA;
|
|
typedef struct _CRYPT_PASSWORD_CREDENTIALSW {
|
|
DWORD cbSize;
|
|
LPWSTR pszUsername;
|
|
LPWSTR pszPassword;
|
|
} CRYPT_PASSWORD_CREDENTIALSW,*PCRYPT_PASSWORD_CREDENTIALSW;
|
|
typedef CRYPT_PASSWORD_CREDENTIALSA CRYPT_PASSWORD_CREDENTIALS;
|
|
typedef PCRYPT_PASSWORD_CREDENTIALSA PCRYPT_PASSWORD_CREDENTIALS;
|
|
typedef void ( *PFN_FREE_ENCODED_OBJECT_FUNC) (LPCSTR pszObjectOid, PCRYPT_BLOB_ARRAY pObject, LPVOID pvFreeContext);
|
|
typedef struct _CRYPTNET_URL_CACHE_PRE_FETCH_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwObjectType;
|
|
DWORD dwError;
|
|
DWORD dwReserved;
|
|
FILETIME ThisUpdateTime;
|
|
FILETIME NextUpdateTime;
|
|
FILETIME PublishTime;
|
|
} CRYPTNET_URL_CACHE_PRE_FETCH_INFO,*PCRYPTNET_URL_CACHE_PRE_FETCH_INFO;
|
|
typedef struct _CRYPTNET_URL_CACHE_FLUSH_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwExemptSeconds;
|
|
FILETIME ExpireTime;
|
|
} CRYPTNET_URL_CACHE_FLUSH_INFO,*PCRYPTNET_URL_CACHE_FLUSH_INFO;
|
|
typedef struct _CRYPTNET_URL_CACHE_RESPONSE_INFO {
|
|
DWORD cbSize;
|
|
WORD wResponseType;
|
|
WORD wResponseFlags;
|
|
FILETIME LastModifiedTime;
|
|
DWORD dwMaxAge;
|
|
LPCWSTR pwszETag;
|
|
DWORD dwProxyId;
|
|
} CRYPTNET_URL_CACHE_RESPONSE_INFO,*PCRYPTNET_URL_CACHE_RESPONSE_INFO;
|
|
typedef struct _CRYPT_RETRIEVE_AUX_INFO {
|
|
DWORD cbSize;
|
|
FILETIME *pLastSyncTime;
|
|
DWORD dwMaxUrlRetrievalByteCount;
|
|
PCRYPTNET_URL_CACHE_PRE_FETCH_INFO pPreFetchInfo;
|
|
PCRYPTNET_URL_CACHE_FLUSH_INFO pFlushInfo;
|
|
PCRYPTNET_URL_CACHE_RESPONSE_INFO *ppResponseInfo;
|
|
LPWSTR pwszCacheFileNamePrefix;
|
|
LPFILETIME pftCacheResync;
|
|
WINBOOL fProxyCacheRetrieval;
|
|
DWORD dwHttpStatusCode;
|
|
} CRYPT_RETRIEVE_AUX_INFO,*PCRYPT_RETRIEVE_AUX_INFO;
|
|
__attribute__((dllimport)) WINBOOL CryptRetrieveObjectByUrlA (LPCSTR pszUrl, LPCSTR pszObjectOid, DWORD dwRetrievalFlags, DWORD dwTimeout, LPVOID *ppvObject, HCRYPTASYNC hAsyncRetrieve, PCRYPT_CREDENTIALS pCredentials, LPVOID pvVerify, PCRYPT_RETRIEVE_AUX_INFO pAuxInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptRetrieveObjectByUrlW (LPCWSTR pszUrl, LPCSTR pszObjectOid, DWORD dwRetrievalFlags, DWORD dwTimeout, LPVOID *ppvObject, HCRYPTASYNC hAsyncRetrieve, PCRYPT_CREDENTIALS pCredentials, LPVOID pvVerify, PCRYPT_RETRIEVE_AUX_INFO pAuxInfo);
|
|
typedef WINBOOL ( *PFN_CRYPT_CANCEL_RETRIEVAL) (DWORD dwFlags, void *pvArg);
|
|
__attribute__((dllimport)) WINBOOL CryptInstallCancelRetrieval (PFN_CRYPT_CANCEL_RETRIEVAL pfnCancel, const void *pvArg, DWORD dwFlags, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CryptUninstallCancelRetrieval (DWORD dwFlags, void *pvReserved);
|
|
__attribute__((dllimport)) WINBOOL CryptCancelAsyncRetrieval (HCRYPTASYNC hAsyncRetrieval);
|
|
typedef void ( *PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC) (LPVOID pvCompletion, DWORD dwCompletionCode, LPCSTR pszUrl, LPSTR pszObjectOid, LPVOID pvObject);
|
|
typedef struct _CRYPT_ASYNC_RETRIEVAL_COMPLETION {
|
|
PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC pfnCompletion;
|
|
LPVOID pvCompletion;
|
|
} CRYPT_ASYNC_RETRIEVAL_COMPLETION,*PCRYPT_ASYNC_RETRIEVAL_COMPLETION;
|
|
typedef WINBOOL ( *PFN_CANCEL_ASYNC_RETRIEVAL_FUNC) (HCRYPTASYNC hAsyncRetrieve);
|
|
typedef struct _CRYPT_URL_ARRAY {
|
|
DWORD cUrl;
|
|
LPWSTR *rgwszUrl;
|
|
} CRYPT_URL_ARRAY,*PCRYPT_URL_ARRAY;
|
|
typedef struct _CRYPT_URL_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwSyncDeltaTime;
|
|
DWORD cGroup;
|
|
DWORD *rgcGroupEntry;
|
|
} CRYPT_URL_INFO,*PCRYPT_URL_INFO;
|
|
__attribute__((dllimport)) WINBOOL CryptGetObjectUrl (LPCSTR pszUrlOid, LPVOID pvPara, DWORD dwFlags, PCRYPT_URL_ARRAY pUrlArray, DWORD *pcbUrlArray, PCRYPT_URL_INFO pUrlInfo, DWORD *pcbUrlInfo, LPVOID pvReserved);
|
|
typedef struct _CERT_CRL_CONTEXT_PAIR {
|
|
PCCERT_CONTEXT pCertContext;
|
|
PCCRL_CONTEXT pCrlContext;
|
|
} CERT_CRL_CONTEXT_PAIR,*PCERT_CRL_CONTEXT_PAIR;
|
|
typedef const CERT_CRL_CONTEXT_PAIR *PCCERT_CRL_CONTEXT_PAIR;
|
|
typedef struct _CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO {
|
|
DWORD cbSize;
|
|
int iDeltaCrlIndicator;
|
|
LPFILETIME pftCacheResync;
|
|
LPFILETIME pLastSyncTime;
|
|
LPFILETIME pMaxAgeTime;
|
|
PCERT_REVOCATION_CHAIN_PARA pChainPara;
|
|
PCRYPT_INTEGER_BLOB pDeltaCrlIndicator;
|
|
} CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO, *PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO;
|
|
typedef WINBOOL ( *PFN_CRYPT_ENUM_KEYID_PROP) (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwFlags, void *pvReserved, void *pvArg, DWORD cProp, DWORD *rgdwPropId, void **rgpvData, DWORD *rgcbData);
|
|
__attribute__((dllimport)) WINBOOL CryptGetTimeValidObject (LPCSTR pszTimeValidOid, LPVOID pvPara, PCCERT_CONTEXT pIssuer, LPFILETIME pftValidFor, DWORD dwFlags, DWORD dwTimeout, LPVOID *ppvObject, PCRYPT_CREDENTIALS pCredentials, PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO pExtraInfo);
|
|
__attribute__((dllimport)) WINBOOL CryptFlushTimeValidObject (LPCSTR pszFlushTimeValidOid, LPVOID pvPara, PCCERT_CONTEXT pIssuer, DWORD dwFlags, LPVOID pvReserved);
|
|
__attribute__((dllimport)) PCCERT_CONTEXT CertCreateSelfSignCertificate (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey, PCERT_NAME_BLOB pSubjectIssuerBlob, DWORD dwFlags, PCRYPT_KEY_PROV_INFO pKeyProvInfo, PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm, PSYSTEMTIME pStartTime, PSYSTEMTIME pEndTime, PCERT_EXTENSIONS pExtensions);
|
|
__attribute__((dllimport)) WINBOOL CryptGetKeyIdentifierProperty (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwPropId, DWORD dwFlags, LPCWSTR pwszComputerName, void *pvReserved, void *pvData, DWORD *pcbData);
|
|
__attribute__((dllimport)) WINBOOL CryptSetKeyIdentifierProperty (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwPropId, DWORD dwFlags, LPCWSTR pwszComputerName, void *pvReserved, const void *pvData);
|
|
__attribute__((dllimport)) WINBOOL CryptEnumKeyIdentifierProperties (const CRYPT_HASH_BLOB *pKeyIdentifier, DWORD dwPropId, DWORD dwFlags, LPCWSTR pwszComputerName, void *pvReserved, void *pvArg, PFN_CRYPT_ENUM_KEYID_PROP pfnEnum);
|
|
__attribute__((dllimport)) WINBOOL CryptCreateKeyIdentifierFromCSP (DWORD dwCertEncodingType, LPCSTR pszPubKeyOID, const PUBLICKEYSTRUC *pPubKeyStruc, DWORD cbPubKeyStruc, DWORD dwFlags, void *pvReserved, BYTE *pbHash, DWORD *pcbHash);
|
|
typedef HANDLE HCERTCHAINENGINE;
|
|
typedef struct _CERT_CHAIN_ENGINE_CONFIG {
|
|
DWORD cbSize;
|
|
HCERTSTORE hRestrictedRoot;
|
|
HCERTSTORE hRestrictedTrust;
|
|
HCERTSTORE hRestrictedOther;
|
|
DWORD cAdditionalStore;
|
|
HCERTSTORE *rghAdditionalStore;
|
|
DWORD dwFlags;
|
|
DWORD dwUrlRetrievalTimeout;
|
|
DWORD MaximumCachedCertificates;
|
|
DWORD CycleDetectionModulus;
|
|
} CERT_CHAIN_ENGINE_CONFIG,*PCERT_CHAIN_ENGINE_CONFIG;
|
|
__attribute__((dllimport)) WINBOOL CertCreateCertificateChainEngine (PCERT_CHAIN_ENGINE_CONFIG pConfig, HCERTCHAINENGINE *phChainEngine);
|
|
__attribute__((dllimport)) void CertFreeCertificateChainEngine (HCERTCHAINENGINE hChainEngine);
|
|
__attribute__((dllimport)) WINBOOL CertResyncCertificateChainEngine (HCERTCHAINENGINE hChainEngine);
|
|
typedef struct _CERT_TRUST_STATUS {
|
|
DWORD dwErrorStatus;
|
|
DWORD dwInfoStatus;
|
|
} CERT_TRUST_STATUS,*PCERT_TRUST_STATUS;
|
|
typedef struct _CERT_REVOCATION_INFO {
|
|
DWORD cbSize;
|
|
DWORD dwRevocationResult;
|
|
LPCSTR pszRevocationOid;
|
|
LPVOID pvOidSpecificInfo;
|
|
WINBOOL fHasFreshnessTime;
|
|
DWORD dwFreshnessTime;
|
|
PCERT_REVOCATION_CRL_INFO pCrlInfo;
|
|
} CERT_REVOCATION_INFO,*PCERT_REVOCATION_INFO;
|
|
typedef struct _CERT_TRUST_LIST_INFO {
|
|
DWORD cbSize;
|
|
PCTL_ENTRY pCtlEntry;
|
|
PCCTL_CONTEXT pCtlContext;
|
|
} CERT_TRUST_LIST_INFO,*PCERT_TRUST_LIST_INFO;
|
|
typedef struct _CERT_CHAIN_ELEMENT {
|
|
DWORD cbSize;
|
|
PCCERT_CONTEXT pCertContext;
|
|
CERT_TRUST_STATUS TrustStatus;
|
|
PCERT_REVOCATION_INFO pRevocationInfo;
|
|
PCERT_ENHKEY_USAGE pIssuanceUsage;
|
|
PCERT_ENHKEY_USAGE pApplicationUsage;
|
|
LPCWSTR pwszExtendedErrorInfo;
|
|
} CERT_CHAIN_ELEMENT,*PCERT_CHAIN_ELEMENT;
|
|
typedef const CERT_CHAIN_ELEMENT *PCCERT_CHAIN_ELEMENT;
|
|
typedef struct _CERT_SIMPLE_CHAIN {
|
|
DWORD cbSize;
|
|
CERT_TRUST_STATUS TrustStatus;
|
|
DWORD cElement;
|
|
PCERT_CHAIN_ELEMENT *rgpElement;
|
|
PCERT_TRUST_LIST_INFO pTrustListInfo;
|
|
WINBOOL fHasRevocationFreshnessTime;
|
|
DWORD dwRevocationFreshnessTime;
|
|
} CERT_SIMPLE_CHAIN,*PCERT_SIMPLE_CHAIN;
|
|
typedef const CERT_SIMPLE_CHAIN *PCCERT_SIMPLE_CHAIN;
|
|
typedef struct _CERT_CHAIN_CONTEXT CERT_CHAIN_CONTEXT,*PCERT_CHAIN_CONTEXT;
|
|
typedef const CERT_CHAIN_CONTEXT *PCCERT_CHAIN_CONTEXT;
|
|
struct _CERT_CHAIN_CONTEXT {
|
|
DWORD cbSize;
|
|
CERT_TRUST_STATUS TrustStatus;
|
|
DWORD cChain;
|
|
PCERT_SIMPLE_CHAIN *rgpChain;
|
|
DWORD cLowerQualityChainContext;
|
|
PCCERT_CHAIN_CONTEXT *rgpLowerQualityChainContext;
|
|
WINBOOL fHasRevocationFreshnessTime;
|
|
DWORD dwRevocationFreshnessTime;
|
|
DWORD dwCreateFlags;
|
|
GUID ChainId;
|
|
};
|
|
typedef struct _CERT_USAGE_MATCH {
|
|
DWORD dwType;
|
|
CERT_ENHKEY_USAGE Usage;
|
|
} CERT_USAGE_MATCH,*PCERT_USAGE_MATCH;
|
|
typedef struct _CTL_USAGE_MATCH {
|
|
DWORD dwType;
|
|
CTL_USAGE Usage;
|
|
} CTL_USAGE_MATCH,*PCTL_USAGE_MATCH;
|
|
typedef struct _CERT_CHAIN_PARA {
|
|
DWORD cbSize;
|
|
CERT_USAGE_MATCH RequestedUsage;
|
|
} CERT_CHAIN_PARA,*PCERT_CHAIN_PARA;
|
|
__attribute__((dllimport)) WINBOOL CertGetCertificateChain (HCERTCHAINENGINE hChainEngine, PCCERT_CONTEXT pCertContext, LPFILETIME pTime, HCERTSTORE hAdditionalStore, PCERT_CHAIN_PARA pChainPara, DWORD dwFlags, LPVOID pvReserved, PCCERT_CHAIN_CONTEXT *ppChainContext);
|
|
__attribute__((dllimport)) void CertFreeCertificateChain (PCCERT_CHAIN_CONTEXT pChainContext);
|
|
__attribute__((dllimport)) PCCERT_CHAIN_CONTEXT CertDuplicateCertificateChain (PCCERT_CHAIN_CONTEXT pChainContext);
|
|
struct _CERT_REVOCATION_CHAIN_PARA {
|
|
DWORD cbSize;
|
|
HCERTCHAINENGINE hChainEngine;
|
|
HCERTSTORE hAdditionalStore;
|
|
DWORD dwChainFlags;
|
|
DWORD dwUrlRetrievalTimeout;
|
|
LPFILETIME pftCurrentTime;
|
|
LPFILETIME pftCacheResync;
|
|
DWORD cbMaxUrlRetrievalByteCount;
|
|
};
|
|
typedef struct _CRL_REVOCATION_INFO {
|
|
PCRL_ENTRY pCrlEntry;
|
|
PCCRL_CONTEXT pCrlContext;
|
|
PCCERT_CHAIN_CONTEXT pCrlIssuerChain;
|
|
} CRL_REVOCATION_INFO,*PCRL_REVOCATION_INFO;
|
|
__attribute__((dllimport)) PCCERT_CHAIN_CONTEXT CertFindChainInStore (HCERTSTORE hCertStore, DWORD dwCertEncodingType, DWORD dwFindFlags, DWORD dwFindType, const void *pvFindPara, PCCERT_CHAIN_CONTEXT pPrevChainContext);
|
|
typedef WINBOOL ( *PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK) (PCCERT_CONTEXT pCert, void *pvFindArg);
|
|
typedef struct _CERT_CHAIN_FIND_BY_ISSUER_PARA {
|
|
DWORD cbSize;
|
|
LPCSTR pszUsageIdentifier;
|
|
DWORD dwKeySpec;
|
|
DWORD dwAcquirePrivateKeyFlags;
|
|
DWORD cIssuer;
|
|
CERT_NAME_BLOB *rgIssuer;
|
|
PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK pfnFindCallback;
|
|
void *pvFindArg;
|
|
} CERT_CHAIN_FIND_ISSUER_PARA,*PCERT_CHAIN_FIND_ISSUER_PARA,CERT_CHAIN_FIND_BY_ISSUER_PARA,*PCERT_CHAIN_FIND_BY_ISSUER_PARA;
|
|
typedef struct _CERT_CHAIN_POLICY_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwFlags;
|
|
void *pvExtraPolicyPara;
|
|
} CERT_CHAIN_POLICY_PARA,*PCERT_CHAIN_POLICY_PARA;
|
|
typedef struct _CERT_CHAIN_POLICY_STATUS {
|
|
DWORD cbSize;
|
|
DWORD dwError;
|
|
LONG lChainIndex;
|
|
LONG lElementIndex;
|
|
void *pvExtraPolicyStatus;
|
|
} CERT_CHAIN_POLICY_STATUS,*PCERT_CHAIN_POLICY_STATUS;
|
|
__attribute__((dllimport)) WINBOOL CertVerifyCertificateChainPolicy (LPCSTR pszPolicyOID, PCCERT_CHAIN_CONTEXT pChainContext, PCERT_CHAIN_POLICY_PARA pPolicyPara, PCERT_CHAIN_POLICY_STATUS pPolicyStatus);
|
|
typedef struct _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwRegPolicySettings;
|
|
PCMSG_SIGNER_INFO pSignerInfo;
|
|
} AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA, *PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA;
|
|
typedef struct _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS {
|
|
DWORD cbSize;
|
|
WINBOOL fCommercial;
|
|
} AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS, *PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS;
|
|
typedef struct _AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwRegPolicySettings;
|
|
WINBOOL fCommercial;
|
|
} AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA,*PAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA;
|
|
typedef struct _HTTPSPolicyCallbackData {
|
|
__extension__ union {
|
|
DWORD cbStruct;
|
|
DWORD cbSize;
|
|
};
|
|
DWORD dwAuthType;
|
|
DWORD fdwChecks;
|
|
WCHAR *pwszServerName;
|
|
} HTTPSPolicyCallbackData,*PHTTPSPolicyCallbackData,SSL_EXTRA_CERT_CHAIN_POLICY_PARA,*PSSL_EXTRA_CERT_CHAIN_POLICY_PARA;
|
|
typedef struct _EV_EXTRA_CERT_CHAIN_POLICY_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwRootProgramQualifierFlags;
|
|
} EV_EXTRA_CERT_CHAIN_POLICY_PARA,*PEV_EXTRA_CERT_CHAIN_POLICY_PARA;
|
|
typedef struct _EV_EXTRA_CERT_CHAIN_POLICY_STATUS {
|
|
DWORD cbSize;
|
|
DWORD dwQualifiers;
|
|
DWORD dwIssuanceUsageIndex;
|
|
} EV_EXTRA_CERT_CHAIN_POLICY_STATUS,*PEV_EXTRA_CERT_CHAIN_POLICY_STATUS;
|
|
typedef struct _SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS {
|
|
DWORD cbSize;
|
|
DWORD dwErrorLevel;
|
|
DWORD dwErrorCategory;
|
|
DWORD dwReserved;
|
|
WCHAR wszErrorText[256];
|
|
} SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS, *PSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS;
|
|
typedef struct _SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwReserved;
|
|
LPWSTR pwszServerName;
|
|
LPSTR rgpszHpkpValue[2];
|
|
} SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA;
|
|
typedef struct _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA {
|
|
DWORD cbSize;
|
|
DWORD dwReserved;
|
|
PCWSTR pwszServerName;
|
|
} SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA;
|
|
typedef struct _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS {
|
|
DWORD cbSize;
|
|
LONG lError;
|
|
WCHAR wszErrorText[512];
|
|
} SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS, *PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS;
|
|
__attribute__((dllimport)) WINBOOL CryptStringToBinaryA (LPCSTR pszString, DWORD cchString, DWORD dwFlags, BYTE *pbBinary, DWORD *pcbBinary, DWORD *pdwSkip, DWORD *pdwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptStringToBinaryW (LPCWSTR pszString, DWORD cchString, DWORD dwFlags, BYTE *pbBinary, DWORD *pcbBinary, DWORD *pdwSkip, DWORD *pdwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptBinaryToStringA (const BYTE *pbBinary, DWORD cbBinary, DWORD dwFlags, LPSTR pszString, DWORD *pcchString);
|
|
__attribute__((dllimport)) WINBOOL CryptBinaryToStringW (const BYTE *pbBinary, DWORD cbBinary, DWORD dwFlags, LPWSTR pszString, DWORD *pcchString);
|
|
typedef struct _CRYPT_PKCS12_PBE_PARAMS {
|
|
int iIterations;
|
|
ULONG cbSalt;
|
|
} CRYPT_PKCS12_PBE_PARAMS;
|
|
__attribute__((dllimport)) HCERTSTORE PFXImportCertStore (CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL PFXIsPFXBlob (CRYPT_DATA_BLOB *pPFX);
|
|
__attribute__((dllimport)) WINBOOL PFXVerifyPassword (CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL PFXExportCertStoreEx (HCERTSTORE hStore, CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, void *pvPara, DWORD dwFlags);
|
|
typedef struct _PKCS12_PBES2_EXPORT_PARAMS {
|
|
DWORD dwSize;
|
|
PVOID hNcryptDescriptor;
|
|
LPWSTR pwszPbes2Alg;
|
|
} PKCS12_PBES2_EXPORT_PARAMS, *PPKCS12_PBES2_EXPORT_PARAMS;
|
|
__attribute__((dllimport)) WINBOOL PFXExportCertStore (HCERTSTORE hStore, CRYPT_DATA_BLOB *pPFX, LPCWSTR szPassword, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CertRetrieveLogoOrBiometricInfo (PCCERT_CONTEXT pCertContext, LPCSTR lpszLogoOrBiometricType, DWORD dwRetrievalFlags, DWORD dwTimeout, DWORD dwFlags, void *pvReserved, BYTE **ppbData, DWORD *pcbData, LPWSTR *ppwszMimeType);
|
|
typedef struct _CRYPTPROTECT_PROMPTSTRUCT {
|
|
DWORD cbSize;
|
|
DWORD dwPromptFlags;
|
|
HWND hwndApp;
|
|
LPCWSTR szPrompt;
|
|
} CRYPTPROTECT_PROMPTSTRUCT,*PCRYPTPROTECT_PROMPTSTRUCT;
|
|
__attribute__((dllimport)) WINBOOL CryptProtectData (DATA_BLOB *pDataIn, LPCWSTR szDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, DATA_BLOB *pDataOut);
|
|
__attribute__((dllimport)) WINBOOL CryptUnprotectData (DATA_BLOB *pDataIn, LPWSTR *ppszDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, DATA_BLOB *pDataOut);
|
|
__attribute__((dllimport)) WINBOOL CryptProtectMemory (LPVOID pDataIn, DWORD cbDataIn, DWORD dwFlags);
|
|
__attribute__((dllimport)) WINBOOL CryptUnprotectMemory (LPVOID pDataIn, DWORD cbDataIn, DWORD dwFlags);
|
|
typedef struct _CERTIFICATE_BLOB {
|
|
DWORD dwCertEncodingType;
|
|
DWORD cbData;
|
|
PBYTE pbData;
|
|
} EFS_CERTIFICATE_BLOB,*PEFS_CERTIFICATE_BLOB;
|
|
typedef struct _EFS_HASH_BLOB {
|
|
DWORD cbData;
|
|
PBYTE pbData;
|
|
} EFS_HASH_BLOB,*PEFS_HASH_BLOB;
|
|
typedef struct _EFS_RPC_BLOB {
|
|
DWORD cbData;
|
|
PBYTE pbData;
|
|
} EFS_RPC_BLOB,*PEFS_RPC_BLOB;
|
|
typedef struct _EFS_KEY_INFO {
|
|
DWORD dwVersion;
|
|
ULONG Entropy;
|
|
ALG_ID Algorithm;
|
|
ULONG KeyLength;
|
|
} EFS_KEY_INFO,*PEFS_KEY_INFO;
|
|
typedef struct _ENCRYPTION_CERTIFICATE {
|
|
DWORD cbTotalLength;
|
|
SID *pUserSid;
|
|
PEFS_CERTIFICATE_BLOB pCertBlob;
|
|
} ENCRYPTION_CERTIFICATE,*PENCRYPTION_CERTIFICATE;
|
|
typedef struct _ENCRYPTION_CERTIFICATE_HASH {
|
|
DWORD cbTotalLength;
|
|
SID *pUserSid;
|
|
PEFS_HASH_BLOB pHash;
|
|
LPWSTR lpDisplayInformation;
|
|
} ENCRYPTION_CERTIFICATE_HASH,*PENCRYPTION_CERTIFICATE_HASH;
|
|
typedef struct _ENCRYPTION_CERTIFICATE_HASH_LIST {
|
|
DWORD nCert_Hash;
|
|
PENCRYPTION_CERTIFICATE_HASH *pUsers;
|
|
} ENCRYPTION_CERTIFICATE_HASH_LIST,*PENCRYPTION_CERTIFICATE_HASH_LIST;
|
|
typedef struct _ENCRYPTION_CERTIFICATE_LIST {
|
|
DWORD nUsers;
|
|
PENCRYPTION_CERTIFICATE *pUsers;
|
|
} ENCRYPTION_CERTIFICATE_LIST,*PENCRYPTION_CERTIFICATE_LIST;
|
|
__attribute__((dllimport)) DWORD QueryUsersOnEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_HASH_LIST *pUsers);
|
|
__attribute__((dllimport)) DWORD QueryRecoveryAgentsOnEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_HASH_LIST *pRecoveryAgents);
|
|
__attribute__((dllimport)) DWORD RemoveUsersFromEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_HASH_LIST pHashes);
|
|
__attribute__((dllimport)) DWORD AddUsersToEncryptedFile(LPCWSTR lpFileName,PENCRYPTION_CERTIFICATE_LIST pUsers);
|
|
__attribute__((dllimport)) DWORD SetUserFileEncryptionKey(PENCRYPTION_CERTIFICATE pEncryptionCertificate);
|
|
__attribute__((dllimport)) void FreeEncryptionCertificateHashList(PENCRYPTION_CERTIFICATE_HASH_LIST pHashes);
|
|
__attribute__((dllimport)) WINBOOL EncryptionDisable(LPCWSTR DirPath,WINBOOL Disable);
|
|
__attribute__((dllimport)) DWORD DuplicateEncryptionInfoFile(LPCWSTR SrcFileName,LPCWSTR DstFileName,DWORD dwCreationDistribution,DWORD dwAttributes,const LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
|
#pragma pack(push,8)
|
|
typedef struct {
|
|
RPC_NS_HANDLE LookupContext;
|
|
RPC_BINDING_HANDLE ProposedHandle;
|
|
RPC_BINDING_VECTOR *Bindings;
|
|
} RPC_IMPORT_CONTEXT_P,*PRPC_IMPORT_CONTEXT_P;
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNsGetBuffer(PRPC_MESSAGE Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcNsSendReceive(PRPC_MESSAGE Message,RPC_BINDING_HANDLE *Handle);
|
|
__attribute__((dllimport)) void I_RpcNsRaiseException(PRPC_MESSAGE Message,RPC_STATUS Status);
|
|
__attribute__((dllimport)) RPC_STATUS I_RpcReBindBuffer(PRPC_MESSAGE Message);
|
|
__attribute__((dllimport)) RPC_STATUS I_NsServerBindSearch(void);
|
|
__attribute__((dllimport)) RPC_STATUS I_NsClientBindSearch(void);
|
|
__attribute__((dllimport)) void I_NsClientBindDone(void);
|
|
typedef unsigned char byte;
|
|
typedef byte cs_byte;
|
|
typedef unsigned char boolean;
|
|
void * MIDL_user_allocate(size_t);
|
|
void MIDL_user_free(void *);
|
|
typedef void *NDR_CCONTEXT;
|
|
typedef struct _NDR_SCONTEXT {
|
|
void *pad[2];
|
|
void *userContext;
|
|
} *NDR_SCONTEXT;
|
|
typedef void ( *NDR_RUNDOWN)(void *context);
|
|
typedef void ( *NDR_NOTIFY_ROUTINE)(void);
|
|
typedef void ( *NDR_NOTIFY2_ROUTINE)(boolean flag);
|
|
typedef struct _SCONTEXT_QUEUE {
|
|
unsigned long NumberOfObjects;
|
|
NDR_SCONTEXT *ArrayOfObjects;
|
|
} SCONTEXT_QUEUE,*PSCONTEXT_QUEUE;
|
|
__attribute__((dllimport)) RPC_BINDING_HANDLE NDRCContextBinding(NDR_CCONTEXT CContext);
|
|
__attribute__((dllimport)) void NDRCContextMarshall(NDR_CCONTEXT CContext,void *pBuff);
|
|
__attribute__((dllimport)) void NDRCContextUnmarshall(NDR_CCONTEXT *pCContext,RPC_BINDING_HANDLE hBinding,void *pBuff,unsigned long DataRepresentation);
|
|
__attribute__((dllimport)) void NDRSContextMarshall(NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn);
|
|
__attribute__((dllimport)) NDR_SCONTEXT NDRSContextUnmarshall(void *pBuff,unsigned long DataRepresentation);
|
|
__attribute__((dllimport)) void NDRSContextMarshallEx(RPC_BINDING_HANDLE BindingHandle,NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn);
|
|
__attribute__((dllimport)) void NDRSContextMarshall2(RPC_BINDING_HANDLE BindingHandle,NDR_SCONTEXT CContext,void *pBuff,NDR_RUNDOWN userRunDownIn,void *CtxGuard,unsigned long Flags);
|
|
__attribute__((dllimport)) NDR_SCONTEXT NDRSContextUnmarshallEx(RPC_BINDING_HANDLE BindingHandle,void *pBuff,unsigned long DataRepresentation);
|
|
__attribute__((dllimport)) NDR_SCONTEXT NDRSContextUnmarshall2(RPC_BINDING_HANDLE BindingHandle,void *pBuff,unsigned long DataRepresentation,void *CtxGuard,unsigned long Flags);
|
|
__attribute__((dllimport)) void RpcSsDestroyClientContext(void **ContextHandle);
|
|
typedef unsigned long error_status_t;
|
|
struct _MIDL_STUB_MESSAGE;
|
|
struct _MIDL_STUB_DESC;
|
|
struct _FULL_PTR_XLAT_TABLES;
|
|
typedef unsigned char *RPC_BUFPTR;
|
|
typedef unsigned long RPC_LENGTH;
|
|
typedef void ( *EXPR_EVAL)(struct _MIDL_STUB_MESSAGE *);
|
|
typedef const unsigned char *PFORMAT_STRING;
|
|
typedef struct {
|
|
long Dimension;
|
|
unsigned long *BufferConformanceMark;
|
|
unsigned long *BufferVarianceMark;
|
|
unsigned long *MaxCountArray;
|
|
unsigned long *OffsetArray;
|
|
unsigned long *ActualCountArray;
|
|
} ARRAY_INFO,*PARRAY_INFO;
|
|
typedef struct _NDR_ASYNC_MESSAGE *PNDR_ASYNC_MESSAGE;
|
|
typedef struct _NDR_CORRELATION_INFO *PNDR_CORRELATION_INFO;
|
|
typedef struct {
|
|
unsigned long WireCodeset;
|
|
unsigned long DesiredReceivingCodeset;
|
|
void *CSArrayInfo;
|
|
} CS_STUB_INFO;
|
|
struct _MIDL_SYNTAX_INFO;
|
|
typedef struct _MIDL_SYNTAX_INFO MIDL_SYNTAX_INFO,*PMIDL_SYNTAX_INFO;
|
|
struct NDR_ALLOC_ALL_NODES_CONTEXT;
|
|
struct NDR_POINTER_QUEUE_STATE;
|
|
struct _NDR_PROC_CONTEXT;
|
|
typedef struct _MIDL_STUB_MESSAGE {
|
|
PRPC_MESSAGE RpcMsg;
|
|
unsigned char *Buffer;
|
|
unsigned char *BufferStart;
|
|
unsigned char *BufferEnd;
|
|
unsigned char *BufferMark;
|
|
unsigned long BufferLength;
|
|
unsigned long MemorySize;
|
|
unsigned char *Memory;
|
|
unsigned char IsClient;
|
|
unsigned char Pad;
|
|
unsigned short uFlags2;
|
|
int ReuseBuffer;
|
|
struct NDR_ALLOC_ALL_NODES_CONTEXT *pAllocAllNodesContext;
|
|
struct NDR_POINTER_QUEUE_STATE *pPointerQueueState;
|
|
int IgnoreEmbeddedPointers;
|
|
unsigned char *PointerBufferMark;
|
|
unsigned char fBufferValid;
|
|
unsigned char uFlags;
|
|
unsigned short UniquePtrCount;
|
|
ULONG_PTR MaxCount;
|
|
unsigned long Offset;
|
|
unsigned long ActualCount;
|
|
void *( *pfnAllocate)(size_t);
|
|
void ( *pfnFree)(void *);
|
|
unsigned char *StackTop;
|
|
unsigned char *pPresentedType;
|
|
unsigned char *pTransmitType;
|
|
handle_t SavedHandle;
|
|
const struct _MIDL_STUB_DESC *StubDesc;
|
|
struct _FULL_PTR_XLAT_TABLES *FullPtrXlatTables;
|
|
unsigned long FullPtrRefId;
|
|
unsigned long PointerLength;
|
|
int fInDontFree : 1;
|
|
int fDontCallFreeInst : 1;
|
|
int fInOnlyParam : 1;
|
|
int fHasReturn : 1;
|
|
int fHasExtensions : 1;
|
|
int fHasNewCorrDesc : 1;
|
|
int fIsOicfServer : 1;
|
|
int fHasMemoryValidateCallback : 1;
|
|
int fUnused : 8;
|
|
int fUnused2 : 16;
|
|
unsigned long dwDestContext;
|
|
void *pvDestContext;
|
|
NDR_SCONTEXT *SavedContextHandles;
|
|
long ParamNumber;
|
|
struct IRpcChannelBuffer *pRpcChannelBuffer;
|
|
PARRAY_INFO pArrayInfo;
|
|
unsigned long *SizePtrCountArray;
|
|
unsigned long *SizePtrOffsetArray;
|
|
unsigned long *SizePtrLengthArray;
|
|
void *pArgQueue;
|
|
unsigned long dwStubPhase;
|
|
void *LowStackMark;
|
|
PNDR_ASYNC_MESSAGE pAsyncMsg;
|
|
PNDR_CORRELATION_INFO pCorrInfo;
|
|
unsigned char *pCorrMemory;
|
|
void *pMemoryList;
|
|
CS_STUB_INFO *pCSInfo;
|
|
unsigned char *ConformanceMark;
|
|
unsigned char *VarianceMark;
|
|
INT_PTR Unused;
|
|
struct _NDR_PROC_CONTEXT *pContext;
|
|
void *pUserMarshalList;
|
|
INT_PTR Reserved51_2;
|
|
INT_PTR Reserved51_3;
|
|
INT_PTR Reserved51_4;
|
|
INT_PTR Reserved51_5;
|
|
} MIDL_STUB_MESSAGE,*PMIDL_STUB_MESSAGE;
|
|
typedef void *( *GENERIC_BINDING_ROUTINE)(void *);
|
|
typedef void ( *GENERIC_UNBIND_ROUTINE)(void *,unsigned char *);
|
|
typedef struct _GENERIC_BINDING_ROUTINE_PAIR {
|
|
GENERIC_BINDING_ROUTINE pfnBind;
|
|
GENERIC_UNBIND_ROUTINE pfnUnbind;
|
|
} GENERIC_BINDING_ROUTINE_PAIR,*PGENERIC_BINDING_ROUTINE_PAIR;
|
|
typedef struct __GENERIC_BINDING_INFO {
|
|
void *pObj;
|
|
unsigned int Size;
|
|
GENERIC_BINDING_ROUTINE pfnBind;
|
|
GENERIC_UNBIND_ROUTINE pfnUnbind;
|
|
} GENERIC_BINDING_INFO,*PGENERIC_BINDING_INFO;
|
|
typedef void ( *XMIT_HELPER_ROUTINE)(PMIDL_STUB_MESSAGE);
|
|
typedef struct _XMIT_ROUTINE_QUINTUPLE {
|
|
XMIT_HELPER_ROUTINE pfnTranslateToXmit;
|
|
XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
|
|
XMIT_HELPER_ROUTINE pfnFreeXmit;
|
|
XMIT_HELPER_ROUTINE pfnFreeInst;
|
|
} XMIT_ROUTINE_QUINTUPLE,*PXMIT_ROUTINE_QUINTUPLE;
|
|
typedef ULONG ( *USER_MARSHAL_SIZING_ROUTINE)(ULONG *,ULONG,void *);
|
|
typedef unsigned char *( *USER_MARSHAL_MARSHALLING_ROUTINE)(ULONG *,unsigned char *,void *);
|
|
typedef unsigned char *( *USER_MARSHAL_UNMARSHALLING_ROUTINE)(ULONG *,unsigned char *,void *);
|
|
typedef void ( *USER_MARSHAL_FREEING_ROUTINE)(ULONG *,void *);
|
|
typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE {
|
|
USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
|
|
USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
|
|
USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
|
|
USER_MARSHAL_FREEING_ROUTINE pfnFree;
|
|
} USER_MARSHAL_ROUTINE_QUADRUPLE;
|
|
typedef enum _USER_MARSHAL_CB_TYPE {
|
|
USER_MARSHAL_CB_BUFFER_SIZE,USER_MARSHAL_CB_MARSHALL,USER_MARSHAL_CB_UNMARSHALL,USER_MARSHAL_CB_FREE
|
|
} USER_MARSHAL_CB_TYPE;
|
|
typedef struct _USER_MARSHAL_CB {
|
|
unsigned long Flags;
|
|
PMIDL_STUB_MESSAGE pStubMsg;
|
|
PFORMAT_STRING pReserve;
|
|
unsigned long Signature;
|
|
USER_MARSHAL_CB_TYPE CBType;
|
|
PFORMAT_STRING pFormat;
|
|
PFORMAT_STRING pTypeFormat;
|
|
} USER_MARSHAL_CB;
|
|
typedef struct _MALLOC_FREE_STRUCT {
|
|
void *( *pfnAllocate)(size_t);
|
|
void ( *pfnFree)(void *);
|
|
} MALLOC_FREE_STRUCT;
|
|
typedef struct _COMM_FAULT_OFFSETS {
|
|
short CommOffset;
|
|
short FaultOffset;
|
|
} COMM_FAULT_OFFSETS;
|
|
typedef enum _IDL_CS_CONVERT {
|
|
IDL_CS_NO_CONVERT,IDL_CS_IN_PLACE_CONVERT,IDL_CS_NEW_BUFFER_CONVERT
|
|
} IDL_CS_CONVERT;
|
|
typedef void ( *CS_TYPE_NET_SIZE_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,unsigned long ulLocalBufferSize,IDL_CS_CONVERT *conversionType,unsigned long *pulNetworkBufferSize,error_status_t *pStatus);
|
|
typedef void ( *CS_TYPE_LOCAL_SIZE_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,unsigned long ulNetworkBufferSize,IDL_CS_CONVERT *conversionType,unsigned long *pulLocalBufferSize,error_status_t *pStatus);
|
|
typedef void ( *CS_TYPE_TO_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,void *pLocalData,unsigned long ulLocalDataLength,byte *pNetworkData,unsigned long *pulNetworkDataLength,error_status_t *pStatus);
|
|
typedef void ( *CS_TYPE_FROM_NETCS_ROUTINE)(RPC_BINDING_HANDLE hBinding,unsigned long ulNetworkCodeSet,byte *pNetworkData,unsigned long ulNetworkDataLength,unsigned long ulLocalBufferSize,void *pLocalData,unsigned long *pulLocalDataLength,error_status_t *pStatus);
|
|
typedef void ( *CS_TAG_GETTING_ROUTINE)(RPC_BINDING_HANDLE hBinding,int fServerSide,unsigned long *pulSendingTag,unsigned long *pulDesiredReceivingTag,unsigned long *pulReceivingTag,error_status_t *pStatus);
|
|
void RpcCsGetTags(RPC_BINDING_HANDLE hBinding,int fServerSide,unsigned long *pulSendingTag,unsigned long *pulDesiredReceivingTag,unsigned long *pulReceivingTag,error_status_t *pStatus);
|
|
typedef struct _NDR_CS_SIZE_CONVERT_ROUTINES {
|
|
CS_TYPE_NET_SIZE_ROUTINE pfnNetSize;
|
|
CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs;
|
|
CS_TYPE_LOCAL_SIZE_ROUTINE pfnLocalSize;
|
|
CS_TYPE_FROM_NETCS_ROUTINE pfnFromNetCs;
|
|
} NDR_CS_SIZE_CONVERT_ROUTINES;
|
|
typedef struct _NDR_CS_ROUTINES {
|
|
NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines;
|
|
CS_TAG_GETTING_ROUTINE *pTagGettingRoutines;
|
|
} NDR_CS_ROUTINES;
|
|
typedef struct _MIDL_STUB_DESC {
|
|
void *RpcInterfaceInformation;
|
|
void *( *pfnAllocate)(size_t);
|
|
void ( *pfnFree)(void *);
|
|
union {
|
|
handle_t *pAutoHandle;
|
|
handle_t *pPrimitiveHandle;
|
|
PGENERIC_BINDING_INFO pGenericBindingInfo;
|
|
} IMPLICIT_HANDLE_INFO;
|
|
const NDR_RUNDOWN *apfnNdrRundownRoutines;
|
|
const GENERIC_BINDING_ROUTINE_PAIR *aGenericBindingRoutinePairs;
|
|
const EXPR_EVAL *apfnExprEval;
|
|
const XMIT_ROUTINE_QUINTUPLE *aXmitQuintuple;
|
|
const unsigned char *pFormatTypes;
|
|
int fCheckBounds;
|
|
unsigned long Version;
|
|
MALLOC_FREE_STRUCT *pMallocFreeStruct;
|
|
long MIDLVersion;
|
|
const COMM_FAULT_OFFSETS *CommFaultOffsets;
|
|
const USER_MARSHAL_ROUTINE_QUADRUPLE *aUserMarshalQuadruple;
|
|
const NDR_NOTIFY_ROUTINE *NotifyRoutineTable;
|
|
ULONG_PTR mFlags;
|
|
const NDR_CS_ROUTINES *CsRoutineTables;
|
|
void *Reserved4;
|
|
ULONG_PTR Reserved5;
|
|
} MIDL_STUB_DESC;
|
|
typedef const MIDL_STUB_DESC *PMIDL_STUB_DESC;
|
|
typedef void *PMIDL_XMIT_TYPE;
|
|
typedef struct _MIDL_FORMAT_STRING {
|
|
short Pad;
|
|
unsigned char Format[];
|
|
} MIDL_FORMAT_STRING;
|
|
typedef void ( *STUB_THUNK)(PMIDL_STUB_MESSAGE);
|
|
typedef long ( *SERVER_ROUTINE)();
|
|
typedef struct _MIDL_SERVER_INFO_ {
|
|
PMIDL_STUB_DESC pStubDesc;
|
|
const SERVER_ROUTINE *DispatchTable;
|
|
PFORMAT_STRING ProcString;
|
|
const unsigned short *FmtStringOffset;
|
|
const STUB_THUNK *ThunkTable;
|
|
PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
|
|
ULONG_PTR nCount;
|
|
PMIDL_SYNTAX_INFO pSyntaxInfo;
|
|
} MIDL_SERVER_INFO,*PMIDL_SERVER_INFO;
|
|
typedef struct _MIDL_STUBLESS_PROXY_INFO {
|
|
PMIDL_STUB_DESC pStubDesc;
|
|
PFORMAT_STRING ProcFormatString;
|
|
const unsigned short *FormatStringOffset;
|
|
PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
|
|
ULONG_PTR nCount;
|
|
PMIDL_SYNTAX_INFO pSyntaxInfo;
|
|
} MIDL_STUBLESS_PROXY_INFO;
|
|
typedef MIDL_STUBLESS_PROXY_INFO *PMIDL_STUBLESS_PROXY_INFO;
|
|
struct _MIDL_SYNTAX_INFO {
|
|
RPC_SYNTAX_IDENTIFIER TransferSyntax;
|
|
RPC_DISPATCH_TABLE *DispatchTable;
|
|
PFORMAT_STRING ProcString;
|
|
const unsigned short *FmtStringOffset;
|
|
PFORMAT_STRING TypeString;
|
|
const void *aUserMarshalQuadruple;
|
|
ULONG_PTR pReserved1;
|
|
ULONG_PTR pReserved2;
|
|
};
|
|
typedef unsigned short *PARAM_OFFSETTABLE,*PPARAM_OFFSETTABLE;
|
|
typedef union _CLIENT_CALL_RETURN {
|
|
void *Pointer;
|
|
LONG_PTR Simple;
|
|
} CLIENT_CALL_RETURN;
|
|
typedef enum {
|
|
XLAT_SERVER = 1,XLAT_CLIENT
|
|
} XLAT_SIDE;
|
|
typedef struct _FULL_PTR_TO_REFID_ELEMENT {
|
|
struct _FULL_PTR_TO_REFID_ELEMENT *Next;
|
|
void *Pointer;
|
|
unsigned long RefId;
|
|
unsigned char State;
|
|
} FULL_PTR_TO_REFID_ELEMENT,*PFULL_PTR_TO_REFID_ELEMENT;
|
|
typedef struct _FULL_PTR_XLAT_TABLES {
|
|
struct {
|
|
void **XlatTable;
|
|
unsigned char *StateTable;
|
|
unsigned long NumberOfEntries;
|
|
} RefIdToPointer;
|
|
struct {
|
|
PFULL_PTR_TO_REFID_ELEMENT *XlatTable;
|
|
unsigned long NumberOfBuckets;
|
|
unsigned long HashMask;
|
|
} PointerToRefId;
|
|
unsigned long NextRefId;
|
|
XLAT_SIDE XlatSide;
|
|
} FULL_PTR_XLAT_TABLES,*PFULL_PTR_XLAT_TABLES;
|
|
RPC_STATUS NdrClientGetSupportedSyntaxes(RPC_CLIENT_INTERFACE *pInf,unsigned long *pCount,MIDL_SYNTAX_INFO **pArr);
|
|
RPC_STATUS NdrServerGetSupportedSyntaxes(RPC_SERVER_INTERFACE *pInf,unsigned long *pCount,MIDL_SYNTAX_INFO **pArr,unsigned long *pPreferSyntaxIndex);
|
|
__attribute__((dllimport)) void NdrSimpleTypeMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,unsigned char FormatChar);
|
|
__attribute__((dllimport)) unsigned char * NdrPointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrCsArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrCsTagMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrSimpleStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantVaryingStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrComplexStructMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrFixedArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantVaryingArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrVaryingArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrComplexArrayMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrNonConformantStringMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantStringMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrEncapsulatedUnionMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrNonEncapsulatedUnionMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrByteCountPointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrXmitOrRepAsMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrUserMarshalMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrInterfacePointerMarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrClientContextMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_CCONTEXT ContextHandle,int fCheck);
|
|
__attribute__((dllimport)) void NdrServerContextMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_SCONTEXT ContextHandle,NDR_RUNDOWN RundownRoutine);
|
|
__attribute__((dllimport)) void NdrServerContextNewMarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_SCONTEXT ContextHandle,NDR_RUNDOWN RundownRoutine,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrSimpleTypeUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,unsigned char FormatChar);
|
|
__attribute__((dllimport)) unsigned char * NdrCsArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrCsTagUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrRangeUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) void NdrCorrelationInitialize(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory,unsigned long CacheSize,unsigned long flags);
|
|
__attribute__((dllimport)) void NdrCorrelationPass(PMIDL_STUB_MESSAGE pStubMsg);
|
|
__attribute__((dllimport)) void NdrCorrelationFree(PMIDL_STUB_MESSAGE pStubMsg);
|
|
__attribute__((dllimport)) unsigned char * NdrPointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrSimpleStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantVaryingStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrComplexStructUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrFixedArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantVaryingArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrVaryingArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrComplexArrayUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrNonConformantStringUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrConformantStringUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrEncapsulatedUnionUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrNonEncapsulatedUnionUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrByteCountPointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrXmitOrRepAsUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrUserMarshalUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) unsigned char * NdrInterfacePointerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **ppMemory,PFORMAT_STRING pFormat,unsigned char fMustAlloc);
|
|
__attribute__((dllimport)) void NdrClientContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,NDR_CCONTEXT *pContextHandle,RPC_BINDING_HANDLE BindHandle);
|
|
__attribute__((dllimport)) NDR_SCONTEXT NdrServerContextUnmarshall(PMIDL_STUB_MESSAGE pStubMsg);
|
|
__attribute__((dllimport)) NDR_SCONTEXT NdrContextHandleInitialize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) NDR_SCONTEXT NdrServerContextNewUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrPointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrCsArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrCsTagBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrSimpleStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantVaryingStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrComplexStructBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrFixedArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantVaryingArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrVaryingArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrComplexArrayBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantStringBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrNonConformantStringBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrEncapsulatedUnionBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrNonEncapsulatedUnionBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrByteCountPointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrXmitOrRepAsBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrUserMarshalBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrInterfacePointerBufferSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrContextHandleSize(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrPointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrCsArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrCsTagMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrSimpleStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrConformantStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrConformantVaryingStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrComplexStructMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrFixedArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrConformantArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrConformantVaryingArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrVaryingArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrComplexArrayMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrConformantStringMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrNonConformantStringMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrEncapsulatedUnionMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrNonEncapsulatedUnionMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrXmitOrRepAsMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrUserMarshalMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned long NdrInterfacePointerMemorySize(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrPointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrCsArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrSimpleStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantVaryingStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrComplexStructFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrFixedArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConformantVaryingArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrVaryingArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrComplexArrayFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrEncapsulatedUnionFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrNonEncapsulatedUnionFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrByteCountPointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrXmitOrRepAsFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrUserMarshalFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrInterfacePointerFree(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pMemory,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) void NdrConvert2(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat,long NumberParams);
|
|
__attribute__((dllimport)) void NdrConvert(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) unsigned char * NdrUserMarshalSimpleTypeConvert(unsigned long *pFlags,unsigned char *pBuffer,unsigned char FormatChar);
|
|
__attribute__((dllimport)) void NdrClientInitializeNew(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned int ProcNum);
|
|
__attribute__((dllimport)) unsigned char * NdrServerInitializeNew(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor);
|
|
__attribute__((dllimport)) void NdrServerInitializePartial(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned long RequestedBufferSize);
|
|
__attribute__((dllimport)) void NdrClientInitialize(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,unsigned int ProcNum);
|
|
__attribute__((dllimport)) unsigned char * NdrServerInitialize(PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor);
|
|
__attribute__((dllimport)) unsigned char * NdrServerInitializeUnmarshall (PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) void NdrServerInitializeMarshall (PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg);
|
|
__attribute__((dllimport)) unsigned char * NdrGetBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned long BufferLength,RPC_BINDING_HANDLE Handle);
|
|
__attribute__((dllimport)) unsigned char * NdrNsGetBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned long BufferLength,RPC_BINDING_HANDLE Handle);
|
|
__attribute__((dllimport)) unsigned char * NdrSendReceive(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pBufferEnd);
|
|
__attribute__((dllimport)) unsigned char * NdrNsSendReceive(PMIDL_STUB_MESSAGE pStubMsg,unsigned char *pBufferEnd,RPC_BINDING_HANDLE *pAutoHandle);
|
|
__attribute__((dllimport)) void NdrFreeBuffer(PMIDL_STUB_MESSAGE pStubMsg);
|
|
__attribute__((dllimport)) RPC_STATUS NdrGetDcomProtocolVersion(PMIDL_STUB_MESSAGE pStubMsg,RPC_VERSION *pVersion);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrClientCall2(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrAsyncClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrDcomAsyncClientCall(PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,...);
|
|
typedef enum {
|
|
STUB_UNMARSHAL,STUB_CALL_SERVER,STUB_MARSHAL,STUB_CALL_SERVER_NO_HRESULT
|
|
} STUB_PHASE;
|
|
typedef enum {
|
|
PROXY_CALCSIZE,PROXY_GETBUFFER,PROXY_MARSHAL,PROXY_SENDRECEIVE,PROXY_UNMARSHAL
|
|
} PROXY_PHASE;
|
|
struct IRpcStubBuffer;
|
|
__attribute__((dllimport)) void NdrAsyncServerCall(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) long NdrAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) long NdrDcomAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) long NdrStubCall2(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) void NdrServerCall2(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) long NdrStubCall (struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) void NdrServerCall(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) int NdrServerUnmarshall(struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,PMIDL_STUB_MESSAGE pStubMsg,PMIDL_STUB_DESC pStubDescriptor,PFORMAT_STRING pFormat,void *pParamList);
|
|
__attribute__((dllimport)) void NdrServerMarshall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat);
|
|
__attribute__((dllimport)) RPC_STATUS NdrMapCommAndFaultStatus(PMIDL_STUB_MESSAGE pStubMsg,unsigned long *pCommStatus,unsigned long *pFaultStatus,RPC_STATUS Status);
|
|
__attribute__((dllimport)) int NdrSH_UPDecision(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,RPC_BUFPTR pBuffer);
|
|
__attribute__((dllimport)) int NdrSH_TLUPDecision(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem);
|
|
__attribute__((dllimport)) int NdrSH_TLUPDecisionBuffer(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem);
|
|
__attribute__((dllimport)) int NdrSH_IfAlloc(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
|
|
__attribute__((dllimport)) int NdrSH_IfAllocRef(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
|
|
__attribute__((dllimport)) int NdrSH_IfAllocSet(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
|
|
__attribute__((dllimport)) RPC_BUFPTR NdrSH_IfCopy(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
|
|
__attribute__((dllimport)) RPC_BUFPTR NdrSH_IfAllocCopy(PMIDL_STUB_MESSAGE pStubMsg,unsigned char **pPtrInMem,unsigned long Count);
|
|
__attribute__((dllimport)) unsigned long NdrSH_Copy(unsigned char *pStubMsg,unsigned char *pPtrInMem,unsigned long Count);
|
|
__attribute__((dllimport)) void NdrSH_IfFree(PMIDL_STUB_MESSAGE pMessage,unsigned char *pPtr);
|
|
__attribute__((dllimport)) RPC_BUFPTR NdrSH_StringMarshall(PMIDL_STUB_MESSAGE pMessage,unsigned char *pMemory,unsigned long Count,int Size);
|
|
__attribute__((dllimport)) RPC_BUFPTR NdrSH_StringUnMarshall(PMIDL_STUB_MESSAGE pMessage,unsigned char **pMemory,int Size);
|
|
typedef void *RPC_SS_THREAD_HANDLE;
|
|
typedef void * RPC_CLIENT_ALLOC(size_t Size);
|
|
typedef void RPC_CLIENT_FREE(void *Ptr);
|
|
__attribute__((dllimport)) void * RpcSsAllocate(size_t Size);
|
|
__attribute__((dllimport)) void RpcSsDisableAllocate(void);
|
|
__attribute__((dllimport)) void RpcSsEnableAllocate(void);
|
|
__attribute__((dllimport)) void RpcSsFree(void *NodeToFree);
|
|
__attribute__((dllimport)) RPC_SS_THREAD_HANDLE RpcSsGetThreadHandle(void);
|
|
__attribute__((dllimport)) void RpcSsSetClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree);
|
|
__attribute__((dllimport)) void RpcSsSetThreadHandle(RPC_SS_THREAD_HANDLE Id);
|
|
__attribute__((dllimport)) void RpcSsSwapClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree,RPC_CLIENT_ALLOC **OldClientAlloc,RPC_CLIENT_FREE **OldClientFree);
|
|
__attribute__((dllimport)) void * RpcSmAllocate(size_t Size,RPC_STATUS *pStatus);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmClientFree(void *pNodeToFree);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmDestroyClientContext(void **ContextHandle);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmDisableAllocate(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmEnableAllocate(void);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmFree(void *NodeToFree);
|
|
__attribute__((dllimport)) RPC_SS_THREAD_HANDLE RpcSmGetThreadHandle (RPC_STATUS *pStatus);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmSetClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmSetThreadHandle(RPC_SS_THREAD_HANDLE Id);
|
|
__attribute__((dllimport)) RPC_STATUS RpcSmSwapClientAllocFree(RPC_CLIENT_ALLOC *ClientAlloc,RPC_CLIENT_FREE *ClientFree,RPC_CLIENT_ALLOC **OldClientAlloc,RPC_CLIENT_FREE **OldClientFree);
|
|
__attribute__((dllimport)) void NdrRpcSsEnableAllocate(PMIDL_STUB_MESSAGE pMessage);
|
|
__attribute__((dllimport)) void NdrRpcSsDisableAllocate(PMIDL_STUB_MESSAGE pMessage);
|
|
__attribute__((dllimport)) void NdrRpcSmSetClientToOsf(PMIDL_STUB_MESSAGE pMessage);
|
|
__attribute__((dllimport)) void * NdrRpcSmClientAllocate(size_t Size);
|
|
__attribute__((dllimport)) void NdrRpcSmClientFree(void *NodeToFree);
|
|
__attribute__((dllimport)) void * NdrRpcSsDefaultAllocate(size_t Size);
|
|
__attribute__((dllimport)) void NdrRpcSsDefaultFree(void *NodeToFree);
|
|
__attribute__((dllimport)) PFULL_PTR_XLAT_TABLES NdrFullPointerXlatInit(unsigned long NumberOfPointers,XLAT_SIDE XlatSide);
|
|
__attribute__((dllimport)) void NdrFullPointerXlatFree(PFULL_PTR_XLAT_TABLES pXlatTables);
|
|
__attribute__((dllimport)) int NdrFullPointerQueryPointer(PFULL_PTR_XLAT_TABLES pXlatTables,void *pPointer,unsigned char QueryType,unsigned long *pRefId);
|
|
__attribute__((dllimport)) int NdrFullPointerQueryRefId(PFULL_PTR_XLAT_TABLES pXlatTables,unsigned long RefId,unsigned char QueryType,void **ppPointer);
|
|
__attribute__((dllimport)) void NdrFullPointerInsertRefId(PFULL_PTR_XLAT_TABLES pXlatTables,unsigned long RefId,void *pPointer);
|
|
__attribute__((dllimport)) int NdrFullPointerFree(PFULL_PTR_XLAT_TABLES pXlatTables,void *Pointer);
|
|
__attribute__((dllimport)) void * NdrAllocate(PMIDL_STUB_MESSAGE pStubMsg,size_t Len);
|
|
__attribute__((dllimport)) void NdrClearOutParameters(PMIDL_STUB_MESSAGE pStubMsg,PFORMAT_STRING pFormat,void *ArgAddr);
|
|
__attribute__((dllimport)) void * NdrOleAllocate(size_t Size);
|
|
__attribute__((dllimport)) void NdrOleFree(void *NodeToFree);
|
|
typedef struct _NDR_USER_MARSHAL_INFO_LEVEL1 {
|
|
void *Buffer;
|
|
unsigned long BufferSize;
|
|
void *( *pfnAllocate)(size_t);
|
|
void ( *pfnFree)(void *);
|
|
struct IRpcChannelBuffer *pRpcChannelBuffer;
|
|
ULONG_PTR Reserved[5];
|
|
} NDR_USER_MARSHAL_INFO_LEVEL1;
|
|
typedef struct _NDR_USER_MARSHAL_INFO {
|
|
unsigned long InformationLevel;
|
|
__extension__ union {
|
|
NDR_USER_MARSHAL_INFO_LEVEL1 Level1;
|
|
};
|
|
} NDR_USER_MARSHAL_INFO;
|
|
RPC_STATUS NdrGetUserMarshalInfo(unsigned long *pFlags,unsigned long InformationLevel,NDR_USER_MARSHAL_INFO *pMarshalInfo);
|
|
RPC_STATUS NdrCreateServerInterfaceFromStub(struct IRpcStubBuffer *pStub,RPC_SERVER_INTERFACE *pServerIf);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) NdrClientCall3(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) Ndr64AsyncClientCall(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
|
|
CLIENT_CALL_RETURN __attribute__((__cdecl__)) Ndr64DcomAsyncClientCall(MIDL_STUBLESS_PROXY_INFO *pProxyInfo,unsigned long nProcNum,void *pReturnValue,...);
|
|
struct IRpcStubBuffer;
|
|
__attribute__((dllimport)) void Ndr64AsyncServerCall(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) void Ndr64AsyncServerCall64(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) void Ndr64AsyncServerCallAll(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) long Ndr64AsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) long Ndr64DcomAsyncStubCall(struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) long NdrStubCall3 (struct IRpcStubBuffer *pThis,struct IRpcChannelBuffer *pChannel,PRPC_MESSAGE pRpcMsg,unsigned long *pdwStubPhase);
|
|
__attribute__((dllimport)) void NdrServerCallAll(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) void NdrServerCallNdr64(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) void NdrServerCall3(PRPC_MESSAGE pRpcMsg);
|
|
__attribute__((dllimport)) void NdrPartialIgnoreClientMarshall(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory);
|
|
__attribute__((dllimport)) void NdrPartialIgnoreServerUnmarshall(PMIDL_STUB_MESSAGE pStubMsg,void **ppMemory);
|
|
__attribute__((dllimport)) void NdrPartialIgnoreClientBufferSize(PMIDL_STUB_MESSAGE pStubMsg,void *pMemory);
|
|
__attribute__((dllimport)) void NdrPartialIgnoreServerInitialize(PMIDL_STUB_MESSAGE pStubMsg,void **ppMemory,PFORMAT_STRING pFormat);
|
|
void RpcUserFree(handle_t AsyncHandle,void *pBuffer);
|
|
#pragma pack(pop)
|
|
#pragma pack(push,8)
|
|
#pragma pack(push,8)
|
|
#pragma pack(push,8)
|
|
typedef enum tagREGCLS {
|
|
REGCLS_SINGLEUSE = 0,
|
|
REGCLS_MULTIPLEUSE = 1,
|
|
REGCLS_MULTI_SEPARATE = 2,
|
|
REGCLS_SUSPENDED = 4,
|
|
REGCLS_SURROGATE = 8
|
|
} REGCLS;
|
|
typedef struct IRpcStubBuffer IRpcStubBuffer;
|
|
typedef struct IRpcChannelBuffer IRpcChannelBuffer;
|
|
typedef enum tagCOINITBASE {
|
|
COINITBASE_MULTITHREADED = 0x0,
|
|
} COINITBASE;
|
|
extern RPC_IF_HANDLE IWinTypesBase_v0_1_c_ifspec;
|
|
extern RPC_IF_HANDLE IWinTypesBase_v0_1_s_ifspec;
|
|
typedef WCHAR OLECHAR;
|
|
typedef OLECHAR *LPOLESTR;
|
|
typedef const OLECHAR *LPCOLESTR;
|
|
typedef unsigned char UCHAR;
|
|
typedef short SHORT;
|
|
typedef unsigned short USHORT;
|
|
typedef DWORD ULONG;
|
|
typedef double DOUBLE;
|
|
typedef struct _COAUTHIDENTITY {
|
|
USHORT *User;
|
|
ULONG UserLength;
|
|
USHORT *Domain;
|
|
ULONG DomainLength;
|
|
USHORT *Password;
|
|
ULONG PasswordLength;
|
|
ULONG Flags;
|
|
} COAUTHIDENTITY;
|
|
typedef struct _COAUTHINFO {
|
|
DWORD dwAuthnSvc;
|
|
DWORD dwAuthzSvc;
|
|
LPWSTR pwszServerPrincName;
|
|
DWORD dwAuthnLevel;
|
|
DWORD dwImpersonationLevel;
|
|
COAUTHIDENTITY *pAuthIdentityData;
|
|
DWORD dwCapabilities;
|
|
} COAUTHINFO;
|
|
typedef LONG SCODE;
|
|
typedef SCODE *PSCODE;
|
|
typedef enum tagMEMCTX {
|
|
MEMCTX_TASK = 1,
|
|
MEMCTX_SHARED = 2,
|
|
MEMCTX_MACSYSTEM = 3,
|
|
MEMCTX_UNKNOWN = -1,
|
|
MEMCTX_SAME = -2
|
|
} MEMCTX;
|
|
typedef enum tagCLSCTX {
|
|
CLSCTX_INPROC_SERVER = 0x1,
|
|
CLSCTX_INPROC_HANDLER = 0x2,
|
|
CLSCTX_LOCAL_SERVER = 0x4,
|
|
CLSCTX_INPROC_SERVER16 = 0x8,
|
|
CLSCTX_REMOTE_SERVER = 0x10,
|
|
CLSCTX_INPROC_HANDLER16 = 0x20,
|
|
CLSCTX_RESERVED1 = 0x40,
|
|
CLSCTX_RESERVED2 = 0x80,
|
|
CLSCTX_RESERVED3 = 0x100,
|
|
CLSCTX_RESERVED4 = 0x200,
|
|
CLSCTX_NO_CODE_DOWNLOAD = 0x400,
|
|
CLSCTX_RESERVED5 = 0x800,
|
|
CLSCTX_NO_CUSTOM_MARSHAL = 0x1000,
|
|
CLSCTX_ENABLE_CODE_DOWNLOAD = 0x2000,
|
|
CLSCTX_NO_FAILURE_LOG = 0x4000,
|
|
CLSCTX_DISABLE_AAA = 0x8000,
|
|
CLSCTX_ENABLE_AAA = 0x10000,
|
|
CLSCTX_FROM_DEFAULT_CONTEXT = 0x20000,
|
|
CLSCTX_ACTIVATE_32_BIT_SERVER = 0x40000,
|
|
CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000,
|
|
CLSCTX_ENABLE_CLOAKING = 0x100000,
|
|
CLSCTX_APPCONTAINER = 0x400000,
|
|
CLSCTX_ACTIVATE_AAA_AS_IU = 0x800000,
|
|
CLSCTX_PS_DLL = (int)0x80000000
|
|
} CLSCTX;
|
|
typedef enum tagMSHLFLAGS {
|
|
MSHLFLAGS_NORMAL = 0,
|
|
MSHLFLAGS_TABLESTRONG = 1,
|
|
MSHLFLAGS_TABLEWEAK = 2,
|
|
MSHLFLAGS_NOPING = 4,
|
|
MSHLFLAGS_RESERVED1 = 8,
|
|
MSHLFLAGS_RESERVED2 = 16,
|
|
MSHLFLAGS_RESERVED3 = 32,
|
|
MSHLFLAGS_RESERVED4 = 64
|
|
} MSHLFLAGS;
|
|
typedef enum tagMSHCTX {
|
|
MSHCTX_LOCAL = 0,
|
|
MSHCTX_NOSHAREDMEM = 1,
|
|
MSHCTX_DIFFERENTMACHINE = 2,
|
|
MSHCTX_INPROC = 3,
|
|
MSHCTX_CROSSCTX = 4
|
|
} MSHCTX;
|
|
typedef struct _BYTE_BLOB {
|
|
ULONG clSize;
|
|
byte abData[1];
|
|
} BYTE_BLOB;
|
|
typedef BYTE_BLOB *UP_BYTE_BLOB;
|
|
typedef struct _WORD_BLOB {
|
|
ULONG clSize;
|
|
unsigned short asData[1];
|
|
} WORD_BLOB;
|
|
typedef WORD_BLOB *UP_WORD_BLOB;
|
|
typedef struct _DWORD_BLOB {
|
|
ULONG clSize;
|
|
ULONG alData[1];
|
|
} DWORD_BLOB;
|
|
typedef DWORD_BLOB *UP_DWORD_BLOB;
|
|
typedef struct _FLAGGED_BYTE_BLOB {
|
|
ULONG fFlags;
|
|
ULONG clSize;
|
|
byte abData[1];
|
|
} FLAGGED_BYTE_BLOB;
|
|
typedef FLAGGED_BYTE_BLOB *UP_FLAGGED_BYTE_BLOB;
|
|
typedef struct _FLAGGED_WORD_BLOB {
|
|
ULONG fFlags;
|
|
ULONG clSize;
|
|
unsigned short asData[1];
|
|
} FLAGGED_WORD_BLOB;
|
|
typedef FLAGGED_WORD_BLOB *UP_FLAGGED_WORD_BLOB;
|
|
typedef struct _BYTE_SIZEDARR {
|
|
ULONG clSize;
|
|
byte *pData;
|
|
} BYTE_SIZEDARR;
|
|
typedef struct _SHORT_SIZEDARR {
|
|
ULONG clSize;
|
|
unsigned short *pData;
|
|
} WORD_SIZEDARR;
|
|
typedef struct _LONG_SIZEDARR {
|
|
ULONG clSize;
|
|
ULONG *pData;
|
|
} DWORD_SIZEDARR;
|
|
typedef struct _HYPER_SIZEDARR {
|
|
ULONG clSize;
|
|
long long *pData;
|
|
} HYPER_SIZEDARR;
|
|
typedef boolean BOOLEAN;
|
|
typedef struct tagBLOB {
|
|
ULONG cbSize;
|
|
BYTE *pBlobData;
|
|
} BLOB;
|
|
typedef struct tagBLOB *LPBLOB;
|
|
typedef struct IUnknown IUnknown;
|
|
typedef struct AsyncIUnknown AsyncIUnknown;
|
|
typedef struct IClassFactory IClassFactory;
|
|
typedef IUnknown *LPUNKNOWN;
|
|
extern const GUID IID_IUnknown;
|
|
typedef struct IUnknownVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IUnknown *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IUnknown *This);
|
|
ULONG ( *Release)(
|
|
IUnknown *This);
|
|
|
|
} IUnknownVtbl;
|
|
struct IUnknown {
|
|
IUnknownVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_AsyncIUnknown;
|
|
typedef struct AsyncIUnknownVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
AsyncIUnknown *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
AsyncIUnknown *This);
|
|
ULONG ( *Release)(
|
|
AsyncIUnknown *This);
|
|
HRESULT ( *Begin_QueryInterface)(
|
|
AsyncIUnknown *This,
|
|
const IID *const riid);
|
|
HRESULT ( *Finish_QueryInterface)(
|
|
AsyncIUnknown *This,
|
|
void **ppvObject);
|
|
HRESULT ( *Begin_AddRef)(
|
|
AsyncIUnknown *This);
|
|
ULONG ( *Finish_AddRef)(
|
|
AsyncIUnknown *This);
|
|
HRESULT ( *Begin_Release)(
|
|
AsyncIUnknown *This);
|
|
ULONG ( *Finish_Release)(
|
|
AsyncIUnknown *This);
|
|
|
|
} AsyncIUnknownVtbl;
|
|
struct AsyncIUnknown {
|
|
AsyncIUnknownVtbl* lpVtbl;
|
|
};
|
|
typedef IClassFactory *LPCLASSFACTORY;
|
|
extern const GUID IID_IClassFactory;
|
|
typedef struct IClassFactoryVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IClassFactory *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IClassFactory *This);
|
|
ULONG ( *Release)(
|
|
IClassFactory *This);
|
|
HRESULT ( *CreateInstance)(
|
|
IClassFactory *This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
HRESULT ( *LockServer)(
|
|
IClassFactory *This,
|
|
WINBOOL fLock);
|
|
|
|
} IClassFactoryVtbl;
|
|
struct IClassFactory {
|
|
IClassFactoryVtbl* lpVtbl;
|
|
};
|
|
HRESULT IClassFactory_RemoteCreateInstance_Proxy(
|
|
IClassFactory* This,
|
|
const IID *const riid,
|
|
IUnknown **ppvObject);
|
|
void IClassFactory_RemoteCreateInstance_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IClassFactory_RemoteLockServer_Proxy(
|
|
IClassFactory* This,
|
|
WINBOOL fLock);
|
|
void IClassFactory_RemoteLockServer_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IClassFactory_CreateInstance_Proxy(
|
|
IClassFactory* This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
HRESULT IClassFactory_CreateInstance_Stub(
|
|
IClassFactory* This,
|
|
const IID *const riid,
|
|
IUnknown **ppvObject);
|
|
HRESULT IClassFactory_LockServer_Proxy(
|
|
IClassFactory* This,
|
|
WINBOOL fLock);
|
|
HRESULT IClassFactory_LockServer_Stub(
|
|
IClassFactory* This,
|
|
WINBOOL fLock);
|
|
typedef struct IMarshal IMarshal;
|
|
typedef struct INoMarshal INoMarshal;
|
|
typedef struct IAgileObject IAgileObject;
|
|
typedef struct IAgileReference IAgileReference;
|
|
typedef struct IMarshal2 IMarshal2;
|
|
typedef struct IMalloc IMalloc;
|
|
typedef struct IStdMarshalInfo IStdMarshalInfo;
|
|
typedef struct IExternalConnection IExternalConnection;
|
|
typedef struct IMultiQI IMultiQI;
|
|
typedef struct AsyncIMultiQI AsyncIMultiQI;
|
|
typedef struct IInternalUnknown IInternalUnknown;
|
|
typedef struct IEnumUnknown IEnumUnknown;
|
|
typedef struct IEnumString IEnumString;
|
|
typedef struct ISequentialStream ISequentialStream;
|
|
typedef struct IStream IStream;
|
|
typedef struct IRpcChannelBuffer IRpcChannelBuffer;
|
|
typedef struct IRpcChannelBuffer2 IRpcChannelBuffer2;
|
|
typedef struct IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer;
|
|
typedef struct IRpcChannelBuffer3 IRpcChannelBuffer3;
|
|
typedef struct IRpcSyntaxNegotiate IRpcSyntaxNegotiate;
|
|
typedef struct IRpcProxyBuffer IRpcProxyBuffer;
|
|
typedef struct IRpcStubBuffer IRpcStubBuffer;
|
|
typedef struct IPSFactoryBuffer IPSFactoryBuffer;
|
|
typedef struct IChannelHook IChannelHook;
|
|
typedef struct IClientSecurity IClientSecurity;
|
|
typedef struct IServerSecurity IServerSecurity;
|
|
typedef struct IRpcOptions IRpcOptions;
|
|
typedef struct IGlobalOptions IGlobalOptions;
|
|
typedef struct ISurrogate ISurrogate;
|
|
typedef struct IGlobalInterfaceTable IGlobalInterfaceTable;
|
|
typedef struct ISynchronize ISynchronize;
|
|
typedef struct ISynchronizeHandle ISynchronizeHandle;
|
|
typedef struct ISynchronizeEvent ISynchronizeEvent;
|
|
typedef struct ISynchronizeContainer ISynchronizeContainer;
|
|
typedef struct ISynchronizeMutex ISynchronizeMutex;
|
|
typedef struct ICancelMethodCalls ICancelMethodCalls;
|
|
typedef struct IAsyncManager IAsyncManager;
|
|
typedef struct ICallFactory ICallFactory;
|
|
typedef struct IRpcHelper IRpcHelper;
|
|
typedef struct IReleaseMarshalBuffers IReleaseMarshalBuffers;
|
|
typedef struct IWaitMultiple IWaitMultiple;
|
|
typedef struct IAddrTrackingControl IAddrTrackingControl;
|
|
typedef struct IAddrExclusionControl IAddrExclusionControl;
|
|
typedef struct IPipeByte IPipeByte;
|
|
typedef struct IPipeLong IPipeLong;
|
|
typedef struct IPipeDouble IPipeDouble;
|
|
typedef struct IEnumContextProps IEnumContextProps;
|
|
typedef struct IContext IContext;
|
|
typedef struct IComThreadingInfo IComThreadingInfo;
|
|
typedef struct IProcessInitControl IProcessInitControl;
|
|
typedef struct IFastRundown IFastRundown;
|
|
typedef struct IMarshalingStream IMarshalingStream;
|
|
typedef struct _COSERVERINFO {
|
|
DWORD dwReserved1;
|
|
LPWSTR pwszName;
|
|
COAUTHINFO *pAuthInfo;
|
|
DWORD dwReserved2;
|
|
} COSERVERINFO;
|
|
typedef IMarshal *LPMARSHAL;
|
|
extern const GUID IID_IMarshal;
|
|
typedef struct IMarshalVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMarshal *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMarshal *This);
|
|
ULONG ( *Release)(
|
|
IMarshal *This);
|
|
HRESULT ( *GetUnmarshalClass)(
|
|
IMarshal *This,
|
|
const IID *const riid,
|
|
void *pv,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
DWORD mshlflags,
|
|
CLSID *pCid);
|
|
HRESULT ( *GetMarshalSizeMax)(
|
|
IMarshal *This,
|
|
const IID *const riid,
|
|
void *pv,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
DWORD mshlflags,
|
|
DWORD *pSize);
|
|
HRESULT ( *MarshalInterface)(
|
|
IMarshal *This,
|
|
IStream *pStm,
|
|
const IID *const riid,
|
|
void *pv,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
DWORD mshlflags);
|
|
HRESULT ( *UnmarshalInterface)(
|
|
IMarshal *This,
|
|
IStream *pStm,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
HRESULT ( *ReleaseMarshalData)(
|
|
IMarshal *This,
|
|
IStream *pStm);
|
|
HRESULT ( *DisconnectObject)(
|
|
IMarshal *This,
|
|
DWORD dwReserved);
|
|
|
|
} IMarshalVtbl;
|
|
struct IMarshal {
|
|
IMarshalVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_INoMarshal;
|
|
typedef struct INoMarshalVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
INoMarshal *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
INoMarshal *This);
|
|
ULONG ( *Release)(
|
|
INoMarshal *This);
|
|
|
|
} INoMarshalVtbl;
|
|
struct INoMarshal {
|
|
INoMarshalVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IAgileObject;
|
|
typedef struct IAgileObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAgileObject *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAgileObject *This);
|
|
ULONG ( *Release)(
|
|
IAgileObject *This);
|
|
|
|
} IAgileObjectVtbl;
|
|
struct IAgileObject {
|
|
IAgileObjectVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IAgileReference;
|
|
typedef struct IAgileReferenceVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAgileReference *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAgileReference *This);
|
|
ULONG ( *Release)(
|
|
IAgileReference *This);
|
|
HRESULT ( *Resolve)(
|
|
IAgileReference *This,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
|
|
} IAgileReferenceVtbl;
|
|
struct IAgileReference {
|
|
IAgileReferenceVtbl* lpVtbl;
|
|
};
|
|
typedef IMarshal2 *LPMARSHAL2;
|
|
extern const GUID IID_IMarshal2;
|
|
typedef struct IMarshal2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMarshal2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMarshal2 *This);
|
|
ULONG ( *Release)(
|
|
IMarshal2 *This);
|
|
HRESULT ( *GetUnmarshalClass)(
|
|
IMarshal2 *This,
|
|
const IID *const riid,
|
|
void *pv,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
DWORD mshlflags,
|
|
CLSID *pCid);
|
|
HRESULT ( *GetMarshalSizeMax)(
|
|
IMarshal2 *This,
|
|
const IID *const riid,
|
|
void *pv,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
DWORD mshlflags,
|
|
DWORD *pSize);
|
|
HRESULT ( *MarshalInterface)(
|
|
IMarshal2 *This,
|
|
IStream *pStm,
|
|
const IID *const riid,
|
|
void *pv,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
DWORD mshlflags);
|
|
HRESULT ( *UnmarshalInterface)(
|
|
IMarshal2 *This,
|
|
IStream *pStm,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
HRESULT ( *ReleaseMarshalData)(
|
|
IMarshal2 *This,
|
|
IStream *pStm);
|
|
HRESULT ( *DisconnectObject)(
|
|
IMarshal2 *This,
|
|
DWORD dwReserved);
|
|
|
|
} IMarshal2Vtbl;
|
|
struct IMarshal2 {
|
|
IMarshal2Vtbl* lpVtbl;
|
|
};
|
|
typedef IMalloc *LPMALLOC;
|
|
extern const GUID IID_IMalloc;
|
|
typedef struct IMallocVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMalloc *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMalloc *This);
|
|
ULONG ( *Release)(
|
|
IMalloc *This);
|
|
void * ( *Alloc)(
|
|
IMalloc *This,
|
|
SIZE_T cb);
|
|
void * ( *Realloc)(
|
|
IMalloc *This,
|
|
void *pv,
|
|
SIZE_T cb);
|
|
void ( *Free)(
|
|
IMalloc *This,
|
|
void *pv);
|
|
SIZE_T ( *GetSize)(
|
|
IMalloc *This,
|
|
void *pv);
|
|
int ( *DidAlloc)(
|
|
IMalloc *This,
|
|
void *pv);
|
|
void ( *HeapMinimize)(
|
|
IMalloc *This);
|
|
|
|
} IMallocVtbl;
|
|
struct IMalloc {
|
|
IMallocVtbl* lpVtbl;
|
|
};
|
|
typedef IStdMarshalInfo *LPSTDMARSHALINFO;
|
|
extern const GUID IID_IStdMarshalInfo;
|
|
typedef struct IStdMarshalInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IStdMarshalInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IStdMarshalInfo *This);
|
|
ULONG ( *Release)(
|
|
IStdMarshalInfo *This);
|
|
HRESULT ( *GetClassForHandler)(
|
|
IStdMarshalInfo *This,
|
|
DWORD dwDestContext,
|
|
void *pvDestContext,
|
|
CLSID *pClsid);
|
|
|
|
} IStdMarshalInfoVtbl;
|
|
struct IStdMarshalInfo {
|
|
IStdMarshalInfoVtbl* lpVtbl;
|
|
};
|
|
typedef IExternalConnection *LPEXTERNALCONNECTION;
|
|
typedef enum tagEXTCONN {
|
|
EXTCONN_STRONG = 0x1,
|
|
EXTCONN_WEAK = 0x2,
|
|
EXTCONN_CALLABLE = 0x4
|
|
} EXTCONN;
|
|
extern const GUID IID_IExternalConnection;
|
|
typedef struct IExternalConnectionVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IExternalConnection *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IExternalConnection *This);
|
|
ULONG ( *Release)(
|
|
IExternalConnection *This);
|
|
DWORD ( *AddConnection)(
|
|
IExternalConnection *This,
|
|
DWORD extconn,
|
|
DWORD reserved);
|
|
DWORD ( *ReleaseConnection)(
|
|
IExternalConnection *This,
|
|
DWORD extconn,
|
|
DWORD reserved,
|
|
WINBOOL fLastReleaseCloses);
|
|
|
|
} IExternalConnectionVtbl;
|
|
struct IExternalConnection {
|
|
IExternalConnectionVtbl* lpVtbl;
|
|
};
|
|
typedef IMultiQI *LPMULTIQI;
|
|
typedef struct tagMULTI_QI {
|
|
const IID *pIID;
|
|
IUnknown *pItf;
|
|
HRESULT hr;
|
|
} MULTI_QI;
|
|
extern const GUID IID_IMultiQI;
|
|
typedef struct IMultiQIVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMultiQI *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMultiQI *This);
|
|
ULONG ( *Release)(
|
|
IMultiQI *This);
|
|
HRESULT ( *QueryMultipleInterfaces)(
|
|
IMultiQI *This,
|
|
ULONG cMQIs,
|
|
MULTI_QI *pMQIs);
|
|
|
|
} IMultiQIVtbl;
|
|
struct IMultiQI {
|
|
IMultiQIVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_AsyncIMultiQI;
|
|
typedef struct AsyncIMultiQIVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
AsyncIMultiQI *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
AsyncIMultiQI *This);
|
|
ULONG ( *Release)(
|
|
AsyncIMultiQI *This);
|
|
HRESULT ( *Begin_QueryMultipleInterfaces)(
|
|
AsyncIMultiQI *This,
|
|
ULONG cMQIs,
|
|
MULTI_QI *pMQIs);
|
|
HRESULT ( *Finish_QueryMultipleInterfaces)(
|
|
AsyncIMultiQI *This,
|
|
MULTI_QI *pMQIs);
|
|
|
|
} AsyncIMultiQIVtbl;
|
|
struct AsyncIMultiQI {
|
|
AsyncIMultiQIVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IInternalUnknown;
|
|
typedef struct IInternalUnknownVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternalUnknown *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternalUnknown *This);
|
|
ULONG ( *Release)(
|
|
IInternalUnknown *This);
|
|
HRESULT ( *QueryInternalInterface)(
|
|
IInternalUnknown *This,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
|
|
} IInternalUnknownVtbl;
|
|
struct IInternalUnknown {
|
|
IInternalUnknownVtbl* lpVtbl;
|
|
};
|
|
typedef IEnumUnknown *LPENUMUNKNOWN;
|
|
extern const GUID IID_IEnumUnknown;
|
|
typedef struct IEnumUnknownVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumUnknown *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumUnknown *This);
|
|
ULONG ( *Release)(
|
|
IEnumUnknown *This);
|
|
HRESULT ( *Next)(
|
|
IEnumUnknown *This,
|
|
ULONG celt,
|
|
IUnknown **rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumUnknown *This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumUnknown *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumUnknown *This,
|
|
IEnumUnknown **ppenum);
|
|
|
|
} IEnumUnknownVtbl;
|
|
struct IEnumUnknown {
|
|
IEnumUnknownVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumUnknown_RemoteNext_Proxy(
|
|
IEnumUnknown* This,
|
|
ULONG celt,
|
|
IUnknown **rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumUnknown_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumUnknown_Next_Proxy(
|
|
IEnumUnknown* This,
|
|
ULONG celt,
|
|
IUnknown **rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumUnknown_Next_Stub(
|
|
IEnumUnknown* This,
|
|
ULONG celt,
|
|
IUnknown **rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IEnumString *LPENUMSTRING;
|
|
extern const GUID IID_IEnumString;
|
|
typedef struct IEnumStringVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumString *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumString *This);
|
|
ULONG ( *Release)(
|
|
IEnumString *This);
|
|
HRESULT ( *Next)(
|
|
IEnumString *This,
|
|
ULONG celt,
|
|
LPOLESTR *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumString *This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumString *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumString *This,
|
|
IEnumString **ppenum);
|
|
|
|
} IEnumStringVtbl;
|
|
struct IEnumString {
|
|
IEnumStringVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumString_RemoteNext_Proxy(
|
|
IEnumString* This,
|
|
ULONG celt,
|
|
LPOLESTR *rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumString_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumString_Next_Proxy(
|
|
IEnumString* This,
|
|
ULONG celt,
|
|
LPOLESTR *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumString_Next_Stub(
|
|
IEnumString* This,
|
|
ULONG celt,
|
|
LPOLESTR *rgelt,
|
|
ULONG *pceltFetched);
|
|
extern const GUID IID_ISequentialStream;
|
|
typedef struct ISequentialStreamVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISequentialStream *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISequentialStream *This);
|
|
ULONG ( *Release)(
|
|
ISequentialStream *This);
|
|
HRESULT ( *Read)(
|
|
ISequentialStream *This,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ( *Write)(
|
|
ISequentialStream *This,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
|
|
} ISequentialStreamVtbl;
|
|
struct ISequentialStream {
|
|
ISequentialStreamVtbl* lpVtbl;
|
|
};
|
|
HRESULT ISequentialStream_RemoteRead_Proxy(
|
|
ISequentialStream* This,
|
|
byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
void ISequentialStream_RemoteRead_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ISequentialStream_RemoteWrite_Proxy(
|
|
ISequentialStream* This,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
void ISequentialStream_RemoteWrite_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ISequentialStream_Read_Proxy(
|
|
ISequentialStream* This,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ISequentialStream_Read_Stub(
|
|
ISequentialStream* This,
|
|
byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ISequentialStream_Write_Proxy(
|
|
ISequentialStream* This,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ISequentialStream_Write_Stub(
|
|
ISequentialStream* This,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
typedef IStream *LPSTREAM;
|
|
typedef struct tagSTATSTG {
|
|
LPOLESTR pwcsName;
|
|
DWORD type;
|
|
ULARGE_INTEGER cbSize;
|
|
FILETIME mtime;
|
|
FILETIME ctime;
|
|
FILETIME atime;
|
|
DWORD grfMode;
|
|
DWORD grfLocksSupported;
|
|
CLSID clsid;
|
|
DWORD grfStateBits;
|
|
DWORD reserved;
|
|
} STATSTG;
|
|
typedef enum tagSTGTY {
|
|
STGTY_STORAGE = 1,
|
|
STGTY_STREAM = 2,
|
|
STGTY_LOCKBYTES = 3,
|
|
STGTY_PROPERTY = 4
|
|
} STGTY;
|
|
typedef enum tagSTREAM_SEEK {
|
|
STREAM_SEEK_SET = 0,
|
|
STREAM_SEEK_CUR = 1,
|
|
STREAM_SEEK_END = 2
|
|
} STREAM_SEEK;
|
|
typedef enum tagLOCKTYPE {
|
|
LOCK_WRITE = 1,
|
|
LOCK_EXCLUSIVE = 2,
|
|
LOCK_ONLYONCE = 4
|
|
} LOCKTYPE;
|
|
extern const GUID IID_IStream;
|
|
typedef struct IStreamVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IStream *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IStream *This);
|
|
ULONG ( *Release)(
|
|
IStream *This);
|
|
HRESULT ( *Read)(
|
|
IStream *This,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ( *Write)(
|
|
IStream *This,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ( *Seek)(
|
|
IStream *This,
|
|
LARGE_INTEGER dlibMove,
|
|
DWORD dwOrigin,
|
|
ULARGE_INTEGER *plibNewPosition);
|
|
HRESULT ( *SetSize)(
|
|
IStream *This,
|
|
ULARGE_INTEGER libNewSize);
|
|
HRESULT ( *CopyTo)(
|
|
IStream *This,
|
|
IStream *pstm,
|
|
ULARGE_INTEGER cb,
|
|
ULARGE_INTEGER *pcbRead,
|
|
ULARGE_INTEGER *pcbWritten);
|
|
HRESULT ( *Commit)(
|
|
IStream *This,
|
|
DWORD grfCommitFlags);
|
|
HRESULT ( *Revert)(
|
|
IStream *This);
|
|
HRESULT ( *LockRegion)(
|
|
IStream *This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
HRESULT ( *UnlockRegion)(
|
|
IStream *This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
HRESULT ( *Stat)(
|
|
IStream *This,
|
|
STATSTG *pstatstg,
|
|
DWORD grfStatFlag);
|
|
HRESULT ( *Clone)(
|
|
IStream *This,
|
|
IStream **ppstm);
|
|
|
|
} IStreamVtbl;
|
|
struct IStream {
|
|
IStreamVtbl* lpVtbl;
|
|
};
|
|
HRESULT IStream_RemoteSeek_Proxy(
|
|
IStream* This,
|
|
LARGE_INTEGER dlibMove,
|
|
DWORD dwOrigin,
|
|
ULARGE_INTEGER *plibNewPosition);
|
|
void IStream_RemoteSeek_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStream_RemoteCopyTo_Proxy(
|
|
IStream* This,
|
|
IStream *pstm,
|
|
ULARGE_INTEGER cb,
|
|
ULARGE_INTEGER *pcbRead,
|
|
ULARGE_INTEGER *pcbWritten);
|
|
void IStream_RemoteCopyTo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStream_Seek_Proxy(
|
|
IStream* This,
|
|
LARGE_INTEGER dlibMove,
|
|
DWORD dwOrigin,
|
|
ULARGE_INTEGER *plibNewPosition);
|
|
HRESULT IStream_Seek_Stub(
|
|
IStream* This,
|
|
LARGE_INTEGER dlibMove,
|
|
DWORD dwOrigin,
|
|
ULARGE_INTEGER *plibNewPosition);
|
|
HRESULT IStream_CopyTo_Proxy(
|
|
IStream* This,
|
|
IStream *pstm,
|
|
ULARGE_INTEGER cb,
|
|
ULARGE_INTEGER *pcbRead,
|
|
ULARGE_INTEGER *pcbWritten);
|
|
HRESULT IStream_CopyTo_Stub(
|
|
IStream* This,
|
|
IStream *pstm,
|
|
ULARGE_INTEGER cb,
|
|
ULARGE_INTEGER *pcbRead,
|
|
ULARGE_INTEGER *pcbWritten);
|
|
typedef ULONG RPCOLEDATAREP;
|
|
typedef struct tagRPCOLEMESSAGE {
|
|
void *reserved1;
|
|
RPCOLEDATAREP dataRepresentation;
|
|
void *Buffer;
|
|
ULONG cbBuffer;
|
|
ULONG iMethod;
|
|
void * reserved2[5];
|
|
ULONG rpcFlags;
|
|
} RPCOLEMESSAGE;
|
|
typedef RPCOLEMESSAGE *PRPCOLEMESSAGE;
|
|
extern const GUID IID_IRpcChannelBuffer;
|
|
typedef struct IRpcChannelBufferVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcChannelBuffer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcChannelBuffer *This);
|
|
ULONG ( *Release)(
|
|
IRpcChannelBuffer *This);
|
|
HRESULT ( *GetBuffer)(
|
|
IRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
const IID *const riid);
|
|
HRESULT ( *SendReceive)(
|
|
IRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
ULONG *pStatus);
|
|
HRESULT ( *FreeBuffer)(
|
|
IRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMessage);
|
|
HRESULT ( *GetDestCtx)(
|
|
IRpcChannelBuffer *This,
|
|
DWORD *pdwDestContext,
|
|
void **ppvDestContext);
|
|
HRESULT ( *IsConnected)(
|
|
IRpcChannelBuffer *This);
|
|
|
|
} IRpcChannelBufferVtbl;
|
|
struct IRpcChannelBuffer {
|
|
IRpcChannelBufferVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IRpcChannelBuffer2;
|
|
typedef struct IRpcChannelBuffer2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcChannelBuffer2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcChannelBuffer2 *This);
|
|
ULONG ( *Release)(
|
|
IRpcChannelBuffer2 *This);
|
|
HRESULT ( *GetBuffer)(
|
|
IRpcChannelBuffer2 *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
const IID *const riid);
|
|
HRESULT ( *SendReceive)(
|
|
IRpcChannelBuffer2 *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
ULONG *pStatus);
|
|
HRESULT ( *FreeBuffer)(
|
|
IRpcChannelBuffer2 *This,
|
|
RPCOLEMESSAGE *pMessage);
|
|
HRESULT ( *GetDestCtx)(
|
|
IRpcChannelBuffer2 *This,
|
|
DWORD *pdwDestContext,
|
|
void **ppvDestContext);
|
|
HRESULT ( *IsConnected)(
|
|
IRpcChannelBuffer2 *This);
|
|
HRESULT ( *GetProtocolVersion)(
|
|
IRpcChannelBuffer2 *This,
|
|
DWORD *pdwVersion);
|
|
|
|
} IRpcChannelBuffer2Vtbl;
|
|
struct IRpcChannelBuffer2 {
|
|
IRpcChannelBuffer2Vtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IAsyncRpcChannelBuffer;
|
|
typedef struct IAsyncRpcChannelBufferVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAsyncRpcChannelBuffer *This);
|
|
ULONG ( *Release)(
|
|
IAsyncRpcChannelBuffer *This);
|
|
HRESULT ( *GetBuffer)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
const IID *const riid);
|
|
HRESULT ( *SendReceive)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
ULONG *pStatus);
|
|
HRESULT ( *FreeBuffer)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMessage);
|
|
HRESULT ( *GetDestCtx)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
DWORD *pdwDestContext,
|
|
void **ppvDestContext);
|
|
HRESULT ( *IsConnected)(
|
|
IAsyncRpcChannelBuffer *This);
|
|
HRESULT ( *GetProtocolVersion)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
DWORD *pdwVersion);
|
|
HRESULT ( *Send)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
ISynchronize *pSync,
|
|
ULONG *pulStatus);
|
|
HRESULT ( *Receive)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
ULONG *pulStatus);
|
|
HRESULT ( *GetDestCtxEx)(
|
|
IAsyncRpcChannelBuffer *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
DWORD *pdwDestContext,
|
|
void **ppvDestContext);
|
|
|
|
} IAsyncRpcChannelBufferVtbl;
|
|
struct IAsyncRpcChannelBuffer {
|
|
IAsyncRpcChannelBufferVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IRpcChannelBuffer3;
|
|
typedef struct IRpcChannelBuffer3Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcChannelBuffer3 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcChannelBuffer3 *This);
|
|
ULONG ( *Release)(
|
|
IRpcChannelBuffer3 *This);
|
|
HRESULT ( *GetBuffer)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
const IID *const riid);
|
|
HRESULT ( *SendReceive)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMessage,
|
|
ULONG *pStatus);
|
|
HRESULT ( *FreeBuffer)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMessage);
|
|
HRESULT ( *GetDestCtx)(
|
|
IRpcChannelBuffer3 *This,
|
|
DWORD *pdwDestContext,
|
|
void **ppvDestContext);
|
|
HRESULT ( *IsConnected)(
|
|
IRpcChannelBuffer3 *This);
|
|
HRESULT ( *GetProtocolVersion)(
|
|
IRpcChannelBuffer3 *This,
|
|
DWORD *pdwVersion);
|
|
HRESULT ( *Send)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
ULONG *pulStatus);
|
|
HRESULT ( *Receive)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
ULONG ulSize,
|
|
ULONG *pulStatus);
|
|
HRESULT ( *Cancel)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg);
|
|
HRESULT ( *GetCallContext)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
const IID *const riid,
|
|
void **pInterface);
|
|
HRESULT ( *GetDestCtxEx)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
DWORD *pdwDestContext,
|
|
void **ppvDestContext);
|
|
HRESULT ( *GetState)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
DWORD *pState);
|
|
HRESULT ( *RegisterAsync)(
|
|
IRpcChannelBuffer3 *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
IAsyncManager *pAsyncMgr);
|
|
|
|
} IRpcChannelBuffer3Vtbl;
|
|
struct IRpcChannelBuffer3 {
|
|
IRpcChannelBuffer3Vtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IRpcSyntaxNegotiate;
|
|
typedef struct IRpcSyntaxNegotiateVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcSyntaxNegotiate *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcSyntaxNegotiate *This);
|
|
ULONG ( *Release)(
|
|
IRpcSyntaxNegotiate *This);
|
|
HRESULT ( *NegotiateSyntax)(
|
|
IRpcSyntaxNegotiate *This,
|
|
RPCOLEMESSAGE *pMsg);
|
|
|
|
} IRpcSyntaxNegotiateVtbl;
|
|
struct IRpcSyntaxNegotiate {
|
|
IRpcSyntaxNegotiateVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IRpcProxyBuffer;
|
|
typedef struct IRpcProxyBufferVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcProxyBuffer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcProxyBuffer *This);
|
|
ULONG ( *Release)(
|
|
IRpcProxyBuffer *This);
|
|
HRESULT ( *Connect)(
|
|
IRpcProxyBuffer *This,
|
|
IRpcChannelBuffer *pRpcChannelBuffer);
|
|
void ( *Disconnect)(
|
|
IRpcProxyBuffer *This);
|
|
|
|
} IRpcProxyBufferVtbl;
|
|
struct IRpcProxyBuffer {
|
|
IRpcProxyBufferVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IRpcStubBuffer;
|
|
typedef struct IRpcStubBufferVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcStubBuffer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcStubBuffer *This);
|
|
ULONG ( *Release)(
|
|
IRpcStubBuffer *This);
|
|
HRESULT ( *Connect)(
|
|
IRpcStubBuffer *This,
|
|
IUnknown *pUnkServer);
|
|
void ( *Disconnect)(
|
|
IRpcStubBuffer *This);
|
|
HRESULT ( *Invoke)(
|
|
IRpcStubBuffer *This,
|
|
RPCOLEMESSAGE *_prpcmsg,
|
|
IRpcChannelBuffer *_pRpcChannelBuffer);
|
|
IRpcStubBuffer * ( *IsIIDSupported)(
|
|
IRpcStubBuffer *This,
|
|
const IID *const riid);
|
|
ULONG ( *CountRefs)(
|
|
IRpcStubBuffer *This);
|
|
HRESULT ( *DebugServerQueryInterface)(
|
|
IRpcStubBuffer *This,
|
|
void **ppv);
|
|
void ( *DebugServerRelease)(
|
|
IRpcStubBuffer *This,
|
|
void *pv);
|
|
|
|
} IRpcStubBufferVtbl;
|
|
struct IRpcStubBuffer {
|
|
IRpcStubBufferVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IPSFactoryBuffer;
|
|
typedef struct IPSFactoryBufferVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPSFactoryBuffer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPSFactoryBuffer *This);
|
|
ULONG ( *Release)(
|
|
IPSFactoryBuffer *This);
|
|
HRESULT ( *CreateProxy)(
|
|
IPSFactoryBuffer *This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
IRpcProxyBuffer **ppProxy,
|
|
void **ppv);
|
|
HRESULT ( *CreateStub)(
|
|
IPSFactoryBuffer *This,
|
|
const IID *const riid,
|
|
IUnknown *pUnkServer,
|
|
IRpcStubBuffer **ppStub);
|
|
|
|
} IPSFactoryBufferVtbl;
|
|
struct IPSFactoryBuffer {
|
|
IPSFactoryBufferVtbl* lpVtbl;
|
|
};
|
|
typedef struct SChannelHookCallInfo {
|
|
IID iid;
|
|
DWORD cbSize;
|
|
GUID uCausality;
|
|
DWORD dwServerPid;
|
|
DWORD iMethod;
|
|
void *pObject;
|
|
} SChannelHookCallInfo;
|
|
extern const GUID IID_IChannelHook;
|
|
typedef struct IChannelHookVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IChannelHook *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IChannelHook *This);
|
|
ULONG ( *Release)(
|
|
IChannelHook *This);
|
|
void ( *ClientGetSize)(
|
|
IChannelHook *This,
|
|
const GUID *const uExtent,
|
|
const IID *const riid,
|
|
ULONG *pDataSize);
|
|
void ( *ClientFillBuffer)(
|
|
IChannelHook *This,
|
|
const GUID *const uExtent,
|
|
const IID *const riid,
|
|
ULONG *pDataSize,
|
|
void *pDataBuffer);
|
|
void ( *ClientNotify)(
|
|
IChannelHook *This,
|
|
const GUID *const uExtent,
|
|
const IID *const riid,
|
|
ULONG cbDataSize,
|
|
void *pDataBuffer,
|
|
DWORD lDataRep,
|
|
HRESULT hrFault);
|
|
void ( *ServerNotify)(
|
|
IChannelHook *This,
|
|
const GUID *const uExtent,
|
|
const IID *const riid,
|
|
ULONG cbDataSize,
|
|
void *pDataBuffer,
|
|
DWORD lDataRep);
|
|
void ( *ServerGetSize)(
|
|
IChannelHook *This,
|
|
const GUID *const uExtent,
|
|
const IID *const riid,
|
|
HRESULT hrFault,
|
|
ULONG *pDataSize);
|
|
void ( *ServerFillBuffer)(
|
|
IChannelHook *This,
|
|
const GUID *const uExtent,
|
|
const IID *const riid,
|
|
ULONG *pDataSize,
|
|
void *pDataBuffer,
|
|
HRESULT hrFault);
|
|
|
|
} IChannelHookVtbl;
|
|
struct IChannelHook {
|
|
IChannelHookVtbl* lpVtbl;
|
|
};
|
|
typedef struct tagSOLE_AUTHENTICATION_SERVICE {
|
|
DWORD dwAuthnSvc;
|
|
DWORD dwAuthzSvc;
|
|
OLECHAR *pPrincipalName;
|
|
HRESULT hr;
|
|
} SOLE_AUTHENTICATION_SERVICE;
|
|
typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE;
|
|
typedef enum tagEOLE_AUTHENTICATION_CAPABILITIES {
|
|
EOAC_NONE = 0x0,
|
|
EOAC_MUTUAL_AUTH = 0x1,
|
|
EOAC_STATIC_CLOAKING = 0x20,
|
|
EOAC_DYNAMIC_CLOAKING = 0x40,
|
|
EOAC_ANY_AUTHORITY = 0x80,
|
|
EOAC_MAKE_FULLSIC = 0x100,
|
|
EOAC_DEFAULT = 0x800,
|
|
EOAC_SECURE_REFS = 0x2,
|
|
EOAC_ACCESS_CONTROL = 0x4,
|
|
EOAC_APPID = 0x8,
|
|
EOAC_DYNAMIC = 0x10,
|
|
EOAC_REQUIRE_FULLSIC = 0x200,
|
|
EOAC_AUTO_IMPERSONATE = 0x400,
|
|
EOAC_NO_CUSTOM_MARSHAL = 0x2000,
|
|
EOAC_DISABLE_AAA = 0x1000
|
|
} EOLE_AUTHENTICATION_CAPABILITIES;
|
|
typedef struct tagSOLE_AUTHENTICATION_INFO {
|
|
DWORD dwAuthnSvc;
|
|
DWORD dwAuthzSvc;
|
|
void *pAuthInfo;
|
|
} SOLE_AUTHENTICATION_INFO;
|
|
typedef struct tagSOLE_AUTHENTICATION_INFO *PSOLE_AUTHENTICATION_INFO;
|
|
typedef struct tagSOLE_AUTHENTICATION_LIST {
|
|
DWORD cAuthInfo;
|
|
SOLE_AUTHENTICATION_INFO *aAuthInfo;
|
|
} SOLE_AUTHENTICATION_LIST;
|
|
typedef struct tagSOLE_AUTHENTICATION_LIST *PSOLE_AUTHENTICATION_LIST;
|
|
extern const GUID IID_IClientSecurity;
|
|
typedef struct IClientSecurityVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IClientSecurity *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IClientSecurity *This);
|
|
ULONG ( *Release)(
|
|
IClientSecurity *This);
|
|
HRESULT ( *QueryBlanket)(
|
|
IClientSecurity *This,
|
|
IUnknown *pProxy,
|
|
DWORD *pAuthnSvc,
|
|
DWORD *pAuthzSvc,
|
|
OLECHAR **pServerPrincName,
|
|
DWORD *pAuthnLevel,
|
|
DWORD *pImpLevel,
|
|
void **pAuthInfo,
|
|
DWORD *pCapabilites);
|
|
HRESULT ( *SetBlanket)(
|
|
IClientSecurity *This,
|
|
IUnknown *pProxy,
|
|
DWORD dwAuthnSvc,
|
|
DWORD dwAuthzSvc,
|
|
OLECHAR *pServerPrincName,
|
|
DWORD dwAuthnLevel,
|
|
DWORD dwImpLevel,
|
|
void *pAuthInfo,
|
|
DWORD dwCapabilities);
|
|
HRESULT ( *CopyProxy)(
|
|
IClientSecurity *This,
|
|
IUnknown *pProxy,
|
|
IUnknown **ppCopy);
|
|
|
|
} IClientSecurityVtbl;
|
|
struct IClientSecurity {
|
|
IClientSecurityVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IServerSecurity;
|
|
typedef struct IServerSecurityVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IServerSecurity *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IServerSecurity *This);
|
|
ULONG ( *Release)(
|
|
IServerSecurity *This);
|
|
HRESULT ( *QueryBlanket)(
|
|
IServerSecurity *This,
|
|
DWORD *pAuthnSvc,
|
|
DWORD *pAuthzSvc,
|
|
OLECHAR **pServerPrincName,
|
|
DWORD *pAuthnLevel,
|
|
DWORD *pImpLevel,
|
|
void **pPrivs,
|
|
DWORD *pCapabilities);
|
|
HRESULT ( *ImpersonateClient)(
|
|
IServerSecurity *This);
|
|
HRESULT ( *RevertToSelf)(
|
|
IServerSecurity *This);
|
|
WINBOOL ( *IsImpersonating)(
|
|
IServerSecurity *This);
|
|
|
|
} IServerSecurityVtbl;
|
|
struct IServerSecurity {
|
|
IServerSecurityVtbl* lpVtbl;
|
|
};
|
|
typedef enum tagRPCOPT_PROPERTIES {
|
|
COMBND_RPCTIMEOUT = 0x1,
|
|
COMBND_SERVER_LOCALITY = 0x2,
|
|
COMBND_RESERVED1 = 0x4
|
|
} RPCOPT_PROPERTIES;
|
|
typedef enum tagRPCOPT_SERVER_LOCALITY_VALUES {
|
|
SERVER_LOCALITY_PROCESS_LOCAL = 0,
|
|
SERVER_LOCALITY_MACHINE_LOCAL = 1,
|
|
SERVER_LOCALITY_REMOTE = 2
|
|
} RPCOPT_SERVER_LOCALITY_VALUES;
|
|
extern const GUID IID_IRpcOptions;
|
|
typedef struct IRpcOptionsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcOptions *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcOptions *This);
|
|
ULONG ( *Release)(
|
|
IRpcOptions *This);
|
|
HRESULT ( *Set)(
|
|
IRpcOptions *This,
|
|
IUnknown *pPrx,
|
|
RPCOPT_PROPERTIES dwProperty,
|
|
ULONG_PTR dwValue);
|
|
HRESULT ( *Query)(
|
|
IRpcOptions *This,
|
|
IUnknown *pPrx,
|
|
RPCOPT_PROPERTIES dwProperty,
|
|
ULONG_PTR *pdwValue);
|
|
|
|
} IRpcOptionsVtbl;
|
|
struct IRpcOptions {
|
|
IRpcOptionsVtbl* lpVtbl;
|
|
};
|
|
typedef enum tagGLOBALOPT_PROPERTIES {
|
|
COMGLB_EXCEPTION_HANDLING = 1,
|
|
COMGLB_APPID = 2,
|
|
COMGLB_RPC_THREADPOOL_SETTING = 3,
|
|
COMGLB_RO_SETTINGS = 4,
|
|
COMGLB_UNMARSHALING_POLICY = 5
|
|
} GLOBALOPT_PROPERTIES;
|
|
typedef enum tagGLOBALOPT_EH_VALUES {
|
|
COMGLB_EXCEPTION_HANDLE = 0,
|
|
COMGLB_EXCEPTION_DONOT_HANDLE_FATAL = 1,
|
|
COMGLB_EXCEPTION_DONOT_HANDLE = COMGLB_EXCEPTION_DONOT_HANDLE_FATAL,
|
|
COMGLB_EXCEPTION_DONOT_HANDLE_ANY = 2
|
|
} GLOBALOPT_EH_VALUES;
|
|
typedef enum tagGLOBALOPT_RPCTP_VALUES {
|
|
COMGLB_RPC_THREADPOOL_SETTING_DEFAULT_POOL = 0,
|
|
COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1
|
|
} GLOBALOPT_RPCTP_VALUES;
|
|
typedef enum tagGLOBALOPT_RO_FLAGS {
|
|
COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 0x1,
|
|
COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 0x2,
|
|
COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 0x4,
|
|
COMGLB_FAST_RUNDOWN = 0x8,
|
|
COMGLB_RESERVED1 = 0x10,
|
|
COMGLB_RESERVED2 = 0x20,
|
|
COMGLB_RESERVED3 = 0x40,
|
|
COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 0x80
|
|
} GLOBALOPT_RO_FLAGS;
|
|
typedef enum tagGLOBALOPT_UNMARSHALING_POLICY_VALUES {
|
|
COMGLB_UNMARSHALING_POLICY_NORMAL = 0,
|
|
COMGLB_UNMARSHALING_POLICY_STRONG = 1,
|
|
COMGLB_UNMARSHALING_POLICY_HYBRID = 2
|
|
} GLOBALOPT_UNMARSHALING_POLICY_VALUES;
|
|
extern const GUID IID_IGlobalOptions;
|
|
typedef struct IGlobalOptionsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IGlobalOptions *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IGlobalOptions *This);
|
|
ULONG ( *Release)(
|
|
IGlobalOptions *This);
|
|
HRESULT ( *Set)(
|
|
IGlobalOptions *This,
|
|
GLOBALOPT_PROPERTIES dwProperty,
|
|
ULONG_PTR dwValue);
|
|
HRESULT ( *Query)(
|
|
IGlobalOptions *This,
|
|
GLOBALOPT_PROPERTIES dwProperty,
|
|
ULONG_PTR *pdwValue);
|
|
|
|
} IGlobalOptionsVtbl;
|
|
struct IGlobalOptions {
|
|
IGlobalOptionsVtbl* lpVtbl;
|
|
};
|
|
typedef ISurrogate *LPSURROGATE;
|
|
extern const GUID IID_ISurrogate;
|
|
typedef struct ISurrogateVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISurrogate *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISurrogate *This);
|
|
ULONG ( *Release)(
|
|
ISurrogate *This);
|
|
HRESULT ( *LoadDllServer)(
|
|
ISurrogate *This,
|
|
const IID *const Clsid);
|
|
HRESULT ( *FreeSurrogate)(
|
|
ISurrogate *This);
|
|
|
|
} ISurrogateVtbl;
|
|
struct ISurrogate {
|
|
ISurrogateVtbl* lpVtbl;
|
|
};
|
|
typedef IGlobalInterfaceTable *LPGLOBALINTERFACETABLE;
|
|
extern const GUID IID_IGlobalInterfaceTable;
|
|
typedef struct IGlobalInterfaceTableVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IGlobalInterfaceTable *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IGlobalInterfaceTable *This);
|
|
ULONG ( *Release)(
|
|
IGlobalInterfaceTable *This);
|
|
HRESULT ( *RegisterInterfaceInGlobal)(
|
|
IGlobalInterfaceTable *This,
|
|
IUnknown *pUnk,
|
|
const IID *const riid,
|
|
DWORD *pdwCookie);
|
|
HRESULT ( *RevokeInterfaceFromGlobal)(
|
|
IGlobalInterfaceTable *This,
|
|
DWORD dwCookie);
|
|
HRESULT ( *GetInterfaceFromGlobal)(
|
|
IGlobalInterfaceTable *This,
|
|
DWORD dwCookie,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
|
|
} IGlobalInterfaceTableVtbl;
|
|
struct IGlobalInterfaceTable {
|
|
IGlobalInterfaceTableVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ISynchronize;
|
|
typedef struct ISynchronizeVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISynchronize *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISynchronize *This);
|
|
ULONG ( *Release)(
|
|
ISynchronize *This);
|
|
HRESULT ( *Wait)(
|
|
ISynchronize *This,
|
|
DWORD dwFlags,
|
|
DWORD dwMilliseconds);
|
|
HRESULT ( *Signal)(
|
|
ISynchronize *This);
|
|
HRESULT ( *Reset)(
|
|
ISynchronize *This);
|
|
|
|
} ISynchronizeVtbl;
|
|
struct ISynchronize {
|
|
ISynchronizeVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ISynchronizeHandle;
|
|
typedef struct ISynchronizeHandleVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISynchronizeHandle *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISynchronizeHandle *This);
|
|
ULONG ( *Release)(
|
|
ISynchronizeHandle *This);
|
|
HRESULT ( *GetHandle)(
|
|
ISynchronizeHandle *This,
|
|
HANDLE *ph);
|
|
|
|
} ISynchronizeHandleVtbl;
|
|
struct ISynchronizeHandle {
|
|
ISynchronizeHandleVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ISynchronizeEvent;
|
|
typedef struct ISynchronizeEventVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISynchronizeEvent *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISynchronizeEvent *This);
|
|
ULONG ( *Release)(
|
|
ISynchronizeEvent *This);
|
|
HRESULT ( *GetHandle)(
|
|
ISynchronizeEvent *This,
|
|
HANDLE *ph);
|
|
HRESULT ( *SetEventHandle)(
|
|
ISynchronizeEvent *This,
|
|
HANDLE *ph);
|
|
|
|
} ISynchronizeEventVtbl;
|
|
struct ISynchronizeEvent {
|
|
ISynchronizeEventVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ISynchronizeContainer;
|
|
typedef struct ISynchronizeContainerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISynchronizeContainer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISynchronizeContainer *This);
|
|
ULONG ( *Release)(
|
|
ISynchronizeContainer *This);
|
|
HRESULT ( *AddSynchronize)(
|
|
ISynchronizeContainer *This,
|
|
ISynchronize *pSync);
|
|
HRESULT ( *WaitMultiple)(
|
|
ISynchronizeContainer *This,
|
|
DWORD dwFlags,
|
|
DWORD dwTimeOut,
|
|
ISynchronize **ppSync);
|
|
|
|
} ISynchronizeContainerVtbl;
|
|
struct ISynchronizeContainer {
|
|
ISynchronizeContainerVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ISynchronizeMutex;
|
|
typedef struct ISynchronizeMutexVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISynchronizeMutex *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISynchronizeMutex *This);
|
|
ULONG ( *Release)(
|
|
ISynchronizeMutex *This);
|
|
HRESULT ( *Wait)(
|
|
ISynchronizeMutex *This,
|
|
DWORD dwFlags,
|
|
DWORD dwMilliseconds);
|
|
HRESULT ( *Signal)(
|
|
ISynchronizeMutex *This);
|
|
HRESULT ( *Reset)(
|
|
ISynchronizeMutex *This);
|
|
HRESULT ( *ReleaseMutex)(
|
|
ISynchronizeMutex *This);
|
|
|
|
} ISynchronizeMutexVtbl;
|
|
struct ISynchronizeMutex {
|
|
ISynchronizeMutexVtbl* lpVtbl;
|
|
};
|
|
typedef ICancelMethodCalls *LPCANCELMETHODCALLS;
|
|
extern const GUID IID_ICancelMethodCalls;
|
|
typedef struct ICancelMethodCallsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICancelMethodCalls *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICancelMethodCalls *This);
|
|
ULONG ( *Release)(
|
|
ICancelMethodCalls *This);
|
|
HRESULT ( *Cancel)(
|
|
ICancelMethodCalls *This,
|
|
ULONG ulSeconds);
|
|
HRESULT ( *TestCancel)(
|
|
ICancelMethodCalls *This);
|
|
|
|
} ICancelMethodCallsVtbl;
|
|
struct ICancelMethodCalls {
|
|
ICancelMethodCallsVtbl* lpVtbl;
|
|
};
|
|
typedef enum tagDCOM_CALL_STATE {
|
|
DCOM_NONE = 0x0,
|
|
DCOM_CALL_COMPLETE = 0x1,
|
|
DCOM_CALL_CANCELED = 0x2
|
|
} DCOM_CALL_STATE;
|
|
extern const GUID IID_IAsyncManager;
|
|
typedef struct IAsyncManagerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAsyncManager *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAsyncManager *This);
|
|
ULONG ( *Release)(
|
|
IAsyncManager *This);
|
|
HRESULT ( *CompleteCall)(
|
|
IAsyncManager *This,
|
|
HRESULT Result);
|
|
HRESULT ( *GetCallContext)(
|
|
IAsyncManager *This,
|
|
const IID *const riid,
|
|
void **pInterface);
|
|
HRESULT ( *GetState)(
|
|
IAsyncManager *This,
|
|
ULONG *pulStateFlags);
|
|
|
|
} IAsyncManagerVtbl;
|
|
struct IAsyncManager {
|
|
IAsyncManagerVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ICallFactory;
|
|
typedef struct ICallFactoryVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICallFactory *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICallFactory *This);
|
|
ULONG ( *Release)(
|
|
ICallFactory *This);
|
|
HRESULT ( *CreateCall)(
|
|
ICallFactory *This,
|
|
const IID *const riid,
|
|
IUnknown *pCtrlUnk,
|
|
const IID *const riid2,
|
|
IUnknown **ppv);
|
|
|
|
} ICallFactoryVtbl;
|
|
struct ICallFactory {
|
|
ICallFactoryVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IRpcHelper;
|
|
typedef struct IRpcHelperVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRpcHelper *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRpcHelper *This);
|
|
ULONG ( *Release)(
|
|
IRpcHelper *This);
|
|
HRESULT ( *GetDCOMProtocolVersion)(
|
|
IRpcHelper *This,
|
|
DWORD *pComVersion);
|
|
HRESULT ( *GetIIDFromOBJREF)(
|
|
IRpcHelper *This,
|
|
void *pObjRef,
|
|
IID **piid);
|
|
|
|
} IRpcHelperVtbl;
|
|
struct IRpcHelper {
|
|
IRpcHelperVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IReleaseMarshalBuffers;
|
|
typedef struct IReleaseMarshalBuffersVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IReleaseMarshalBuffers *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IReleaseMarshalBuffers *This);
|
|
ULONG ( *Release)(
|
|
IReleaseMarshalBuffers *This);
|
|
HRESULT ( *ReleaseMarshalBuffer)(
|
|
IReleaseMarshalBuffers *This,
|
|
RPCOLEMESSAGE *pMsg,
|
|
DWORD dwFlags,
|
|
IUnknown *pChnl);
|
|
|
|
} IReleaseMarshalBuffersVtbl;
|
|
struct IReleaseMarshalBuffers {
|
|
IReleaseMarshalBuffersVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IWaitMultiple;
|
|
typedef struct IWaitMultipleVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWaitMultiple *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWaitMultiple *This);
|
|
ULONG ( *Release)(
|
|
IWaitMultiple *This);
|
|
HRESULT ( *WaitMultiple)(
|
|
IWaitMultiple *This,
|
|
DWORD timeout,
|
|
ISynchronize **pSync);
|
|
HRESULT ( *AddSynchronize)(
|
|
IWaitMultiple *This,
|
|
ISynchronize *pSync);
|
|
|
|
} IWaitMultipleVtbl;
|
|
struct IWaitMultiple {
|
|
IWaitMultipleVtbl* lpVtbl;
|
|
};
|
|
typedef IAddrTrackingControl *LPADDRTRACKINGCONTROL;
|
|
extern const GUID IID_IAddrTrackingControl;
|
|
typedef struct IAddrTrackingControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAddrTrackingControl *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAddrTrackingControl *This);
|
|
ULONG ( *Release)(
|
|
IAddrTrackingControl *This);
|
|
HRESULT ( *EnableCOMDynamicAddrTracking)(
|
|
IAddrTrackingControl *This);
|
|
HRESULT ( *DisableCOMDynamicAddrTracking)(
|
|
IAddrTrackingControl *This);
|
|
|
|
} IAddrTrackingControlVtbl;
|
|
struct IAddrTrackingControl {
|
|
IAddrTrackingControlVtbl* lpVtbl;
|
|
};
|
|
typedef IAddrExclusionControl *LPADDREXCLUSIONCONTROL;
|
|
extern const GUID IID_IAddrExclusionControl;
|
|
typedef struct IAddrExclusionControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAddrExclusionControl *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAddrExclusionControl *This);
|
|
ULONG ( *Release)(
|
|
IAddrExclusionControl *This);
|
|
HRESULT ( *GetCurrentAddrExclusionList)(
|
|
IAddrExclusionControl *This,
|
|
const IID *const riid,
|
|
void **ppEnumerator);
|
|
HRESULT ( *UpdateAddrExclusionList)(
|
|
IAddrExclusionControl *This,
|
|
IUnknown *pEnumerator);
|
|
|
|
} IAddrExclusionControlVtbl;
|
|
struct IAddrExclusionControl {
|
|
IAddrExclusionControlVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IPipeByte;
|
|
typedef struct IPipeByteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPipeByte *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPipeByte *This);
|
|
ULONG ( *Release)(
|
|
IPipeByte *This);
|
|
HRESULT ( *Pull)(
|
|
IPipeByte *This,
|
|
BYTE *buf,
|
|
ULONG cRequest,
|
|
ULONG *pcReturned);
|
|
HRESULT ( *Push)(
|
|
IPipeByte *This,
|
|
BYTE *buf,
|
|
ULONG cSent);
|
|
|
|
} IPipeByteVtbl;
|
|
struct IPipeByte {
|
|
IPipeByteVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IPipeLong;
|
|
typedef struct IPipeLongVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPipeLong *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPipeLong *This);
|
|
ULONG ( *Release)(
|
|
IPipeLong *This);
|
|
HRESULT ( *Pull)(
|
|
IPipeLong *This,
|
|
LONG *buf,
|
|
ULONG cRequest,
|
|
ULONG *pcReturned);
|
|
HRESULT ( *Push)(
|
|
IPipeLong *This,
|
|
LONG *buf,
|
|
ULONG cSent);
|
|
|
|
} IPipeLongVtbl;
|
|
struct IPipeLong {
|
|
IPipeLongVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IPipeDouble;
|
|
typedef struct IPipeDoubleVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPipeDouble *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPipeDouble *This);
|
|
ULONG ( *Release)(
|
|
IPipeDouble *This);
|
|
HRESULT ( *Pull)(
|
|
IPipeDouble *This,
|
|
DOUBLE *buf,
|
|
ULONG cRequest,
|
|
ULONG *pcReturned);
|
|
HRESULT ( *Push)(
|
|
IPipeDouble *This,
|
|
DOUBLE *buf,
|
|
ULONG cSent);
|
|
|
|
} IPipeDoubleVtbl;
|
|
struct IPipeDouble {
|
|
IPipeDoubleVtbl* lpVtbl;
|
|
};
|
|
typedef enum _APTTYPEQUALIFIER {
|
|
APTTYPEQUALIFIER_NONE = 0,
|
|
APTTYPEQUALIFIER_IMPLICIT_MTA = 1,
|
|
APTTYPEQUALIFIER_NA_ON_MTA = 2,
|
|
APTTYPEQUALIFIER_NA_ON_STA = 3,
|
|
APTTYPEQUALIFIER_NA_ON_IMPLICIT_MTA = 4,
|
|
APTTYPEQUALIFIER_NA_ON_MAINSTA = 5,
|
|
APTTYPEQUALIFIER_APPLICATION_STA = 6
|
|
} APTTYPEQUALIFIER;
|
|
typedef enum _APTTYPE {
|
|
APTTYPE_CURRENT = -1,
|
|
APTTYPE_STA = 0,
|
|
APTTYPE_MTA = 1,
|
|
APTTYPE_NA = 2,
|
|
APTTYPE_MAINSTA = 3
|
|
} APTTYPE;
|
|
typedef enum _THDTYPE {
|
|
THDTYPE_BLOCKMESSAGES = 0,
|
|
THDTYPE_PROCESSMESSAGES = 1
|
|
} THDTYPE;
|
|
typedef DWORD APARTMENTID;
|
|
extern const GUID IID_IComThreadingInfo;
|
|
typedef struct IComThreadingInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IComThreadingInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IComThreadingInfo *This);
|
|
ULONG ( *Release)(
|
|
IComThreadingInfo *This);
|
|
HRESULT ( *GetCurrentApartmentType)(
|
|
IComThreadingInfo *This,
|
|
APTTYPE *pAptType);
|
|
HRESULT ( *GetCurrentThreadType)(
|
|
IComThreadingInfo *This,
|
|
THDTYPE *pThreadType);
|
|
HRESULT ( *GetCurrentLogicalThreadId)(
|
|
IComThreadingInfo *This,
|
|
GUID *pguidLogicalThreadId);
|
|
HRESULT ( *SetCurrentLogicalThreadId)(
|
|
IComThreadingInfo *This,
|
|
const GUID *const rguid);
|
|
|
|
} IComThreadingInfoVtbl;
|
|
struct IComThreadingInfo {
|
|
IComThreadingInfoVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IProcessInitControl;
|
|
typedef struct IProcessInitControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IProcessInitControl *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IProcessInitControl *This);
|
|
ULONG ( *Release)(
|
|
IProcessInitControl *This);
|
|
HRESULT ( *ResetInitializerTimeout)(
|
|
IProcessInitControl *This,
|
|
DWORD dwSecondsRemaining);
|
|
|
|
} IProcessInitControlVtbl;
|
|
struct IProcessInitControl {
|
|
IProcessInitControlVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IFastRundown;
|
|
typedef struct IFastRundownVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IFastRundown *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IFastRundown *This);
|
|
ULONG ( *Release)(
|
|
IFastRundown *This);
|
|
|
|
} IFastRundownVtbl;
|
|
struct IFastRundown {
|
|
IFastRundownVtbl* lpVtbl;
|
|
};
|
|
typedef enum CO_MARSHALING_CONTEXT_ATTRIBUTES {
|
|
CO_MARSHALING_SOURCE_IS_APP_CONTAINER = 0
|
|
} CO_MARSHALING_CONTEXT_ATTRIBUTES;
|
|
extern const GUID IID_IMarshalingStream;
|
|
typedef struct IMarshalingStreamVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMarshalingStream *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMarshalingStream *This);
|
|
ULONG ( *Release)(
|
|
IMarshalingStream *This);
|
|
HRESULT ( *Read)(
|
|
IMarshalingStream *This,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ( *Write)(
|
|
IMarshalingStream *This,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ( *Seek)(
|
|
IMarshalingStream *This,
|
|
LARGE_INTEGER dlibMove,
|
|
DWORD dwOrigin,
|
|
ULARGE_INTEGER *plibNewPosition);
|
|
HRESULT ( *SetSize)(
|
|
IMarshalingStream *This,
|
|
ULARGE_INTEGER libNewSize);
|
|
HRESULT ( *CopyTo)(
|
|
IMarshalingStream *This,
|
|
IStream *pstm,
|
|
ULARGE_INTEGER cb,
|
|
ULARGE_INTEGER *pcbRead,
|
|
ULARGE_INTEGER *pcbWritten);
|
|
HRESULT ( *Commit)(
|
|
IMarshalingStream *This,
|
|
DWORD grfCommitFlags);
|
|
HRESULT ( *Revert)(
|
|
IMarshalingStream *This);
|
|
HRESULT ( *LockRegion)(
|
|
IMarshalingStream *This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
HRESULT ( *UnlockRegion)(
|
|
IMarshalingStream *This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
HRESULT ( *Stat)(
|
|
IMarshalingStream *This,
|
|
STATSTG *pstatstg,
|
|
DWORD grfStatFlag);
|
|
HRESULT ( *Clone)(
|
|
IMarshalingStream *This,
|
|
IStream **ppstm);
|
|
HRESULT ( *GetMarshalingContextAttribute)(
|
|
IMarshalingStream *This,
|
|
CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,
|
|
ULONG_PTR *pAttributeValue);
|
|
|
|
} IMarshalingStreamVtbl;
|
|
struct IMarshalingStream {
|
|
IMarshalingStreamVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ICallbackWithNoReentrancyToApplicationSTA;
|
|
extern const IID GUID_NULL;
|
|
extern const IID CATID_MARSHALER;
|
|
extern const IID IID_IRpcChannel;
|
|
extern const IID IID_IRpcStub;
|
|
extern const IID IID_IStubManager;
|
|
extern const IID IID_IRpcProxy;
|
|
extern const IID IID_IProxyManager;
|
|
extern const IID IID_IPSFactory;
|
|
extern const IID IID_IInternalMoniker;
|
|
extern const IID IID_IDfReserved1;
|
|
extern const IID IID_IDfReserved2;
|
|
extern const IID IID_IDfReserved3;
|
|
extern const CLSID CLSID_StdMarshal;
|
|
extern const CLSID CLSID_AggStdMarshal;
|
|
extern const CLSID CLSID_StdAsyncActManager;
|
|
extern const IID IID_IStub;
|
|
extern const IID IID_IProxy;
|
|
extern const IID IID_IEnumGeneric;
|
|
extern const IID IID_IEnumHolder;
|
|
extern const IID IID_IEnumCallback;
|
|
extern const IID IID_IOleManager;
|
|
extern const IID IID_IOlePresObj;
|
|
extern const IID IID_IDebug;
|
|
extern const IID IID_IDebugStream;
|
|
extern const CLSID CLSID_PSGenObject;
|
|
extern const CLSID CLSID_PSClientSite;
|
|
extern const CLSID CLSID_PSClassObject;
|
|
extern const CLSID CLSID_PSInPlaceActive;
|
|
extern const CLSID CLSID_PSInPlaceFrame;
|
|
extern const CLSID CLSID_PSDragDrop;
|
|
extern const CLSID CLSID_PSBindCtx;
|
|
extern const CLSID CLSID_PSEnumerators;
|
|
extern const CLSID CLSID_StaticMetafile;
|
|
extern const CLSID CLSID_StaticDib;
|
|
extern const CLSID CID_CDfsVolume;
|
|
extern const CLSID CLSID_DCOMAccessControl;
|
|
extern const CLSID CLSID_GlobalOptions;
|
|
extern const CLSID CLSID_StdGlobalInterfaceTable;
|
|
extern const CLSID CLSID_ComBinding;
|
|
extern const CLSID CLSID_StdEvent;
|
|
extern const CLSID CLSID_ManualResetEvent;
|
|
extern const CLSID CLSID_SynchronizeContainer;
|
|
extern const CLSID CLSID_AddrControl;
|
|
extern const CLSID CLSID_CCDFormKrnl;
|
|
extern const CLSID CLSID_CCDPropertyPage;
|
|
extern const CLSID CLSID_CCDFormDialog;
|
|
extern const CLSID CLSID_CCDCommandButton;
|
|
extern const CLSID CLSID_CCDComboBox;
|
|
extern const CLSID CLSID_CCDTextBox;
|
|
extern const CLSID CLSID_CCDCheckBox;
|
|
extern const CLSID CLSID_CCDLabel;
|
|
extern const CLSID CLSID_CCDOptionButton;
|
|
extern const CLSID CLSID_CCDListBox;
|
|
extern const CLSID CLSID_CCDScrollBar;
|
|
extern const CLSID CLSID_CCDGroupBox;
|
|
extern const CLSID CLSID_CCDGeneralPropertyPage;
|
|
extern const CLSID CLSID_CCDGenericPropertyPage;
|
|
extern const CLSID CLSID_CCDFontPropertyPage;
|
|
extern const CLSID CLSID_CCDColorPropertyPage;
|
|
extern const CLSID CLSID_CCDLabelPropertyPage;
|
|
extern const CLSID CLSID_CCDCheckBoxPropertyPage;
|
|
extern const CLSID CLSID_CCDTextBoxPropertyPage;
|
|
extern const CLSID CLSID_CCDOptionButtonPropertyPage;
|
|
extern const CLSID CLSID_CCDListBoxPropertyPage;
|
|
extern const CLSID CLSID_CCDCommandButtonPropertyPage;
|
|
extern const CLSID CLSID_CCDComboBoxPropertyPage;
|
|
extern const CLSID CLSID_CCDScrollBarPropertyPage;
|
|
extern const CLSID CLSID_CCDGroupBoxPropertyPage;
|
|
extern const CLSID CLSID_CCDXObjectPropertyPage;
|
|
extern const CLSID CLSID_CStdPropertyFrame;
|
|
extern const CLSID CLSID_CFormPropertyPage;
|
|
extern const CLSID CLSID_CGridPropertyPage;
|
|
extern const CLSID CLSID_CWSJArticlePage;
|
|
extern const CLSID CLSID_CSystemPage;
|
|
extern const CLSID CLSID_IdentityUnmarshal;
|
|
extern const CLSID CLSID_InProcFreeMarshaler;
|
|
extern const CLSID CLSID_Picture_Metafile;
|
|
extern const CLSID CLSID_Picture_EnhMetafile;
|
|
extern const CLSID CLSID_Picture_Dib;
|
|
extern const GUID GUID_TRISTATE;
|
|
extern __attribute__((dllimport)) HRESULT CreateStreamOnHGlobal (HGLOBAL hGlobal, WINBOOL fDeleteOnRelease, LPSTREAM *ppstm);
|
|
extern __attribute__((dllimport)) HRESULT GetHGlobalFromStream (LPSTREAM pstm, HGLOBAL *phglobal);
|
|
extern __attribute__((dllimport)) void CoUninitialize (void);
|
|
extern __attribute__((dllimport)) HRESULT CoInitializeEx (LPVOID pvReserved, DWORD dwCoInit);
|
|
extern __attribute__((dllimport)) HRESULT CoGetCurrentLogicalThreadId (GUID *pguid);
|
|
extern __attribute__((dllimport)) HRESULT CoGetContextToken (ULONG_PTR *pToken);
|
|
extern __attribute__((dllimport)) HRESULT CoGetObjectContext (const IID *const riid, LPVOID *ppv);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterClassObject (const IID *const rclsid, LPUNKNOWN pUnk, DWORD dwClsContext, DWORD flags, LPDWORD lpdwRegister);
|
|
extern __attribute__((dllimport)) HRESULT CoRevokeClassObject (DWORD dwRegister);
|
|
extern __attribute__((dllimport)) HRESULT CoResumeClassObjects (void);
|
|
extern __attribute__((dllimport)) HRESULT CoSuspendClassObjects (void);
|
|
extern __attribute__((dllimport)) HRESULT CoGetMalloc (DWORD dwMemContext, LPMALLOC *ppMalloc);
|
|
extern __attribute__((dllimport)) DWORD CoGetCurrentProcess (void);
|
|
extern __attribute__((dllimport)) HRESULT CoGetCallerTID (LPDWORD lpdwTID);
|
|
extern __attribute__((dllimport)) HRESULT CoGetDefaultContext (APTTYPE aptType, const IID *const riid, void **ppv);
|
|
extern __attribute__((dllimport)) HRESULT CoGetClassObject (const IID *const rclsid, DWORD dwClsContext, LPVOID pvReserved, const IID *const riid, LPVOID *ppv);
|
|
extern __attribute__((dllimport)) ULONG CoAddRefServerProcess (void);
|
|
extern __attribute__((dllimport)) ULONG CoReleaseServerProcess (void);
|
|
extern __attribute__((dllimport)) HRESULT CoGetPSClsid (const IID *const riid, CLSID *pClsid);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterPSClsid (const IID *const riid, const IID *const rclsid);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterSurrogate (LPSURROGATE pSurrogate);
|
|
extern __attribute__((dllimport)) HRESULT CoMarshalHresult (LPSTREAM pstm, HRESULT hresult);
|
|
extern __attribute__((dllimport)) HRESULT CoUnmarshalHresult (LPSTREAM pstm, HRESULT *phresult);
|
|
extern __attribute__((dllimport)) HRESULT CoLockObjectExternal (LPUNKNOWN pUnk, WINBOOL fLock, WINBOOL fLastUnlockReleases);
|
|
extern __attribute__((dllimport)) HRESULT CoGetStdMarshalEx (LPUNKNOWN pUnkOuter, DWORD smexflags, LPUNKNOWN *ppUnkInner);
|
|
typedef enum tagSTDMSHLFLAGS {
|
|
SMEXF_SERVER = 0x01,
|
|
SMEXF_HANDLER = 0x02
|
|
} STDMSHLFLAGS;
|
|
extern __attribute__((dllimport)) HRESULT CoGetMarshalSizeMax (ULONG *pulSize, const IID *const riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags);
|
|
extern __attribute__((dllimport)) HRESULT CoMarshalInterface (LPSTREAM pStm, const IID *const riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags);
|
|
extern __attribute__((dllimport)) HRESULT CoUnmarshalInterface (LPSTREAM pStm, const IID *const riid, LPVOID *ppv);
|
|
extern __attribute__((dllimport)) HRESULT CoReleaseMarshalData (LPSTREAM pStm);
|
|
extern __attribute__((dllimport)) HRESULT CoDisconnectObject (LPUNKNOWN pUnk, DWORD dwReserved);
|
|
extern __attribute__((dllimport)) HRESULT CoGetStandardMarshal (const IID *const riid, LPUNKNOWN pUnk, DWORD dwDestContext, LPVOID pvDestContext, DWORD mshlflags, LPMARSHAL *ppMarshal);
|
|
extern __attribute__((dllimport)) HRESULT CoMarshalInterThreadInterfaceInStream (const IID *const riid, LPUNKNOWN pUnk, LPSTREAM *ppStm);
|
|
extern __attribute__((dllimport)) HRESULT CoGetInterfaceAndReleaseStream (LPSTREAM pStm, const IID *const iid, LPVOID *ppv);
|
|
extern __attribute__((dllimport)) HRESULT CoCreateFreeThreadedMarshaler (LPUNKNOWN punkOuter, LPUNKNOWN *ppunkMarshal);
|
|
extern __attribute__((dllimport)) void CoFreeUnusedLibraries (void);
|
|
extern __attribute__((dllimport)) void CoFreeUnusedLibrariesEx (DWORD dwUnloadDelay, DWORD dwReserved);
|
|
extern __attribute__((dllimport)) HRESULT CoInitializeSecurity (PSECURITY_DESCRIPTOR pSecDesc, LONG cAuthSvc, SOLE_AUTHENTICATION_SERVICE *asAuthSvc, void *pReserved1, DWORD dwAuthnLevel, DWORD dwImpLevel, void *pAuthList, DWORD dwCapabilities, void *pReserved3);
|
|
extern __attribute__((dllimport)) HRESULT CoSwitchCallContext (IUnknown *pNewObject, IUnknown **ppOldObject);
|
|
extern __attribute__((dllimport)) HRESULT CoCreateInstanceFromApp (const IID *const Clsid, IUnknown *punkOuter, DWORD dwClsCtx, PVOID reserved, DWORD dwCount, MULTI_QI *pResults);
|
|
extern __attribute__((dllimport)) WINBOOL CoIsHandlerConnected (LPUNKNOWN pUnk);
|
|
extern __attribute__((dllimport)) HRESULT CoGetCallContext (const IID *const riid, void **ppInterface);
|
|
extern __attribute__((dllimport)) HRESULT CoQueryProxyBlanket (IUnknown *pProxy, DWORD *pwAuthnSvc, DWORD *pAuthzSvc, LPOLESTR *pServerPrincName, DWORD *pAuthnLevel, DWORD *pImpLevel, RPC_AUTH_IDENTITY_HANDLE *pAuthInfo, DWORD *pCapabilites);
|
|
extern __attribute__((dllimport)) HRESULT CoSetProxyBlanket (IUnknown *pProxy, DWORD dwAuthnSvc, DWORD dwAuthzSvc, OLECHAR *pServerPrincName, DWORD dwAuthnLevel, DWORD dwImpLevel, RPC_AUTH_IDENTITY_HANDLE pAuthInfo, DWORD dwCapabilities);
|
|
extern __attribute__((dllimport)) HRESULT CoCopyProxy (IUnknown *pProxy, IUnknown **ppCopy);
|
|
extern __attribute__((dllimport)) HRESULT CoQueryClientBlanket (DWORD *pAuthnSvc, DWORD *pAuthzSvc, LPOLESTR *pServerPrincName, DWORD *pAuthnLevel, DWORD *pImpLevel, RPC_AUTHZ_HANDLE *pPrivs, DWORD *pCapabilities);
|
|
extern __attribute__((dllimport)) HRESULT CoImpersonateClient (void);
|
|
extern __attribute__((dllimport)) HRESULT CoRevertToSelf (void);
|
|
extern __attribute__((dllimport)) HRESULT CoQueryAuthenticationServices (DWORD *pcAuthSvc, SOLE_AUTHENTICATION_SERVICE **asAuthSvc);
|
|
extern __attribute__((dllimport)) HRESULT CoCreateInstance (const IID *const rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, const IID *const riid, LPVOID *ppv);
|
|
extern __attribute__((dllimport)) HRESULT CoCreateInstanceEx (const IID *const Clsid, IUnknown *punkOuter, DWORD dwClsCtx, COSERVERINFO *pServerInfo, DWORD dwCount, MULTI_QI *pResults);
|
|
extern __attribute__((dllimport)) HRESULT CoGetCancelObject (DWORD dwThreadId, const IID *const iid, void **ppUnk);
|
|
extern __attribute__((dllimport)) HRESULT CoSetCancelObject (IUnknown *pUnk);
|
|
extern __attribute__((dllimport)) HRESULT CoCancelCall (DWORD dwThreadId, ULONG ulTimeout);
|
|
extern __attribute__((dllimport)) HRESULT CoTestCancel (void);
|
|
extern __attribute__((dllimport)) HRESULT CoEnableCallCancellation (LPVOID pReserved);
|
|
extern __attribute__((dllimport)) HRESULT CoDisableCallCancellation (LPVOID pReserved);
|
|
extern __attribute__((dllimport)) HRESULT StringFromCLSID (const IID *const rclsid, LPOLESTR *lplpsz);
|
|
extern __attribute__((dllimport)) HRESULT CLSIDFromString (LPCOLESTR lpsz, LPCLSID pclsid);
|
|
extern __attribute__((dllimport)) HRESULT StringFromIID (const IID *const rclsid, LPOLESTR *lplpsz);
|
|
extern __attribute__((dllimport)) HRESULT IIDFromString (LPCOLESTR lpsz, LPIID lpiid);
|
|
extern __attribute__((dllimport)) HRESULT ProgIDFromCLSID (const IID *const clsid, LPOLESTR *lplpszProgID);
|
|
extern __attribute__((dllimport)) HRESULT CLSIDFromProgID (LPCOLESTR lpszProgID, LPCLSID lpclsid);
|
|
extern __attribute__((dllimport)) int StringFromGUID2 (const GUID *const rguid, LPOLESTR lpsz, int cchMax);
|
|
extern __attribute__((dllimport)) HRESULT CoCreateGuid (GUID *pguid);
|
|
typedef struct tagPROPVARIANT PROPVARIANT;
|
|
extern __attribute__((dllimport)) HRESULT PropVariantCopy (PROPVARIANT *pvarDest, const PROPVARIANT *pvarSrc);
|
|
extern __attribute__((dllimport)) HRESULT PropVariantClear (PROPVARIANT *pvar);
|
|
extern __attribute__((dllimport)) HRESULT FreePropVariantArray (ULONG cVariants, PROPVARIANT *rgvars);
|
|
extern __attribute__((dllimport)) HRESULT CoWaitForMultipleHandles (DWORD dwFlags, DWORD dwTimeout, ULONG cHandles, LPHANDLE pHandles, LPDWORD lpdwindex);
|
|
typedef enum tagCOWAIT_FLAGS {
|
|
COWAIT_DEFAULT = 0,
|
|
COWAIT_WAITALL = 1,
|
|
COWAIT_ALERTABLE = 2,
|
|
COWAIT_INPUTAVAILABLE = 4
|
|
, COWAIT_DISPATCH_CALLS = 8,
|
|
COWAIT_DISPATCH_WINDOW_MESSAGES = 0x10
|
|
} COWAIT_FLAGS;
|
|
extern __attribute__((dllimport)) HRESULT CoGetTreatAsClass (const IID *const clsidOld, LPCLSID pClsidNew);
|
|
extern __attribute__((dllimport)) HRESULT CoInvalidateRemoteMachineBindings (LPOLESTR pszMachineName);
|
|
typedef HRESULT ( *LPFNGETCLASSOBJECT) (const IID *const, const IID *const, LPVOID *);
|
|
typedef HRESULT ( *LPFNCANUNLOADNOW) (void);
|
|
extern HRESULT DllGetClassObject (const IID *const rclsid, const IID *const riid, LPVOID *ppv);
|
|
extern HRESULT DllCanUnloadNow (void);
|
|
extern __attribute__((dllimport)) LPVOID CoTaskMemAlloc (SIZE_T cb);
|
|
extern __attribute__((dllimport)) LPVOID CoTaskMemRealloc (LPVOID pv, SIZE_T cb);
|
|
extern __attribute__((dllimport)) void CoTaskMemFree (LPVOID pv);
|
|
#pragma pack(pop)
|
|
typedef enum tagCOINIT {
|
|
COINIT_APARTMENTTHREADED = 0x2,
|
|
COINIT_MULTITHREADED = COINITBASE_MULTITHREADED,
|
|
COINIT_DISABLE_OLE1DDE = 0x4,
|
|
COINIT_SPEED_OVER_MEMORY = 0x8
|
|
} COINIT;
|
|
typedef DWORD STGFMT;
|
|
typedef struct IMallocSpy IMallocSpy;
|
|
typedef struct IBindCtx IBindCtx;
|
|
typedef struct IEnumMoniker IEnumMoniker;
|
|
typedef struct IRunnableObject IRunnableObject;
|
|
typedef struct IRunningObjectTable IRunningObjectTable;
|
|
typedef struct IPersist IPersist;
|
|
typedef struct IPersistStream IPersistStream;
|
|
typedef struct IMoniker IMoniker;
|
|
typedef struct IROTData IROTData;
|
|
typedef struct IEnumSTATSTG IEnumSTATSTG;
|
|
typedef struct IStorage IStorage;
|
|
typedef struct IPersistFile IPersistFile;
|
|
typedef struct IPersistStorage IPersistStorage;
|
|
typedef struct ILockBytes ILockBytes;
|
|
typedef struct IEnumFORMATETC IEnumFORMATETC;
|
|
typedef struct IEnumSTATDATA IEnumSTATDATA;
|
|
typedef struct IRootStorage IRootStorage;
|
|
typedef struct IAdviseSink IAdviseSink;
|
|
typedef struct AsyncIAdviseSink AsyncIAdviseSink;
|
|
typedef struct IAdviseSink2 IAdviseSink2;
|
|
typedef struct AsyncIAdviseSink2 AsyncIAdviseSink2;
|
|
typedef struct IDataObject IDataObject;
|
|
typedef struct IDataAdviseHolder IDataAdviseHolder;
|
|
typedef struct IMessageFilter IMessageFilter;
|
|
typedef struct IClassActivator IClassActivator;
|
|
typedef struct IFillLockBytes IFillLockBytes;
|
|
typedef struct IProgressNotify IProgressNotify;
|
|
typedef struct ILayoutStorage ILayoutStorage;
|
|
typedef struct IBlockingLock IBlockingLock;
|
|
typedef struct ITimeAndNoticeControl ITimeAndNoticeControl;
|
|
typedef struct IOplockStorage IOplockStorage;
|
|
typedef struct IDirectWriterLock IDirectWriterLock;
|
|
typedef struct IUrlMon IUrlMon;
|
|
typedef struct IForegroundTransfer IForegroundTransfer;
|
|
typedef struct IThumbnailExtractor IThumbnailExtractor;
|
|
typedef struct IDummyHICONIncluder IDummyHICONIncluder;
|
|
typedef struct IProcessLock IProcessLock;
|
|
typedef struct ISurrogateService ISurrogateService;
|
|
typedef struct IInitializeSpy IInitializeSpy;
|
|
typedef struct IApartmentShutdown IApartmentShutdown;
|
|
extern RPC_IF_HANDLE IWinTypes_v0_1_c_ifspec;
|
|
extern RPC_IF_HANDLE IWinTypes_v0_1_s_ifspec;
|
|
typedef struct tagRemHGLOBAL {
|
|
LONG fNullHGlobal;
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemHGLOBAL;
|
|
typedef struct tagRemHMETAFILEPICT {
|
|
LONG mm;
|
|
LONG xExt;
|
|
LONG yExt;
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemHMETAFILEPICT;
|
|
typedef struct tagRemHENHMETAFILE {
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemHENHMETAFILE;
|
|
typedef struct tagRemHBITMAP {
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemHBITMAP;
|
|
typedef struct tagRemHPALETTE {
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemHPALETTE;
|
|
typedef struct tagRemBRUSH {
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemHBRUSH;
|
|
typedef enum tagDVASPECT {
|
|
DVASPECT_CONTENT = 1,
|
|
DVASPECT_THUMBNAIL = 2,
|
|
DVASPECT_ICON = 4,
|
|
DVASPECT_DOCPRINT = 8
|
|
} DVASPECT;
|
|
typedef enum tagSTGC {
|
|
STGC_DEFAULT = 0,
|
|
STGC_OVERWRITE = 1,
|
|
STGC_ONLYIFCURRENT = 2,
|
|
STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE = 4,
|
|
STGC_CONSOLIDATE = 8
|
|
} STGC;
|
|
typedef enum tagSTGMOVE {
|
|
STGMOVE_MOVE = 0,
|
|
STGMOVE_COPY = 1,
|
|
STGMOVE_SHALLOWCOPY = 2
|
|
} STGMOVE;
|
|
typedef enum tagSTATFLAG {
|
|
STATFLAG_DEFAULT = 0,
|
|
STATFLAG_NONAME = 1,
|
|
STATFLAG_NOOPEN = 2
|
|
} STATFLAG;
|
|
typedef void *HCONTEXT;
|
|
typedef struct _userCLIPFORMAT {
|
|
LONG fContext;
|
|
union {
|
|
DWORD dwValue;
|
|
wchar_t *pwszName;
|
|
} u;
|
|
} userCLIPFORMAT;
|
|
typedef userCLIPFORMAT *wireCLIPFORMAT;
|
|
typedef WORD CLIPFORMAT;
|
|
typedef struct _GDI_NONREMOTE {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
DWORD_BLOB *hRemote;
|
|
} u;
|
|
} GDI_NONREMOTE;
|
|
typedef struct _userHGLOBAL {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
FLAGGED_BYTE_BLOB *hRemote;
|
|
INT64 hInproc64;
|
|
} u;
|
|
} userHGLOBAL;
|
|
typedef userHGLOBAL *wireHGLOBAL;
|
|
typedef struct _userHMETAFILE {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
BYTE_BLOB *hRemote;
|
|
INT64 hInproc64;
|
|
} u;
|
|
} userHMETAFILE;
|
|
typedef struct _remoteMETAFILEPICT {
|
|
LONG mm;
|
|
LONG xExt;
|
|
LONG yExt;
|
|
userHMETAFILE *hMF;
|
|
} remoteMETAFILEPICT;
|
|
typedef struct _userHMETAFILEPICT {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
remoteMETAFILEPICT *hRemote;
|
|
INT64 hInproc64;
|
|
} u;
|
|
} userHMETAFILEPICT;
|
|
typedef struct _userHENHMETAFILE {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
BYTE_BLOB *hRemote;
|
|
INT64 hInproc64;
|
|
} u;
|
|
} userHENHMETAFILE;
|
|
typedef struct _userBITMAP {
|
|
LONG bmType;
|
|
LONG bmWidth;
|
|
LONG bmHeight;
|
|
LONG bmWidthBytes;
|
|
WORD bmPlanes;
|
|
WORD bmBitsPixel;
|
|
ULONG cbSize;
|
|
byte pBuffer[1];
|
|
} userBITMAP;
|
|
typedef struct _userHBITMAP {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
userBITMAP *hRemote;
|
|
INT64 hInproc64;
|
|
} u;
|
|
} userHBITMAP;
|
|
typedef struct _userHPALETTE {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
LOGPALETTE *hRemote;
|
|
INT64 hInproc64;
|
|
} u;
|
|
} userHPALETTE;
|
|
typedef struct _RemotableHandle {
|
|
LONG fContext;
|
|
union {
|
|
LONG hInproc;
|
|
LONG hRemote;
|
|
} u;
|
|
} RemotableHandle;
|
|
typedef RemotableHandle *wireHWND;
|
|
typedef RemotableHandle *wireHMENU;
|
|
typedef RemotableHandle *wireHACCEL;
|
|
typedef RemotableHandle *wireHBRUSH;
|
|
typedef RemotableHandle *wireHFONT;
|
|
typedef RemotableHandle *wireHDC;
|
|
typedef RemotableHandle *wireHICON;
|
|
typedef RemotableHandle *wireHRGN;
|
|
typedef RemotableHandle *wireHMONITOR;
|
|
typedef userHBITMAP *wireHBITMAP;
|
|
typedef userHPALETTE *wireHPALETTE;
|
|
typedef userHENHMETAFILE *wireHENHMETAFILE;
|
|
typedef userHMETAFILE *wireHMETAFILE;
|
|
typedef userHMETAFILEPICT *wireHMETAFILEPICT;
|
|
typedef void *HMETAFILEPICT;
|
|
typedef double DATE;
|
|
typedef union tagCY {
|
|
__extension__ struct {
|
|
unsigned long Lo;
|
|
long Hi;
|
|
} ;
|
|
LONGLONG int64;
|
|
} CY;
|
|
typedef CY *LPCY;
|
|
typedef struct tagDEC {
|
|
USHORT wReserved;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
BYTE scale;
|
|
BYTE sign;
|
|
} ;
|
|
USHORT signscale;
|
|
} ;
|
|
ULONG Hi32;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
ULONG Lo32;
|
|
ULONG Mid32;
|
|
} ;
|
|
ULONGLONG Lo64;
|
|
} ;
|
|
} DECIMAL;
|
|
typedef DECIMAL *LPDECIMAL;
|
|
typedef FLAGGED_WORD_BLOB *wireBSTR;
|
|
typedef OLECHAR *BSTR;
|
|
typedef BSTR *LPBSTR;
|
|
typedef short VARIANT_BOOL;
|
|
typedef struct tagBSTRBLOB {
|
|
ULONG cbSize;
|
|
BYTE *pData;
|
|
} BSTRBLOB;
|
|
typedef struct tagBSTRBLOB *LPBSTRBLOB;
|
|
typedef struct tagCLIPDATA {
|
|
ULONG cbSize;
|
|
LONG ulClipFmt;
|
|
BYTE *pClipData;
|
|
} CLIPDATA;
|
|
typedef unsigned short VARTYPE;
|
|
enum VARENUM {
|
|
VT_EMPTY = 0,
|
|
VT_NULL = 1,
|
|
VT_I2 = 2,
|
|
VT_I4 = 3,
|
|
VT_R4 = 4,
|
|
VT_R8 = 5,
|
|
VT_CY = 6,
|
|
VT_DATE = 7,
|
|
VT_BSTR = 8,
|
|
VT_DISPATCH = 9,
|
|
VT_ERROR = 10,
|
|
VT_BOOL = 11,
|
|
VT_VARIANT = 12,
|
|
VT_UNKNOWN = 13,
|
|
VT_DECIMAL = 14,
|
|
VT_I1 = 16,
|
|
VT_UI1 = 17,
|
|
VT_UI2 = 18,
|
|
VT_UI4 = 19,
|
|
VT_I8 = 20,
|
|
VT_UI8 = 21,
|
|
VT_INT = 22,
|
|
VT_UINT = 23,
|
|
VT_VOID = 24,
|
|
VT_HRESULT = 25,
|
|
VT_PTR = 26,
|
|
VT_SAFEARRAY = 27,
|
|
VT_CARRAY = 28,
|
|
VT_USERDEFINED = 29,
|
|
VT_LPSTR = 30,
|
|
VT_LPWSTR = 31,
|
|
VT_RECORD = 36,
|
|
VT_INT_PTR = 37,
|
|
VT_UINT_PTR = 38,
|
|
VT_FILETIME = 64,
|
|
VT_BLOB = 65,
|
|
VT_STREAM = 66,
|
|
VT_STORAGE = 67,
|
|
VT_STREAMED_OBJECT = 68,
|
|
VT_STORED_OBJECT = 69,
|
|
VT_BLOB_OBJECT = 70,
|
|
VT_CF = 71,
|
|
VT_CLSID = 72,
|
|
VT_VERSIONED_STREAM = 73,
|
|
VT_BSTR_BLOB = 0xfff,
|
|
VT_VECTOR = 0x1000,
|
|
VT_ARRAY = 0x2000,
|
|
VT_BYREF = 0x4000,
|
|
VT_RESERVED = 0x8000,
|
|
VT_ILLEGAL = 0xffff,
|
|
VT_ILLEGALMASKED = 0xfff,
|
|
VT_TYPEMASK = 0xfff
|
|
};
|
|
typedef ULONG PROPID;
|
|
typedef struct _tagpropertykey {
|
|
GUID fmtid;
|
|
DWORD pid;
|
|
} PROPERTYKEY;
|
|
typedef struct tagCSPLATFORM {
|
|
DWORD dwPlatformId;
|
|
DWORD dwVersionHi;
|
|
DWORD dwVersionLo;
|
|
DWORD dwProcessorArch;
|
|
} CSPLATFORM;
|
|
typedef struct tagQUERYCONTEXT {
|
|
DWORD dwContext;
|
|
CSPLATFORM Platform;
|
|
LCID Locale;
|
|
DWORD dwVersionHi;
|
|
DWORD dwVersionLo;
|
|
} QUERYCONTEXT;
|
|
typedef enum tagTYSPEC {
|
|
TYSPEC_CLSID = 0,
|
|
TYSPEC_FILEEXT = 1,
|
|
TYSPEC_MIMETYPE = 2,
|
|
TYSPEC_FILENAME = 3,
|
|
TYSPEC_PROGID = 4,
|
|
TYSPEC_PACKAGENAME = 5,
|
|
TYSPEC_OBJECTID = 6
|
|
} TYSPEC;
|
|
typedef struct __WIDL_wtypes_generated_name_00000001 {
|
|
DWORD tyspec;
|
|
union {
|
|
CLSID clsid;
|
|
LPOLESTR pFileExt;
|
|
LPOLESTR pMimeType;
|
|
LPOLESTR pProgId;
|
|
LPOLESTR pFileName;
|
|
struct {
|
|
LPOLESTR pPackageName;
|
|
GUID PolicyId;
|
|
} ByName;
|
|
struct {
|
|
GUID ObjectId;
|
|
GUID PolicyId;
|
|
} ByObjectId;
|
|
} tagged_union;
|
|
} uCLSSPEC;
|
|
typedef IMallocSpy *LPMALLOCSPY;
|
|
extern const GUID IID_IMallocSpy;
|
|
typedef struct IMallocSpyVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMallocSpy* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMallocSpy* This);
|
|
ULONG ( *Release)(
|
|
IMallocSpy* This);
|
|
SIZE_T ( *PreAlloc)(
|
|
IMallocSpy* This,
|
|
SIZE_T cbRequest);
|
|
void * ( *PostAlloc)(
|
|
IMallocSpy* This,
|
|
void *pActual);
|
|
void * ( *PreFree)(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed);
|
|
void ( *PostFree)(
|
|
IMallocSpy* This,
|
|
WINBOOL fSpyed);
|
|
SIZE_T ( *PreRealloc)(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
SIZE_T cbRequest,
|
|
void **ppNewRequest,
|
|
WINBOOL fSpyed);
|
|
void * ( *PostRealloc)(
|
|
IMallocSpy* This,
|
|
void *pActual,
|
|
WINBOOL fSpyed);
|
|
void * ( *PreGetSize)(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed);
|
|
SIZE_T ( *PostGetSize)(
|
|
IMallocSpy* This,
|
|
SIZE_T cbActual,
|
|
WINBOOL fSpyed);
|
|
void * ( *PreDidAlloc)(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed);
|
|
int ( *PostDidAlloc)(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed,
|
|
int fActual);
|
|
void ( *PreHeapMinimize)(
|
|
IMallocSpy* This);
|
|
void ( *PostHeapMinimize)(
|
|
IMallocSpy* This);
|
|
|
|
} IMallocSpyVtbl;
|
|
struct IMallocSpy {
|
|
IMallocSpyVtbl* lpVtbl;
|
|
};
|
|
SIZE_T IMallocSpy_PreAlloc_Proxy(
|
|
IMallocSpy* This,
|
|
SIZE_T cbRequest);
|
|
void IMallocSpy_PreAlloc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void * IMallocSpy_PostAlloc_Proxy(
|
|
IMallocSpy* This,
|
|
void *pActual);
|
|
void IMallocSpy_PostAlloc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void * IMallocSpy_PreFree_Proxy(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PreFree_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void IMallocSpy_PostFree_Proxy(
|
|
IMallocSpy* This,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PostFree_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
SIZE_T IMallocSpy_PreRealloc_Proxy(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
SIZE_T cbRequest,
|
|
void **ppNewRequest,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PreRealloc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void * IMallocSpy_PostRealloc_Proxy(
|
|
IMallocSpy* This,
|
|
void *pActual,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PostRealloc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void * IMallocSpy_PreGetSize_Proxy(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PreGetSize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
SIZE_T IMallocSpy_PostGetSize_Proxy(
|
|
IMallocSpy* This,
|
|
SIZE_T cbActual,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PostGetSize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void * IMallocSpy_PreDidAlloc_Proxy(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed);
|
|
void IMallocSpy_PreDidAlloc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
int IMallocSpy_PostDidAlloc_Proxy(
|
|
IMallocSpy* This,
|
|
void *pRequest,
|
|
WINBOOL fSpyed,
|
|
int fActual);
|
|
void IMallocSpy_PostDidAlloc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void IMallocSpy_PreHeapMinimize_Proxy(
|
|
IMallocSpy* This);
|
|
void IMallocSpy_PreHeapMinimize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void IMallocSpy_PostHeapMinimize_Proxy(
|
|
IMallocSpy* This);
|
|
void IMallocSpy_PostHeapMinimize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IBindCtx *LPBC;
|
|
typedef IBindCtx *LPBINDCTX;
|
|
typedef struct tagBIND_OPTS {
|
|
DWORD cbStruct;
|
|
DWORD grfFlags;
|
|
DWORD grfMode;
|
|
DWORD dwTickCountDeadline;
|
|
} BIND_OPTS;
|
|
typedef struct tagBIND_OPTS *LPBIND_OPTS;
|
|
typedef struct tagBIND_OPTS2 {
|
|
DWORD cbStruct;
|
|
DWORD grfFlags;
|
|
DWORD grfMode;
|
|
DWORD dwTickCountDeadline;
|
|
DWORD dwTrackFlags;
|
|
DWORD dwClassContext;
|
|
LCID locale;
|
|
COSERVERINFO *pServerInfo;
|
|
} BIND_OPTS2;
|
|
typedef struct tagBIND_OPTS2 *LPBIND_OPTS2;
|
|
typedef struct tagBIND_OPTS3 {
|
|
DWORD cbStruct;
|
|
DWORD grfFlags;
|
|
DWORD grfMode;
|
|
DWORD dwTickCountDeadline;
|
|
DWORD dwTrackFlags;
|
|
DWORD dwClassContext;
|
|
LCID locale;
|
|
COSERVERINFO *pServerInfo;
|
|
HWND hwnd;
|
|
} BIND_OPTS3;
|
|
typedef struct tagBIND_OPTS3 *LPBIND_OPTS3;
|
|
typedef enum tagBIND_FLAGS {
|
|
BIND_MAYBOTHERUSER = 1,
|
|
BIND_JUSTTESTEXISTENCE = 2
|
|
} BIND_FLAGS;
|
|
extern const GUID IID_IBindCtx;
|
|
typedef struct IBindCtxVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBindCtx* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBindCtx* This);
|
|
ULONG ( *Release)(
|
|
IBindCtx* This);
|
|
HRESULT ( *RegisterObjectBound)(
|
|
IBindCtx* This,
|
|
IUnknown *punk);
|
|
HRESULT ( *RevokeObjectBound)(
|
|
IBindCtx* This,
|
|
IUnknown *punk);
|
|
HRESULT ( *ReleaseBoundObjects)(
|
|
IBindCtx* This);
|
|
HRESULT ( *SetBindOptions)(
|
|
IBindCtx* This,
|
|
BIND_OPTS *pbindopts);
|
|
HRESULT ( *GetBindOptions)(
|
|
IBindCtx* This,
|
|
BIND_OPTS *pbindopts);
|
|
HRESULT ( *GetRunningObjectTable)(
|
|
IBindCtx* This,
|
|
IRunningObjectTable **pprot);
|
|
HRESULT ( *RegisterObjectParam)(
|
|
IBindCtx* This,
|
|
LPOLESTR pszKey,
|
|
IUnknown *punk);
|
|
HRESULT ( *GetObjectParam)(
|
|
IBindCtx* This,
|
|
LPOLESTR pszKey,
|
|
IUnknown **ppunk);
|
|
HRESULT ( *EnumObjectParam)(
|
|
IBindCtx* This,
|
|
IEnumString **ppenum);
|
|
HRESULT ( *RevokeObjectParam)(
|
|
IBindCtx* This,
|
|
LPOLESTR pszKey);
|
|
|
|
} IBindCtxVtbl;
|
|
struct IBindCtx {
|
|
IBindCtxVtbl* lpVtbl;
|
|
};
|
|
HRESULT IBindCtx_RegisterObjectBound_Proxy(
|
|
IBindCtx* This,
|
|
IUnknown *punk);
|
|
void IBindCtx_RegisterObjectBound_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_RevokeObjectBound_Proxy(
|
|
IBindCtx* This,
|
|
IUnknown *punk);
|
|
void IBindCtx_RevokeObjectBound_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_ReleaseBoundObjects_Proxy(
|
|
IBindCtx* This);
|
|
void IBindCtx_ReleaseBoundObjects_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_RemoteSetBindOptions_Proxy(
|
|
IBindCtx* This,
|
|
BIND_OPTS2 *pbindopts);
|
|
void IBindCtx_RemoteSetBindOptions_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_RemoteGetBindOptions_Proxy(
|
|
IBindCtx* This,
|
|
BIND_OPTS2 *pbindopts);
|
|
void IBindCtx_RemoteGetBindOptions_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_GetRunningObjectTable_Proxy(
|
|
IBindCtx* This,
|
|
IRunningObjectTable **pprot);
|
|
void IBindCtx_GetRunningObjectTable_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_RegisterObjectParam_Proxy(
|
|
IBindCtx* This,
|
|
LPOLESTR pszKey,
|
|
IUnknown *punk);
|
|
void IBindCtx_RegisterObjectParam_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_GetObjectParam_Proxy(
|
|
IBindCtx* This,
|
|
LPOLESTR pszKey,
|
|
IUnknown **ppunk);
|
|
void IBindCtx_GetObjectParam_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_EnumObjectParam_Proxy(
|
|
IBindCtx* This,
|
|
IEnumString **ppenum);
|
|
void IBindCtx_EnumObjectParam_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_RevokeObjectParam_Proxy(
|
|
IBindCtx* This,
|
|
LPOLESTR pszKey);
|
|
void IBindCtx_RevokeObjectParam_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindCtx_SetBindOptions_Proxy(
|
|
IBindCtx* This,
|
|
BIND_OPTS *pbindopts);
|
|
HRESULT IBindCtx_SetBindOptions_Stub(
|
|
IBindCtx* This,
|
|
BIND_OPTS2 *pbindopts);
|
|
HRESULT IBindCtx_GetBindOptions_Proxy(
|
|
IBindCtx* This,
|
|
BIND_OPTS *pbindopts);
|
|
HRESULT IBindCtx_GetBindOptions_Stub(
|
|
IBindCtx* This,
|
|
BIND_OPTS2 *pbindopts);
|
|
typedef IEnumMoniker *LPENUMMONIKER;
|
|
extern const GUID IID_IEnumMoniker;
|
|
typedef struct IEnumMonikerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumMoniker* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumMoniker* This);
|
|
ULONG ( *Release)(
|
|
IEnumMoniker* This);
|
|
HRESULT ( *Next)(
|
|
IEnumMoniker* This,
|
|
ULONG celt,
|
|
IMoniker **rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumMoniker* This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumMoniker* This);
|
|
HRESULT ( *Clone)(
|
|
IEnumMoniker* This,
|
|
IEnumMoniker **ppenum);
|
|
|
|
} IEnumMonikerVtbl;
|
|
struct IEnumMoniker {
|
|
IEnumMonikerVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumMoniker_RemoteNext_Proxy(
|
|
IEnumMoniker* This,
|
|
ULONG celt,
|
|
IMoniker **rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumMoniker_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumMoniker_Skip_Proxy(
|
|
IEnumMoniker* This,
|
|
ULONG celt);
|
|
void IEnumMoniker_Skip_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumMoniker_Reset_Proxy(
|
|
IEnumMoniker* This);
|
|
void IEnumMoniker_Reset_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumMoniker_Clone_Proxy(
|
|
IEnumMoniker* This,
|
|
IEnumMoniker **ppenum);
|
|
void IEnumMoniker_Clone_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumMoniker_Next_Proxy(
|
|
IEnumMoniker* This,
|
|
ULONG celt,
|
|
IMoniker **rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumMoniker_Next_Stub(
|
|
IEnumMoniker* This,
|
|
ULONG celt,
|
|
IMoniker **rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IRunnableObject *LPRUNNABLEOBJECT;
|
|
extern const GUID IID_IRunnableObject;
|
|
typedef struct IRunnableObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRunnableObject* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRunnableObject* This);
|
|
ULONG ( *Release)(
|
|
IRunnableObject* This);
|
|
HRESULT ( *GetRunningClass)(
|
|
IRunnableObject* This,
|
|
LPCLSID lpClsid);
|
|
HRESULT ( *Run)(
|
|
IRunnableObject* This,
|
|
LPBINDCTX pbc);
|
|
WINBOOL ( *IsRunning)(
|
|
IRunnableObject* This);
|
|
HRESULT ( *LockRunning)(
|
|
IRunnableObject* This,
|
|
WINBOOL fLock,
|
|
WINBOOL fLastUnlockCloses);
|
|
HRESULT ( *SetContainedObject)(
|
|
IRunnableObject* This,
|
|
WINBOOL fContained);
|
|
|
|
} IRunnableObjectVtbl;
|
|
struct IRunnableObject {
|
|
IRunnableObjectVtbl* lpVtbl;
|
|
};
|
|
HRESULT IRunnableObject_GetRunningClass_Proxy(
|
|
IRunnableObject* This,
|
|
LPCLSID lpClsid);
|
|
void IRunnableObject_GetRunningClass_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunnableObject_Run_Proxy(
|
|
IRunnableObject* This,
|
|
LPBINDCTX pbc);
|
|
void IRunnableObject_Run_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunnableObject_RemoteIsRunning_Proxy(
|
|
IRunnableObject* This);
|
|
void IRunnableObject_RemoteIsRunning_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunnableObject_LockRunning_Proxy(
|
|
IRunnableObject* This,
|
|
WINBOOL fLock,
|
|
WINBOOL fLastUnlockCloses);
|
|
void IRunnableObject_LockRunning_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunnableObject_SetContainedObject_Proxy(
|
|
IRunnableObject* This,
|
|
WINBOOL fContained);
|
|
void IRunnableObject_SetContainedObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
WINBOOL IRunnableObject_IsRunning_Proxy(
|
|
IRunnableObject* This);
|
|
HRESULT IRunnableObject_IsRunning_Stub(
|
|
IRunnableObject* This);
|
|
typedef IRunningObjectTable *LPRUNNINGOBJECTTABLE;
|
|
extern const GUID IID_IRunningObjectTable;
|
|
typedef struct IRunningObjectTableVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRunningObjectTable* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRunningObjectTable* This);
|
|
ULONG ( *Release)(
|
|
IRunningObjectTable* This);
|
|
HRESULT ( *Register)(
|
|
IRunningObjectTable* This,
|
|
DWORD grfFlags,
|
|
IUnknown *punkObject,
|
|
IMoniker *pmkObjectName,
|
|
DWORD *pdwRegister);
|
|
HRESULT ( *Revoke)(
|
|
IRunningObjectTable* This,
|
|
DWORD dwRegister);
|
|
HRESULT ( *IsRunning)(
|
|
IRunningObjectTable* This,
|
|
IMoniker *pmkObjectName);
|
|
HRESULT ( *GetObjectA)(
|
|
IRunningObjectTable* This,
|
|
IMoniker *pmkObjectName,
|
|
IUnknown **ppunkObject);
|
|
HRESULT ( *NoteChangeTime)(
|
|
IRunningObjectTable* This,
|
|
DWORD dwRegister,
|
|
FILETIME *pfiletime);
|
|
HRESULT ( *GetTimeOfLastChange)(
|
|
IRunningObjectTable* This,
|
|
IMoniker *pmkObjectName,
|
|
FILETIME *pfiletime);
|
|
HRESULT ( *EnumRunning)(
|
|
IRunningObjectTable* This,
|
|
IEnumMoniker **ppenumMoniker);
|
|
|
|
} IRunningObjectTableVtbl;
|
|
struct IRunningObjectTable {
|
|
IRunningObjectTableVtbl* lpVtbl;
|
|
};
|
|
HRESULT IRunningObjectTable_Register_Proxy(
|
|
IRunningObjectTable* This,
|
|
DWORD grfFlags,
|
|
IUnknown *punkObject,
|
|
IMoniker *pmkObjectName,
|
|
DWORD *pdwRegister);
|
|
void IRunningObjectTable_Register_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunningObjectTable_Revoke_Proxy(
|
|
IRunningObjectTable* This,
|
|
DWORD dwRegister);
|
|
void IRunningObjectTable_Revoke_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunningObjectTable_IsRunning_Proxy(
|
|
IRunningObjectTable* This,
|
|
IMoniker *pmkObjectName);
|
|
void IRunningObjectTable_IsRunning_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunningObjectTable_GetObject_Proxy(
|
|
IRunningObjectTable* This,
|
|
IMoniker *pmkObjectName,
|
|
IUnknown **ppunkObject);
|
|
void IRunningObjectTable_GetObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunningObjectTable_NoteChangeTime_Proxy(
|
|
IRunningObjectTable* This,
|
|
DWORD dwRegister,
|
|
FILETIME *pfiletime);
|
|
void IRunningObjectTable_NoteChangeTime_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunningObjectTable_GetTimeOfLastChange_Proxy(
|
|
IRunningObjectTable* This,
|
|
IMoniker *pmkObjectName,
|
|
FILETIME *pfiletime);
|
|
void IRunningObjectTable_GetTimeOfLastChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IRunningObjectTable_EnumRunning_Proxy(
|
|
IRunningObjectTable* This,
|
|
IEnumMoniker **ppenumMoniker);
|
|
void IRunningObjectTable_EnumRunning_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IPersist *LPPERSIST;
|
|
extern const GUID IID_IPersist;
|
|
typedef struct IPersistVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersist* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersist* This);
|
|
ULONG ( *Release)(
|
|
IPersist* This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersist* This,
|
|
CLSID *pClassID);
|
|
|
|
} IPersistVtbl;
|
|
struct IPersist {
|
|
IPersistVtbl* lpVtbl;
|
|
};
|
|
HRESULT IPersist_GetClassID_Proxy(
|
|
IPersist* This,
|
|
CLSID *pClassID);
|
|
void IPersist_GetClassID_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IPersistStream *LPPERSISTSTREAM;
|
|
extern const GUID IID_IPersistStream;
|
|
typedef struct IPersistStreamVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistStream* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistStream* This);
|
|
ULONG ( *Release)(
|
|
IPersistStream* This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistStream* This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistStream* This);
|
|
HRESULT ( *Load)(
|
|
IPersistStream* This,
|
|
IStream *pStm);
|
|
HRESULT ( *Save)(
|
|
IPersistStream* This,
|
|
IStream *pStm,
|
|
WINBOOL fClearDirty);
|
|
HRESULT ( *GetSizeMax)(
|
|
IPersistStream* This,
|
|
ULARGE_INTEGER *pcbSize);
|
|
|
|
} IPersistStreamVtbl;
|
|
struct IPersistStream {
|
|
IPersistStreamVtbl* lpVtbl;
|
|
};
|
|
HRESULT IPersistStream_IsDirty_Proxy(
|
|
IPersistStream* This);
|
|
void IPersistStream_IsDirty_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStream_Load_Proxy(
|
|
IPersistStream* This,
|
|
IStream *pStm);
|
|
void IPersistStream_Load_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStream_Save_Proxy(
|
|
IPersistStream* This,
|
|
IStream *pStm,
|
|
WINBOOL fClearDirty);
|
|
void IPersistStream_Save_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStream_GetSizeMax_Proxy(
|
|
IPersistStream* This,
|
|
ULARGE_INTEGER *pcbSize);
|
|
void IPersistStream_GetSizeMax_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IMoniker *LPMONIKER;
|
|
typedef enum tagMKSYS {
|
|
MKSYS_NONE = 0,
|
|
MKSYS_GENERICCOMPOSITE = 1,
|
|
MKSYS_FILEMONIKER = 2,
|
|
MKSYS_ANTIMONIKER = 3,
|
|
MKSYS_ITEMMONIKER = 4,
|
|
MKSYS_POINTERMONIKER = 5,
|
|
MKSYS_CLASSMONIKER = 7,
|
|
MKSYS_OBJREFMONIKER = 8,
|
|
MKSYS_SESSIONMONIKER = 9,
|
|
MKSYS_LUAMONIKER = 10
|
|
} MKSYS;
|
|
typedef enum tagMKREDUCE {
|
|
MKRREDUCE_ONE = 3 << 16,
|
|
MKRREDUCE_TOUSER = 2 << 16,
|
|
MKRREDUCE_THROUGHUSER = 1 << 16,
|
|
MKRREDUCE_ALL = 0
|
|
} MKRREDUCE;
|
|
extern const GUID IID_IMoniker;
|
|
typedef struct IMonikerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMoniker* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMoniker* This);
|
|
ULONG ( *Release)(
|
|
IMoniker* This);
|
|
HRESULT ( *GetClassID)(
|
|
IMoniker* This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IMoniker* This);
|
|
HRESULT ( *Load)(
|
|
IMoniker* This,
|
|
IStream *pStm);
|
|
HRESULT ( *Save)(
|
|
IMoniker* This,
|
|
IStream *pStm,
|
|
WINBOOL fClearDirty);
|
|
HRESULT ( *GetSizeMax)(
|
|
IMoniker* This,
|
|
ULARGE_INTEGER *pcbSize);
|
|
HRESULT ( *BindToObject)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riidResult,
|
|
void **ppvResult);
|
|
HRESULT ( *BindToStorage)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riid,
|
|
void **ppvObj);
|
|
HRESULT ( *Reduce)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
DWORD dwReduceHowFar,
|
|
IMoniker **ppmkToLeft,
|
|
IMoniker **ppmkReduced);
|
|
HRESULT ( *ComposeWith)(
|
|
IMoniker* This,
|
|
IMoniker *pmkRight,
|
|
WINBOOL fOnlyIfNotGeneric,
|
|
IMoniker **ppmkComposite);
|
|
HRESULT ( *Enum)(
|
|
IMoniker* This,
|
|
WINBOOL fForward,
|
|
IEnumMoniker **ppenumMoniker);
|
|
HRESULT ( *IsEqual)(
|
|
IMoniker* This,
|
|
IMoniker *pmkOtherMoniker);
|
|
HRESULT ( *Hash)(
|
|
IMoniker* This,
|
|
DWORD *pdwHash);
|
|
HRESULT ( *IsRunning)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
IMoniker *pmkNewlyRunning);
|
|
HRESULT ( *GetTimeOfLastChange)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
FILETIME *pFileTime);
|
|
HRESULT ( *Inverse)(
|
|
IMoniker* This,
|
|
IMoniker **ppmk);
|
|
HRESULT ( *CommonPrefixWith)(
|
|
IMoniker* This,
|
|
IMoniker *pmkOther,
|
|
IMoniker **ppmkPrefix);
|
|
HRESULT ( *RelativePathTo)(
|
|
IMoniker* This,
|
|
IMoniker *pmkOther,
|
|
IMoniker **ppmkRelPath);
|
|
HRESULT ( *GetDisplayName)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
LPOLESTR *ppszDisplayName);
|
|
HRESULT ( *ParseDisplayName)(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
LPOLESTR pszDisplayName,
|
|
ULONG *pchEaten,
|
|
IMoniker **ppmkOut);
|
|
HRESULT ( *IsSystemMoniker)(
|
|
IMoniker* This,
|
|
DWORD *pdwMksys);
|
|
|
|
} IMonikerVtbl;
|
|
struct IMoniker {
|
|
IMonikerVtbl* lpVtbl;
|
|
};
|
|
HRESULT IMoniker_RemoteBindToObject_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riidResult,
|
|
IUnknown **ppvResult);
|
|
void IMoniker_RemoteBindToObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_RemoteBindToStorage_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
void IMoniker_RemoteBindToStorage_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_Reduce_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
DWORD dwReduceHowFar,
|
|
IMoniker **ppmkToLeft,
|
|
IMoniker **ppmkReduced);
|
|
void IMoniker_Reduce_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_ComposeWith_Proxy(
|
|
IMoniker* This,
|
|
IMoniker *pmkRight,
|
|
WINBOOL fOnlyIfNotGeneric,
|
|
IMoniker **ppmkComposite);
|
|
void IMoniker_ComposeWith_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_Enum_Proxy(
|
|
IMoniker* This,
|
|
WINBOOL fForward,
|
|
IEnumMoniker **ppenumMoniker);
|
|
void IMoniker_Enum_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_IsEqual_Proxy(
|
|
IMoniker* This,
|
|
IMoniker *pmkOtherMoniker);
|
|
void IMoniker_IsEqual_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_Hash_Proxy(
|
|
IMoniker* This,
|
|
DWORD *pdwHash);
|
|
void IMoniker_Hash_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_IsRunning_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
IMoniker *pmkNewlyRunning);
|
|
void IMoniker_IsRunning_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_GetTimeOfLastChange_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
FILETIME *pFileTime);
|
|
void IMoniker_GetTimeOfLastChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_Inverse_Proxy(
|
|
IMoniker* This,
|
|
IMoniker **ppmk);
|
|
void IMoniker_Inverse_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_CommonPrefixWith_Proxy(
|
|
IMoniker* This,
|
|
IMoniker *pmkOther,
|
|
IMoniker **ppmkPrefix);
|
|
void IMoniker_CommonPrefixWith_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_RelativePathTo_Proxy(
|
|
IMoniker* This,
|
|
IMoniker *pmkOther,
|
|
IMoniker **ppmkRelPath);
|
|
void IMoniker_RelativePathTo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_GetDisplayName_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
LPOLESTR *ppszDisplayName);
|
|
void IMoniker_GetDisplayName_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_ParseDisplayName_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
LPOLESTR pszDisplayName,
|
|
ULONG *pchEaten,
|
|
IMoniker **ppmkOut);
|
|
void IMoniker_ParseDisplayName_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_IsSystemMoniker_Proxy(
|
|
IMoniker* This,
|
|
DWORD *pdwMksys);
|
|
void IMoniker_IsSystemMoniker_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IMoniker_BindToObject_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riidResult,
|
|
void **ppvResult);
|
|
HRESULT IMoniker_BindToObject_Stub(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riidResult,
|
|
IUnknown **ppvResult);
|
|
HRESULT IMoniker_BindToStorage_Proxy(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riid,
|
|
void **ppvObj);
|
|
HRESULT IMoniker_BindToStorage_Stub(
|
|
IMoniker* This,
|
|
IBindCtx *pbc,
|
|
IMoniker *pmkToLeft,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
extern const GUID IID_IROTData;
|
|
typedef struct IROTDataVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IROTData* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IROTData* This);
|
|
ULONG ( *Release)(
|
|
IROTData* This);
|
|
HRESULT ( *GetComparisonData)(
|
|
IROTData* This,
|
|
byte *pbData,
|
|
ULONG cbMax,
|
|
ULONG *pcbData);
|
|
|
|
} IROTDataVtbl;
|
|
struct IROTData {
|
|
IROTDataVtbl* lpVtbl;
|
|
};
|
|
HRESULT IROTData_GetComparisonData_Proxy(
|
|
IROTData* This,
|
|
byte *pbData,
|
|
ULONG cbMax,
|
|
ULONG *pcbData);
|
|
void IROTData_GetComparisonData_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IEnumSTATSTG *LPENUMSTATSTG;
|
|
extern const GUID IID_IEnumSTATSTG;
|
|
typedef struct IEnumSTATSTGVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumSTATSTG* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumSTATSTG* This);
|
|
ULONG ( *Release)(
|
|
IEnumSTATSTG* This);
|
|
HRESULT ( *Next)(
|
|
IEnumSTATSTG* This,
|
|
ULONG celt,
|
|
STATSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumSTATSTG* This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumSTATSTG* This);
|
|
HRESULT ( *Clone)(
|
|
IEnumSTATSTG* This,
|
|
IEnumSTATSTG **ppenum);
|
|
|
|
} IEnumSTATSTGVtbl;
|
|
struct IEnumSTATSTG {
|
|
IEnumSTATSTGVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumSTATSTG_RemoteNext_Proxy(
|
|
IEnumSTATSTG* This,
|
|
ULONG celt,
|
|
STATSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumSTATSTG_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATSTG_Skip_Proxy(
|
|
IEnumSTATSTG* This,
|
|
ULONG celt);
|
|
void IEnumSTATSTG_Skip_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATSTG_Reset_Proxy(
|
|
IEnumSTATSTG* This);
|
|
void IEnumSTATSTG_Reset_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATSTG_Clone_Proxy(
|
|
IEnumSTATSTG* This,
|
|
IEnumSTATSTG **ppenum);
|
|
void IEnumSTATSTG_Clone_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATSTG_Next_Proxy(
|
|
IEnumSTATSTG* This,
|
|
ULONG celt,
|
|
STATSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumSTATSTG_Next_Stub(
|
|
IEnumSTATSTG* This,
|
|
ULONG celt,
|
|
STATSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IStorage *LPSTORAGE;
|
|
typedef struct tagRemSNB {
|
|
ULONG ulCntStr;
|
|
ULONG ulCntChar;
|
|
OLECHAR rgString[1];
|
|
} RemSNB;
|
|
typedef RemSNB *wireSNB;
|
|
typedef LPOLESTR *SNB;
|
|
extern const GUID IID_IStorage;
|
|
typedef struct IStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IStorage* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IStorage* This);
|
|
ULONG ( *Release)(
|
|
IStorage* This);
|
|
HRESULT ( *CreateStream)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
DWORD grfMode,
|
|
DWORD reserved1,
|
|
DWORD reserved2,
|
|
IStream **ppstm);
|
|
HRESULT ( *OpenStream)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
void *reserved1,
|
|
DWORD grfMode,
|
|
DWORD reserved2,
|
|
IStream **ppstm);
|
|
HRESULT ( *CreateStorage)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
DWORD grfMode,
|
|
DWORD reserved1,
|
|
DWORD reserved2,
|
|
IStorage **ppstg);
|
|
HRESULT ( *OpenStorage)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
IStorage *pstgPriority,
|
|
DWORD grfMode,
|
|
SNB snbExclude,
|
|
DWORD reserved,
|
|
IStorage **ppstg);
|
|
HRESULT ( *CopyTo)(
|
|
IStorage* This,
|
|
DWORD ciidExclude,
|
|
const IID *rgiidExclude,
|
|
SNB snbExclude,
|
|
IStorage *pstgDest);
|
|
HRESULT ( *MoveElementTo)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
IStorage *pstgDest,
|
|
const OLECHAR *pwcsNewName,
|
|
DWORD grfFlags);
|
|
HRESULT ( *Commit)(
|
|
IStorage* This,
|
|
DWORD grfCommitFlags);
|
|
HRESULT ( *Revert)(
|
|
IStorage* This);
|
|
HRESULT ( *EnumElements)(
|
|
IStorage* This,
|
|
DWORD reserved1,
|
|
void *reserved2,
|
|
DWORD reserved3,
|
|
IEnumSTATSTG **ppenum);
|
|
HRESULT ( *DestroyElement)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName);
|
|
HRESULT ( *RenameElement)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsOldName,
|
|
const OLECHAR *pwcsNewName);
|
|
HRESULT ( *SetElementTimes)(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
const FILETIME *pctime,
|
|
const FILETIME *patime,
|
|
const FILETIME *pmtime);
|
|
HRESULT ( *SetClass)(
|
|
IStorage* This,
|
|
const IID *const clsid);
|
|
HRESULT ( *SetStateBits)(
|
|
IStorage* This,
|
|
DWORD grfStateBits,
|
|
DWORD grfMask);
|
|
HRESULT ( *Stat)(
|
|
IStorage* This,
|
|
STATSTG *pstatstg,
|
|
DWORD grfStatFlag);
|
|
|
|
} IStorageVtbl;
|
|
struct IStorage {
|
|
IStorageVtbl* lpVtbl;
|
|
};
|
|
HRESULT IStorage_CreateStream_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
DWORD grfMode,
|
|
DWORD reserved1,
|
|
DWORD reserved2,
|
|
IStream **ppstm);
|
|
void IStorage_CreateStream_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_RemoteOpenStream_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
ULONG cbReserved1,
|
|
byte *reserved1,
|
|
DWORD grfMode,
|
|
DWORD reserved2,
|
|
IStream **ppstm);
|
|
void IStorage_RemoteOpenStream_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_CreateStorage_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
DWORD grfMode,
|
|
DWORD reserved1,
|
|
DWORD reserved2,
|
|
IStorage **ppstg);
|
|
void IStorage_CreateStorage_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_OpenStorage_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
IStorage *pstgPriority,
|
|
DWORD grfMode,
|
|
SNB snbExclude,
|
|
DWORD reserved,
|
|
IStorage **ppstg);
|
|
void IStorage_OpenStorage_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_RemoteCopyTo_Proxy(
|
|
IStorage* This,
|
|
DWORD ciidExclude,
|
|
const IID *rgiidExclude,
|
|
SNB snbExclude,
|
|
IStorage *pstgDest);
|
|
void IStorage_RemoteCopyTo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_MoveElementTo_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
IStorage *pstgDest,
|
|
const OLECHAR *pwcsNewName,
|
|
DWORD grfFlags);
|
|
void IStorage_MoveElementTo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_Commit_Proxy(
|
|
IStorage* This,
|
|
DWORD grfCommitFlags);
|
|
void IStorage_Commit_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_Revert_Proxy(
|
|
IStorage* This);
|
|
void IStorage_Revert_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_RemoteEnumElements_Proxy(
|
|
IStorage* This,
|
|
DWORD reserved1,
|
|
ULONG cbReserved2,
|
|
byte *reserved2,
|
|
DWORD reserved3,
|
|
IEnumSTATSTG **ppenum);
|
|
void IStorage_RemoteEnumElements_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_DestroyElement_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName);
|
|
void IStorage_DestroyElement_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_RenameElement_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsOldName,
|
|
const OLECHAR *pwcsNewName);
|
|
void IStorage_RenameElement_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_SetElementTimes_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
const FILETIME *pctime,
|
|
const FILETIME *patime,
|
|
const FILETIME *pmtime);
|
|
void IStorage_SetElementTimes_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_SetClass_Proxy(
|
|
IStorage* This,
|
|
const IID *const clsid);
|
|
void IStorage_SetClass_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_SetStateBits_Proxy(
|
|
IStorage* This,
|
|
DWORD grfStateBits,
|
|
DWORD grfMask);
|
|
void IStorage_SetStateBits_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_Stat_Proxy(
|
|
IStorage* This,
|
|
STATSTG *pstatstg,
|
|
DWORD grfStatFlag);
|
|
void IStorage_Stat_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IStorage_OpenStream_Proxy(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
void *reserved1,
|
|
DWORD grfMode,
|
|
DWORD reserved2,
|
|
IStream **ppstm);
|
|
HRESULT IStorage_OpenStream_Stub(
|
|
IStorage* This,
|
|
const OLECHAR *pwcsName,
|
|
ULONG cbReserved1,
|
|
byte *reserved1,
|
|
DWORD grfMode,
|
|
DWORD reserved2,
|
|
IStream **ppstm);
|
|
HRESULT IStorage_CopyTo_Proxy(
|
|
IStorage* This,
|
|
DWORD ciidExclude,
|
|
const IID *rgiidExclude,
|
|
SNB snbExclude,
|
|
IStorage *pstgDest);
|
|
HRESULT IStorage_CopyTo_Stub(
|
|
IStorage* This,
|
|
DWORD ciidExclude,
|
|
const IID *rgiidExclude,
|
|
SNB snbExclude,
|
|
IStorage *pstgDest);
|
|
HRESULT IStorage_EnumElements_Proxy(
|
|
IStorage* This,
|
|
DWORD reserved1,
|
|
void *reserved2,
|
|
DWORD reserved3,
|
|
IEnumSTATSTG **ppenum);
|
|
HRESULT IStorage_EnumElements_Stub(
|
|
IStorage* This,
|
|
DWORD reserved1,
|
|
ULONG cbReserved2,
|
|
byte *reserved2,
|
|
DWORD reserved3,
|
|
IEnumSTATSTG **ppenum);
|
|
typedef IPersistFile *LPPERSISTFILE;
|
|
extern const GUID IID_IPersistFile;
|
|
typedef struct IPersistFileVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistFile* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistFile* This);
|
|
ULONG ( *Release)(
|
|
IPersistFile* This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistFile* This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistFile* This);
|
|
HRESULT ( *Load)(
|
|
IPersistFile* This,
|
|
LPCOLESTR pszFileName,
|
|
DWORD dwMode);
|
|
HRESULT ( *Save)(
|
|
IPersistFile* This,
|
|
LPCOLESTR pszFileName,
|
|
WINBOOL fRemember);
|
|
HRESULT ( *SaveCompleted)(
|
|
IPersistFile* This,
|
|
LPCOLESTR pszFileName);
|
|
HRESULT ( *GetCurFile)(
|
|
IPersistFile* This,
|
|
LPOLESTR *ppszFileName);
|
|
|
|
} IPersistFileVtbl;
|
|
struct IPersistFile {
|
|
IPersistFileVtbl* lpVtbl;
|
|
};
|
|
HRESULT IPersistFile_IsDirty_Proxy(
|
|
IPersistFile* This);
|
|
void IPersistFile_IsDirty_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistFile_Load_Proxy(
|
|
IPersistFile* This,
|
|
LPCOLESTR pszFileName,
|
|
DWORD dwMode);
|
|
void IPersistFile_Load_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistFile_Save_Proxy(
|
|
IPersistFile* This,
|
|
LPCOLESTR pszFileName,
|
|
WINBOOL fRemember);
|
|
void IPersistFile_Save_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistFile_SaveCompleted_Proxy(
|
|
IPersistFile* This,
|
|
LPCOLESTR pszFileName);
|
|
void IPersistFile_SaveCompleted_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistFile_GetCurFile_Proxy(
|
|
IPersistFile* This,
|
|
LPOLESTR *ppszFileName);
|
|
void IPersistFile_GetCurFile_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IPersistStorage *LPPERSISTSTORAGE;
|
|
extern const GUID IID_IPersistStorage;
|
|
typedef struct IPersistStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistStorage* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistStorage* This);
|
|
ULONG ( *Release)(
|
|
IPersistStorage* This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistStorage* This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistStorage* This);
|
|
HRESULT ( *InitNew)(
|
|
IPersistStorage* This,
|
|
IStorage *pStg);
|
|
HRESULT ( *Load)(
|
|
IPersistStorage* This,
|
|
IStorage *pStg);
|
|
HRESULT ( *Save)(
|
|
IPersistStorage* This,
|
|
IStorage *pStgSave,
|
|
WINBOOL fSameAsLoad);
|
|
HRESULT ( *SaveCompleted)(
|
|
IPersistStorage* This,
|
|
IStorage *pStgNew);
|
|
HRESULT ( *HandsOffStorage)(
|
|
IPersistStorage* This);
|
|
|
|
} IPersistStorageVtbl;
|
|
struct IPersistStorage {
|
|
IPersistStorageVtbl* lpVtbl;
|
|
};
|
|
HRESULT IPersistStorage_IsDirty_Proxy(
|
|
IPersistStorage* This);
|
|
void IPersistStorage_IsDirty_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStorage_InitNew_Proxy(
|
|
IPersistStorage* This,
|
|
IStorage *pStg);
|
|
void IPersistStorage_InitNew_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStorage_Load_Proxy(
|
|
IPersistStorage* This,
|
|
IStorage *pStg);
|
|
void IPersistStorage_Load_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStorage_Save_Proxy(
|
|
IPersistStorage* This,
|
|
IStorage *pStgSave,
|
|
WINBOOL fSameAsLoad);
|
|
void IPersistStorage_Save_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStorage_SaveCompleted_Proxy(
|
|
IPersistStorage* This,
|
|
IStorage *pStgNew);
|
|
void IPersistStorage_SaveCompleted_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistStorage_HandsOffStorage_Proxy(
|
|
IPersistStorage* This);
|
|
void IPersistStorage_HandsOffStorage_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef ILockBytes *LPLOCKBYTES;
|
|
extern const GUID IID_ILockBytes;
|
|
typedef struct ILockBytesVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ILockBytes* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ILockBytes* This);
|
|
ULONG ( *Release)(
|
|
ILockBytes* This);
|
|
HRESULT ( *ReadAt)(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ( *WriteAt)(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ( *Flush)(
|
|
ILockBytes* This);
|
|
HRESULT ( *SetSize)(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER cb);
|
|
HRESULT ( *LockRegion)(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
HRESULT ( *UnlockRegion)(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
HRESULT ( *Stat)(
|
|
ILockBytes* This,
|
|
STATSTG *pstatstg,
|
|
DWORD grfStatFlag);
|
|
|
|
} ILockBytesVtbl;
|
|
struct ILockBytes {
|
|
ILockBytesVtbl* lpVtbl;
|
|
};
|
|
HRESULT ILockBytes_RemoteReadAt_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
void ILockBytes_RemoteReadAt_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_RemoteWriteAt_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
void ILockBytes_RemoteWriteAt_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_Flush_Proxy(
|
|
ILockBytes* This);
|
|
void ILockBytes_Flush_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_SetSize_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER cb);
|
|
void ILockBytes_SetSize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_LockRegion_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
void ILockBytes_LockRegion_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_UnlockRegion_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER libOffset,
|
|
ULARGE_INTEGER cb,
|
|
DWORD dwLockType);
|
|
void ILockBytes_UnlockRegion_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_Stat_Proxy(
|
|
ILockBytes* This,
|
|
STATSTG *pstatstg,
|
|
DWORD grfStatFlag);
|
|
void ILockBytes_Stat_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILockBytes_ReadAt_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ILockBytes_ReadAt_Stub(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ILockBytes_WriteAt_Proxy(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ILockBytes_WriteAt_Stub(
|
|
ILockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
typedef IEnumFORMATETC *LPENUMFORMATETC;
|
|
typedef struct tagDVTARGETDEVICE {
|
|
DWORD tdSize;
|
|
WORD tdDriverNameOffset;
|
|
WORD tdDeviceNameOffset;
|
|
WORD tdPortNameOffset;
|
|
WORD tdExtDevmodeOffset;
|
|
BYTE tdData[1];
|
|
} DVTARGETDEVICE;
|
|
typedef CLIPFORMAT *LPCLIPFORMAT;
|
|
typedef struct tagFORMATETC {
|
|
CLIPFORMAT cfFormat;
|
|
DVTARGETDEVICE *ptd;
|
|
DWORD dwAspect;
|
|
LONG lindex;
|
|
DWORD tymed;
|
|
} FORMATETC;
|
|
typedef struct tagFORMATETC *LPFORMATETC;
|
|
extern const GUID IID_IEnumFORMATETC;
|
|
typedef struct IEnumFORMATETCVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumFORMATETC* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumFORMATETC* This);
|
|
ULONG ( *Release)(
|
|
IEnumFORMATETC* This);
|
|
HRESULT ( *Next)(
|
|
IEnumFORMATETC* This,
|
|
ULONG celt,
|
|
FORMATETC *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumFORMATETC* This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumFORMATETC* This);
|
|
HRESULT ( *Clone)(
|
|
IEnumFORMATETC* This,
|
|
IEnumFORMATETC **ppenum);
|
|
|
|
} IEnumFORMATETCVtbl;
|
|
struct IEnumFORMATETC {
|
|
IEnumFORMATETCVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumFORMATETC_RemoteNext_Proxy(
|
|
IEnumFORMATETC* This,
|
|
ULONG celt,
|
|
FORMATETC *rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumFORMATETC_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumFORMATETC_Skip_Proxy(
|
|
IEnumFORMATETC* This,
|
|
ULONG celt);
|
|
void IEnumFORMATETC_Skip_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumFORMATETC_Reset_Proxy(
|
|
IEnumFORMATETC* This);
|
|
void IEnumFORMATETC_Reset_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumFORMATETC_Clone_Proxy(
|
|
IEnumFORMATETC* This,
|
|
IEnumFORMATETC **ppenum);
|
|
void IEnumFORMATETC_Clone_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumFORMATETC_Next_Proxy(
|
|
IEnumFORMATETC* This,
|
|
ULONG celt,
|
|
FORMATETC *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumFORMATETC_Next_Stub(
|
|
IEnumFORMATETC* This,
|
|
ULONG celt,
|
|
FORMATETC *rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IEnumSTATDATA *LPENUMSTATDATA;
|
|
typedef enum tagADVF {
|
|
ADVF_NODATA = 1,
|
|
ADVF_PRIMEFIRST = 2,
|
|
ADVF_ONLYONCE = 4,
|
|
ADVF_DATAONSTOP = 64,
|
|
ADVFCACHE_NOHANDLER = 8,
|
|
ADVFCACHE_FORCEBUILTIN = 16,
|
|
ADVFCACHE_ONSAVE = 32
|
|
} ADVF;
|
|
typedef struct tagSTATDATA {
|
|
FORMATETC formatetc;
|
|
DWORD advf;
|
|
IAdviseSink *pAdvSink;
|
|
DWORD dwConnection;
|
|
} STATDATA;
|
|
typedef STATDATA *LPSTATDATA;
|
|
extern const GUID IID_IEnumSTATDATA;
|
|
typedef struct IEnumSTATDATAVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumSTATDATA* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumSTATDATA* This);
|
|
ULONG ( *Release)(
|
|
IEnumSTATDATA* This);
|
|
HRESULT ( *Next)(
|
|
IEnumSTATDATA* This,
|
|
ULONG celt,
|
|
STATDATA *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumSTATDATA* This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumSTATDATA* This);
|
|
HRESULT ( *Clone)(
|
|
IEnumSTATDATA* This,
|
|
IEnumSTATDATA **ppenum);
|
|
|
|
} IEnumSTATDATAVtbl;
|
|
struct IEnumSTATDATA {
|
|
IEnumSTATDATAVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumSTATDATA_RemoteNext_Proxy(
|
|
IEnumSTATDATA* This,
|
|
ULONG celt,
|
|
STATDATA *rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumSTATDATA_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATDATA_Skip_Proxy(
|
|
IEnumSTATDATA* This,
|
|
ULONG celt);
|
|
void IEnumSTATDATA_Skip_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATDATA_Reset_Proxy(
|
|
IEnumSTATDATA* This);
|
|
void IEnumSTATDATA_Reset_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATDATA_Clone_Proxy(
|
|
IEnumSTATDATA* This,
|
|
IEnumSTATDATA **ppenum);
|
|
void IEnumSTATDATA_Clone_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATDATA_Next_Proxy(
|
|
IEnumSTATDATA* This,
|
|
ULONG celt,
|
|
STATDATA *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumSTATDATA_Next_Stub(
|
|
IEnumSTATDATA* This,
|
|
ULONG celt,
|
|
STATDATA *rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IRootStorage *LPROOTSTORAGE;
|
|
extern const GUID IID_IRootStorage;
|
|
typedef struct IRootStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRootStorage* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRootStorage* This);
|
|
ULONG ( *Release)(
|
|
IRootStorage* This);
|
|
HRESULT ( *SwitchToFile)(
|
|
IRootStorage* This,
|
|
LPOLESTR pszFile);
|
|
|
|
} IRootStorageVtbl;
|
|
struct IRootStorage {
|
|
IRootStorageVtbl* lpVtbl;
|
|
};
|
|
HRESULT IRootStorage_SwitchToFile_Proxy(
|
|
IRootStorage* This,
|
|
LPOLESTR pszFile);
|
|
void IRootStorage_SwitchToFile_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IAdviseSink *LPADVISESINK;
|
|
typedef enum tagTYMED {
|
|
TYMED_HGLOBAL = 1,
|
|
TYMED_FILE = 2,
|
|
TYMED_ISTREAM = 4,
|
|
TYMED_ISTORAGE = 8,
|
|
TYMED_GDI = 16,
|
|
TYMED_MFPICT = 32,
|
|
TYMED_ENHMF = 64,
|
|
TYMED_NULL = 0
|
|
} TYMED;
|
|
typedef struct tagRemSTGMEDIUM {
|
|
DWORD tymed;
|
|
DWORD dwHandleType;
|
|
ULONG pData;
|
|
ULONG pUnkForRelease;
|
|
ULONG cbData;
|
|
byte data[1];
|
|
} RemSTGMEDIUM;
|
|
typedef struct tagSTGMEDIUM {
|
|
DWORD tymed;
|
|
__extension__ union {
|
|
HBITMAP hBitmap;
|
|
HMETAFILEPICT hMetaFilePict;
|
|
HENHMETAFILE hEnhMetaFile;
|
|
HGLOBAL hGlobal;
|
|
LPOLESTR lpszFileName;
|
|
IStream *pstm;
|
|
IStorage *pstg;
|
|
} ;
|
|
IUnknown *pUnkForRelease;
|
|
} uSTGMEDIUM;
|
|
typedef struct _GDI_OBJECT {
|
|
DWORD ObjectType;
|
|
union {
|
|
wireHBITMAP hBitmap;
|
|
wireHPALETTE hPalette;
|
|
wireHGLOBAL hGeneric;
|
|
} u;
|
|
} GDI_OBJECT;
|
|
typedef struct _userSTGMEDIUM {
|
|
__extension__ struct _STGMEDIUM_UNION {
|
|
DWORD tymed;
|
|
union {
|
|
wireHMETAFILEPICT hMetaFilePict;
|
|
wireHENHMETAFILE hHEnhMetaFile;
|
|
GDI_OBJECT *hGdiHandle;
|
|
wireHGLOBAL hGlobal;
|
|
LPOLESTR lpszFileName;
|
|
BYTE_BLOB *pstm;
|
|
BYTE_BLOB *pstg;
|
|
} u;
|
|
} ;
|
|
IUnknown *pUnkForRelease;
|
|
} userSTGMEDIUM;
|
|
typedef userSTGMEDIUM *wireSTGMEDIUM;
|
|
typedef uSTGMEDIUM STGMEDIUM;
|
|
typedef userSTGMEDIUM *wireASYNC_STGMEDIUM;
|
|
typedef STGMEDIUM ASYNC_STGMEDIUM;
|
|
typedef STGMEDIUM *LPSTGMEDIUM;
|
|
typedef struct _userFLAG_STGMEDIUM {
|
|
LONG ContextFlags;
|
|
LONG fPassOwnership;
|
|
userSTGMEDIUM Stgmed;
|
|
} userFLAG_STGMEDIUM;
|
|
typedef userFLAG_STGMEDIUM *wireFLAG_STGMEDIUM;
|
|
typedef struct _FLAG_STGMEDIUM {
|
|
LONG ContextFlags;
|
|
LONG fPassOwnership;
|
|
STGMEDIUM Stgmed;
|
|
} FLAG_STGMEDIUM;
|
|
extern const GUID IID_IAdviseSink;
|
|
typedef struct IAdviseSinkVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAdviseSink* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAdviseSink* This);
|
|
ULONG ( *Release)(
|
|
IAdviseSink* This);
|
|
void ( *OnDataChange)(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
void ( *OnViewChange)(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void ( *OnRename)(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void ( *OnSave)(
|
|
IAdviseSink* This);
|
|
void ( *OnClose)(
|
|
IAdviseSink* This);
|
|
|
|
} IAdviseSinkVtbl;
|
|
struct IAdviseSink {
|
|
IAdviseSinkVtbl* lpVtbl;
|
|
};
|
|
HRESULT IAdviseSink_RemoteOnDataChange_Proxy(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
ASYNC_STGMEDIUM *pStgmed);
|
|
void IAdviseSink_RemoteOnDataChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IAdviseSink_RemoteOnViewChange_Proxy(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void IAdviseSink_RemoteOnViewChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IAdviseSink_RemoteOnRename_Proxy(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void IAdviseSink_RemoteOnRename_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IAdviseSink_RemoteOnSave_Proxy(
|
|
IAdviseSink* This);
|
|
void IAdviseSink_RemoteOnSave_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IAdviseSink_RemoteOnClose_Proxy(
|
|
IAdviseSink* This);
|
|
void IAdviseSink_RemoteOnClose_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void IAdviseSink_OnDataChange_Proxy(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
HRESULT IAdviseSink_OnDataChange_Stub(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
ASYNC_STGMEDIUM *pStgmed);
|
|
void IAdviseSink_OnViewChange_Proxy(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
HRESULT IAdviseSink_OnViewChange_Stub(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void IAdviseSink_OnRename_Proxy(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
HRESULT IAdviseSink_OnRename_Stub(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void IAdviseSink_OnSave_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT IAdviseSink_OnSave_Stub(
|
|
IAdviseSink* This);
|
|
void IAdviseSink_OnClose_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT IAdviseSink_OnClose_Stub(
|
|
IAdviseSink* This);
|
|
extern const GUID IID_AsyncIAdviseSink;
|
|
typedef struct AsyncIAdviseSinkVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
AsyncIAdviseSink* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
AsyncIAdviseSink* This);
|
|
ULONG ( *Release)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Begin_OnDataChange)(
|
|
AsyncIAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
void ( *Finish_OnDataChange)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Begin_OnViewChange)(
|
|
AsyncIAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void ( *Finish_OnViewChange)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Begin_OnRename)(
|
|
AsyncIAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void ( *Finish_OnRename)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Begin_OnSave)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Finish_OnSave)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Begin_OnClose)(
|
|
AsyncIAdviseSink* This);
|
|
void ( *Finish_OnClose)(
|
|
AsyncIAdviseSink* This);
|
|
|
|
} AsyncIAdviseSinkVtbl;
|
|
struct AsyncIAdviseSink {
|
|
AsyncIAdviseSinkVtbl* lpVtbl;
|
|
};
|
|
HRESULT AsyncIAdviseSink_Begin_RemoteOnDataChange_Proxy(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
ASYNC_STGMEDIUM *pStgmed);
|
|
void AsyncIAdviseSink_Begin_RemoteOnDataChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Finish_RemoteOnDataChange_Proxy(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
ASYNC_STGMEDIUM *pStgmed);
|
|
void AsyncIAdviseSink_Finish_RemoteOnDataChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Begin_RemoteOnViewChange_Proxy(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void AsyncIAdviseSink_Begin_RemoteOnViewChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Finish_RemoteOnViewChange_Proxy(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void AsyncIAdviseSink_Finish_RemoteOnViewChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Begin_RemoteOnRename_Proxy(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink_Begin_RemoteOnRename_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Finish_RemoteOnRename_Proxy(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink_Finish_RemoteOnRename_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Begin_RemoteOnSave_Proxy(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Begin_RemoteOnSave_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Finish_RemoteOnSave_Proxy(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Finish_RemoteOnSave_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Begin_RemoteOnClose_Proxy(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Begin_RemoteOnClose_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink_Finish_RemoteOnClose_Proxy(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Finish_RemoteOnClose_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void AsyncIAdviseSink_Begin_OnDataChange_Proxy(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
HRESULT AsyncIAdviseSink_Begin_OnDataChange_Stub(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
ASYNC_STGMEDIUM *pStgmed);
|
|
void AsyncIAdviseSink_Finish_OnDataChange_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Finish_OnDataChange_Stub(
|
|
IAdviseSink* This,
|
|
FORMATETC *pFormatetc,
|
|
ASYNC_STGMEDIUM *pStgmed);
|
|
void AsyncIAdviseSink_Begin_OnViewChange_Proxy(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
HRESULT AsyncIAdviseSink_Begin_OnViewChange_Stub(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void AsyncIAdviseSink_Finish_OnViewChange_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Finish_OnViewChange_Stub(
|
|
IAdviseSink* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void AsyncIAdviseSink_Begin_OnRename_Proxy(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
HRESULT AsyncIAdviseSink_Begin_OnRename_Stub(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink_Finish_OnRename_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Finish_OnRename_Stub(
|
|
IAdviseSink* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink_Begin_OnSave_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Begin_OnSave_Stub(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Finish_OnSave_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Finish_OnSave_Stub(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Begin_OnClose_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Begin_OnClose_Stub(
|
|
IAdviseSink* This);
|
|
void AsyncIAdviseSink_Finish_OnClose_Proxy(
|
|
IAdviseSink* This);
|
|
HRESULT AsyncIAdviseSink_Finish_OnClose_Stub(
|
|
IAdviseSink* This);
|
|
typedef IAdviseSink2 *LPADVISESINK2;
|
|
extern const GUID IID_IAdviseSink2;
|
|
typedef struct IAdviseSink2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAdviseSink2* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAdviseSink2* This);
|
|
ULONG ( *Release)(
|
|
IAdviseSink2* This);
|
|
void ( *OnDataChange)(
|
|
IAdviseSink2* This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
void ( *OnViewChange)(
|
|
IAdviseSink2* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void ( *OnRename)(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void ( *OnSave)(
|
|
IAdviseSink2* This);
|
|
void ( *OnClose)(
|
|
IAdviseSink2* This);
|
|
void ( *OnLinkSrcChange)(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
|
|
} IAdviseSink2Vtbl;
|
|
struct IAdviseSink2 {
|
|
IAdviseSink2Vtbl* lpVtbl;
|
|
};
|
|
HRESULT IAdviseSink2_RemoteOnLinkSrcChange_Proxy(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void IAdviseSink2_RemoteOnLinkSrcChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void IAdviseSink2_OnLinkSrcChange_Proxy(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
HRESULT IAdviseSink2_OnLinkSrcChange_Stub(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
extern const GUID IID_AsyncIAdviseSink2;
|
|
typedef struct AsyncIAdviseSink2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
AsyncIAdviseSink2* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
AsyncIAdviseSink2* This);
|
|
ULONG ( *Release)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Begin_OnDataChange)(
|
|
AsyncIAdviseSink2* This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
void ( *Finish_OnDataChange)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Begin_OnViewChange)(
|
|
AsyncIAdviseSink2* This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void ( *Finish_OnViewChange)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Begin_OnRename)(
|
|
AsyncIAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void ( *Finish_OnRename)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Begin_OnSave)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Finish_OnSave)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Begin_OnClose)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Finish_OnClose)(
|
|
AsyncIAdviseSink2* This);
|
|
void ( *Begin_OnLinkSrcChange)(
|
|
AsyncIAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void ( *Finish_OnLinkSrcChange)(
|
|
AsyncIAdviseSink2* This);
|
|
|
|
} AsyncIAdviseSink2Vtbl;
|
|
struct AsyncIAdviseSink2 {
|
|
AsyncIAdviseSink2Vtbl* lpVtbl;
|
|
};
|
|
HRESULT AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Proxy(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Proxy(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void AsyncIAdviseSink2_Begin_OnLinkSrcChange_Proxy(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
HRESULT AsyncIAdviseSink2_Begin_OnLinkSrcChange_Stub(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
void AsyncIAdviseSink2_Finish_OnLinkSrcChange_Proxy(
|
|
IAdviseSink2* This);
|
|
HRESULT AsyncIAdviseSink2_Finish_OnLinkSrcChange_Stub(
|
|
IAdviseSink2* This,
|
|
IMoniker *pmk);
|
|
typedef IDataObject *LPDATAOBJECT;
|
|
typedef enum tagDATADIR {
|
|
DATADIR_GET = 1,
|
|
DATADIR_SET = 2
|
|
} DATADIR;
|
|
extern const GUID IID_IDataObject;
|
|
typedef struct IDataObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDataObject* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDataObject* This);
|
|
ULONG ( *Release)(
|
|
IDataObject* This);
|
|
HRESULT ( *GetData)(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetcIn,
|
|
STGMEDIUM *pmedium);
|
|
HRESULT ( *GetDataHere)(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pmedium);
|
|
HRESULT ( *QueryGetData)(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc);
|
|
HRESULT ( *GetCanonicalFormatEtc)(
|
|
IDataObject* This,
|
|
FORMATETC *pformatectIn,
|
|
FORMATETC *pformatetcOut);
|
|
HRESULT ( *SetData)(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pmedium,
|
|
WINBOOL fRelease);
|
|
HRESULT ( *EnumFormatEtc)(
|
|
IDataObject* This,
|
|
DWORD dwDirection,
|
|
IEnumFORMATETC **ppenumFormatEtc);
|
|
HRESULT ( *DAdvise)(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvSink,
|
|
DWORD *pdwConnection);
|
|
HRESULT ( *DUnadvise)(
|
|
IDataObject* This,
|
|
DWORD dwConnection);
|
|
HRESULT ( *EnumDAdvise)(
|
|
IDataObject* This,
|
|
IEnumSTATDATA **ppenumAdvise);
|
|
|
|
} IDataObjectVtbl;
|
|
struct IDataObject {
|
|
IDataObjectVtbl* lpVtbl;
|
|
};
|
|
HRESULT IDataObject_RemoteGetData_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetcIn,
|
|
STGMEDIUM *pRemoteMedium);
|
|
void IDataObject_RemoteGetData_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_RemoteGetDataHere_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pRemoteMedium);
|
|
void IDataObject_RemoteGetDataHere_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_QueryGetData_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc);
|
|
void IDataObject_QueryGetData_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_GetCanonicalFormatEtc_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatectIn,
|
|
FORMATETC *pformatetcOut);
|
|
void IDataObject_GetCanonicalFormatEtc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_RemoteSetData_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
FLAG_STGMEDIUM *pmedium,
|
|
WINBOOL fRelease);
|
|
void IDataObject_RemoteSetData_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_EnumFormatEtc_Proxy(
|
|
IDataObject* This,
|
|
DWORD dwDirection,
|
|
IEnumFORMATETC **ppenumFormatEtc);
|
|
void IDataObject_EnumFormatEtc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_DAdvise_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvSink,
|
|
DWORD *pdwConnection);
|
|
void IDataObject_DAdvise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_DUnadvise_Proxy(
|
|
IDataObject* This,
|
|
DWORD dwConnection);
|
|
void IDataObject_DUnadvise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_EnumDAdvise_Proxy(
|
|
IDataObject* This,
|
|
IEnumSTATDATA **ppenumAdvise);
|
|
void IDataObject_EnumDAdvise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataObject_GetData_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetcIn,
|
|
STGMEDIUM *pmedium);
|
|
HRESULT IDataObject_GetData_Stub(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetcIn,
|
|
STGMEDIUM *pRemoteMedium);
|
|
HRESULT IDataObject_GetDataHere_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pmedium);
|
|
HRESULT IDataObject_GetDataHere_Stub(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pRemoteMedium);
|
|
HRESULT IDataObject_SetData_Proxy(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pmedium,
|
|
WINBOOL fRelease);
|
|
HRESULT IDataObject_SetData_Stub(
|
|
IDataObject* This,
|
|
FORMATETC *pformatetc,
|
|
FLAG_STGMEDIUM *pmedium,
|
|
WINBOOL fRelease);
|
|
typedef IDataAdviseHolder *LPDATAADVISEHOLDER;
|
|
extern const GUID IID_IDataAdviseHolder;
|
|
typedef struct IDataAdviseHolderVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDataAdviseHolder* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDataAdviseHolder* This);
|
|
ULONG ( *Release)(
|
|
IDataAdviseHolder* This);
|
|
HRESULT ( *Advise)(
|
|
IDataAdviseHolder* This,
|
|
IDataObject *pDataObject,
|
|
FORMATETC *pFetc,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvise,
|
|
DWORD *pdwConnection);
|
|
HRESULT ( *Unadvise)(
|
|
IDataAdviseHolder* This,
|
|
DWORD dwConnection);
|
|
HRESULT ( *EnumAdvise)(
|
|
IDataAdviseHolder* This,
|
|
IEnumSTATDATA **ppenumAdvise);
|
|
HRESULT ( *SendOnDataChange)(
|
|
IDataAdviseHolder* This,
|
|
IDataObject *pDataObject,
|
|
DWORD dwReserved,
|
|
DWORD advf);
|
|
|
|
} IDataAdviseHolderVtbl;
|
|
struct IDataAdviseHolder {
|
|
IDataAdviseHolderVtbl* lpVtbl;
|
|
};
|
|
HRESULT IDataAdviseHolder_Advise_Proxy(
|
|
IDataAdviseHolder* This,
|
|
IDataObject *pDataObject,
|
|
FORMATETC *pFetc,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvise,
|
|
DWORD *pdwConnection);
|
|
void IDataAdviseHolder_Advise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataAdviseHolder_Unadvise_Proxy(
|
|
IDataAdviseHolder* This,
|
|
DWORD dwConnection);
|
|
void IDataAdviseHolder_Unadvise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataAdviseHolder_EnumAdvise_Proxy(
|
|
IDataAdviseHolder* This,
|
|
IEnumSTATDATA **ppenumAdvise);
|
|
void IDataAdviseHolder_EnumAdvise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDataAdviseHolder_SendOnDataChange_Proxy(
|
|
IDataAdviseHolder* This,
|
|
IDataObject *pDataObject,
|
|
DWORD dwReserved,
|
|
DWORD advf);
|
|
void IDataAdviseHolder_SendOnDataChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IMessageFilter *LPMESSAGEFILTER;
|
|
typedef enum tagCALLTYPE {
|
|
CALLTYPE_TOPLEVEL = 1,
|
|
CALLTYPE_NESTED = 2,
|
|
CALLTYPE_ASYNC = 3,
|
|
CALLTYPE_TOPLEVEL_CALLPENDING = 4,
|
|
CALLTYPE_ASYNC_CALLPENDING = 5
|
|
} CALLTYPE;
|
|
typedef enum tagSERVERCALL {
|
|
SERVERCALL_ISHANDLED = 0,
|
|
SERVERCALL_REJECTED = 1,
|
|
SERVERCALL_RETRYLATER = 2
|
|
} SERVERCALL;
|
|
typedef enum tagPENDINGTYPE {
|
|
PENDINGTYPE_TOPLEVEL = 1,
|
|
PENDINGTYPE_NESTED = 2
|
|
} PENDINGTYPE;
|
|
typedef enum tagPENDINGMSG {
|
|
PENDINGMSG_CANCELCALL = 0,
|
|
PENDINGMSG_WAITNOPROCESS = 1,
|
|
PENDINGMSG_WAITDEFPROCESS = 2
|
|
} PENDINGMSG;
|
|
typedef struct tagINTERFACEINFO {
|
|
IUnknown *pUnk;
|
|
IID iid;
|
|
WORD wMethod;
|
|
} INTERFACEINFO;
|
|
typedef struct tagINTERFACEINFO *LPINTERFACEINFO;
|
|
extern const GUID IID_IMessageFilter;
|
|
typedef struct IMessageFilterVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMessageFilter* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMessageFilter* This);
|
|
ULONG ( *Release)(
|
|
IMessageFilter* This);
|
|
DWORD ( *HandleInComingCall)(
|
|
IMessageFilter* This,
|
|
DWORD dwCallType,
|
|
HTASK htaskCaller,
|
|
DWORD dwTickCount,
|
|
LPINTERFACEINFO lpInterfaceInfo);
|
|
DWORD ( *RetryRejectedCall)(
|
|
IMessageFilter* This,
|
|
HTASK htaskCallee,
|
|
DWORD dwTickCount,
|
|
DWORD dwRejectType);
|
|
DWORD ( *MessagePending)(
|
|
IMessageFilter* This,
|
|
HTASK htaskCallee,
|
|
DWORD dwTickCount,
|
|
DWORD dwPendingType);
|
|
|
|
} IMessageFilterVtbl;
|
|
struct IMessageFilter {
|
|
IMessageFilterVtbl* lpVtbl;
|
|
};
|
|
DWORD IMessageFilter_HandleInComingCall_Proxy(
|
|
IMessageFilter* This,
|
|
DWORD dwCallType,
|
|
HTASK htaskCaller,
|
|
DWORD dwTickCount,
|
|
LPINTERFACEINFO lpInterfaceInfo);
|
|
void IMessageFilter_HandleInComingCall_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
DWORD IMessageFilter_RetryRejectedCall_Proxy(
|
|
IMessageFilter* This,
|
|
HTASK htaskCallee,
|
|
DWORD dwTickCount,
|
|
DWORD dwRejectType);
|
|
void IMessageFilter_RetryRejectedCall_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
DWORD IMessageFilter_MessagePending_Proxy(
|
|
IMessageFilter* This,
|
|
HTASK htaskCallee,
|
|
DWORD dwTickCount,
|
|
DWORD dwPendingType);
|
|
void IMessageFilter_MessagePending_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const FMTID FMTID_SummaryInformation;
|
|
extern const FMTID FMTID_DocSummaryInformation;
|
|
extern const FMTID FMTID_UserDefinedProperties;
|
|
extern const FMTID FMTID_DiscardableInformation;
|
|
extern const FMTID FMTID_ImageSummaryInformation;
|
|
extern const FMTID FMTID_AudioSummaryInformation;
|
|
extern const FMTID FMTID_VideoSummaryInformation;
|
|
extern const FMTID FMTID_MediaFileSummaryInformation;
|
|
extern const GUID IID_IClassActivator;
|
|
typedef struct IClassActivatorVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IClassActivator* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IClassActivator* This);
|
|
ULONG ( *Release)(
|
|
IClassActivator* This);
|
|
HRESULT ( *GetClassObject)(
|
|
IClassActivator* This,
|
|
const IID *const rclsid,
|
|
DWORD dwClassContext,
|
|
LCID locale,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
|
|
} IClassActivatorVtbl;
|
|
struct IClassActivator {
|
|
IClassActivatorVtbl* lpVtbl;
|
|
};
|
|
HRESULT IClassActivator_GetClassObject_Proxy(
|
|
IClassActivator* This,
|
|
const IID *const rclsid,
|
|
DWORD dwClassContext,
|
|
LCID locale,
|
|
const IID *const riid,
|
|
void **ppv);
|
|
void IClassActivator_GetClassObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IFillLockBytes;
|
|
typedef struct IFillLockBytesVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IFillLockBytes* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IFillLockBytes* This);
|
|
ULONG ( *Release)(
|
|
IFillLockBytes* This);
|
|
HRESULT ( *FillAppend)(
|
|
IFillLockBytes* This,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ( *FillAt)(
|
|
IFillLockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT ( *SetFillSize)(
|
|
IFillLockBytes* This,
|
|
ULARGE_INTEGER ulSize);
|
|
HRESULT ( *Terminate)(
|
|
IFillLockBytes* This,
|
|
WINBOOL bCanceled);
|
|
|
|
} IFillLockBytesVtbl;
|
|
struct IFillLockBytes {
|
|
IFillLockBytesVtbl* lpVtbl;
|
|
};
|
|
HRESULT IFillLockBytes_RemoteFillAppend_Proxy(
|
|
IFillLockBytes* This,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
void IFillLockBytes_RemoteFillAppend_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IFillLockBytes_RemoteFillAt_Proxy(
|
|
IFillLockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
void IFillLockBytes_RemoteFillAt_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IFillLockBytes_SetFillSize_Proxy(
|
|
IFillLockBytes* This,
|
|
ULARGE_INTEGER ulSize);
|
|
void IFillLockBytes_SetFillSize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IFillLockBytes_Terminate_Proxy(
|
|
IFillLockBytes* This,
|
|
WINBOOL bCanceled);
|
|
void IFillLockBytes_Terminate_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IFillLockBytes_FillAppend_Proxy(
|
|
IFillLockBytes* This,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT IFillLockBytes_FillAppend_Stub(
|
|
IFillLockBytes* This,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT IFillLockBytes_FillAt_Proxy(
|
|
IFillLockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
HRESULT IFillLockBytes_FillAt_Stub(
|
|
IFillLockBytes* This,
|
|
ULARGE_INTEGER ulOffset,
|
|
const byte *pv,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
extern const GUID IID_IProgressNotify;
|
|
typedef struct IProgressNotifyVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IProgressNotify* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IProgressNotify* This);
|
|
ULONG ( *Release)(
|
|
IProgressNotify* This);
|
|
HRESULT ( *OnProgress)(
|
|
IProgressNotify* This,
|
|
DWORD dwProgressCurrent,
|
|
DWORD dwProgressMaximum,
|
|
WINBOOL fAccurate,
|
|
WINBOOL fOwner);
|
|
|
|
} IProgressNotifyVtbl;
|
|
struct IProgressNotify {
|
|
IProgressNotifyVtbl* lpVtbl;
|
|
};
|
|
HRESULT IProgressNotify_OnProgress_Proxy(
|
|
IProgressNotify* This,
|
|
DWORD dwProgressCurrent,
|
|
DWORD dwProgressMaximum,
|
|
WINBOOL fAccurate,
|
|
WINBOOL fOwner);
|
|
void IProgressNotify_OnProgress_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef struct tagStorageLayout {
|
|
DWORD LayoutType;
|
|
OLECHAR *pwcsElementName;
|
|
LARGE_INTEGER cOffset;
|
|
LARGE_INTEGER cBytes;
|
|
} StorageLayout;
|
|
extern const GUID IID_ILayoutStorage;
|
|
typedef struct ILayoutStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ILayoutStorage* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ILayoutStorage* This);
|
|
ULONG ( *Release)(
|
|
ILayoutStorage* This);
|
|
HRESULT ( *LayoutScript)(
|
|
ILayoutStorage* This,
|
|
StorageLayout *pStorageLayout,
|
|
DWORD nEntries,
|
|
DWORD glfInterleavedFlag);
|
|
HRESULT ( *BeginMonitor)(
|
|
ILayoutStorage* This);
|
|
HRESULT ( *EndMonitor)(
|
|
ILayoutStorage* This);
|
|
HRESULT ( *ReLayoutDocfile)(
|
|
ILayoutStorage* This,
|
|
OLECHAR *pwcsNewDfName);
|
|
HRESULT ( *ReLayoutDocfileOnILockBytes)(
|
|
ILayoutStorage* This,
|
|
ILockBytes *pILockBytes);
|
|
|
|
} ILayoutStorageVtbl;
|
|
struct ILayoutStorage {
|
|
ILayoutStorageVtbl* lpVtbl;
|
|
};
|
|
HRESULT ILayoutStorage_LayoutScript_Proxy(
|
|
ILayoutStorage* This,
|
|
StorageLayout *pStorageLayout,
|
|
DWORD nEntries,
|
|
DWORD glfInterleavedFlag);
|
|
void ILayoutStorage_LayoutScript_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILayoutStorage_BeginMonitor_Proxy(
|
|
ILayoutStorage* This);
|
|
void ILayoutStorage_BeginMonitor_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILayoutStorage_EndMonitor_Proxy(
|
|
ILayoutStorage* This);
|
|
void ILayoutStorage_EndMonitor_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILayoutStorage_ReLayoutDocfile_Proxy(
|
|
ILayoutStorage* This,
|
|
OLECHAR *pwcsNewDfName);
|
|
void ILayoutStorage_ReLayoutDocfile_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ILayoutStorage_ReLayoutDocfileOnILockBytes_Proxy(
|
|
ILayoutStorage* This,
|
|
ILockBytes *pILockBytes);
|
|
void ILayoutStorage_ReLayoutDocfileOnILockBytes_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IBlockingLock;
|
|
typedef struct IBlockingLockVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBlockingLock* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBlockingLock* This);
|
|
ULONG ( *Release)(
|
|
IBlockingLock* This);
|
|
HRESULT ( *Lock)(
|
|
IBlockingLock* This,
|
|
DWORD dwTimeout);
|
|
HRESULT ( *Unlock)(
|
|
IBlockingLock* This);
|
|
|
|
} IBlockingLockVtbl;
|
|
struct IBlockingLock {
|
|
IBlockingLockVtbl* lpVtbl;
|
|
};
|
|
HRESULT IBlockingLock_Lock_Proxy(
|
|
IBlockingLock* This,
|
|
DWORD dwTimeout);
|
|
void IBlockingLock_Lock_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBlockingLock_Unlock_Proxy(
|
|
IBlockingLock* This);
|
|
void IBlockingLock_Unlock_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_ITimeAndNoticeControl;
|
|
typedef struct ITimeAndNoticeControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITimeAndNoticeControl* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITimeAndNoticeControl* This);
|
|
ULONG ( *Release)(
|
|
ITimeAndNoticeControl* This);
|
|
HRESULT ( *SuppressChanges)(
|
|
ITimeAndNoticeControl* This,
|
|
DWORD res1,
|
|
DWORD res2);
|
|
|
|
} ITimeAndNoticeControlVtbl;
|
|
struct ITimeAndNoticeControl {
|
|
ITimeAndNoticeControlVtbl* lpVtbl;
|
|
};
|
|
HRESULT ITimeAndNoticeControl_SuppressChanges_Proxy(
|
|
ITimeAndNoticeControl* This,
|
|
DWORD res1,
|
|
DWORD res2);
|
|
void ITimeAndNoticeControl_SuppressChanges_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IOplockStorage;
|
|
typedef struct IOplockStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOplockStorage* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOplockStorage* This);
|
|
ULONG ( *Release)(
|
|
IOplockStorage* This);
|
|
HRESULT ( *CreateStorageEx)(
|
|
IOplockStorage* This,
|
|
LPCWSTR pwcsName,
|
|
DWORD grfMode,
|
|
DWORD stgfmt,
|
|
DWORD grfAttrs,
|
|
const IID *const riid,
|
|
void **ppstgOpen);
|
|
HRESULT ( *OpenStorageEx)(
|
|
IOplockStorage* This,
|
|
LPCWSTR pwcsName,
|
|
DWORD grfMode,
|
|
DWORD stgfmt,
|
|
DWORD grfAttrs,
|
|
const IID *const riid,
|
|
void **ppstgOpen);
|
|
|
|
} IOplockStorageVtbl;
|
|
struct IOplockStorage {
|
|
IOplockStorageVtbl* lpVtbl;
|
|
};
|
|
HRESULT IOplockStorage_CreateStorageEx_Proxy(
|
|
IOplockStorage* This,
|
|
LPCWSTR pwcsName,
|
|
DWORD grfMode,
|
|
DWORD stgfmt,
|
|
DWORD grfAttrs,
|
|
const IID *const riid,
|
|
void **ppstgOpen);
|
|
void IOplockStorage_CreateStorageEx_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IOplockStorage_OpenStorageEx_Proxy(
|
|
IOplockStorage* This,
|
|
LPCWSTR pwcsName,
|
|
DWORD grfMode,
|
|
DWORD stgfmt,
|
|
DWORD grfAttrs,
|
|
const IID *const riid,
|
|
void **ppstgOpen);
|
|
void IOplockStorage_OpenStorageEx_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IDirectWriterLock;
|
|
typedef struct IDirectWriterLockVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDirectWriterLock* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDirectWriterLock* This);
|
|
ULONG ( *Release)(
|
|
IDirectWriterLock* This);
|
|
HRESULT ( *WaitForWriteAccess)(
|
|
IDirectWriterLock* This,
|
|
DWORD dwTimeout);
|
|
HRESULT ( *ReleaseWriteAccess)(
|
|
IDirectWriterLock* This);
|
|
HRESULT ( *HaveWriteAccess)(
|
|
IDirectWriterLock* This);
|
|
|
|
} IDirectWriterLockVtbl;
|
|
struct IDirectWriterLock {
|
|
IDirectWriterLockVtbl* lpVtbl;
|
|
};
|
|
HRESULT IDirectWriterLock_WaitForWriteAccess_Proxy(
|
|
IDirectWriterLock* This,
|
|
DWORD dwTimeout);
|
|
void IDirectWriterLock_WaitForWriteAccess_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDirectWriterLock_ReleaseWriteAccess_Proxy(
|
|
IDirectWriterLock* This);
|
|
void IDirectWriterLock_ReleaseWriteAccess_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDirectWriterLock_HaveWriteAccess_Proxy(
|
|
IDirectWriterLock* This);
|
|
void IDirectWriterLock_HaveWriteAccess_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IUrlMon;
|
|
typedef struct IUrlMonVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IUrlMon* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IUrlMon* This);
|
|
ULONG ( *Release)(
|
|
IUrlMon* This);
|
|
HRESULT ( *AsyncGetClassBits)(
|
|
IUrlMon* This,
|
|
const IID *const rclsid,
|
|
LPCWSTR pszTYPE,
|
|
LPCWSTR pszExt,
|
|
DWORD dwFileVersionMS,
|
|
DWORD dwFileVersionLS,
|
|
LPCWSTR pszCodeBase,
|
|
IBindCtx *pbc,
|
|
DWORD dwClassContext,
|
|
const IID *const riid,
|
|
DWORD flags);
|
|
|
|
} IUrlMonVtbl;
|
|
struct IUrlMon {
|
|
IUrlMonVtbl* lpVtbl;
|
|
};
|
|
HRESULT IUrlMon_AsyncGetClassBits_Proxy(
|
|
IUrlMon* This,
|
|
const IID *const rclsid,
|
|
LPCWSTR pszTYPE,
|
|
LPCWSTR pszExt,
|
|
DWORD dwFileVersionMS,
|
|
DWORD dwFileVersionLS,
|
|
LPCWSTR pszCodeBase,
|
|
IBindCtx *pbc,
|
|
DWORD dwClassContext,
|
|
const IID *const riid,
|
|
DWORD flags);
|
|
void IUrlMon_AsyncGetClassBits_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IForegroundTransfer;
|
|
typedef struct IForegroundTransferVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IForegroundTransfer* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IForegroundTransfer* This);
|
|
ULONG ( *Release)(
|
|
IForegroundTransfer* This);
|
|
HRESULT ( *AllowForegroundTransfer)(
|
|
IForegroundTransfer* This,
|
|
void *lpvReserved);
|
|
|
|
} IForegroundTransferVtbl;
|
|
struct IForegroundTransfer {
|
|
IForegroundTransferVtbl* lpVtbl;
|
|
};
|
|
HRESULT IForegroundTransfer_AllowForegroundTransfer_Proxy(
|
|
IForegroundTransfer* This,
|
|
void *lpvReserved);
|
|
void IForegroundTransfer_AllowForegroundTransfer_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IThumbnailExtractor;
|
|
typedef struct IThumbnailExtractorVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IThumbnailExtractor* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IThumbnailExtractor* This);
|
|
ULONG ( *Release)(
|
|
IThumbnailExtractor* This);
|
|
HRESULT ( *ExtractThumbnail)(
|
|
IThumbnailExtractor* This,
|
|
IStorage *pStg,
|
|
ULONG ulLength,
|
|
ULONG ulHeight,
|
|
ULONG *pulOutputLength,
|
|
ULONG *pulOutputHeight,
|
|
HBITMAP *phOutputBitmap);
|
|
HRESULT ( *OnFileUpdated)(
|
|
IThumbnailExtractor* This,
|
|
IStorage *pStg);
|
|
|
|
} IThumbnailExtractorVtbl;
|
|
struct IThumbnailExtractor {
|
|
IThumbnailExtractorVtbl* lpVtbl;
|
|
};
|
|
HRESULT IThumbnailExtractor_ExtractThumbnail_Proxy(
|
|
IThumbnailExtractor* This,
|
|
IStorage *pStg,
|
|
ULONG ulLength,
|
|
ULONG ulHeight,
|
|
ULONG *pulOutputLength,
|
|
ULONG *pulOutputHeight,
|
|
HBITMAP *phOutputBitmap);
|
|
void IThumbnailExtractor_ExtractThumbnail_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IThumbnailExtractor_OnFileUpdated_Proxy(
|
|
IThumbnailExtractor* This,
|
|
IStorage *pStg);
|
|
void IThumbnailExtractor_OnFileUpdated_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IDummyHICONIncluder;
|
|
typedef struct IDummyHICONIncluderVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDummyHICONIncluder* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDummyHICONIncluder* This);
|
|
ULONG ( *Release)(
|
|
IDummyHICONIncluder* This);
|
|
HRESULT ( *Dummy)(
|
|
IDummyHICONIncluder* This,
|
|
HICON h1,
|
|
HDC h2);
|
|
|
|
} IDummyHICONIncluderVtbl;
|
|
struct IDummyHICONIncluder {
|
|
IDummyHICONIncluderVtbl* lpVtbl;
|
|
};
|
|
HRESULT IDummyHICONIncluder_Dummy_Proxy(
|
|
IDummyHICONIncluder* This,
|
|
HICON h1,
|
|
HDC h2);
|
|
void IDummyHICONIncluder_Dummy_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef enum tagApplicationType {
|
|
ServerApplication = 0,
|
|
LibraryApplication = 1
|
|
} ApplicationType;
|
|
typedef enum tagShutdownType {
|
|
IdleShutdown = 0,
|
|
ForcedShutdown = 1
|
|
} ShutdownType;
|
|
extern const GUID IID_IProcessLock;
|
|
typedef struct IProcessLockVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IProcessLock* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IProcessLock* This);
|
|
ULONG ( *Release)(
|
|
IProcessLock* This);
|
|
ULONG ( *AddRefOnProcess)(
|
|
IProcessLock* This);
|
|
ULONG ( *ReleaseRefOnProcess)(
|
|
IProcessLock* This);
|
|
|
|
} IProcessLockVtbl;
|
|
struct IProcessLock {
|
|
IProcessLockVtbl* lpVtbl;
|
|
};
|
|
ULONG IProcessLock_AddRefOnProcess_Proxy(
|
|
IProcessLock* This);
|
|
void IProcessLock_AddRefOnProcess_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
ULONG IProcessLock_ReleaseRefOnProcess_Proxy(
|
|
IProcessLock* This);
|
|
void IProcessLock_ReleaseRefOnProcess_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_ISurrogateService;
|
|
typedef struct ISurrogateServiceVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISurrogateService* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISurrogateService* This);
|
|
ULONG ( *Release)(
|
|
ISurrogateService* This);
|
|
HRESULT ( *Init)(
|
|
ISurrogateService* This,
|
|
const GUID *const rguidProcessID,
|
|
IProcessLock *pProcessLock,
|
|
WINBOOL *pfApplicationAware);
|
|
HRESULT ( *ApplicationLaunch)(
|
|
ISurrogateService* This,
|
|
const GUID *const rguidApplID,
|
|
ApplicationType appType);
|
|
HRESULT ( *ApplicationFree)(
|
|
ISurrogateService* This,
|
|
const GUID *const rguidApplID);
|
|
HRESULT ( *CatalogRefresh)(
|
|
ISurrogateService* This,
|
|
ULONG ulReserved);
|
|
HRESULT ( *ProcessShutdown)(
|
|
ISurrogateService* This,
|
|
ShutdownType shutdownType);
|
|
|
|
} ISurrogateServiceVtbl;
|
|
struct ISurrogateService {
|
|
ISurrogateServiceVtbl* lpVtbl;
|
|
};
|
|
HRESULT ISurrogateService_Init_Proxy(
|
|
ISurrogateService* This,
|
|
const GUID *const rguidProcessID,
|
|
IProcessLock *pProcessLock,
|
|
WINBOOL *pfApplicationAware);
|
|
void ISurrogateService_Init_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ISurrogateService_ApplicationLaunch_Proxy(
|
|
ISurrogateService* This,
|
|
const GUID *const rguidApplID,
|
|
ApplicationType appType);
|
|
void ISurrogateService_ApplicationLaunch_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ISurrogateService_ApplicationFree_Proxy(
|
|
ISurrogateService* This,
|
|
const GUID *const rguidApplID);
|
|
void ISurrogateService_ApplicationFree_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ISurrogateService_CatalogRefresh_Proxy(
|
|
ISurrogateService* This,
|
|
ULONG ulReserved);
|
|
void ISurrogateService_CatalogRefresh_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ISurrogateService_ProcessShutdown_Proxy(
|
|
ISurrogateService* This,
|
|
ShutdownType shutdownType);
|
|
void ISurrogateService_ProcessShutdown_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
typedef IInitializeSpy *LPINITIALIZESPY;
|
|
extern const GUID IID_IInitializeSpy;
|
|
typedef struct IInitializeSpyVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInitializeSpy* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInitializeSpy* This);
|
|
ULONG ( *Release)(
|
|
IInitializeSpy* This);
|
|
HRESULT ( *PreInitialize)(
|
|
IInitializeSpy* This,
|
|
DWORD dwCoInit,
|
|
DWORD dwCurThreadAptRefs);
|
|
HRESULT ( *PostInitialize)(
|
|
IInitializeSpy* This,
|
|
HRESULT hrCoInit,
|
|
DWORD dwCoInit,
|
|
DWORD dwNewThreadAptRefs);
|
|
HRESULT ( *PreUninitialize)(
|
|
IInitializeSpy* This,
|
|
DWORD dwCurThreadAptRefs);
|
|
HRESULT ( *PostUninitialize)(
|
|
IInitializeSpy* This,
|
|
DWORD dwNewThreadAptRefs);
|
|
|
|
} IInitializeSpyVtbl;
|
|
struct IInitializeSpy {
|
|
IInitializeSpyVtbl* lpVtbl;
|
|
};
|
|
HRESULT IInitializeSpy_PreInitialize_Proxy(
|
|
IInitializeSpy* This,
|
|
DWORD dwCoInit,
|
|
DWORD dwCurThreadAptRefs);
|
|
void IInitializeSpy_PreInitialize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IInitializeSpy_PostInitialize_Proxy(
|
|
IInitializeSpy* This,
|
|
HRESULT hrCoInit,
|
|
DWORD dwCoInit,
|
|
DWORD dwNewThreadAptRefs);
|
|
void IInitializeSpy_PostInitialize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IInitializeSpy_PreUninitialize_Proxy(
|
|
IInitializeSpy* This,
|
|
DWORD dwCurThreadAptRefs);
|
|
void IInitializeSpy_PreUninitialize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IInitializeSpy_PostUninitialize_Proxy(
|
|
IInitializeSpy* This,
|
|
DWORD dwNewThreadAptRefs);
|
|
void IInitializeSpy_PostUninitialize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
extern const GUID IID_IApartmentShutdown;
|
|
typedef struct IApartmentShutdownVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IApartmentShutdown* This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IApartmentShutdown* This);
|
|
ULONG ( *Release)(
|
|
IApartmentShutdown* This);
|
|
void ( *OnUninitialize)(
|
|
IApartmentShutdown* This,
|
|
UINT64 ui64ApartmentIdentifier);
|
|
|
|
} IApartmentShutdownVtbl;
|
|
struct IApartmentShutdown {
|
|
IApartmentShutdownVtbl* lpVtbl;
|
|
};
|
|
void IApartmentShutdown_OnUninitialize_Proxy(
|
|
IApartmentShutdown* This,
|
|
UINT64 ui64ApartmentIdentifier);
|
|
void IApartmentShutdown_OnUninitialize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
ULONG SNB_UserSize (ULONG *, ULONG, SNB *);
|
|
unsigned char * SNB_UserMarshal (ULONG *, unsigned char *, SNB *);
|
|
unsigned char * SNB_UserUnmarshal(ULONG *, unsigned char *, SNB *);
|
|
void SNB_UserFree (ULONG *, SNB *);
|
|
ULONG CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
|
|
void CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
|
|
ULONG STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
|
|
unsigned char * STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
|
|
unsigned char * STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
|
|
void STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
|
|
ULONG ASYNC_STGMEDIUM_UserSize (ULONG *, ULONG, ASYNC_STGMEDIUM *);
|
|
unsigned char * ASYNC_STGMEDIUM_UserMarshal (ULONG *, unsigned char *, ASYNC_STGMEDIUM *);
|
|
unsigned char * ASYNC_STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, ASYNC_STGMEDIUM *);
|
|
void ASYNC_STGMEDIUM_UserFree (ULONG *, ASYNC_STGMEDIUM *);
|
|
ULONG FLAG_STGMEDIUM_UserSize (ULONG *, ULONG, FLAG_STGMEDIUM *);
|
|
unsigned char * FLAG_STGMEDIUM_UserMarshal (ULONG *, unsigned char *, FLAG_STGMEDIUM *);
|
|
unsigned char * FLAG_STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, FLAG_STGMEDIUM *);
|
|
void FLAG_STGMEDIUM_UserFree (ULONG *, FLAG_STGMEDIUM *);
|
|
ULONG HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *);
|
|
unsigned char * HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *);
|
|
unsigned char * HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *);
|
|
void HBITMAP_UserFree (ULONG *, HBITMAP *);
|
|
ULONG HICON_UserSize (ULONG *, ULONG, HICON *);
|
|
unsigned char * HICON_UserMarshal (ULONG *, unsigned char *, HICON *);
|
|
unsigned char * HICON_UserUnmarshal(ULONG *, unsigned char *, HICON *);
|
|
void HICON_UserFree (ULONG *, HICON *);
|
|
ULONG HDC_UserSize (ULONG *, ULONG, HDC *);
|
|
unsigned char * HDC_UserMarshal (ULONG *, unsigned char *, HDC *);
|
|
unsigned char * HDC_UserUnmarshal(ULONG *, unsigned char *, HDC *);
|
|
void HDC_UserFree (ULONG *, HDC *);
|
|
extern __attribute__((dllimport)) DWORD CoBuildVersion (void);
|
|
extern __attribute__((dllimport)) HRESULT CoInitialize (LPVOID pvReserved);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterMallocSpy (LPMALLOCSPY pMallocSpy);
|
|
extern __attribute__((dllimport)) HRESULT CoRevokeMallocSpy (void);
|
|
extern __attribute__((dllimport)) HRESULT CoCreateStandardMalloc (DWORD memctx, IMalloc **ppMalloc);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterInitializeSpy (LPINITIALIZESPY pSpy, ULARGE_INTEGER *puliCookie);
|
|
extern __attribute__((dllimport)) HRESULT CoRevokeInitializeSpy (ULARGE_INTEGER uliCookie);
|
|
typedef enum tagCOMSD {
|
|
SD_LAUNCHPERMISSIONS = 0,
|
|
SD_ACCESSPERMISSIONS = 1,
|
|
SD_LAUNCHRESTRICTIONS = 2,
|
|
SD_ACCESSRESTRICTIONS = 3
|
|
} COMSD;
|
|
extern __attribute__((dllimport)) HRESULT CoGetSystemSecurityPermissions (COMSD comSDType, PSECURITY_DESCRIPTOR *ppSD);
|
|
extern __attribute__((dllimport)) HINSTANCE CoLoadLibrary (LPOLESTR lpszLibName, WINBOOL bAutoFree);
|
|
extern __attribute__((dllimport)) void CoFreeLibrary (HINSTANCE hInst);
|
|
extern __attribute__((dllimport)) void CoFreeAllLibraries (void);
|
|
extern __attribute__((dllimport)) HRESULT CoGetInstanceFromFile (COSERVERINFO *pServerInfo, CLSID *pClsid, IUnknown *punkOuter, DWORD dwClsCtx, DWORD grfMode, OLECHAR *pwszName, DWORD dwCount, MULTI_QI *pResults);
|
|
extern __attribute__((dllimport)) HRESULT CoGetInstanceFromIStorage (COSERVERINFO *pServerInfo, CLSID *pClsid, IUnknown *punkOuter, DWORD dwClsCtx, struct IStorage *pstg, DWORD dwCount, MULTI_QI *pResults);
|
|
extern __attribute__((dllimport)) HRESULT CoAllowSetForegroundWindow (IUnknown *pUnk, LPVOID lpvReserved);
|
|
extern __attribute__((dllimport)) HRESULT DcomChannelSetHResult (LPVOID pvReserved, ULONG *pulReserved, HRESULT appsHR);
|
|
extern __attribute__((dllimport)) WINBOOL CoIsOle1Class (const IID *const rclsid);
|
|
extern __attribute__((dllimport)) HRESULT CLSIDFromProgIDEx (LPCOLESTR lpszProgID, LPCLSID lpclsid);
|
|
extern __attribute__((dllimport)) WINBOOL CoFileTimeToDosDateTime (FILETIME *lpFileTime, LPWORD lpDosDate, LPWORD lpDosTime);
|
|
extern __attribute__((dllimport)) WINBOOL CoDosDateTimeToFileTime (WORD nDosDate, WORD nDosTime, FILETIME *lpFileTime);
|
|
extern __attribute__((dllimport)) HRESULT CoFileTimeNow (FILETIME *lpFileTime);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterMessageFilter (LPMESSAGEFILTER lpMessageFilter, LPMESSAGEFILTER *lplpMessageFilter);
|
|
extern __attribute__((dllimport)) HRESULT CoRegisterChannelHook (const GUID *const ExtensionUuid, IChannelHook *pChannelHook);
|
|
extern __attribute__((dllimport)) HRESULT CoTreatAsClass (const IID *const clsidOld, const IID *const clsidNew);
|
|
extern __attribute__((dllimport)) HRESULT CreateDataAdviseHolder (LPDATAADVISEHOLDER *ppDAHolder);
|
|
extern __attribute__((dllimport)) HRESULT CreateDataCache (LPUNKNOWN pUnkOuter, const IID *const rclsid, const IID *const iid, LPVOID *ppv);
|
|
extern __attribute__((dllimport)) HRESULT StgOpenLayoutDocfile (OLECHAR const *pwcsDfName, DWORD grfMode, DWORD reserved, IStorage **ppstgOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgCreateDocfile (const WCHAR *pwcsName, DWORD grfMode, DWORD reserved, IStorage **ppstgOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgCreateDocfileOnILockBytes (ILockBytes *plkbyt, DWORD grfMode, DWORD reserved, IStorage **ppstgOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgOpenStorage (const WCHAR *pwcsName, IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage **ppstgOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgOpenStorageOnILockBytes (ILockBytes *plkbyt, IStorage *pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage **ppstgOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgIsStorageFile (const WCHAR *pwcsName);
|
|
extern __attribute__((dllimport)) HRESULT StgIsStorageILockBytes (ILockBytes *plkbyt);
|
|
extern __attribute__((dllimport)) HRESULT StgSetTimes (const WCHAR *lpszName, const FILETIME *pctime, const FILETIME *patime, const FILETIME *pmtime);
|
|
extern __attribute__((dllimport)) HRESULT StgOpenAsyncDocfileOnIFillLockBytes (IFillLockBytes *pflb, DWORD grfMode, DWORD asyncFlags, IStorage **ppstgOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgGetIFillLockBytesOnILockBytes (ILockBytes *pilb, IFillLockBytes **ppflb);
|
|
extern __attribute__((dllimport)) HRESULT StgGetIFillLockBytesOnFile (OLECHAR const *pwcsName, IFillLockBytes **ppflb);
|
|
typedef struct tagSTGOPTIONS {
|
|
USHORT usVersion;
|
|
USHORT reserved;
|
|
ULONG ulSectorSize;
|
|
const WCHAR *pwcsTemplateFile;
|
|
} STGOPTIONS;
|
|
extern __attribute__((dllimport)) HRESULT StgCreateStorageEx (const WCHAR *pwcsName, DWORD grfMode, DWORD stgfmt, DWORD grfAttrs, STGOPTIONS *pStgOptions, PSECURITY_DESCRIPTOR pSecurityDescriptor, const IID *const riid, void **ppObjectOpen);
|
|
extern __attribute__((dllimport)) HRESULT StgOpenStorageEx (const WCHAR *pwcsName, DWORD grfMode, DWORD stgfmt, DWORD grfAttrs, STGOPTIONS *pStgOptions, PSECURITY_DESCRIPTOR pSecurityDescriptor, const IID *const riid, void **ppObjectOpen);
|
|
extern __attribute__((dllimport)) HRESULT BindMoniker (LPMONIKER pmk, DWORD grfOpt, const IID *const iidResult, LPVOID *ppvResult);
|
|
extern __attribute__((dllimport)) HRESULT CoGetObject (LPCWSTR pszName, BIND_OPTS *pBindOptions, const IID *const riid, void **ppv);
|
|
extern __attribute__((dllimport)) HRESULT MkParseDisplayName (LPBC pbc, LPCOLESTR szUserName, ULONG *pchEaten, LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT MonikerRelativePathTo (LPMONIKER pmkSrc, LPMONIKER pmkDest, LPMONIKER *ppmkRelPath, WINBOOL dwReserved);
|
|
extern __attribute__((dllimport)) HRESULT MonikerCommonPrefixWith (LPMONIKER pmkThis, LPMONIKER pmkOther, LPMONIKER *ppmkCommon);
|
|
extern __attribute__((dllimport)) HRESULT CreateBindCtx (DWORD reserved, LPBC *ppbc);
|
|
extern __attribute__((dllimport)) HRESULT CreateGenericComposite (LPMONIKER pmkFirst, LPMONIKER pmkRest, LPMONIKER *ppmkComposite);
|
|
extern __attribute__((dllimport)) HRESULT GetClassFile (LPCOLESTR szFilename, CLSID *pclsid);
|
|
extern __attribute__((dllimport)) HRESULT CreateClassMoniker (const IID *const rclsid, LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT CreateFileMoniker (LPCOLESTR lpszPathName, LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT CreateItemMoniker (LPCOLESTR lpszDelim, LPCOLESTR lpszItem, LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT CreateAntiMoniker (LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT CreatePointerMoniker (LPUNKNOWN punk, LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT CreateObjrefMoniker (LPUNKNOWN punk, LPMONIKER *ppmk);
|
|
extern __attribute__((dllimport)) HRESULT CoInstall (IBindCtx *pbc, DWORD dwFlags, uCLSSPEC *pClassSpec, QUERYCONTEXT *pQuery, LPWSTR pszCodeBase);
|
|
extern __attribute__((dllimport)) HRESULT GetRunningObjectTable (DWORD reserved, LPRUNNINGOBJECTTABLE *pprot);
|
|
typedef struct IPersistMoniker IPersistMoniker;
|
|
typedef struct IMonikerProp IMonikerProp;
|
|
typedef struct IBindProtocol IBindProtocol;
|
|
typedef struct IBinding IBinding;
|
|
typedef struct IBindStatusCallback IBindStatusCallback;
|
|
typedef struct IBindStatusCallbackEx IBindStatusCallbackEx;
|
|
typedef struct IAuthenticate IAuthenticate;
|
|
typedef struct IAuthenticateEx IAuthenticateEx;
|
|
typedef struct IHttpNegotiate IHttpNegotiate;
|
|
typedef struct IHttpNegotiate2 IHttpNegotiate2;
|
|
typedef struct IHttpNegotiate3 IHttpNegotiate3;
|
|
typedef struct IWinInetFileStream IWinInetFileStream;
|
|
typedef struct IWindowForBindingUI IWindowForBindingUI;
|
|
typedef struct ICodeInstall ICodeInstall;
|
|
typedef struct IUri IUri;
|
|
typedef struct IUriContainer IUriContainer;
|
|
typedef struct IUriBuilder IUriBuilder;
|
|
typedef struct IUriBuilderFactory IUriBuilderFactory;
|
|
typedef struct IWinInetInfo IWinInetInfo;
|
|
typedef struct IHttpSecurity IHttpSecurity;
|
|
typedef struct IWinInetHttpInfo IWinInetHttpInfo;
|
|
typedef struct IWinInetHttpTimeouts IWinInetHttpTimeouts;
|
|
typedef struct IWinInetCacheHints IWinInetCacheHints;
|
|
typedef struct IWinInetCacheHints2 IWinInetCacheHints2;
|
|
typedef struct IBindHost IBindHost;
|
|
typedef struct IInternet IInternet;
|
|
typedef struct IInternetBindInfo IInternetBindInfo;
|
|
typedef struct IInternetBindInfoEx IInternetBindInfoEx;
|
|
typedef struct IInternetProtocolRoot IInternetProtocolRoot;
|
|
typedef struct IInternetProtocol IInternetProtocol;
|
|
typedef struct IInternetProtocolEx IInternetProtocolEx;
|
|
typedef struct IInternetProtocolSink IInternetProtocolSink;
|
|
typedef struct IInternetProtocolSinkStackable IInternetProtocolSinkStackable;
|
|
typedef struct IInternetSession IInternetSession;
|
|
typedef struct IInternetThreadSwitch IInternetThreadSwitch;
|
|
typedef struct IInternetPriority IInternetPriority;
|
|
typedef struct IInternetProtocolInfo IInternetProtocolInfo;
|
|
typedef struct IInternetSecurityMgrSite IInternetSecurityMgrSite;
|
|
typedef struct IInternetSecurityManager IInternetSecurityManager;
|
|
typedef struct IInternetSecurityManagerEx IInternetSecurityManagerEx;
|
|
typedef struct IInternetSecurityManagerEx2 IInternetSecurityManagerEx2;
|
|
typedef struct IZoneIdentifier IZoneIdentifier;
|
|
typedef struct IInternetHostSecurityManager IInternetHostSecurityManager;
|
|
typedef struct IInternetZoneManager IInternetZoneManager;
|
|
typedef struct IInternetZoneManagerEx IInternetZoneManagerEx;
|
|
typedef struct IInternetZoneManagerEx2 IInternetZoneManagerEx2;
|
|
typedef struct ISoftDistExt ISoftDistExt;
|
|
typedef struct ICatalogFileInfo ICatalogFileInfo;
|
|
typedef struct IDataFilter IDataFilter;
|
|
typedef struct IEncodingFilterFactory IEncodingFilterFactory;
|
|
typedef struct IWrappedProtocol IWrappedProtocol;
|
|
typedef struct IGetBindHandle IGetBindHandle;
|
|
typedef struct IBindCallbackRedirect IBindCallbackRedirect;
|
|
typedef struct IOleAdviseHolder IOleAdviseHolder;
|
|
typedef struct IOleCache IOleCache;
|
|
typedef struct IOleCache2 IOleCache2;
|
|
typedef struct IOleCacheControl IOleCacheControl;
|
|
typedef struct IParseDisplayName IParseDisplayName;
|
|
typedef struct IOleContainer IOleContainer;
|
|
typedef struct IOleClientSite IOleClientSite;
|
|
typedef struct IOleObject IOleObject;
|
|
typedef struct IOleWindow IOleWindow;
|
|
typedef struct IOleLink IOleLink;
|
|
typedef struct IOleItemContainer IOleItemContainer;
|
|
typedef struct IOleInPlaceUIWindow IOleInPlaceUIWindow;
|
|
typedef struct IOleInPlaceActiveObject IOleInPlaceActiveObject;
|
|
typedef struct IOleInPlaceFrame IOleInPlaceFrame;
|
|
typedef struct IOleInPlaceObject IOleInPlaceObject;
|
|
typedef struct IOleInPlaceSite IOleInPlaceSite;
|
|
typedef struct IContinue IContinue;
|
|
typedef struct IViewObject IViewObject;
|
|
typedef struct IViewObject2 IViewObject2;
|
|
typedef struct IDropSource IDropSource;
|
|
typedef struct IDropTarget IDropTarget;
|
|
typedef struct IDropSourceNotify IDropSourceNotify;
|
|
typedef struct IEnumOLEVERB IEnumOLEVERB;
|
|
typedef IOleAdviseHolder *LPOLEADVISEHOLDER;
|
|
extern const GUID IID_IOleAdviseHolder;
|
|
typedef struct IOleAdviseHolderVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleAdviseHolder *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleAdviseHolder *This);
|
|
ULONG ( *Release)(
|
|
IOleAdviseHolder *This);
|
|
HRESULT ( *Advise)(
|
|
IOleAdviseHolder *This,
|
|
IAdviseSink *pAdvise,
|
|
DWORD *pdwConnection);
|
|
HRESULT ( *Unadvise)(
|
|
IOleAdviseHolder *This,
|
|
DWORD dwConnection);
|
|
HRESULT ( *EnumAdvise)(
|
|
IOleAdviseHolder *This,
|
|
IEnumSTATDATA **ppenumAdvise);
|
|
HRESULT ( *SendOnRename)(
|
|
IOleAdviseHolder *This,
|
|
IMoniker *pmk);
|
|
HRESULT ( *SendOnSave)(
|
|
IOleAdviseHolder *This);
|
|
HRESULT ( *SendOnClose)(
|
|
IOleAdviseHolder *This);
|
|
|
|
} IOleAdviseHolderVtbl;
|
|
struct IOleAdviseHolder {
|
|
IOleAdviseHolderVtbl* lpVtbl;
|
|
};
|
|
typedef IOleCache *LPOLECACHE;
|
|
extern const GUID IID_IOleCache;
|
|
typedef struct IOleCacheVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleCache *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleCache *This);
|
|
ULONG ( *Release)(
|
|
IOleCache *This);
|
|
HRESULT ( *Cache)(
|
|
IOleCache *This,
|
|
FORMATETC *pformatetc,
|
|
DWORD advf,
|
|
DWORD *pdwConnection);
|
|
HRESULT ( *Uncache)(
|
|
IOleCache *This,
|
|
DWORD dwConnection);
|
|
HRESULT ( *EnumCache)(
|
|
IOleCache *This,
|
|
IEnumSTATDATA **ppenumSTATDATA);
|
|
HRESULT ( *InitCache)(
|
|
IOleCache *This,
|
|
IDataObject *pDataObject);
|
|
HRESULT ( *SetData)(
|
|
IOleCache *This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pmedium,
|
|
WINBOOL fRelease);
|
|
|
|
} IOleCacheVtbl;
|
|
struct IOleCache {
|
|
IOleCacheVtbl* lpVtbl;
|
|
};
|
|
typedef IOleCache2 *LPOLECACHE2;
|
|
typedef enum tagDISCARDCACHE {
|
|
DISCARDCACHE_SAVEIFDIRTY = 0,
|
|
DISCARDCACHE_NOSAVE = 1
|
|
} DISCARDCACHE;
|
|
extern const GUID IID_IOleCache2;
|
|
typedef struct IOleCache2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleCache2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleCache2 *This);
|
|
ULONG ( *Release)(
|
|
IOleCache2 *This);
|
|
HRESULT ( *Cache)(
|
|
IOleCache2 *This,
|
|
FORMATETC *pformatetc,
|
|
DWORD advf,
|
|
DWORD *pdwConnection);
|
|
HRESULT ( *Uncache)(
|
|
IOleCache2 *This,
|
|
DWORD dwConnection);
|
|
HRESULT ( *EnumCache)(
|
|
IOleCache2 *This,
|
|
IEnumSTATDATA **ppenumSTATDATA);
|
|
HRESULT ( *InitCache)(
|
|
IOleCache2 *This,
|
|
IDataObject *pDataObject);
|
|
HRESULT ( *SetData)(
|
|
IOleCache2 *This,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pmedium,
|
|
WINBOOL fRelease);
|
|
HRESULT ( *UpdateCache)(
|
|
IOleCache2 *This,
|
|
LPDATAOBJECT pDataObject,
|
|
DWORD grfUpdf,
|
|
LPVOID pReserved);
|
|
HRESULT ( *DiscardCache)(
|
|
IOleCache2 *This,
|
|
DWORD dwDiscardOptions);
|
|
|
|
} IOleCache2Vtbl;
|
|
struct IOleCache2 {
|
|
IOleCache2Vtbl* lpVtbl;
|
|
};
|
|
HRESULT IOleCache2_RemoteUpdateCache_Proxy(
|
|
IOleCache2* This,
|
|
LPDATAOBJECT pDataObject,
|
|
DWORD grfUpdf,
|
|
LONG_PTR pReserved);
|
|
void IOleCache2_RemoteUpdateCache_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IOleCache2_UpdateCache_Proxy(
|
|
IOleCache2* This,
|
|
LPDATAOBJECT pDataObject,
|
|
DWORD grfUpdf,
|
|
LPVOID pReserved);
|
|
HRESULT IOleCache2_UpdateCache_Stub(
|
|
IOleCache2* This,
|
|
LPDATAOBJECT pDataObject,
|
|
DWORD grfUpdf,
|
|
LONG_PTR pReserved);
|
|
typedef IOleCacheControl *LPOLECACHECONTROL;
|
|
extern const GUID IID_IOleCacheControl;
|
|
typedef struct IOleCacheControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleCacheControl *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleCacheControl *This);
|
|
ULONG ( *Release)(
|
|
IOleCacheControl *This);
|
|
HRESULT ( *OnRun)(
|
|
IOleCacheControl *This,
|
|
LPDATAOBJECT pDataObject);
|
|
HRESULT ( *OnStop)(
|
|
IOleCacheControl *This);
|
|
|
|
} IOleCacheControlVtbl;
|
|
struct IOleCacheControl {
|
|
IOleCacheControlVtbl* lpVtbl;
|
|
};
|
|
typedef IParseDisplayName *LPPARSEDISPLAYNAME;
|
|
extern const GUID IID_IParseDisplayName;
|
|
typedef struct IParseDisplayNameVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IParseDisplayName *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IParseDisplayName *This);
|
|
ULONG ( *Release)(
|
|
IParseDisplayName *This);
|
|
HRESULT ( *ParseDisplayName)(
|
|
IParseDisplayName *This,
|
|
IBindCtx *pbc,
|
|
LPOLESTR pszDisplayName,
|
|
ULONG *pchEaten,
|
|
IMoniker **ppmkOut);
|
|
|
|
} IParseDisplayNameVtbl;
|
|
struct IParseDisplayName {
|
|
IParseDisplayNameVtbl* lpVtbl;
|
|
};
|
|
typedef IOleContainer *LPOLECONTAINER;
|
|
extern const GUID IID_IOleContainer;
|
|
typedef struct IOleContainerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleContainer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleContainer *This);
|
|
ULONG ( *Release)(
|
|
IOleContainer *This);
|
|
HRESULT ( *ParseDisplayName)(
|
|
IOleContainer *This,
|
|
IBindCtx *pbc,
|
|
LPOLESTR pszDisplayName,
|
|
ULONG *pchEaten,
|
|
IMoniker **ppmkOut);
|
|
HRESULT ( *EnumObjects)(
|
|
IOleContainer *This,
|
|
DWORD grfFlags,
|
|
IEnumUnknown **ppenum);
|
|
HRESULT ( *LockContainer)(
|
|
IOleContainer *This,
|
|
WINBOOL fLock);
|
|
|
|
} IOleContainerVtbl;
|
|
struct IOleContainer {
|
|
IOleContainerVtbl* lpVtbl;
|
|
};
|
|
typedef IOleClientSite *LPOLECLIENTSITE;
|
|
extern const GUID IID_IOleClientSite;
|
|
typedef struct IOleClientSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleClientSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleClientSite *This);
|
|
ULONG ( *Release)(
|
|
IOleClientSite *This);
|
|
HRESULT ( *SaveObject)(
|
|
IOleClientSite *This);
|
|
HRESULT ( *GetMoniker)(
|
|
IOleClientSite *This,
|
|
DWORD dwAssign,
|
|
DWORD dwWhichMoniker,
|
|
IMoniker **ppmk);
|
|
HRESULT ( *GetContainer)(
|
|
IOleClientSite *This,
|
|
IOleContainer **ppContainer);
|
|
HRESULT ( *ShowObject)(
|
|
IOleClientSite *This);
|
|
HRESULT ( *OnShowWindow)(
|
|
IOleClientSite *This,
|
|
WINBOOL fShow);
|
|
HRESULT ( *RequestNewObjectLayout)(
|
|
IOleClientSite *This);
|
|
|
|
} IOleClientSiteVtbl;
|
|
struct IOleClientSite {
|
|
IOleClientSiteVtbl* lpVtbl;
|
|
};
|
|
typedef IOleObject *LPOLEOBJECT;
|
|
typedef enum tagOLEGETMONIKER {
|
|
OLEGETMONIKER_ONLYIFTHERE = 1,
|
|
OLEGETMONIKER_FORCEASSIGN = 2,
|
|
OLEGETMONIKER_UNASSIGN = 3,
|
|
OLEGETMONIKER_TEMPFORUSER = 4
|
|
} OLEGETMONIKER;
|
|
typedef enum tagOLEWHICHMK {
|
|
OLEWHICHMK_CONTAINER = 1,
|
|
OLEWHICHMK_OBJREL = 2,
|
|
OLEWHICHMK_OBJFULL = 3
|
|
} OLEWHICHMK;
|
|
typedef enum tagUSERCLASSTYPE {
|
|
USERCLASSTYPE_FULL = 1,
|
|
USERCLASSTYPE_SHORT = 2,
|
|
USERCLASSTYPE_APPNAME = 3
|
|
} USERCLASSTYPE;
|
|
typedef enum tagOLEMISC {
|
|
OLEMISC_RECOMPOSEONRESIZE = 0x1,
|
|
OLEMISC_ONLYICONIC = 0x2,
|
|
OLEMISC_INSERTNOTREPLACE = 0x4,
|
|
OLEMISC_STATIC = 0x8,
|
|
OLEMISC_CANTLINKINSIDE = 0x10,
|
|
OLEMISC_CANLINKBYOLE1 = 0x20,
|
|
OLEMISC_ISLINKOBJECT = 0x40,
|
|
OLEMISC_INSIDEOUT = 0x80,
|
|
OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
|
|
OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
|
|
OLEMISC_INVISIBLEATRUNTIME = 0x400,
|
|
OLEMISC_ALWAYSRUN = 0x800,
|
|
OLEMISC_ACTSLIKEBUTTON = 0x1000,
|
|
OLEMISC_ACTSLIKELABEL = 0x2000,
|
|
OLEMISC_NOUIACTIVATE = 0x4000,
|
|
OLEMISC_ALIGNABLE = 0x8000,
|
|
OLEMISC_SIMPLEFRAME = 0x10000,
|
|
OLEMISC_SETCLIENTSITEFIRST = 0x20000,
|
|
OLEMISC_IMEMODE = 0x40000,
|
|
OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
|
|
OLEMISC_WANTSTOMENUMERGE = 0x100000,
|
|
OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
|
|
} OLEMISC;
|
|
typedef enum tagOLECLOSE {
|
|
OLECLOSE_SAVEIFDIRTY = 0,
|
|
OLECLOSE_NOSAVE = 1,
|
|
OLECLOSE_PROMPTSAVE = 2
|
|
} OLECLOSE;
|
|
extern const GUID IID_IOleObject;
|
|
typedef struct IOleObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleObject *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleObject *This);
|
|
ULONG ( *Release)(
|
|
IOleObject *This);
|
|
HRESULT ( *SetClientSite)(
|
|
IOleObject *This,
|
|
IOleClientSite *pClientSite);
|
|
HRESULT ( *GetClientSite)(
|
|
IOleObject *This,
|
|
IOleClientSite **ppClientSite);
|
|
HRESULT ( *SetHostNames)(
|
|
IOleObject *This,
|
|
LPCOLESTR szContainerApp,
|
|
LPCOLESTR szContainerObj);
|
|
HRESULT ( *Close)(
|
|
IOleObject *This,
|
|
DWORD dwSaveOption);
|
|
HRESULT ( *SetMoniker)(
|
|
IOleObject *This,
|
|
DWORD dwWhichMoniker,
|
|
IMoniker *pmk);
|
|
HRESULT ( *GetMoniker)(
|
|
IOleObject *This,
|
|
DWORD dwAssign,
|
|
DWORD dwWhichMoniker,
|
|
IMoniker **ppmk);
|
|
HRESULT ( *InitFromData)(
|
|
IOleObject *This,
|
|
IDataObject *pDataObject,
|
|
WINBOOL fCreation,
|
|
DWORD dwReserved);
|
|
HRESULT ( *GetClipboardData)(
|
|
IOleObject *This,
|
|
DWORD dwReserved,
|
|
IDataObject **ppDataObject);
|
|
HRESULT ( *DoVerb)(
|
|
IOleObject *This,
|
|
LONG iVerb,
|
|
LPMSG lpmsg,
|
|
IOleClientSite *pActiveSite,
|
|
LONG lindex,
|
|
HWND hwndParent,
|
|
LPCRECT lprcPosRect);
|
|
HRESULT ( *EnumVerbs)(
|
|
IOleObject *This,
|
|
IEnumOLEVERB **ppEnumOleVerb);
|
|
HRESULT ( *Update)(
|
|
IOleObject *This);
|
|
HRESULT ( *IsUpToDate)(
|
|
IOleObject *This);
|
|
HRESULT ( *GetUserClassID)(
|
|
IOleObject *This,
|
|
CLSID *pClsid);
|
|
HRESULT ( *GetUserType)(
|
|
IOleObject *This,
|
|
DWORD dwFormOfType,
|
|
LPOLESTR *pszUserType);
|
|
HRESULT ( *SetExtent)(
|
|
IOleObject *This,
|
|
DWORD dwDrawAspect,
|
|
SIZEL *psizel);
|
|
HRESULT ( *GetExtent)(
|
|
IOleObject *This,
|
|
DWORD dwDrawAspect,
|
|
SIZEL *psizel);
|
|
HRESULT ( *Advise)(
|
|
IOleObject *This,
|
|
IAdviseSink *pAdvSink,
|
|
DWORD *pdwConnection);
|
|
HRESULT ( *Unadvise)(
|
|
IOleObject *This,
|
|
DWORD dwConnection);
|
|
HRESULT ( *EnumAdvise)(
|
|
IOleObject *This,
|
|
IEnumSTATDATA **ppenumAdvise);
|
|
HRESULT ( *GetMiscStatus)(
|
|
IOleObject *This,
|
|
DWORD dwAspect,
|
|
DWORD *pdwStatus);
|
|
HRESULT ( *SetColorScheme)(
|
|
IOleObject *This,
|
|
LOGPALETTE *pLogpal);
|
|
|
|
} IOleObjectVtbl;
|
|
struct IOleObject {
|
|
IOleObjectVtbl* lpVtbl;
|
|
};
|
|
extern RPC_IF_HANDLE IOLETypes_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE IOLETypes_v0_0_s_ifspec;
|
|
typedef enum tagOLERENDER {
|
|
OLERENDER_NONE = 0,
|
|
OLERENDER_DRAW = 1,
|
|
OLERENDER_FORMAT = 2,
|
|
OLERENDER_ASIS = 3
|
|
} OLERENDER;
|
|
typedef OLERENDER *LPOLERENDER;
|
|
typedef struct tagOBJECTDESCRIPTOR {
|
|
ULONG cbSize;
|
|
CLSID clsid;
|
|
DWORD dwDrawAspect;
|
|
SIZEL sizel;
|
|
POINTL pointl;
|
|
DWORD dwStatus;
|
|
DWORD dwFullUserTypeName;
|
|
DWORD dwSrcOfCopy;
|
|
} OBJECTDESCRIPTOR;
|
|
typedef struct tagOBJECTDESCRIPTOR *POBJECTDESCRIPTOR;
|
|
typedef struct tagOBJECTDESCRIPTOR *LPOBJECTDESCRIPTOR;
|
|
typedef struct tagOBJECTDESCRIPTOR LINKSRCDESCRIPTOR;
|
|
typedef struct tagOBJECTDESCRIPTOR *PLINKSRCDESCRIPTOR;
|
|
typedef struct tagOBJECTDESCRIPTOR *LPLINKSRCDESCRIPTOR;
|
|
typedef IOleWindow *LPOLEWINDOW;
|
|
extern const GUID IID_IOleWindow;
|
|
typedef struct IOleWindowVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleWindow *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleWindow *This);
|
|
ULONG ( *Release)(
|
|
IOleWindow *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleWindow *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleWindow *This,
|
|
WINBOOL fEnterMode);
|
|
|
|
} IOleWindowVtbl;
|
|
struct IOleWindow {
|
|
IOleWindowVtbl* lpVtbl;
|
|
};
|
|
typedef IOleLink *LPOLELINK;
|
|
typedef enum tagOLEUPDATE {
|
|
OLEUPDATE_ALWAYS = 1,
|
|
OLEUPDATE_ONCALL = 3
|
|
} OLEUPDATE;
|
|
typedef OLEUPDATE *LPOLEUPDATE;
|
|
typedef OLEUPDATE *POLEUPDATE;
|
|
typedef enum tagOLELINKBIND {
|
|
OLELINKBIND_EVENIFCLASSDIFF = 1
|
|
} OLELINKBIND;
|
|
extern const GUID IID_IOleLink;
|
|
typedef struct IOleLinkVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleLink *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleLink *This);
|
|
ULONG ( *Release)(
|
|
IOleLink *This);
|
|
HRESULT ( *SetUpdateOptions)(
|
|
IOleLink *This,
|
|
DWORD dwUpdateOpt);
|
|
HRESULT ( *GetUpdateOptions)(
|
|
IOleLink *This,
|
|
DWORD *pdwUpdateOpt);
|
|
HRESULT ( *SetSourceMoniker)(
|
|
IOleLink *This,
|
|
IMoniker *pmk,
|
|
const IID *const rclsid);
|
|
HRESULT ( *GetSourceMoniker)(
|
|
IOleLink *This,
|
|
IMoniker **ppmk);
|
|
HRESULT ( *SetSourceDisplayName)(
|
|
IOleLink *This,
|
|
LPCOLESTR pszStatusText);
|
|
HRESULT ( *GetSourceDisplayName)(
|
|
IOleLink *This,
|
|
LPOLESTR *ppszDisplayName);
|
|
HRESULT ( *BindToSource)(
|
|
IOleLink *This,
|
|
DWORD bindflags,
|
|
IBindCtx *pbc);
|
|
HRESULT ( *BindIfRunning)(
|
|
IOleLink *This);
|
|
HRESULT ( *GetBoundSource)(
|
|
IOleLink *This,
|
|
IUnknown **ppunk);
|
|
HRESULT ( *UnbindSource)(
|
|
IOleLink *This);
|
|
HRESULT ( *Update)(
|
|
IOleLink *This,
|
|
IBindCtx *pbc);
|
|
|
|
} IOleLinkVtbl;
|
|
struct IOleLink {
|
|
IOleLinkVtbl* lpVtbl;
|
|
};
|
|
typedef IOleItemContainer *LPOLEITEMCONTAINER;
|
|
typedef enum tagBINDSPEED {
|
|
BINDSPEED_INDEFINITE = 1,
|
|
BINDSPEED_MODERATE = 2,
|
|
BINDSPEED_IMMEDIATE = 3
|
|
} BINDSPEED;
|
|
typedef enum tagOLECONTF {
|
|
OLECONTF_EMBEDDINGS = 1,
|
|
OLECONTF_LINKS = 2,
|
|
OLECONTF_OTHERS = 4,
|
|
OLECONTF_ONLYUSER = 8,
|
|
OLECONTF_ONLYIFRUNNING = 16
|
|
} OLECONTF;
|
|
extern const GUID IID_IOleItemContainer;
|
|
typedef struct IOleItemContainerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleItemContainer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleItemContainer *This);
|
|
ULONG ( *Release)(
|
|
IOleItemContainer *This);
|
|
HRESULT ( *ParseDisplayName)(
|
|
IOleItemContainer *This,
|
|
IBindCtx *pbc,
|
|
LPOLESTR pszDisplayName,
|
|
ULONG *pchEaten,
|
|
IMoniker **ppmkOut);
|
|
HRESULT ( *EnumObjects)(
|
|
IOleItemContainer *This,
|
|
DWORD grfFlags,
|
|
IEnumUnknown **ppenum);
|
|
HRESULT ( *LockContainer)(
|
|
IOleItemContainer *This,
|
|
WINBOOL fLock);
|
|
HRESULT ( *GetObjectA)(
|
|
IOleItemContainer *This,
|
|
LPOLESTR pszItem,
|
|
DWORD dwSpeedNeeded,
|
|
IBindCtx *pbc,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
HRESULT ( *GetObjectStorage)(
|
|
IOleItemContainer *This,
|
|
LPOLESTR pszItem,
|
|
IBindCtx *pbc,
|
|
const IID *const riid,
|
|
void **ppvStorage);
|
|
HRESULT ( *IsRunning)(
|
|
IOleItemContainer *This,
|
|
LPOLESTR pszItem);
|
|
|
|
} IOleItemContainerVtbl;
|
|
struct IOleItemContainer {
|
|
IOleItemContainerVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
|
|
typedef RECT BORDERWIDTHS;
|
|
typedef LPRECT LPBORDERWIDTHS;
|
|
typedef LPCRECT LPCBORDERWIDTHS;
|
|
extern const GUID IID_IOleInPlaceUIWindow;
|
|
typedef struct IOleInPlaceUIWindowVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceUIWindow *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceUIWindow *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceUIWindow *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceUIWindow *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceUIWindow *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *GetBorder)(
|
|
IOleInPlaceUIWindow *This,
|
|
LPRECT lprectBorder);
|
|
HRESULT ( *RequestBorderSpace)(
|
|
IOleInPlaceUIWindow *This,
|
|
LPCBORDERWIDTHS pborderwidths);
|
|
HRESULT ( *SetBorderSpace)(
|
|
IOleInPlaceUIWindow *This,
|
|
LPCBORDERWIDTHS pborderwidths);
|
|
HRESULT ( *SetActiveObject)(
|
|
IOleInPlaceUIWindow *This,
|
|
IOleInPlaceActiveObject *pActiveObject,
|
|
LPCOLESTR pszObjName);
|
|
|
|
} IOleInPlaceUIWindowVtbl;
|
|
struct IOleInPlaceUIWindow {
|
|
IOleInPlaceUIWindowVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
|
|
extern const GUID IID_IOleInPlaceActiveObject;
|
|
typedef struct IOleInPlaceActiveObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceActiveObject *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceActiveObject *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceActiveObject *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceActiveObject *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceActiveObject *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *TranslateAcceleratorA)(
|
|
IOleInPlaceActiveObject *This,
|
|
LPMSG lpmsg);
|
|
HRESULT ( *OnFrameWindowActivate)(
|
|
IOleInPlaceActiveObject *This,
|
|
WINBOOL fActivate);
|
|
HRESULT ( *OnDocWindowActivate)(
|
|
IOleInPlaceActiveObject *This,
|
|
WINBOOL fActivate);
|
|
HRESULT ( *ResizeBorder)(
|
|
IOleInPlaceActiveObject *This,
|
|
LPCRECT prcBorder,
|
|
IOleInPlaceUIWindow *pUIWindow,
|
|
WINBOOL fFrameWindow);
|
|
HRESULT ( *EnableModeless)(
|
|
IOleInPlaceActiveObject *This,
|
|
WINBOOL fEnable);
|
|
|
|
} IOleInPlaceActiveObjectVtbl;
|
|
struct IOleInPlaceActiveObject {
|
|
IOleInPlaceActiveObjectVtbl* lpVtbl;
|
|
};
|
|
HRESULT IOleInPlaceActiveObject_RemoteTranslateAccelerator_Proxy(
|
|
IOleInPlaceActiveObject* This);
|
|
void IOleInPlaceActiveObject_RemoteTranslateAccelerator_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IOleInPlaceActiveObject_RemoteResizeBorder_Proxy(
|
|
IOleInPlaceActiveObject* This,
|
|
LPCRECT prcBorder,
|
|
const IID *const riid,
|
|
IOleInPlaceUIWindow *pUIWindow,
|
|
WINBOOL fFrameWindow);
|
|
void IOleInPlaceActiveObject_RemoteResizeBorder_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IOleInPlaceActiveObject_TranslateAccelerator_Proxy(
|
|
IOleInPlaceActiveObject* This,
|
|
LPMSG lpmsg);
|
|
HRESULT IOleInPlaceActiveObject_TranslateAccelerator_Stub(
|
|
IOleInPlaceActiveObject* This);
|
|
HRESULT IOleInPlaceActiveObject_ResizeBorder_Proxy(
|
|
IOleInPlaceActiveObject* This,
|
|
LPCRECT prcBorder,
|
|
IOleInPlaceUIWindow *pUIWindow,
|
|
WINBOOL fFrameWindow);
|
|
HRESULT IOleInPlaceActiveObject_ResizeBorder_Stub(
|
|
IOleInPlaceActiveObject* This,
|
|
LPCRECT prcBorder,
|
|
const IID *const riid,
|
|
IOleInPlaceUIWindow *pUIWindow,
|
|
WINBOOL fFrameWindow);
|
|
typedef IOleInPlaceFrame *LPOLEINPLACEFRAME;
|
|
typedef struct tagOIFI {
|
|
UINT cb;
|
|
WINBOOL fMDIApp;
|
|
HWND hwndFrame;
|
|
HACCEL haccel;
|
|
UINT cAccelEntries;
|
|
} OLEINPLACEFRAMEINFO;
|
|
typedef struct tagOIFI *LPOLEINPLACEFRAMEINFO;
|
|
typedef struct tagOleMenuGroupWidths {
|
|
LONG width[6];
|
|
} OLEMENUGROUPWIDTHS;
|
|
typedef struct tagOleMenuGroupWidths *LPOLEMENUGROUPWIDTHS;
|
|
typedef HGLOBAL HOLEMENU;
|
|
extern const GUID IID_IOleInPlaceFrame;
|
|
typedef struct IOleInPlaceFrameVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceFrame *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceFrame *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceFrame *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceFrame *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceFrame *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *GetBorder)(
|
|
IOleInPlaceFrame *This,
|
|
LPRECT lprectBorder);
|
|
HRESULT ( *RequestBorderSpace)(
|
|
IOleInPlaceFrame *This,
|
|
LPCBORDERWIDTHS pborderwidths);
|
|
HRESULT ( *SetBorderSpace)(
|
|
IOleInPlaceFrame *This,
|
|
LPCBORDERWIDTHS pborderwidths);
|
|
HRESULT ( *SetActiveObject)(
|
|
IOleInPlaceFrame *This,
|
|
IOleInPlaceActiveObject *pActiveObject,
|
|
LPCOLESTR pszObjName);
|
|
HRESULT ( *InsertMenus)(
|
|
IOleInPlaceFrame *This,
|
|
HMENU hmenuShared,
|
|
LPOLEMENUGROUPWIDTHS lpMenuWidths);
|
|
HRESULT ( *SetMenu)(
|
|
IOleInPlaceFrame *This,
|
|
HMENU hmenuShared,
|
|
HOLEMENU holemenu,
|
|
HWND hwndActiveObject);
|
|
HRESULT ( *RemoveMenus)(
|
|
IOleInPlaceFrame *This,
|
|
HMENU hmenuShared);
|
|
HRESULT ( *SetStatusText)(
|
|
IOleInPlaceFrame *This,
|
|
LPCOLESTR pszStatusText);
|
|
HRESULT ( *EnableModeless)(
|
|
IOleInPlaceFrame *This,
|
|
WINBOOL fEnable);
|
|
HRESULT ( *TranslateAcceleratorA)(
|
|
IOleInPlaceFrame *This,
|
|
LPMSG lpmsg,
|
|
WORD wID);
|
|
|
|
} IOleInPlaceFrameVtbl;
|
|
struct IOleInPlaceFrame {
|
|
IOleInPlaceFrameVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceObject *LPOLEINPLACEOBJECT;
|
|
extern const GUID IID_IOleInPlaceObject;
|
|
typedef struct IOleInPlaceObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceObject *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceObject *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceObject *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceObject *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceObject *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *InPlaceDeactivate)(
|
|
IOleInPlaceObject *This);
|
|
HRESULT ( *UIDeactivate)(
|
|
IOleInPlaceObject *This);
|
|
HRESULT ( *SetObjectRects)(
|
|
IOleInPlaceObject *This,
|
|
LPCRECT lprcPosRect,
|
|
LPCRECT lprcClipRect);
|
|
HRESULT ( *ReactivateAndUndo)(
|
|
IOleInPlaceObject *This);
|
|
|
|
} IOleInPlaceObjectVtbl;
|
|
struct IOleInPlaceObject {
|
|
IOleInPlaceObjectVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceSite *LPOLEINPLACESITE;
|
|
extern const GUID IID_IOleInPlaceSite;
|
|
typedef struct IOleInPlaceSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceSite *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceSite *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceSite *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *CanInPlaceActivate)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *OnInPlaceActivate)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *OnUIActivate)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *GetWindowContext)(
|
|
IOleInPlaceSite *This,
|
|
IOleInPlaceFrame **ppFrame,
|
|
IOleInPlaceUIWindow **ppDoc,
|
|
LPRECT lprcPosRect,
|
|
LPRECT lprcClipRect,
|
|
LPOLEINPLACEFRAMEINFO lpFrameInfo);
|
|
HRESULT ( *Scroll)(
|
|
IOleInPlaceSite *This,
|
|
SIZE scrollExtant);
|
|
HRESULT ( *OnUIDeactivate)(
|
|
IOleInPlaceSite *This,
|
|
WINBOOL fUndoable);
|
|
HRESULT ( *OnInPlaceDeactivate)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *DiscardUndoState)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *DeactivateAndUndo)(
|
|
IOleInPlaceSite *This);
|
|
HRESULT ( *OnPosRectChange)(
|
|
IOleInPlaceSite *This,
|
|
LPCRECT lprcPosRect);
|
|
|
|
} IOleInPlaceSiteVtbl;
|
|
struct IOleInPlaceSite {
|
|
IOleInPlaceSiteVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IContinue;
|
|
typedef struct IContinueVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IContinue *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IContinue *This);
|
|
ULONG ( *Release)(
|
|
IContinue *This);
|
|
HRESULT ( *FContinue)(
|
|
IContinue *This);
|
|
|
|
} IContinueVtbl;
|
|
struct IContinue {
|
|
IContinueVtbl* lpVtbl;
|
|
};
|
|
typedef IViewObject *LPVIEWOBJECT;
|
|
extern const GUID IID_IViewObject;
|
|
typedef struct IViewObjectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IViewObject *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IViewObject *This);
|
|
ULONG ( *Release)(
|
|
IViewObject *This);
|
|
HRESULT ( *Draw)(
|
|
IViewObject *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hdcTargetDev,
|
|
HDC hdcDraw,
|
|
LPCRECTL lprcBounds,
|
|
LPCRECTL lprcWBounds,
|
|
WINBOOL ( *pfnContinue)(ULONG_PTR dwContinue),
|
|
ULONG_PTR dwContinue);
|
|
HRESULT ( *GetColorSet)(
|
|
IViewObject *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hicTargetDev,
|
|
LOGPALETTE **ppColorSet);
|
|
HRESULT ( *Freeze)(
|
|
IViewObject *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DWORD *pdwFreeze);
|
|
HRESULT ( *Unfreeze)(
|
|
IViewObject *This,
|
|
DWORD dwFreeze);
|
|
HRESULT ( *SetAdvise)(
|
|
IViewObject *This,
|
|
DWORD aspects,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvSink);
|
|
HRESULT ( *GetAdvise)(
|
|
IViewObject *This,
|
|
DWORD *pAspects,
|
|
DWORD *pAdvf,
|
|
IAdviseSink **ppAdvSink);
|
|
|
|
} IViewObjectVtbl;
|
|
struct IViewObject {
|
|
IViewObjectVtbl* lpVtbl;
|
|
};
|
|
HRESULT IViewObject_RemoteDraw_Proxy(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
ULONG_PTR pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hdcTargetDev,
|
|
HDC hdcDraw,
|
|
LPCRECTL lprcBounds,
|
|
LPCRECTL lprcWBounds,
|
|
IContinue *pContinue);
|
|
void IViewObject_RemoteDraw_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IViewObject_RemoteGetColorSet_Proxy(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
ULONG_PTR pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
ULONG_PTR hicTargetDev,
|
|
LOGPALETTE **ppColorSet);
|
|
void IViewObject_RemoteGetColorSet_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IViewObject_RemoteFreeze_Proxy(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
ULONG_PTR pvAspect,
|
|
DWORD *pdwFreeze);
|
|
void IViewObject_RemoteFreeze_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IViewObject_RemoteGetAdvise_Proxy(
|
|
IViewObject* This,
|
|
DWORD *pAspects,
|
|
DWORD *pAdvf,
|
|
IAdviseSink **ppAdvSink);
|
|
void IViewObject_RemoteGetAdvise_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IViewObject_Draw_Proxy(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hdcTargetDev,
|
|
HDC hdcDraw,
|
|
LPCRECTL lprcBounds,
|
|
LPCRECTL lprcWBounds,
|
|
WINBOOL ( *pfnContinue)(ULONG_PTR dwContinue),
|
|
ULONG_PTR dwContinue);
|
|
HRESULT IViewObject_Draw_Stub(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
ULONG_PTR pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hdcTargetDev,
|
|
HDC hdcDraw,
|
|
LPCRECTL lprcBounds,
|
|
LPCRECTL lprcWBounds,
|
|
IContinue *pContinue);
|
|
HRESULT IViewObject_GetColorSet_Proxy(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hicTargetDev,
|
|
LOGPALETTE **ppColorSet);
|
|
HRESULT IViewObject_GetColorSet_Stub(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
ULONG_PTR pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
ULONG_PTR hicTargetDev,
|
|
LOGPALETTE **ppColorSet);
|
|
HRESULT IViewObject_Freeze_Proxy(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DWORD *pdwFreeze);
|
|
HRESULT IViewObject_Freeze_Stub(
|
|
IViewObject* This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
ULONG_PTR pvAspect,
|
|
DWORD *pdwFreeze);
|
|
HRESULT IViewObject_GetAdvise_Proxy(
|
|
IViewObject* This,
|
|
DWORD *pAspects,
|
|
DWORD *pAdvf,
|
|
IAdviseSink **ppAdvSink);
|
|
HRESULT IViewObject_GetAdvise_Stub(
|
|
IViewObject* This,
|
|
DWORD *pAspects,
|
|
DWORD *pAdvf,
|
|
IAdviseSink **ppAdvSink);
|
|
typedef IViewObject2 *LPVIEWOBJECT2;
|
|
extern const GUID IID_IViewObject2;
|
|
typedef struct IViewObject2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IViewObject2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IViewObject2 *This);
|
|
ULONG ( *Release)(
|
|
IViewObject2 *This);
|
|
HRESULT ( *Draw)(
|
|
IViewObject2 *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hdcTargetDev,
|
|
HDC hdcDraw,
|
|
LPCRECTL lprcBounds,
|
|
LPCRECTL lprcWBounds,
|
|
WINBOOL ( *pfnContinue)(ULONG_PTR dwContinue),
|
|
ULONG_PTR dwContinue);
|
|
HRESULT ( *GetColorSet)(
|
|
IViewObject2 *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hicTargetDev,
|
|
LOGPALETTE **ppColorSet);
|
|
HRESULT ( *Freeze)(
|
|
IViewObject2 *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DWORD *pdwFreeze);
|
|
HRESULT ( *Unfreeze)(
|
|
IViewObject2 *This,
|
|
DWORD dwFreeze);
|
|
HRESULT ( *SetAdvise)(
|
|
IViewObject2 *This,
|
|
DWORD aspects,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvSink);
|
|
HRESULT ( *GetAdvise)(
|
|
IViewObject2 *This,
|
|
DWORD *pAspects,
|
|
DWORD *pAdvf,
|
|
IAdviseSink **ppAdvSink);
|
|
HRESULT ( *GetExtent)(
|
|
IViewObject2 *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
DVTARGETDEVICE *ptd,
|
|
LPSIZEL lpsizel);
|
|
|
|
} IViewObject2Vtbl;
|
|
struct IViewObject2 {
|
|
IViewObject2Vtbl* lpVtbl;
|
|
};
|
|
typedef IDropSource *LPDROPSOURCE;
|
|
extern const GUID IID_IDropSource;
|
|
typedef struct IDropSourceVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDropSource *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDropSource *This);
|
|
ULONG ( *Release)(
|
|
IDropSource *This);
|
|
HRESULT ( *QueryContinueDrag)(
|
|
IDropSource *This,
|
|
WINBOOL fEscapePressed,
|
|
DWORD grfKeyState);
|
|
HRESULT ( *GiveFeedback)(
|
|
IDropSource *This,
|
|
DWORD dwEffect);
|
|
|
|
} IDropSourceVtbl;
|
|
struct IDropSource {
|
|
IDropSourceVtbl* lpVtbl;
|
|
};
|
|
typedef IDropTarget *LPDROPTARGET;
|
|
extern const GUID IID_IDropTarget;
|
|
typedef struct IDropTargetVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDropTarget *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDropTarget *This);
|
|
ULONG ( *Release)(
|
|
IDropTarget *This);
|
|
HRESULT ( *DragEnter)(
|
|
IDropTarget *This,
|
|
IDataObject *pDataObj,
|
|
DWORD grfKeyState,
|
|
POINTL pt,
|
|
DWORD *pdwEffect);
|
|
HRESULT ( *DragOver)(
|
|
IDropTarget *This,
|
|
DWORD grfKeyState,
|
|
POINTL pt,
|
|
DWORD *pdwEffect);
|
|
HRESULT ( *DragLeave)(
|
|
IDropTarget *This);
|
|
HRESULT ( *Drop)(
|
|
IDropTarget *This,
|
|
IDataObject *pDataObj,
|
|
DWORD grfKeyState,
|
|
POINTL pt,
|
|
DWORD *pdwEffect);
|
|
|
|
} IDropTargetVtbl;
|
|
struct IDropTarget {
|
|
IDropTargetVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IDropSourceNotify;
|
|
typedef struct IDropSourceNotifyVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDropSourceNotify *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDropSourceNotify *This);
|
|
ULONG ( *Release)(
|
|
IDropSourceNotify *This);
|
|
HRESULT ( *DragEnterTarget)(
|
|
IDropSourceNotify *This,
|
|
HWND hwndTarget);
|
|
HRESULT ( *DragLeaveTarget)(
|
|
IDropSourceNotify *This);
|
|
|
|
} IDropSourceNotifyVtbl;
|
|
struct IDropSourceNotify {
|
|
IDropSourceNotifyVtbl* lpVtbl;
|
|
};
|
|
typedef IEnumOLEVERB *LPENUMOLEVERB;
|
|
typedef struct tagOLEVERB {
|
|
LONG lVerb;
|
|
LPOLESTR lpszVerbName;
|
|
DWORD fuFlags;
|
|
DWORD grfAttribs;
|
|
} OLEVERB;
|
|
typedef struct tagOLEVERB *LPOLEVERB;
|
|
typedef enum tagOLEVERBATTRIB {
|
|
OLEVERBATTRIB_NEVERDIRTIES = 1,
|
|
OLEVERBATTRIB_ONCONTAINERMENU = 2
|
|
} OLEVERBATTRIB;
|
|
extern const GUID IID_IEnumOLEVERB;
|
|
typedef struct IEnumOLEVERBVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumOLEVERB *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumOLEVERB *This);
|
|
ULONG ( *Release)(
|
|
IEnumOLEVERB *This);
|
|
HRESULT ( *Next)(
|
|
IEnumOLEVERB *This,
|
|
ULONG celt,
|
|
LPOLEVERB rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumOLEVERB *This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumOLEVERB *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumOLEVERB *This,
|
|
IEnumOLEVERB **ppenum);
|
|
|
|
} IEnumOLEVERBVtbl;
|
|
struct IEnumOLEVERB {
|
|
IEnumOLEVERBVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumOLEVERB_RemoteNext_Proxy(
|
|
IEnumOLEVERB* This,
|
|
ULONG celt,
|
|
LPOLEVERB rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumOLEVERB_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumOLEVERB_Next_Proxy(
|
|
IEnumOLEVERB* This,
|
|
ULONG celt,
|
|
LPOLEVERB rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumOLEVERB_Next_Stub(
|
|
IEnumOLEVERB* This,
|
|
ULONG celt,
|
|
LPOLEVERB rgelt,
|
|
ULONG *pceltFetched);
|
|
ULONG CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
|
|
void CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
|
|
ULONG STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
|
|
unsigned char * STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
|
|
unsigned char * STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
|
|
void STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
|
|
ULONG HWND_UserSize (ULONG *, ULONG, HWND *);
|
|
unsigned char * HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
|
|
unsigned char * HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
|
|
void HWND_UserFree (ULONG *, HWND *);
|
|
ULONG HMENU_UserSize (ULONG *, ULONG, HMENU *);
|
|
unsigned char * HMENU_UserMarshal (ULONG *, unsigned char *, HMENU *);
|
|
unsigned char * HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *);
|
|
void HMENU_UserFree (ULONG *, HMENU *);
|
|
ULONG HGLOBAL_UserSize (ULONG *, ULONG, HGLOBAL *);
|
|
unsigned char * HGLOBAL_UserMarshal (ULONG *, unsigned char *, HGLOBAL *);
|
|
unsigned char * HGLOBAL_UserUnmarshal(ULONG *, unsigned char *, HGLOBAL *);
|
|
void HGLOBAL_UserFree (ULONG *, HGLOBAL *);
|
|
ULONG HACCEL_UserSize (ULONG *, ULONG, HACCEL *);
|
|
unsigned char * HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *);
|
|
unsigned char * HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *);
|
|
void HACCEL_UserFree (ULONG *, HACCEL *);
|
|
ULONG HDC_UserSize (ULONG *, ULONG, HDC *);
|
|
unsigned char * HDC_UserMarshal (ULONG *, unsigned char *, HDC *);
|
|
unsigned char * HDC_UserUnmarshal(ULONG *, unsigned char *, HDC *);
|
|
void HDC_UserFree (ULONG *, HDC *);
|
|
typedef struct IServiceProvider IServiceProvider;
|
|
typedef IServiceProvider *LPSERVICEPROVIDER;
|
|
extern const GUID IID_IServiceProvider;
|
|
typedef struct IServiceProviderVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IServiceProvider *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IServiceProvider *This);
|
|
ULONG ( *Release)(
|
|
IServiceProvider *This);
|
|
HRESULT ( *QueryService)(
|
|
IServiceProvider *This,
|
|
const GUID *const guidService,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
|
|
} IServiceProviderVtbl;
|
|
struct IServiceProvider {
|
|
IServiceProviderVtbl* lpVtbl;
|
|
};
|
|
HRESULT IServiceProvider_RemoteQueryService_Proxy(
|
|
IServiceProvider* This,
|
|
const GUID *const guidService,
|
|
const IID *const riid,
|
|
IUnknown **ppvObject);
|
|
void IServiceProvider_RemoteQueryService_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IServiceProvider_QueryService_Proxy(
|
|
IServiceProvider* This,
|
|
const GUID *const guidService,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
HRESULT IServiceProvider_QueryService_Stub(
|
|
IServiceProvider* This,
|
|
const GUID *const guidService,
|
|
const IID *const riid,
|
|
IUnknown **ppvObject);
|
|
typedef struct ICreateTypeInfo ICreateTypeInfo;
|
|
typedef struct ICreateTypeInfo2 ICreateTypeInfo2;
|
|
typedef struct ICreateTypeLib ICreateTypeLib;
|
|
typedef struct ICreateTypeLib2 ICreateTypeLib2;
|
|
typedef struct IDispatch IDispatch;
|
|
typedef struct IEnumVARIANT IEnumVARIANT;
|
|
typedef struct ITypeComp ITypeComp;
|
|
typedef struct ITypeInfo ITypeInfo;
|
|
typedef struct ITypeInfo2 ITypeInfo2;
|
|
typedef struct ITypeLib ITypeLib;
|
|
typedef struct ITypeLib2 ITypeLib2;
|
|
typedef struct ITypeChangeEvents ITypeChangeEvents;
|
|
typedef struct IErrorInfo IErrorInfo;
|
|
typedef struct ICreateErrorInfo ICreateErrorInfo;
|
|
typedef struct ISupportErrorInfo ISupportErrorInfo;
|
|
typedef struct ITypeFactory ITypeFactory;
|
|
typedef struct ITypeMarshal ITypeMarshal;
|
|
typedef struct IRecordInfo IRecordInfo;
|
|
typedef struct IErrorLog IErrorLog;
|
|
typedef struct IPropertyBag IPropertyBag;
|
|
extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_c_ifspec;
|
|
extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_s_ifspec;
|
|
typedef CY CURRENCY;
|
|
typedef struct tagSAFEARRAYBOUND {
|
|
ULONG cElements;
|
|
LONG lLbound;
|
|
} SAFEARRAYBOUND;
|
|
typedef struct tagSAFEARRAYBOUND *LPSAFEARRAYBOUND;
|
|
typedef struct _wireVARIANT *wireVARIANT;
|
|
typedef struct _wireBRECORD *wireBRECORD;
|
|
typedef struct _wireSAFEARR_BSTR {
|
|
ULONG Size;
|
|
wireBSTR *aBstr;
|
|
} SAFEARR_BSTR;
|
|
typedef struct _wireSAFEARR_UNKNOWN {
|
|
ULONG Size;
|
|
IUnknown **apUnknown;
|
|
} SAFEARR_UNKNOWN;
|
|
typedef struct _wireSAFEARR_DISPATCH {
|
|
ULONG Size;
|
|
IDispatch **apDispatch;
|
|
} SAFEARR_DISPATCH;
|
|
typedef struct _wireSAFEARR_VARIANT {
|
|
ULONG Size;
|
|
wireVARIANT *aVariant;
|
|
} SAFEARR_VARIANT;
|
|
typedef struct _wireSAFEARR_BRECORD {
|
|
ULONG Size;
|
|
wireBRECORD *aRecord;
|
|
} SAFEARR_BRECORD;
|
|
typedef struct _wireSAFEARR_HAVEIID {
|
|
ULONG Size;
|
|
IUnknown **apUnknown;
|
|
IID iid;
|
|
} SAFEARR_HAVEIID;
|
|
typedef enum tagSF_TYPE {
|
|
SF_ERROR = VT_ERROR,
|
|
SF_I1 = VT_I1,
|
|
SF_I2 = VT_I2,
|
|
SF_I4 = VT_I4,
|
|
SF_I8 = VT_I8,
|
|
SF_BSTR = VT_BSTR,
|
|
SF_UNKNOWN = VT_UNKNOWN,
|
|
SF_DISPATCH = VT_DISPATCH,
|
|
SF_VARIANT = VT_VARIANT,
|
|
SF_RECORD = VT_RECORD,
|
|
SF_HAVEIID = VT_UNKNOWN | VT_RESERVED
|
|
} SF_TYPE;
|
|
typedef struct _wireSAFEARRAY_UNION {
|
|
ULONG sfType;
|
|
union {
|
|
SAFEARR_BSTR BstrStr;
|
|
SAFEARR_UNKNOWN UnknownStr;
|
|
SAFEARR_DISPATCH DispatchStr;
|
|
SAFEARR_VARIANT VariantStr;
|
|
SAFEARR_BRECORD RecordStr;
|
|
SAFEARR_HAVEIID HaveIidStr;
|
|
BYTE_SIZEDARR ByteStr;
|
|
WORD_SIZEDARR WordStr;
|
|
DWORD_SIZEDARR LongStr;
|
|
HYPER_SIZEDARR HyperStr;
|
|
} u;
|
|
} SAFEARRAYUNION;
|
|
typedef struct _wireSAFEARRAY {
|
|
USHORT cDims;
|
|
USHORT fFeatures;
|
|
ULONG cbElements;
|
|
ULONG cLocks;
|
|
SAFEARRAYUNION uArrayStructs;
|
|
SAFEARRAYBOUND rgsabound[1];
|
|
} *wireSAFEARRAY;
|
|
typedef wireSAFEARRAY *wirePSAFEARRAY;
|
|
typedef struct tagSAFEARRAY {
|
|
USHORT cDims;
|
|
USHORT fFeatures;
|
|
ULONG cbElements;
|
|
ULONG cLocks;
|
|
PVOID pvData;
|
|
SAFEARRAYBOUND rgsabound[1];
|
|
} SAFEARRAY;
|
|
typedef SAFEARRAY *LPSAFEARRAY;
|
|
typedef struct tagVARIANT VARIANT;
|
|
struct tagVARIANT {
|
|
union {
|
|
struct {
|
|
VARTYPE vt;
|
|
WORD wReserved1;
|
|
WORD wReserved2;
|
|
WORD wReserved3;
|
|
union {
|
|
LONGLONG llVal;
|
|
LONG lVal;
|
|
BYTE bVal;
|
|
SHORT iVal;
|
|
FLOAT fltVal;
|
|
DOUBLE dblVal;
|
|
VARIANT_BOOL boolVal;
|
|
SCODE scode;
|
|
CY cyVal;
|
|
DATE date;
|
|
BSTR bstrVal;
|
|
IUnknown *punkVal;
|
|
IDispatch *pdispVal;
|
|
SAFEARRAY *parray;
|
|
BYTE *pbVal;
|
|
SHORT *piVal;
|
|
LONG *plVal;
|
|
LONGLONG *pllVal;
|
|
FLOAT *pfltVal;
|
|
DOUBLE *pdblVal;
|
|
VARIANT_BOOL *pboolVal;
|
|
SCODE *pscode;
|
|
CY *pcyVal;
|
|
DATE *pdate;
|
|
BSTR *pbstrVal;
|
|
IUnknown **ppunkVal;
|
|
IDispatch **ppdispVal;
|
|
SAFEARRAY **pparray;
|
|
VARIANT *pvarVal;
|
|
PVOID byref;
|
|
CHAR cVal;
|
|
USHORT uiVal;
|
|
ULONG ulVal;
|
|
ULONGLONG ullVal;
|
|
INT intVal;
|
|
UINT uintVal;
|
|
DECIMAL *pdecVal;
|
|
CHAR *pcVal;
|
|
USHORT *puiVal;
|
|
ULONG *pulVal;
|
|
ULONGLONG *pullVal;
|
|
INT *pintVal;
|
|
UINT *puintVal;
|
|
struct {
|
|
PVOID pvRecord;
|
|
IRecordInfo *pRecInfo;
|
|
} ;
|
|
} ;
|
|
} ;
|
|
DECIMAL decVal;
|
|
} ;
|
|
};
|
|
typedef VARIANT *LPVARIANT;
|
|
typedef VARIANT VARIANTARG;
|
|
typedef VARIANT *LPVARIANTARG;
|
|
struct _wireBRECORD {
|
|
ULONG fFlags;
|
|
ULONG clSize;
|
|
IRecordInfo *pRecInfo;
|
|
byte *pRecord;
|
|
};
|
|
struct _wireVARIANT {
|
|
DWORD clSize;
|
|
DWORD rpcReserved;
|
|
USHORT vt;
|
|
USHORT wReserved1;
|
|
USHORT wReserved2;
|
|
USHORT wReserved3;
|
|
__extension__ union {
|
|
LONGLONG llVal;
|
|
LONG lVal;
|
|
BYTE bVal;
|
|
SHORT iVal;
|
|
FLOAT fltVal;
|
|
DOUBLE dblVal;
|
|
VARIANT_BOOL boolVal;
|
|
SCODE scode;
|
|
CY cyVal;
|
|
DATE date;
|
|
wireBSTR bstrVal;
|
|
IUnknown *punkVal;
|
|
IDispatch *pdispVal;
|
|
wirePSAFEARRAY parray;
|
|
wireBRECORD brecVal;
|
|
BYTE *pbVal;
|
|
SHORT *piVal;
|
|
LONG *plVal;
|
|
LONGLONG *pllVal;
|
|
FLOAT *pfltVal;
|
|
DOUBLE *pdblVal;
|
|
VARIANT_BOOL *pboolVal;
|
|
SCODE *pscode;
|
|
CY *pcyVal;
|
|
DATE *pdate;
|
|
wireBSTR *pbstrVal;
|
|
IUnknown **ppunkVal;
|
|
IDispatch **ppdispVal;
|
|
wirePSAFEARRAY *pparray;
|
|
wireVARIANT *pvarVal;
|
|
CHAR cVal;
|
|
USHORT uiVal;
|
|
ULONG ulVal;
|
|
ULONGLONG ullVal;
|
|
INT intVal;
|
|
UINT uintVal;
|
|
DECIMAL decVal;
|
|
DECIMAL *pdecVal;
|
|
CHAR *pcVal;
|
|
USHORT *puiVal;
|
|
ULONG *pulVal;
|
|
ULONGLONG *pullVal;
|
|
INT *pintVal;
|
|
UINT *puintVal;
|
|
} ;
|
|
};
|
|
typedef LONG DISPID;
|
|
typedef DISPID MEMBERID;
|
|
typedef DWORD HREFTYPE;
|
|
typedef enum tagTYPEKIND {
|
|
TKIND_ENUM = 0,
|
|
TKIND_RECORD = 1,
|
|
TKIND_MODULE = 2,
|
|
TKIND_INTERFACE = 3,
|
|
TKIND_DISPATCH = 4,
|
|
TKIND_COCLASS = 5,
|
|
TKIND_ALIAS = 6,
|
|
TKIND_UNION = 7,
|
|
TKIND_MAX = 8
|
|
} TYPEKIND;
|
|
typedef struct tagTYPEDESC {
|
|
__extension__ union {
|
|
struct tagTYPEDESC *lptdesc;
|
|
struct tagARRAYDESC *lpadesc;
|
|
HREFTYPE hreftype;
|
|
} ;
|
|
VARTYPE vt;
|
|
} TYPEDESC;
|
|
typedef struct tagARRAYDESC {
|
|
TYPEDESC tdescElem;
|
|
USHORT cDims;
|
|
SAFEARRAYBOUND rgbounds[1];
|
|
} ARRAYDESC;
|
|
typedef struct tagPARAMDESCEX {
|
|
ULONG cBytes;
|
|
VARIANTARG varDefaultValue;
|
|
} PARAMDESCEX;
|
|
typedef struct tagPARAMDESCEX *LPPARAMDESCEX;
|
|
typedef struct tagPARAMDESC {
|
|
LPPARAMDESCEX pparamdescex;
|
|
USHORT wParamFlags;
|
|
} PARAMDESC;
|
|
typedef struct tagPARAMDESC *LPPARAMDESC;
|
|
typedef struct tagIDLDESC {
|
|
ULONG_PTR dwReserved;
|
|
USHORT wIDLFlags;
|
|
} IDLDESC;
|
|
typedef struct tagIDLDESC *LPIDLDESC;
|
|
typedef struct tagELEMDESC {
|
|
TYPEDESC tdesc;
|
|
__extension__ union {
|
|
IDLDESC idldesc;
|
|
PARAMDESC paramdesc;
|
|
} ;
|
|
} ELEMDESC,*LPELEMDESC;
|
|
typedef struct tagTYPEATTR {
|
|
GUID guid;
|
|
LCID lcid;
|
|
DWORD dwReserved;
|
|
MEMBERID memidConstructor;
|
|
MEMBERID memidDestructor;
|
|
LPOLESTR lpstrSchema;
|
|
ULONG cbSizeInstance;
|
|
TYPEKIND typekind;
|
|
WORD cFuncs;
|
|
WORD cVars;
|
|
WORD cImplTypes;
|
|
WORD cbSizeVft;
|
|
WORD cbAlignment;
|
|
WORD wTypeFlags;
|
|
WORD wMajorVerNum;
|
|
WORD wMinorVerNum;
|
|
TYPEDESC tdescAlias;
|
|
IDLDESC idldescType;
|
|
} TYPEATTR;
|
|
typedef struct tagTYPEATTR *LPTYPEATTR;
|
|
typedef struct tagDISPPARAMS {
|
|
VARIANTARG *rgvarg;
|
|
DISPID *rgdispidNamedArgs;
|
|
UINT cArgs;
|
|
UINT cNamedArgs;
|
|
} DISPPARAMS;
|
|
typedef struct tagEXCEPINFO {
|
|
WORD wCode;
|
|
WORD wReserved;
|
|
BSTR bstrSource;
|
|
BSTR bstrDescription;
|
|
BSTR bstrHelpFile;
|
|
DWORD dwHelpContext;
|
|
PVOID pvReserved;
|
|
HRESULT ( *pfnDeferredFillIn)(struct tagEXCEPINFO *);
|
|
SCODE scode;
|
|
} EXCEPINFO, *LPEXCEPINFO;
|
|
typedef enum tagCALLCONV {
|
|
CC_FASTCALL = 0,
|
|
CC_CDECL = 1,
|
|
CC_MSCPASCAL = 2,
|
|
CC_PASCAL = CC_MSCPASCAL,
|
|
CC_MACPASCAL = 3,
|
|
CC_STDCALL = 4,
|
|
CC_FPFASTCALL = 5,
|
|
CC_SYSCALL = 6,
|
|
CC_MPWCDECL = 7,
|
|
CC_MPWPASCAL = 8,
|
|
CC_MAX = 9
|
|
} CALLCONV;
|
|
typedef enum tagFUNCKIND {
|
|
FUNC_VIRTUAL = 0,
|
|
FUNC_PUREVIRTUAL = 1,
|
|
FUNC_NONVIRTUAL = 2,
|
|
FUNC_STATIC = 3,
|
|
FUNC_DISPATCH = 4
|
|
} FUNCKIND;
|
|
typedef enum tagINVOKEKIND {
|
|
INVOKE_FUNC = 1,
|
|
INVOKE_PROPERTYGET = 2,
|
|
INVOKE_PROPERTYPUT = 4,
|
|
INVOKE_PROPERTYPUTREF = 8
|
|
} INVOKEKIND;
|
|
typedef struct tagFUNCDESC {
|
|
MEMBERID memid;
|
|
SCODE *lprgscode;
|
|
ELEMDESC *lprgelemdescParam;
|
|
FUNCKIND funckind;
|
|
INVOKEKIND invkind;
|
|
CALLCONV callconv;
|
|
SHORT cParams;
|
|
SHORT cParamsOpt;
|
|
SHORT oVft;
|
|
SHORT cScodes;
|
|
ELEMDESC elemdescFunc;
|
|
WORD wFuncFlags;
|
|
} FUNCDESC;
|
|
typedef struct tagFUNCDESC *LPFUNCDESC;
|
|
typedef enum tagVARKIND {
|
|
VAR_PERINSTANCE = 0,
|
|
VAR_STATIC = 1,
|
|
VAR_CONST = 2,
|
|
VAR_DISPATCH = 3
|
|
} VARKIND;
|
|
typedef struct tagVARDESC {
|
|
MEMBERID memid;
|
|
LPOLESTR lpstrSchema;
|
|
__extension__ union {
|
|
ULONG oInst;
|
|
VARIANT *lpvarValue;
|
|
} ;
|
|
ELEMDESC elemdescVar;
|
|
WORD wVarFlags;
|
|
VARKIND varkind;
|
|
} VARDESC;
|
|
typedef struct tagVARDESC *LPVARDESC;
|
|
typedef enum tagTYPEFLAGS {
|
|
TYPEFLAG_FAPPOBJECT = 0x1,
|
|
TYPEFLAG_FCANCREATE = 0x2,
|
|
TYPEFLAG_FLICENSED = 0x4,
|
|
TYPEFLAG_FPREDECLID = 0x8,
|
|
TYPEFLAG_FHIDDEN = 0x10,
|
|
TYPEFLAG_FCONTROL = 0x20,
|
|
TYPEFLAG_FDUAL = 0x40,
|
|
TYPEFLAG_FNONEXTENSIBLE = 0x80,
|
|
TYPEFLAG_FOLEAUTOMATION = 0x100,
|
|
TYPEFLAG_FRESTRICTED = 0x200,
|
|
TYPEFLAG_FAGGREGATABLE = 0x400,
|
|
TYPEFLAG_FREPLACEABLE = 0x800,
|
|
TYPEFLAG_FDISPATCHABLE = 0x1000,
|
|
TYPEFLAG_FREVERSEBIND = 0x2000,
|
|
TYPEFLAG_FPROXY = 0x4000
|
|
} TYPEFLAGS;
|
|
typedef enum tagFUNCFLAGS {
|
|
FUNCFLAG_FRESTRICTED = 0x1,
|
|
FUNCFLAG_FSOURCE = 0x2,
|
|
FUNCFLAG_FBINDABLE = 0x4,
|
|
FUNCFLAG_FREQUESTEDIT = 0x8,
|
|
FUNCFLAG_FDISPLAYBIND = 0x10,
|
|
FUNCFLAG_FDEFAULTBIND = 0x20,
|
|
FUNCFLAG_FHIDDEN = 0x40,
|
|
FUNCFLAG_FUSESGETLASTERROR = 0x80,
|
|
FUNCFLAG_FDEFAULTCOLLELEM = 0x100,
|
|
FUNCFLAG_FUIDEFAULT = 0x200,
|
|
FUNCFLAG_FNONBROWSABLE = 0x400,
|
|
FUNCFLAG_FREPLACEABLE = 0x800,
|
|
FUNCFLAG_FIMMEDIATEBIND = 0x1000
|
|
} FUNCFLAGS;
|
|
typedef enum tagVARFLAGS {
|
|
VARFLAG_FREADONLY = 0x1,
|
|
VARFLAG_FSOURCE = 0x2,
|
|
VARFLAG_FBINDABLE = 0x4,
|
|
VARFLAG_FREQUESTEDIT = 0x8,
|
|
VARFLAG_FDISPLAYBIND = 0x10,
|
|
VARFLAG_FDEFAULTBIND = 0x20,
|
|
VARFLAG_FHIDDEN = 0x40,
|
|
VARFLAG_FRESTRICTED = 0x80,
|
|
VARFLAG_FDEFAULTCOLLELEM = 0x100,
|
|
VARFLAG_FUIDEFAULT = 0x200,
|
|
VARFLAG_FNONBROWSABLE = 0x400,
|
|
VARFLAG_FREPLACEABLE = 0x800,
|
|
VARFLAG_FIMMEDIATEBIND = 0x1000
|
|
} VARFLAGS;
|
|
typedef struct tagCLEANLOCALSTORAGE {
|
|
IUnknown *pInterface;
|
|
PVOID pStorage;
|
|
DWORD flags;
|
|
} CLEANLOCALSTORAGE;
|
|
typedef struct tagCUSTDATAITEM {
|
|
GUID guid;
|
|
VARIANTARG varValue;
|
|
} CUSTDATAITEM;
|
|
typedef struct tagCUSTDATAITEM *LPCUSTDATAITEM;
|
|
typedef struct tagCUSTDATA {
|
|
DWORD cCustData;
|
|
LPCUSTDATAITEM prgCustData;
|
|
} CUSTDATA;
|
|
typedef struct tagCUSTDATA *LPCUSTDATA;
|
|
typedef ICreateTypeInfo *LPCREATETYPEINFO;
|
|
extern const GUID IID_ICreateTypeInfo;
|
|
typedef struct ICreateTypeInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICreateTypeInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICreateTypeInfo *This);
|
|
ULONG ( *Release)(
|
|
ICreateTypeInfo *This);
|
|
HRESULT ( *SetGuid)(
|
|
ICreateTypeInfo *This,
|
|
const GUID *const guid);
|
|
HRESULT ( *SetTypeFlags)(
|
|
ICreateTypeInfo *This,
|
|
UINT uTypeFlags);
|
|
HRESULT ( *SetDocString)(
|
|
ICreateTypeInfo *This,
|
|
LPOLESTR pStrDoc);
|
|
HRESULT ( *SetHelpContext)(
|
|
ICreateTypeInfo *This,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetVersion)(
|
|
ICreateTypeInfo *This,
|
|
WORD wMajorVerNum,
|
|
WORD wMinorVerNum);
|
|
HRESULT ( *AddRefTypeInfo)(
|
|
ICreateTypeInfo *This,
|
|
ITypeInfo *pTInfo,
|
|
HREFTYPE *phRefType);
|
|
HRESULT ( *AddFuncDesc)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
FUNCDESC *pFuncDesc);
|
|
HRESULT ( *AddImplType)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
HREFTYPE hRefType);
|
|
HRESULT ( *SetImplTypeFlags)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
INT implTypeFlags);
|
|
HRESULT ( *SetAlignment)(
|
|
ICreateTypeInfo *This,
|
|
WORD cbAlignment);
|
|
HRESULT ( *SetSchema)(
|
|
ICreateTypeInfo *This,
|
|
LPOLESTR pStrSchema);
|
|
HRESULT ( *AddVarDesc)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
VARDESC *pVarDesc);
|
|
HRESULT ( *SetFuncAndParamNames)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames);
|
|
HRESULT ( *SetVarName)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
LPOLESTR szName);
|
|
HRESULT ( *SetTypeDescAlias)(
|
|
ICreateTypeInfo *This,
|
|
TYPEDESC *pTDescAlias);
|
|
HRESULT ( *DefineFuncAsDllEntry)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
LPOLESTR szDllName,
|
|
LPOLESTR szProcName);
|
|
HRESULT ( *SetFuncDocString)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
LPOLESTR szDocString);
|
|
HRESULT ( *SetVarDocString)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
LPOLESTR szDocString);
|
|
HRESULT ( *SetFuncHelpContext)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetVarHelpContext)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetMops)(
|
|
ICreateTypeInfo *This,
|
|
UINT index,
|
|
BSTR bstrMops);
|
|
HRESULT ( *SetTypeIdldesc)(
|
|
ICreateTypeInfo *This,
|
|
IDLDESC *pIdlDesc);
|
|
HRESULT ( *LayOut)(
|
|
ICreateTypeInfo *This);
|
|
|
|
} ICreateTypeInfoVtbl;
|
|
struct ICreateTypeInfo {
|
|
ICreateTypeInfoVtbl* lpVtbl;
|
|
};
|
|
typedef ICreateTypeInfo2 *LPCREATETYPEINFO2;
|
|
extern const GUID IID_ICreateTypeInfo2;
|
|
typedef struct ICreateTypeInfo2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICreateTypeInfo2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICreateTypeInfo2 *This);
|
|
ULONG ( *Release)(
|
|
ICreateTypeInfo2 *This);
|
|
HRESULT ( *SetGuid)(
|
|
ICreateTypeInfo2 *This,
|
|
const GUID *const guid);
|
|
HRESULT ( *SetTypeFlags)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT uTypeFlags);
|
|
HRESULT ( *SetDocString)(
|
|
ICreateTypeInfo2 *This,
|
|
LPOLESTR pStrDoc);
|
|
HRESULT ( *SetHelpContext)(
|
|
ICreateTypeInfo2 *This,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetVersion)(
|
|
ICreateTypeInfo2 *This,
|
|
WORD wMajorVerNum,
|
|
WORD wMinorVerNum);
|
|
HRESULT ( *AddRefTypeInfo)(
|
|
ICreateTypeInfo2 *This,
|
|
ITypeInfo *pTInfo,
|
|
HREFTYPE *phRefType);
|
|
HRESULT ( *AddFuncDesc)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
FUNCDESC *pFuncDesc);
|
|
HRESULT ( *AddImplType)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
HREFTYPE hRefType);
|
|
HRESULT ( *SetImplTypeFlags)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
INT implTypeFlags);
|
|
HRESULT ( *SetAlignment)(
|
|
ICreateTypeInfo2 *This,
|
|
WORD cbAlignment);
|
|
HRESULT ( *SetSchema)(
|
|
ICreateTypeInfo2 *This,
|
|
LPOLESTR pStrSchema);
|
|
HRESULT ( *AddVarDesc)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
VARDESC *pVarDesc);
|
|
HRESULT ( *SetFuncAndParamNames)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames);
|
|
HRESULT ( *SetVarName)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
LPOLESTR szName);
|
|
HRESULT ( *SetTypeDescAlias)(
|
|
ICreateTypeInfo2 *This,
|
|
TYPEDESC *pTDescAlias);
|
|
HRESULT ( *DefineFuncAsDllEntry)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
LPOLESTR szDllName,
|
|
LPOLESTR szProcName);
|
|
HRESULT ( *SetFuncDocString)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
LPOLESTR szDocString);
|
|
HRESULT ( *SetVarDocString)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
LPOLESTR szDocString);
|
|
HRESULT ( *SetFuncHelpContext)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetVarHelpContext)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetMops)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
BSTR bstrMops);
|
|
HRESULT ( *SetTypeIdldesc)(
|
|
ICreateTypeInfo2 *This,
|
|
IDLDESC *pIdlDesc);
|
|
HRESULT ( *LayOut)(
|
|
ICreateTypeInfo2 *This);
|
|
HRESULT ( *DeleteFuncDesc)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index);
|
|
HRESULT ( *DeleteFuncDescByMemId)(
|
|
ICreateTypeInfo2 *This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind);
|
|
HRESULT ( *DeleteVarDesc)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index);
|
|
HRESULT ( *DeleteVarDescByMemId)(
|
|
ICreateTypeInfo2 *This,
|
|
MEMBERID memid);
|
|
HRESULT ( *DeleteImplType)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index);
|
|
HRESULT ( *SetCustData)(
|
|
ICreateTypeInfo2 *This,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *SetFuncCustData)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *SetParamCustData)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT indexFunc,
|
|
UINT indexParam,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *SetVarCustData)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *SetImplTypeCustData)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *SetHelpStringContext)(
|
|
ICreateTypeInfo2 *This,
|
|
ULONG dwHelpStringContext);
|
|
HRESULT ( *SetFuncHelpStringContext)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
ULONG dwHelpStringContext);
|
|
HRESULT ( *SetVarHelpStringContext)(
|
|
ICreateTypeInfo2 *This,
|
|
UINT index,
|
|
ULONG dwHelpStringContext);
|
|
HRESULT ( *Invalidate)(
|
|
ICreateTypeInfo2 *This);
|
|
HRESULT ( *SetName)(
|
|
ICreateTypeInfo2 *This,
|
|
LPOLESTR szName);
|
|
|
|
} ICreateTypeInfo2Vtbl;
|
|
struct ICreateTypeInfo2 {
|
|
ICreateTypeInfo2Vtbl* lpVtbl;
|
|
};
|
|
typedef ICreateTypeLib *LPCREATETYPELIB;
|
|
extern const GUID IID_ICreateTypeLib;
|
|
typedef struct ICreateTypeLibVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICreateTypeLib *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICreateTypeLib *This);
|
|
ULONG ( *Release)(
|
|
ICreateTypeLib *This);
|
|
HRESULT ( *CreateTypeInfo)(
|
|
ICreateTypeLib *This,
|
|
LPOLESTR szName,
|
|
TYPEKIND tkind,
|
|
ICreateTypeInfo **ppCTInfo);
|
|
HRESULT ( *SetName)(
|
|
ICreateTypeLib *This,
|
|
LPOLESTR szName);
|
|
HRESULT ( *SetVersion)(
|
|
ICreateTypeLib *This,
|
|
WORD wMajorVerNum,
|
|
WORD wMinorVerNum);
|
|
HRESULT ( *SetGuid)(
|
|
ICreateTypeLib *This,
|
|
const GUID *const guid);
|
|
HRESULT ( *SetDocString)(
|
|
ICreateTypeLib *This,
|
|
LPOLESTR szDoc);
|
|
HRESULT ( *SetHelpFileName)(
|
|
ICreateTypeLib *This,
|
|
LPOLESTR szHelpFileName);
|
|
HRESULT ( *SetHelpContext)(
|
|
ICreateTypeLib *This,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetLcid)(
|
|
ICreateTypeLib *This,
|
|
LCID lcid);
|
|
HRESULT ( *SetLibFlags)(
|
|
ICreateTypeLib *This,
|
|
UINT uLibFlags);
|
|
HRESULT ( *SaveAllChanges)(
|
|
ICreateTypeLib *This);
|
|
|
|
} ICreateTypeLibVtbl;
|
|
struct ICreateTypeLib {
|
|
ICreateTypeLibVtbl* lpVtbl;
|
|
};
|
|
typedef ICreateTypeLib2 *LPCREATETYPELIB2;
|
|
extern const GUID IID_ICreateTypeLib2;
|
|
typedef struct ICreateTypeLib2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICreateTypeLib2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICreateTypeLib2 *This);
|
|
ULONG ( *Release)(
|
|
ICreateTypeLib2 *This);
|
|
HRESULT ( *CreateTypeInfo)(
|
|
ICreateTypeLib2 *This,
|
|
LPOLESTR szName,
|
|
TYPEKIND tkind,
|
|
ICreateTypeInfo **ppCTInfo);
|
|
HRESULT ( *SetName)(
|
|
ICreateTypeLib2 *This,
|
|
LPOLESTR szName);
|
|
HRESULT ( *SetVersion)(
|
|
ICreateTypeLib2 *This,
|
|
WORD wMajorVerNum,
|
|
WORD wMinorVerNum);
|
|
HRESULT ( *SetGuid)(
|
|
ICreateTypeLib2 *This,
|
|
const GUID *const guid);
|
|
HRESULT ( *SetDocString)(
|
|
ICreateTypeLib2 *This,
|
|
LPOLESTR szDoc);
|
|
HRESULT ( *SetHelpFileName)(
|
|
ICreateTypeLib2 *This,
|
|
LPOLESTR szHelpFileName);
|
|
HRESULT ( *SetHelpContext)(
|
|
ICreateTypeLib2 *This,
|
|
DWORD dwHelpContext);
|
|
HRESULT ( *SetLcid)(
|
|
ICreateTypeLib2 *This,
|
|
LCID lcid);
|
|
HRESULT ( *SetLibFlags)(
|
|
ICreateTypeLib2 *This,
|
|
UINT uLibFlags);
|
|
HRESULT ( *SaveAllChanges)(
|
|
ICreateTypeLib2 *This);
|
|
HRESULT ( *DeleteTypeInfo)(
|
|
ICreateTypeLib2 *This,
|
|
LPOLESTR szName);
|
|
HRESULT ( *SetCustData)(
|
|
ICreateTypeLib2 *This,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *SetHelpStringContext)(
|
|
ICreateTypeLib2 *This,
|
|
ULONG dwHelpStringContext);
|
|
HRESULT ( *SetHelpStringDll)(
|
|
ICreateTypeLib2 *This,
|
|
LPOLESTR szFileName);
|
|
|
|
} ICreateTypeLib2Vtbl;
|
|
struct ICreateTypeLib2 {
|
|
ICreateTypeLib2Vtbl* lpVtbl;
|
|
};
|
|
typedef IDispatch *LPDISPATCH;
|
|
extern const GUID IID_IDispatch;
|
|
typedef struct IDispatchVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDispatch *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDispatch *This);
|
|
ULONG ( *Release)(
|
|
IDispatch *This);
|
|
HRESULT ( *GetTypeInfoCount)(
|
|
IDispatch *This,
|
|
UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(
|
|
IDispatch *This,
|
|
UINT iTInfo,
|
|
LCID lcid,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(
|
|
IDispatch *This,
|
|
const IID *const riid,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
LCID lcid,
|
|
DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(
|
|
IDispatch *This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
|
|
} IDispatchVtbl;
|
|
struct IDispatch {
|
|
IDispatchVtbl* lpVtbl;
|
|
};
|
|
HRESULT IDispatch_RemoteInvoke_Proxy(
|
|
IDispatch* This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
DWORD dwFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *pArgErr,
|
|
UINT cVarRef,
|
|
UINT *rgVarRefIdx,
|
|
VARIANTARG *rgVarRef);
|
|
void IDispatch_RemoteInvoke_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IDispatch_Invoke_Proxy(
|
|
IDispatch* This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
HRESULT IDispatch_Invoke_Stub(
|
|
IDispatch* This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
DWORD dwFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *pArgErr,
|
|
UINT cVarRef,
|
|
UINT *rgVarRefIdx,
|
|
VARIANTARG *rgVarRef);
|
|
typedef IEnumVARIANT *LPENUMVARIANT;
|
|
extern const GUID IID_IEnumVARIANT;
|
|
typedef struct IEnumVARIANTVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumVARIANT *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumVARIANT *This);
|
|
ULONG ( *Release)(
|
|
IEnumVARIANT *This);
|
|
HRESULT ( *Next)(
|
|
IEnumVARIANT *This,
|
|
ULONG celt,
|
|
VARIANT *rgVar,
|
|
ULONG *pCeltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumVARIANT *This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumVARIANT *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumVARIANT *This,
|
|
IEnumVARIANT **ppEnum);
|
|
|
|
} IEnumVARIANTVtbl;
|
|
struct IEnumVARIANT {
|
|
IEnumVARIANTVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumVARIANT_RemoteNext_Proxy(
|
|
IEnumVARIANT* This,
|
|
ULONG celt,
|
|
VARIANT *rgVar,
|
|
ULONG *pCeltFetched);
|
|
void IEnumVARIANT_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumVARIANT_Next_Proxy(
|
|
IEnumVARIANT* This,
|
|
ULONG celt,
|
|
VARIANT *rgVar,
|
|
ULONG *pCeltFetched);
|
|
HRESULT IEnumVARIANT_Next_Stub(
|
|
IEnumVARIANT* This,
|
|
ULONG celt,
|
|
VARIANT *rgVar,
|
|
ULONG *pCeltFetched);
|
|
typedef ITypeComp *LPTYPECOMP;
|
|
typedef enum tagDESCKIND {
|
|
DESCKIND_NONE = 0,
|
|
DESCKIND_FUNCDESC = 1,
|
|
DESCKIND_VARDESC = 2,
|
|
DESCKIND_TYPECOMP = 3,
|
|
DESCKIND_IMPLICITAPPOBJ = 4,
|
|
DESCKIND_MAX = 5
|
|
} DESCKIND;
|
|
typedef union tagBINDPTR {
|
|
FUNCDESC *lpfuncdesc;
|
|
VARDESC *lpvardesc;
|
|
ITypeComp *lptcomp;
|
|
} BINDPTR;
|
|
typedef union tagBINDPTR *LPBINDPTR;
|
|
extern const GUID IID_ITypeComp;
|
|
typedef struct ITypeCompVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeComp *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeComp *This);
|
|
ULONG ( *Release)(
|
|
ITypeComp *This);
|
|
HRESULT ( *Bind)(
|
|
ITypeComp *This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
WORD wFlags,
|
|
ITypeInfo **ppTInfo,
|
|
DESCKIND *pDescKind,
|
|
BINDPTR *pBindPtr);
|
|
HRESULT ( *BindType)(
|
|
ITypeComp *This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
ITypeComp **ppTComp);
|
|
|
|
} ITypeCompVtbl;
|
|
struct ITypeComp {
|
|
ITypeCompVtbl* lpVtbl;
|
|
};
|
|
HRESULT ITypeComp_RemoteBind_Proxy(
|
|
ITypeComp* This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
WORD wFlags,
|
|
ITypeInfo **ppTInfo,
|
|
DESCKIND *pDescKind,
|
|
LPFUNCDESC *ppFuncDesc,
|
|
LPVARDESC *ppVarDesc,
|
|
ITypeComp **ppTypeComp,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
void ITypeComp_RemoteBind_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeComp_RemoteBindType_Proxy(
|
|
ITypeComp* This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo);
|
|
void ITypeComp_RemoteBindType_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeComp_Bind_Proxy(
|
|
ITypeComp* This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
WORD wFlags,
|
|
ITypeInfo **ppTInfo,
|
|
DESCKIND *pDescKind,
|
|
BINDPTR *pBindPtr);
|
|
HRESULT ITypeComp_Bind_Stub(
|
|
ITypeComp* This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
WORD wFlags,
|
|
ITypeInfo **ppTInfo,
|
|
DESCKIND *pDescKind,
|
|
LPFUNCDESC *ppFuncDesc,
|
|
LPVARDESC *ppVarDesc,
|
|
ITypeComp **ppTypeComp,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
HRESULT ITypeComp_BindType_Proxy(
|
|
ITypeComp* This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
ITypeComp **ppTComp);
|
|
HRESULT ITypeComp_BindType_Stub(
|
|
ITypeComp* This,
|
|
LPOLESTR szName,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo);
|
|
typedef ITypeInfo *LPTYPEINFO;
|
|
extern const GUID IID_ITypeInfo;
|
|
typedef struct ITypeInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeInfo *This);
|
|
ULONG ( *Release)(
|
|
ITypeInfo *This);
|
|
HRESULT ( *GetTypeAttr)(
|
|
ITypeInfo *This,
|
|
TYPEATTR **ppTypeAttr);
|
|
HRESULT ( *GetTypeComp)(
|
|
ITypeInfo *This,
|
|
ITypeComp **ppTComp);
|
|
HRESULT ( *GetFuncDesc)(
|
|
ITypeInfo *This,
|
|
UINT index,
|
|
FUNCDESC **ppFuncDesc);
|
|
HRESULT ( *GetVarDesc)(
|
|
ITypeInfo *This,
|
|
UINT index,
|
|
VARDESC **ppVarDesc);
|
|
HRESULT ( *GetNames)(
|
|
ITypeInfo *This,
|
|
MEMBERID memid,
|
|
BSTR *rgBstrNames,
|
|
UINT cMaxNames,
|
|
UINT *pcNames);
|
|
HRESULT ( *GetRefTypeOfImplType)(
|
|
ITypeInfo *This,
|
|
UINT index,
|
|
HREFTYPE *pRefType);
|
|
HRESULT ( *GetImplTypeFlags)(
|
|
ITypeInfo *This,
|
|
UINT index,
|
|
INT *pImplTypeFlags);
|
|
HRESULT ( *GetIDsOfNames)(
|
|
ITypeInfo *This,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
MEMBERID *pMemId);
|
|
HRESULT ( *Invoke)(
|
|
ITypeInfo *This,
|
|
PVOID pvInstance,
|
|
MEMBERID memid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
HRESULT ( *GetDocumentation)(
|
|
ITypeInfo *This,
|
|
MEMBERID memid,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ( *GetDllEntry)(
|
|
ITypeInfo *This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
BSTR *pBstrDllName,
|
|
BSTR *pBstrName,
|
|
WORD *pwOrdinal);
|
|
HRESULT ( *GetRefTypeInfo)(
|
|
ITypeInfo *This,
|
|
HREFTYPE hRefType,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *AddressOfMember)(
|
|
ITypeInfo *This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
PVOID *ppv);
|
|
HRESULT ( *CreateInstance)(
|
|
ITypeInfo *This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
PVOID *ppvObj);
|
|
HRESULT ( *GetMops)(
|
|
ITypeInfo *This,
|
|
MEMBERID memid,
|
|
BSTR *pBstrMops);
|
|
HRESULT ( *GetContainingTypeLib)(
|
|
ITypeInfo *This,
|
|
ITypeLib **ppTLib,
|
|
UINT *pIndex);
|
|
void ( *ReleaseTypeAttr)(
|
|
ITypeInfo *This,
|
|
TYPEATTR *pTypeAttr);
|
|
void ( *ReleaseFuncDesc)(
|
|
ITypeInfo *This,
|
|
FUNCDESC *pFuncDesc);
|
|
void ( *ReleaseVarDesc)(
|
|
ITypeInfo *This,
|
|
VARDESC *pVarDesc);
|
|
|
|
} ITypeInfoVtbl;
|
|
struct ITypeInfo {
|
|
ITypeInfoVtbl* lpVtbl;
|
|
};
|
|
HRESULT ITypeInfo_RemoteGetTypeAttr_Proxy(
|
|
ITypeInfo* This,
|
|
LPTYPEATTR *ppTypeAttr,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
void ITypeInfo_RemoteGetTypeAttr_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteGetFuncDesc_Proxy(
|
|
ITypeInfo* This,
|
|
UINT index,
|
|
LPFUNCDESC *ppFuncDesc,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
void ITypeInfo_RemoteGetFuncDesc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteGetVarDesc_Proxy(
|
|
ITypeInfo* This,
|
|
UINT index,
|
|
LPVARDESC *ppVarDesc,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
void ITypeInfo_RemoteGetVarDesc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteGetNames_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
BSTR *rgBstrNames,
|
|
UINT cMaxNames,
|
|
UINT *pcNames);
|
|
void ITypeInfo_RemoteGetNames_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_LocalGetIDsOfNames_Proxy(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_LocalGetIDsOfNames_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_LocalInvoke_Proxy(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_LocalInvoke_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteGetDocumentation_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
DWORD refPtrFlags,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
void ITypeInfo_RemoteGetDocumentation_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteGetDllEntry_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
DWORD refPtrFlags,
|
|
BSTR *pBstrDllName,
|
|
BSTR *pBstrName,
|
|
WORD *pwOrdinal);
|
|
void ITypeInfo_RemoteGetDllEntry_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_LocalAddressOfMember_Proxy(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_LocalAddressOfMember_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteCreateInstance_Proxy(
|
|
ITypeInfo* This,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
void ITypeInfo_RemoteCreateInstance_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_RemoteGetContainingTypeLib_Proxy(
|
|
ITypeInfo* This,
|
|
ITypeLib **ppTLib,
|
|
UINT *pIndex);
|
|
void ITypeInfo_RemoteGetContainingTypeLib_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_LocalReleaseTypeAttr_Proxy(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_LocalReleaseTypeAttr_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_LocalReleaseFuncDesc_Proxy(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_LocalReleaseFuncDesc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_LocalReleaseVarDesc_Proxy(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_LocalReleaseVarDesc_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo_GetTypeAttr_Proxy(
|
|
ITypeInfo* This,
|
|
TYPEATTR **ppTypeAttr);
|
|
HRESULT ITypeInfo_GetTypeAttr_Stub(
|
|
ITypeInfo* This,
|
|
LPTYPEATTR *ppTypeAttr,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
HRESULT ITypeInfo_GetFuncDesc_Proxy(
|
|
ITypeInfo* This,
|
|
UINT index,
|
|
FUNCDESC **ppFuncDesc);
|
|
HRESULT ITypeInfo_GetFuncDesc_Stub(
|
|
ITypeInfo* This,
|
|
UINT index,
|
|
LPFUNCDESC *ppFuncDesc,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
HRESULT ITypeInfo_GetVarDesc_Proxy(
|
|
ITypeInfo* This,
|
|
UINT index,
|
|
VARDESC **ppVarDesc);
|
|
HRESULT ITypeInfo_GetVarDesc_Stub(
|
|
ITypeInfo* This,
|
|
UINT index,
|
|
LPVARDESC *ppVarDesc,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
HRESULT ITypeInfo_GetNames_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
BSTR *rgBstrNames,
|
|
UINT cMaxNames,
|
|
UINT *pcNames);
|
|
HRESULT ITypeInfo_GetNames_Stub(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
BSTR *rgBstrNames,
|
|
UINT cMaxNames,
|
|
UINT *pcNames);
|
|
HRESULT ITypeInfo_GetIDsOfNames_Proxy(
|
|
ITypeInfo* This,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
MEMBERID *pMemId);
|
|
HRESULT ITypeInfo_GetIDsOfNames_Stub(
|
|
ITypeInfo* This);
|
|
HRESULT ITypeInfo_Invoke_Proxy(
|
|
ITypeInfo* This,
|
|
PVOID pvInstance,
|
|
MEMBERID memid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
HRESULT ITypeInfo_Invoke_Stub(
|
|
ITypeInfo* This);
|
|
HRESULT ITypeInfo_GetDocumentation_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ITypeInfo_GetDocumentation_Stub(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
DWORD refPtrFlags,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ITypeInfo_GetDllEntry_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
BSTR *pBstrDllName,
|
|
BSTR *pBstrName,
|
|
WORD *pwOrdinal);
|
|
HRESULT ITypeInfo_GetDllEntry_Stub(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
DWORD refPtrFlags,
|
|
BSTR *pBstrDllName,
|
|
BSTR *pBstrName,
|
|
WORD *pwOrdinal);
|
|
HRESULT ITypeInfo_AddressOfMember_Proxy(
|
|
ITypeInfo* This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
PVOID *ppv);
|
|
HRESULT ITypeInfo_AddressOfMember_Stub(
|
|
ITypeInfo* This);
|
|
HRESULT ITypeInfo_CreateInstance_Proxy(
|
|
ITypeInfo* This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
PVOID *ppvObj);
|
|
HRESULT ITypeInfo_CreateInstance_Stub(
|
|
ITypeInfo* This,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
HRESULT ITypeInfo_GetContainingTypeLib_Proxy(
|
|
ITypeInfo* This,
|
|
ITypeLib **ppTLib,
|
|
UINT *pIndex);
|
|
HRESULT ITypeInfo_GetContainingTypeLib_Stub(
|
|
ITypeInfo* This,
|
|
ITypeLib **ppTLib,
|
|
UINT *pIndex);
|
|
void ITypeInfo_ReleaseTypeAttr_Proxy(
|
|
ITypeInfo* This,
|
|
TYPEATTR *pTypeAttr);
|
|
HRESULT ITypeInfo_ReleaseTypeAttr_Stub(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_ReleaseFuncDesc_Proxy(
|
|
ITypeInfo* This,
|
|
FUNCDESC *pFuncDesc);
|
|
HRESULT ITypeInfo_ReleaseFuncDesc_Stub(
|
|
ITypeInfo* This);
|
|
void ITypeInfo_ReleaseVarDesc_Proxy(
|
|
ITypeInfo* This,
|
|
VARDESC *pVarDesc);
|
|
HRESULT ITypeInfo_ReleaseVarDesc_Stub(
|
|
ITypeInfo* This);
|
|
typedef ITypeInfo2 *LPTYPEINFO2;
|
|
extern const GUID IID_ITypeInfo2;
|
|
typedef struct ITypeInfo2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeInfo2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeInfo2 *This);
|
|
ULONG ( *Release)(
|
|
ITypeInfo2 *This);
|
|
HRESULT ( *GetTypeAttr)(
|
|
ITypeInfo2 *This,
|
|
TYPEATTR **ppTypeAttr);
|
|
HRESULT ( *GetTypeComp)(
|
|
ITypeInfo2 *This,
|
|
ITypeComp **ppTComp);
|
|
HRESULT ( *GetFuncDesc)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
FUNCDESC **ppFuncDesc);
|
|
HRESULT ( *GetVarDesc)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
VARDESC **ppVarDesc);
|
|
HRESULT ( *GetNames)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
BSTR *rgBstrNames,
|
|
UINT cMaxNames,
|
|
UINT *pcNames);
|
|
HRESULT ( *GetRefTypeOfImplType)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
HREFTYPE *pRefType);
|
|
HRESULT ( *GetImplTypeFlags)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
INT *pImplTypeFlags);
|
|
HRESULT ( *GetIDsOfNames)(
|
|
ITypeInfo2 *This,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
MEMBERID *pMemId);
|
|
HRESULT ( *Invoke)(
|
|
ITypeInfo2 *This,
|
|
PVOID pvInstance,
|
|
MEMBERID memid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
HRESULT ( *GetDocumentation)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ( *GetDllEntry)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
BSTR *pBstrDllName,
|
|
BSTR *pBstrName,
|
|
WORD *pwOrdinal);
|
|
HRESULT ( *GetRefTypeInfo)(
|
|
ITypeInfo2 *This,
|
|
HREFTYPE hRefType,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *AddressOfMember)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
PVOID *ppv);
|
|
HRESULT ( *CreateInstance)(
|
|
ITypeInfo2 *This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
PVOID *ppvObj);
|
|
HRESULT ( *GetMops)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
BSTR *pBstrMops);
|
|
HRESULT ( *GetContainingTypeLib)(
|
|
ITypeInfo2 *This,
|
|
ITypeLib **ppTLib,
|
|
UINT *pIndex);
|
|
void ( *ReleaseTypeAttr)(
|
|
ITypeInfo2 *This,
|
|
TYPEATTR *pTypeAttr);
|
|
void ( *ReleaseFuncDesc)(
|
|
ITypeInfo2 *This,
|
|
FUNCDESC *pFuncDesc);
|
|
void ( *ReleaseVarDesc)(
|
|
ITypeInfo2 *This,
|
|
VARDESC *pVarDesc);
|
|
HRESULT ( *GetTypeKind)(
|
|
ITypeInfo2 *This,
|
|
TYPEKIND *pTypeKind);
|
|
HRESULT ( *GetTypeFlags)(
|
|
ITypeInfo2 *This,
|
|
ULONG *pTypeFlags);
|
|
HRESULT ( *GetFuncIndexOfMemId)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
INVOKEKIND invKind,
|
|
UINT *pFuncIndex);
|
|
HRESULT ( *GetVarIndexOfMemId)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
UINT *pVarIndex);
|
|
HRESULT ( *GetCustData)(
|
|
ITypeInfo2 *This,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *GetFuncCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *GetParamCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT indexFunc,
|
|
UINT indexParam,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *GetVarCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *GetImplTypeCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *GetDocumentation2)(
|
|
ITypeInfo2 *This,
|
|
MEMBERID memid,
|
|
LCID lcid,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
HRESULT ( *GetAllCustData)(
|
|
ITypeInfo2 *This,
|
|
CUSTDATA *pCustData);
|
|
HRESULT ( *GetAllFuncCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
CUSTDATA *pCustData);
|
|
HRESULT ( *GetAllParamCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT indexFunc,
|
|
UINT indexParam,
|
|
CUSTDATA *pCustData);
|
|
HRESULT ( *GetAllVarCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
CUSTDATA *pCustData);
|
|
HRESULT ( *GetAllImplTypeCustData)(
|
|
ITypeInfo2 *This,
|
|
UINT index,
|
|
CUSTDATA *pCustData);
|
|
|
|
} ITypeInfo2Vtbl;
|
|
struct ITypeInfo2 {
|
|
ITypeInfo2Vtbl* lpVtbl;
|
|
};
|
|
HRESULT ITypeInfo2_RemoteGetDocumentation2_Proxy(
|
|
ITypeInfo2* This,
|
|
MEMBERID memid,
|
|
LCID lcid,
|
|
DWORD refPtrFlags,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
void ITypeInfo2_RemoteGetDocumentation2_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeInfo2_GetDocumentation2_Proxy(
|
|
ITypeInfo2* This,
|
|
MEMBERID memid,
|
|
LCID lcid,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
HRESULT ITypeInfo2_GetDocumentation2_Stub(
|
|
ITypeInfo2* This,
|
|
MEMBERID memid,
|
|
LCID lcid,
|
|
DWORD refPtrFlags,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
typedef enum tagSYSKIND {
|
|
SYS_WIN16 = 0,
|
|
SYS_WIN32 = 1,
|
|
SYS_MAC = 2,
|
|
SYS_WIN64 = 3
|
|
} SYSKIND;
|
|
typedef enum tagLIBFLAGS {
|
|
LIBFLAG_FRESTRICTED = 0x1,
|
|
LIBFLAG_FCONTROL = 0x2,
|
|
LIBFLAG_FHIDDEN = 0x4,
|
|
LIBFLAG_FHASDISKIMAGE = 0x8
|
|
} LIBFLAGS;
|
|
typedef ITypeLib *LPTYPELIB;
|
|
typedef struct tagTLIBATTR {
|
|
GUID guid;
|
|
LCID lcid;
|
|
SYSKIND syskind;
|
|
WORD wMajorVerNum;
|
|
WORD wMinorVerNum;
|
|
WORD wLibFlags;
|
|
} TLIBATTR;
|
|
typedef struct tagTLIBATTR *LPTLIBATTR;
|
|
extern const GUID IID_ITypeLib;
|
|
typedef struct ITypeLibVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeLib *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeLib *This);
|
|
ULONG ( *Release)(
|
|
ITypeLib *This);
|
|
UINT ( *GetTypeInfoCount)(
|
|
ITypeLib *This);
|
|
HRESULT ( *GetTypeInfo)(
|
|
ITypeLib *This,
|
|
UINT index,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetTypeInfoType)(
|
|
ITypeLib *This,
|
|
UINT index,
|
|
TYPEKIND *pTKind);
|
|
HRESULT ( *GetTypeInfoOfGuid)(
|
|
ITypeLib *This,
|
|
const GUID *const guid,
|
|
ITypeInfo **ppTinfo);
|
|
HRESULT ( *GetLibAttr)(
|
|
ITypeLib *This,
|
|
TLIBATTR **ppTLibAttr);
|
|
HRESULT ( *GetTypeComp)(
|
|
ITypeLib *This,
|
|
ITypeComp **ppTComp);
|
|
HRESULT ( *GetDocumentation)(
|
|
ITypeLib *This,
|
|
INT index,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ( *IsName)(
|
|
ITypeLib *This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
WINBOOL *pfName);
|
|
HRESULT ( *FindName)(
|
|
ITypeLib *This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
MEMBERID *rgMemId,
|
|
USHORT *pcFound);
|
|
void ( *ReleaseTLibAttr)(
|
|
ITypeLib *This,
|
|
TLIBATTR *pTLibAttr);
|
|
|
|
} ITypeLibVtbl;
|
|
struct ITypeLib {
|
|
ITypeLibVtbl* lpVtbl;
|
|
};
|
|
HRESULT ITypeLib_RemoteGetTypeInfoCount_Proxy(
|
|
ITypeLib* This,
|
|
UINT *pcTInfo);
|
|
void ITypeLib_RemoteGetTypeInfoCount_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib_RemoteGetLibAttr_Proxy(
|
|
ITypeLib* This,
|
|
LPTLIBATTR *ppTLibAttr,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
void ITypeLib_RemoteGetLibAttr_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib_RemoteGetDocumentation_Proxy(
|
|
ITypeLib* This,
|
|
INT index,
|
|
DWORD refPtrFlags,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
void ITypeLib_RemoteGetDocumentation_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib_RemoteIsName_Proxy(
|
|
ITypeLib* This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
WINBOOL *pfName,
|
|
BSTR *pBstrLibName);
|
|
void ITypeLib_RemoteIsName_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib_RemoteFindName_Proxy(
|
|
ITypeLib* This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
MEMBERID *rgMemId,
|
|
USHORT *pcFound,
|
|
BSTR *pBstrLibName);
|
|
void ITypeLib_RemoteFindName_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib_LocalReleaseTLibAttr_Proxy(
|
|
ITypeLib* This);
|
|
void ITypeLib_LocalReleaseTLibAttr_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
UINT ITypeLib_GetTypeInfoCount_Proxy(
|
|
ITypeLib* This);
|
|
HRESULT ITypeLib_GetTypeInfoCount_Stub(
|
|
ITypeLib* This,
|
|
UINT *pcTInfo);
|
|
HRESULT ITypeLib_GetLibAttr_Proxy(
|
|
ITypeLib* This,
|
|
TLIBATTR **ppTLibAttr);
|
|
HRESULT ITypeLib_GetLibAttr_Stub(
|
|
ITypeLib* This,
|
|
LPTLIBATTR *ppTLibAttr,
|
|
CLEANLOCALSTORAGE *pDummy);
|
|
HRESULT ITypeLib_GetDocumentation_Proxy(
|
|
ITypeLib* This,
|
|
INT index,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ITypeLib_GetDocumentation_Stub(
|
|
ITypeLib* This,
|
|
INT index,
|
|
DWORD refPtrFlags,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ITypeLib_IsName_Proxy(
|
|
ITypeLib* This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
WINBOOL *pfName);
|
|
HRESULT ITypeLib_IsName_Stub(
|
|
ITypeLib* This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
WINBOOL *pfName,
|
|
BSTR *pBstrLibName);
|
|
HRESULT ITypeLib_FindName_Proxy(
|
|
ITypeLib* This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
MEMBERID *rgMemId,
|
|
USHORT *pcFound);
|
|
HRESULT ITypeLib_FindName_Stub(
|
|
ITypeLib* This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
MEMBERID *rgMemId,
|
|
USHORT *pcFound,
|
|
BSTR *pBstrLibName);
|
|
void ITypeLib_ReleaseTLibAttr_Proxy(
|
|
ITypeLib* This,
|
|
TLIBATTR *pTLibAttr);
|
|
HRESULT ITypeLib_ReleaseTLibAttr_Stub(
|
|
ITypeLib* This);
|
|
typedef ITypeLib2 *LPTYPELIB2;
|
|
extern const GUID IID_ITypeLib2;
|
|
typedef struct ITypeLib2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeLib2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeLib2 *This);
|
|
ULONG ( *Release)(
|
|
ITypeLib2 *This);
|
|
UINT ( *GetTypeInfoCount)(
|
|
ITypeLib2 *This);
|
|
HRESULT ( *GetTypeInfo)(
|
|
ITypeLib2 *This,
|
|
UINT index,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetTypeInfoType)(
|
|
ITypeLib2 *This,
|
|
UINT index,
|
|
TYPEKIND *pTKind);
|
|
HRESULT ( *GetTypeInfoOfGuid)(
|
|
ITypeLib2 *This,
|
|
const GUID *const guid,
|
|
ITypeInfo **ppTinfo);
|
|
HRESULT ( *GetLibAttr)(
|
|
ITypeLib2 *This,
|
|
TLIBATTR **ppTLibAttr);
|
|
HRESULT ( *GetTypeComp)(
|
|
ITypeLib2 *This,
|
|
ITypeComp **ppTComp);
|
|
HRESULT ( *GetDocumentation)(
|
|
ITypeLib2 *This,
|
|
INT index,
|
|
BSTR *pBstrName,
|
|
BSTR *pBstrDocString,
|
|
DWORD *pdwHelpContext,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ( *IsName)(
|
|
ITypeLib2 *This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
WINBOOL *pfName);
|
|
HRESULT ( *FindName)(
|
|
ITypeLib2 *This,
|
|
LPOLESTR szNameBuf,
|
|
ULONG lHashVal,
|
|
ITypeInfo **ppTInfo,
|
|
MEMBERID *rgMemId,
|
|
USHORT *pcFound);
|
|
void ( *ReleaseTLibAttr)(
|
|
ITypeLib2 *This,
|
|
TLIBATTR *pTLibAttr);
|
|
HRESULT ( *GetCustData)(
|
|
ITypeLib2 *This,
|
|
const GUID *const guid,
|
|
VARIANT *pVarVal);
|
|
HRESULT ( *GetLibStatistics)(
|
|
ITypeLib2 *This,
|
|
ULONG *pcUniqueNames,
|
|
ULONG *pcchUniqueNames);
|
|
HRESULT ( *GetDocumentation2)(
|
|
ITypeLib2 *This,
|
|
INT index,
|
|
LCID lcid,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
HRESULT ( *GetAllCustData)(
|
|
ITypeLib2 *This,
|
|
CUSTDATA *pCustData);
|
|
|
|
} ITypeLib2Vtbl;
|
|
struct ITypeLib2 {
|
|
ITypeLib2Vtbl* lpVtbl;
|
|
};
|
|
HRESULT ITypeLib2_RemoteGetLibStatistics_Proxy(
|
|
ITypeLib2* This,
|
|
ULONG *pcUniqueNames,
|
|
ULONG *pcchUniqueNames);
|
|
void ITypeLib2_RemoteGetLibStatistics_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib2_RemoteGetDocumentation2_Proxy(
|
|
ITypeLib2* This,
|
|
INT index,
|
|
LCID lcid,
|
|
DWORD refPtrFlags,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
void ITypeLib2_RemoteGetDocumentation2_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT ITypeLib2_GetLibStatistics_Proxy(
|
|
ITypeLib2* This,
|
|
ULONG *pcUniqueNames,
|
|
ULONG *pcchUniqueNames);
|
|
HRESULT ITypeLib2_GetLibStatistics_Stub(
|
|
ITypeLib2* This,
|
|
ULONG *pcUniqueNames,
|
|
ULONG *pcchUniqueNames);
|
|
HRESULT ITypeLib2_GetDocumentation2_Proxy(
|
|
ITypeLib2* This,
|
|
INT index,
|
|
LCID lcid,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
HRESULT ITypeLib2_GetDocumentation2_Stub(
|
|
ITypeLib2* This,
|
|
INT index,
|
|
LCID lcid,
|
|
DWORD refPtrFlags,
|
|
BSTR *pbstrHelpString,
|
|
DWORD *pdwHelpStringContext,
|
|
BSTR *pbstrHelpStringDll);
|
|
typedef ITypeChangeEvents *LPTYPECHANGEEVENTS;
|
|
typedef enum tagCHANGEKIND {
|
|
CHANGEKIND_ADDMEMBER = 0,
|
|
CHANGEKIND_DELETEMEMBER = 1,
|
|
CHANGEKIND_SETNAMES = 2,
|
|
CHANGEKIND_SETDOCUMENTATION = 3,
|
|
CHANGEKIND_GENERAL = 4,
|
|
CHANGEKIND_INVALIDATE = 5,
|
|
CHANGEKIND_CHANGEFAILED = 6,
|
|
CHANGEKIND_MAX = 7
|
|
} CHANGEKIND;
|
|
extern const GUID IID_ITypeChangeEvents;
|
|
typedef struct ITypeChangeEventsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeChangeEvents *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeChangeEvents *This);
|
|
ULONG ( *Release)(
|
|
ITypeChangeEvents *This);
|
|
HRESULT ( *RequestTypeChange)(
|
|
ITypeChangeEvents *This,
|
|
CHANGEKIND changeKind,
|
|
ITypeInfo *pTInfoBefore,
|
|
LPOLESTR pStrName,
|
|
INT *pfCancel);
|
|
HRESULT ( *AfterTypeChange)(
|
|
ITypeChangeEvents *This,
|
|
CHANGEKIND changeKind,
|
|
ITypeInfo *pTInfoAfter,
|
|
LPOLESTR pStrName);
|
|
|
|
} ITypeChangeEventsVtbl;
|
|
struct ITypeChangeEvents {
|
|
ITypeChangeEventsVtbl* lpVtbl;
|
|
};
|
|
typedef IErrorInfo *LPERRORINFO;
|
|
extern const GUID IID_IErrorInfo;
|
|
typedef struct IErrorInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IErrorInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IErrorInfo *This);
|
|
ULONG ( *Release)(
|
|
IErrorInfo *This);
|
|
HRESULT ( *GetGUID)(
|
|
IErrorInfo *This,
|
|
GUID *pGUID);
|
|
HRESULT ( *GetSource)(
|
|
IErrorInfo *This,
|
|
BSTR *pBstrSource);
|
|
HRESULT ( *GetDescription)(
|
|
IErrorInfo *This,
|
|
BSTR *pBstrDescription);
|
|
HRESULT ( *GetHelpFile)(
|
|
IErrorInfo *This,
|
|
BSTR *pBstrHelpFile);
|
|
HRESULT ( *GetHelpContext)(
|
|
IErrorInfo *This,
|
|
DWORD *pdwHelpContext);
|
|
|
|
} IErrorInfoVtbl;
|
|
struct IErrorInfo {
|
|
IErrorInfoVtbl* lpVtbl;
|
|
};
|
|
typedef ICreateErrorInfo *LPCREATEERRORINFO;
|
|
extern const GUID IID_ICreateErrorInfo;
|
|
typedef struct ICreateErrorInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICreateErrorInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICreateErrorInfo *This);
|
|
ULONG ( *Release)(
|
|
ICreateErrorInfo *This);
|
|
HRESULT ( *SetGUID)(
|
|
ICreateErrorInfo *This,
|
|
const GUID *const rguid);
|
|
HRESULT ( *SetSource)(
|
|
ICreateErrorInfo *This,
|
|
LPOLESTR szSource);
|
|
HRESULT ( *SetDescription)(
|
|
ICreateErrorInfo *This,
|
|
LPOLESTR szDescription);
|
|
HRESULT ( *SetHelpFile)(
|
|
ICreateErrorInfo *This,
|
|
LPOLESTR szHelpFile);
|
|
HRESULT ( *SetHelpContext)(
|
|
ICreateErrorInfo *This,
|
|
DWORD dwHelpContext);
|
|
|
|
} ICreateErrorInfoVtbl;
|
|
struct ICreateErrorInfo {
|
|
ICreateErrorInfoVtbl* lpVtbl;
|
|
};
|
|
typedef ISupportErrorInfo *LPSUPPORTERRORINFO;
|
|
extern const GUID IID_ISupportErrorInfo;
|
|
typedef struct ISupportErrorInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISupportErrorInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISupportErrorInfo *This);
|
|
ULONG ( *Release)(
|
|
ISupportErrorInfo *This);
|
|
HRESULT ( *InterfaceSupportsErrorInfo)(
|
|
ISupportErrorInfo *This,
|
|
const IID *const riid);
|
|
|
|
} ISupportErrorInfoVtbl;
|
|
struct ISupportErrorInfo {
|
|
ISupportErrorInfoVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ITypeFactory;
|
|
typedef struct ITypeFactoryVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeFactory *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeFactory *This);
|
|
ULONG ( *Release)(
|
|
ITypeFactory *This);
|
|
HRESULT ( *CreateFromTypeInfo)(
|
|
ITypeFactory *This,
|
|
ITypeInfo *pTypeInfo,
|
|
const IID *const riid,
|
|
IUnknown **ppv);
|
|
|
|
} ITypeFactoryVtbl;
|
|
struct ITypeFactory {
|
|
ITypeFactoryVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_ITypeMarshal;
|
|
typedef struct ITypeMarshalVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ITypeMarshal *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ITypeMarshal *This);
|
|
ULONG ( *Release)(
|
|
ITypeMarshal *This);
|
|
HRESULT ( *Size)(
|
|
ITypeMarshal *This,
|
|
PVOID pvType,
|
|
DWORD dwDestContext,
|
|
PVOID pvDestContext,
|
|
ULONG *pSize);
|
|
HRESULT ( *Marshal)(
|
|
ITypeMarshal *This,
|
|
PVOID pvType,
|
|
DWORD dwDestContext,
|
|
PVOID pvDestContext,
|
|
ULONG cbBufferLength,
|
|
BYTE *pBuffer,
|
|
ULONG *pcbWritten);
|
|
HRESULT ( *Unmarshal)(
|
|
ITypeMarshal *This,
|
|
PVOID pvType,
|
|
DWORD dwFlags,
|
|
ULONG cbBufferLength,
|
|
BYTE *pBuffer,
|
|
ULONG *pcbRead);
|
|
HRESULT ( *Free)(
|
|
ITypeMarshal *This,
|
|
PVOID pvType);
|
|
|
|
} ITypeMarshalVtbl;
|
|
struct ITypeMarshal {
|
|
ITypeMarshalVtbl* lpVtbl;
|
|
};
|
|
typedef IRecordInfo *LPRECORDINFO;
|
|
extern const GUID IID_IRecordInfo;
|
|
typedef struct IRecordInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IRecordInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IRecordInfo *This);
|
|
ULONG ( *Release)(
|
|
IRecordInfo *This);
|
|
HRESULT ( *RecordInit)(
|
|
IRecordInfo *This,
|
|
PVOID pvNew);
|
|
HRESULT ( *RecordClear)(
|
|
IRecordInfo *This,
|
|
PVOID pvExisting);
|
|
HRESULT ( *RecordCopy)(
|
|
IRecordInfo *This,
|
|
PVOID pvExisting,
|
|
PVOID pvNew);
|
|
HRESULT ( *GetGuid)(
|
|
IRecordInfo *This,
|
|
GUID *pguid);
|
|
HRESULT ( *GetName)(
|
|
IRecordInfo *This,
|
|
BSTR *pbstrName);
|
|
HRESULT ( *GetSize)(
|
|
IRecordInfo *This,
|
|
ULONG *pcbSize);
|
|
HRESULT ( *GetTypeInfo)(
|
|
IRecordInfo *This,
|
|
ITypeInfo **ppTypeInfo);
|
|
HRESULT ( *GetField)(
|
|
IRecordInfo *This,
|
|
PVOID pvData,
|
|
LPCOLESTR szFieldName,
|
|
VARIANT *pvarField);
|
|
HRESULT ( *GetFieldNoCopy)(
|
|
IRecordInfo *This,
|
|
PVOID pvData,
|
|
LPCOLESTR szFieldName,
|
|
VARIANT *pvarField,
|
|
PVOID *ppvDataCArray);
|
|
HRESULT ( *PutField)(
|
|
IRecordInfo *This,
|
|
ULONG wFlags,
|
|
PVOID pvData,
|
|
LPCOLESTR szFieldName,
|
|
VARIANT *pvarField);
|
|
HRESULT ( *PutFieldNoCopy)(
|
|
IRecordInfo *This,
|
|
ULONG wFlags,
|
|
PVOID pvData,
|
|
LPCOLESTR szFieldName,
|
|
VARIANT *pvarField);
|
|
HRESULT ( *GetFieldNames)(
|
|
IRecordInfo *This,
|
|
ULONG *pcNames,
|
|
BSTR *rgBstrNames);
|
|
WINBOOL ( *IsMatchingType)(
|
|
IRecordInfo *This,
|
|
IRecordInfo *pRecordInfo);
|
|
PVOID ( *RecordCreate)(
|
|
IRecordInfo *This);
|
|
HRESULT ( *RecordCreateCopy)(
|
|
IRecordInfo *This,
|
|
PVOID pvSource,
|
|
PVOID *ppvDest);
|
|
HRESULT ( *RecordDestroy)(
|
|
IRecordInfo *This,
|
|
PVOID pvRecord);
|
|
|
|
} IRecordInfoVtbl;
|
|
struct IRecordInfo {
|
|
IRecordInfoVtbl* lpVtbl;
|
|
};
|
|
typedef IErrorLog *LPERRORLOG;
|
|
extern const GUID IID_IErrorLog;
|
|
typedef struct IErrorLogVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IErrorLog *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IErrorLog *This);
|
|
ULONG ( *Release)(
|
|
IErrorLog *This);
|
|
HRESULT ( *AddError)(
|
|
IErrorLog *This,
|
|
LPCOLESTR pszPropName,
|
|
EXCEPINFO *pExcepInfo);
|
|
|
|
} IErrorLogVtbl;
|
|
struct IErrorLog {
|
|
IErrorLogVtbl* lpVtbl;
|
|
};
|
|
typedef IPropertyBag *LPPROPERTYBAG;
|
|
extern const GUID IID_IPropertyBag;
|
|
typedef struct IPropertyBagVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyBag *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyBag *This);
|
|
ULONG ( *Release)(
|
|
IPropertyBag *This);
|
|
HRESULT ( *Read)(
|
|
IPropertyBag *This,
|
|
LPCOLESTR pszPropName,
|
|
VARIANT *pVar,
|
|
IErrorLog *pErrorLog);
|
|
HRESULT ( *Write)(
|
|
IPropertyBag *This,
|
|
LPCOLESTR pszPropName,
|
|
VARIANT *pVar);
|
|
|
|
} IPropertyBagVtbl;
|
|
struct IPropertyBag {
|
|
IPropertyBagVtbl* lpVtbl;
|
|
};
|
|
HRESULT IPropertyBag_RemoteRead_Proxy(
|
|
IPropertyBag* This,
|
|
LPCOLESTR pszPropName,
|
|
VARIANT *pVar,
|
|
IErrorLog *pErrorLog,
|
|
DWORD varType,
|
|
IUnknown *pUnkObj);
|
|
void IPropertyBag_RemoteRead_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPropertyBag_Read_Proxy(
|
|
IPropertyBag* This,
|
|
LPCOLESTR pszPropName,
|
|
VARIANT *pVar,
|
|
IErrorLog *pErrorLog);
|
|
HRESULT IPropertyBag_Read_Stub(
|
|
IPropertyBag* This,
|
|
LPCOLESTR pszPropName,
|
|
VARIANT *pVar,
|
|
IErrorLog *pErrorLog,
|
|
DWORD varType,
|
|
IUnknown *pUnkObj);
|
|
ULONG VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
|
|
unsigned char * VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
|
|
unsigned char * VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
|
|
void VARIANT_UserFree (ULONG *, VARIANT *);
|
|
ULONG BSTR_UserSize (ULONG *, ULONG, BSTR *);
|
|
unsigned char * BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
|
|
unsigned char * BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
|
|
void BSTR_UserFree (ULONG *, BSTR *);
|
|
ULONG CLEANLOCALSTORAGE_UserSize (ULONG *, ULONG, CLEANLOCALSTORAGE *);
|
|
unsigned char * CLEANLOCALSTORAGE_UserMarshal (ULONG *, unsigned char *, CLEANLOCALSTORAGE *);
|
|
unsigned char * CLEANLOCALSTORAGE_UserUnmarshal(ULONG *, unsigned char *, CLEANLOCALSTORAGE *);
|
|
void CLEANLOCALSTORAGE_UserFree (ULONG *, CLEANLOCALSTORAGE *);
|
|
|
|
typedef struct IXMLDOMImplementation IXMLDOMImplementation;
|
|
typedef struct IXMLDOMNode IXMLDOMNode;
|
|
typedef struct IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
|
|
typedef struct IXMLDOMDocument IXMLDOMDocument;
|
|
typedef struct IXMLDOMNodeList IXMLDOMNodeList;
|
|
typedef struct IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
|
|
typedef struct IXMLDOMCharacterData IXMLDOMCharacterData;
|
|
typedef struct IXMLDOMAttribute IXMLDOMAttribute;
|
|
typedef struct IXMLDOMElement IXMLDOMElement;
|
|
typedef struct IXMLDOMText IXMLDOMText;
|
|
typedef struct IXMLDOMComment IXMLDOMComment;
|
|
typedef struct IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
|
|
typedef struct IXMLDOMCDATASection IXMLDOMCDATASection;
|
|
typedef struct IXMLDOMDocumentType IXMLDOMDocumentType;
|
|
typedef struct IXMLDOMNotation IXMLDOMNotation;
|
|
typedef struct IXMLDOMEntity IXMLDOMEntity;
|
|
typedef struct IXMLDOMEntityReference IXMLDOMEntityReference;
|
|
typedef struct IXMLDOMParseError IXMLDOMParseError;
|
|
typedef struct IXTLRuntime IXTLRuntime;
|
|
typedef struct XMLDOMDocumentEvents XMLDOMDocumentEvents;
|
|
typedef struct DOMDocument DOMDocument;
|
|
typedef struct DOMFreeThreadedDocument DOMFreeThreadedDocument;
|
|
typedef struct IXMLHttpRequest IXMLHttpRequest;
|
|
typedef struct XMLHTTPRequest XMLHTTPRequest;
|
|
typedef struct IXMLDSOControl IXMLDSOControl;
|
|
typedef struct XMLDSOControl XMLDSOControl;
|
|
typedef struct IXMLElementCollection IXMLElementCollection;
|
|
typedef struct IXMLDocument IXMLDocument;
|
|
typedef struct IXMLDocument2 IXMLDocument2;
|
|
typedef struct IXMLElement IXMLElement;
|
|
typedef struct IXMLElement2 IXMLElement2;
|
|
typedef struct IXMLAttribute IXMLAttribute;
|
|
typedef struct IXMLError IXMLError;
|
|
typedef struct XMLDocument XMLDocument;
|
|
typedef struct _xml_error {
|
|
unsigned int _nLine;
|
|
BSTR _pchBuf;
|
|
unsigned int _cchBuf;
|
|
unsigned int _ich;
|
|
BSTR _pszFound;
|
|
BSTR _pszExpected;
|
|
DWORD _reserved1;
|
|
DWORD _reserved2;
|
|
} XML_ERROR;
|
|
extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_v0_0_s_ifspec;
|
|
typedef enum tagDOMNodeType {
|
|
NODE_INVALID = 0,NODE_ELEMENT,NODE_ATTRIBUTE,NODE_TEXT,NODE_CDATA_SECTION,
|
|
NODE_ENTITY_REFERENCE,NODE_ENTITY,NODE_PROCESSING_INSTRUCTION,NODE_COMMENT,
|
|
NODE_DOCUMENT,NODE_DOCUMENT_TYPE,NODE_DOCUMENT_FRAGMENT,NODE_NOTATION
|
|
} DOMNodeType;
|
|
typedef enum tagXMLEMEM_TYPE {
|
|
XMLELEMTYPE_ELEMENT = 0,XMLELEMTYPE_TEXT,XMLELEMTYPE_COMMENT,XMLELEMTYPE_DOCUMENT,
|
|
XMLELEMTYPE_DTD,XMLELEMTYPE_PI,XMLELEMTYPE_OTHER
|
|
} XMLELEM_TYPE;
|
|
extern const IID LIBID_MSXML;
|
|
extern const IID IID_IXMLDOMImplementation;
|
|
typedef struct IXMLDOMImplementationVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMImplementation *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMImplementation *This);
|
|
ULONG ( *Release)(IXMLDOMImplementation *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMImplementation *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMImplementation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMImplementation *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMImplementation *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *hasFeature)(IXMLDOMImplementation *This,BSTR feature,BSTR version,VARIANT_BOOL *hasFeature);
|
|
|
|
} IXMLDOMImplementationVtbl;
|
|
struct IXMLDOMImplementation {
|
|
struct IXMLDOMImplementationVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMImplementation_hasFeature_Proxy(IXMLDOMImplementation *This,BSTR feature,BSTR version,VARIANT_BOOL *hasFeature);
|
|
void IXMLDOMImplementation_hasFeature_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMNode;
|
|
typedef struct IXMLDOMNodeVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMNode *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMNode *This);
|
|
ULONG ( *Release)(IXMLDOMNode *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMNode *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMNode *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMNode *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMNode *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMNode *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMNode *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMNode *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMNode *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMNode *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMNode *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMNode *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMNode *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMNode *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMNode *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMNode *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMNode *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMNode *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMNode *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMNode *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMNode *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMNode *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMNode *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMNode *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMNode *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMNode *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMNode *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMNode *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMNode *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMNode *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMNode *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMNode *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMNode *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMNode *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMNode *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMNode *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMNode *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMNode *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMNode *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
|
|
} IXMLDOMNodeVtbl;
|
|
struct IXMLDOMNode {
|
|
struct IXMLDOMNodeVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMNode_get_nodeName_Proxy(IXMLDOMNode *This,BSTR *name);
|
|
void IXMLDOMNode_get_nodeName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_nodeValue_Proxy(IXMLDOMNode *This,VARIANT *value);
|
|
void IXMLDOMNode_get_nodeValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_put_nodeValue_Proxy(IXMLDOMNode *This,VARIANT value);
|
|
void IXMLDOMNode_put_nodeValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_nodeType_Proxy(IXMLDOMNode *This,DOMNodeType *type);
|
|
void IXMLDOMNode_get_nodeType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_parentNode_Proxy(IXMLDOMNode *This,IXMLDOMNode **parent);
|
|
void IXMLDOMNode_get_parentNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_childNodes_Proxy(IXMLDOMNode *This,IXMLDOMNodeList **childList);
|
|
void IXMLDOMNode_get_childNodes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_firstChild_Proxy(IXMLDOMNode *This,IXMLDOMNode **firstChild);
|
|
void IXMLDOMNode_get_firstChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_lastChild_Proxy(IXMLDOMNode *This,IXMLDOMNode **lastChild);
|
|
void IXMLDOMNode_get_lastChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_previousSibling_Proxy(IXMLDOMNode *This,IXMLDOMNode **previousSibling);
|
|
void IXMLDOMNode_get_previousSibling_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_nextSibling_Proxy(IXMLDOMNode *This,IXMLDOMNode **nextSibling);
|
|
void IXMLDOMNode_get_nextSibling_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_attributes_Proxy(IXMLDOMNode *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
void IXMLDOMNode_get_attributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_insertBefore_Proxy(IXMLDOMNode *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
void IXMLDOMNode_insertBefore_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_replaceChild_Proxy(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
void IXMLDOMNode_replaceChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_removeChild_Proxy(IXMLDOMNode *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
void IXMLDOMNode_removeChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_appendChild_Proxy(IXMLDOMNode *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
void IXMLDOMNode_appendChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_hasChildNodes_Proxy(IXMLDOMNode *This,VARIANT_BOOL *hasChild);
|
|
void IXMLDOMNode_hasChildNodes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_ownerDocument_Proxy(IXMLDOMNode *This,IXMLDOMDocument **DOMDocument);
|
|
void IXMLDOMNode_get_ownerDocument_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_cloneNode_Proxy(IXMLDOMNode *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
void IXMLDOMNode_cloneNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_nodeTypeString_Proxy(IXMLDOMNode *This,BSTR *nodeType);
|
|
void IXMLDOMNode_get_nodeTypeString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_text_Proxy(IXMLDOMNode *This,BSTR *text);
|
|
void IXMLDOMNode_get_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_put_text_Proxy(IXMLDOMNode *This,BSTR text);
|
|
void IXMLDOMNode_put_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_specified_Proxy(IXMLDOMNode *This,VARIANT_BOOL *isSpecified);
|
|
void IXMLDOMNode_get_specified_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_definition_Proxy(IXMLDOMNode *This,IXMLDOMNode **definitionNode);
|
|
void IXMLDOMNode_get_definition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_nodeTypedValue_Proxy(IXMLDOMNode *This,VARIANT *typedValue);
|
|
void IXMLDOMNode_get_nodeTypedValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_put_nodeTypedValue_Proxy(IXMLDOMNode *This,VARIANT typedValue);
|
|
void IXMLDOMNode_put_nodeTypedValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_dataType_Proxy(IXMLDOMNode *This,VARIANT *dataTypeName);
|
|
void IXMLDOMNode_get_dataType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_put_dataType_Proxy(IXMLDOMNode *This,BSTR dataTypeName);
|
|
void IXMLDOMNode_put_dataType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_xml_Proxy(IXMLDOMNode *This,BSTR *xmlString);
|
|
void IXMLDOMNode_get_xml_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_transformNode_Proxy(IXMLDOMNode *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
void IXMLDOMNode_transformNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_selectNodes_Proxy(IXMLDOMNode *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
void IXMLDOMNode_selectNodes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_selectSingleNode_Proxy(IXMLDOMNode *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
void IXMLDOMNode_selectSingleNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_parsed_Proxy(IXMLDOMNode *This,VARIANT_BOOL *isParsed);
|
|
void IXMLDOMNode_get_parsed_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_namespaceURI_Proxy(IXMLDOMNode *This,BSTR *namespaceURI);
|
|
void IXMLDOMNode_get_namespaceURI_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_prefix_Proxy(IXMLDOMNode *This,BSTR *prefixString);
|
|
void IXMLDOMNode_get_prefix_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_get_baseName_Proxy(IXMLDOMNode *This,BSTR *nameString);
|
|
void IXMLDOMNode_get_baseName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNode_transformNodeToObject_Proxy(IXMLDOMNode *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
void IXMLDOMNode_transformNodeToObject_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMDocumentFragment;
|
|
typedef struct IXMLDOMDocumentFragmentVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMDocumentFragment *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMDocumentFragment *This);
|
|
ULONG ( *Release)(IXMLDOMDocumentFragment *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMDocumentFragment *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMDocumentFragment *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMDocumentFragment *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMDocumentFragment *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMDocumentFragment *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMDocumentFragment *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMDocumentFragment *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMDocumentFragment *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMDocumentFragment *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMDocumentFragment *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMDocumentFragment *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMDocumentFragment *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMDocumentFragment *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMDocumentFragment *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMDocumentFragment *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMDocumentFragment *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMDocumentFragment *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMDocumentFragment *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMDocumentFragment *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMDocumentFragment *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMDocumentFragment *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMDocumentFragment *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMDocumentFragment *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMDocumentFragment *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMDocumentFragment *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMDocumentFragment *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMDocumentFragment *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMDocumentFragment *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMDocumentFragment *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMDocumentFragment *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMDocumentFragment *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMDocumentFragment *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMDocumentFragment *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMDocumentFragment *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMDocumentFragment *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMDocumentFragment *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
|
|
} IXMLDOMDocumentFragmentVtbl;
|
|
struct IXMLDOMDocumentFragment {
|
|
struct IXMLDOMDocumentFragmentVtbl *lpVtbl;
|
|
};
|
|
extern const IID IID_IXMLDOMDocument;
|
|
typedef struct IXMLDOMDocumentVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMDocument *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMDocument *This);
|
|
ULONG ( *Release)(IXMLDOMDocument *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMDocument *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMDocument *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMDocument *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMDocument *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMDocument *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMDocument *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMDocument *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMDocument *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMDocument *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMDocument *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMDocument *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMDocument *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMDocument *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMDocument *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMDocument *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMDocument *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMDocument *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMDocument *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMDocument *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMDocument *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMDocument *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMDocument *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMDocument *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMDocument *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMDocument *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMDocument *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMDocument *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMDocument *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMDocument *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMDocument *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMDocument *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMDocument *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMDocument *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMDocument *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMDocument *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMDocument *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMDocument *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMDocument *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMDocument *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMDocument *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_doctype)(IXMLDOMDocument *This,IXMLDOMDocumentType **documentType);
|
|
HRESULT ( *get_implementation)(IXMLDOMDocument *This,IXMLDOMImplementation **impl);
|
|
HRESULT ( *get_documentElement)(IXMLDOMDocument *This,IXMLDOMElement **DOMElement);
|
|
HRESULT ( *putref_documentElement)(IXMLDOMDocument *This,IXMLDOMElement *DOMElement);
|
|
HRESULT ( *createElement)(IXMLDOMDocument *This,BSTR tagName,IXMLDOMElement **element);
|
|
HRESULT ( *createDocumentFragment)(IXMLDOMDocument *This,IXMLDOMDocumentFragment **docFrag);
|
|
HRESULT ( *createTextNode)(IXMLDOMDocument *This,BSTR data,IXMLDOMText **text);
|
|
HRESULT ( *createComment)(IXMLDOMDocument *This,BSTR data,IXMLDOMComment **comment);
|
|
HRESULT ( *createCDATASection)(IXMLDOMDocument *This,BSTR data,IXMLDOMCDATASection **cdata);
|
|
HRESULT ( *createProcessingInstruction)(IXMLDOMDocument *This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi);
|
|
HRESULT ( *createAttribute)(IXMLDOMDocument *This,BSTR name,IXMLDOMAttribute **attribute);
|
|
HRESULT ( *createEntityReference)(IXMLDOMDocument *This,BSTR name,IXMLDOMEntityReference **entityRef);
|
|
HRESULT ( *getElementsByTagName)(IXMLDOMDocument *This,BSTR tagName,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *createNode)(IXMLDOMDocument *This,VARIANT Type,BSTR name,BSTR namespaceURI,IXMLDOMNode **node);
|
|
HRESULT ( *nodeFromID)(IXMLDOMDocument *This,BSTR idString,IXMLDOMNode **node);
|
|
HRESULT ( *load)(IXMLDOMDocument *This,VARIANT xmlSource,VARIANT_BOOL *isSuccessful);
|
|
HRESULT ( *get_readyState)(IXMLDOMDocument *This,LONG *value);
|
|
HRESULT ( *get_parseError)(IXMLDOMDocument *This,IXMLDOMParseError **errorObj);
|
|
HRESULT ( *get_url)(IXMLDOMDocument *This,BSTR *urlString);
|
|
HRESULT ( *get_async)(IXMLDOMDocument *This,VARIANT_BOOL *isAsync);
|
|
HRESULT ( *put_async)(IXMLDOMDocument *This,VARIANT_BOOL isAsync);
|
|
HRESULT ( *abort)(IXMLDOMDocument *This);
|
|
HRESULT ( *loadXML)(IXMLDOMDocument *This,BSTR bstrXML,VARIANT_BOOL *isSuccessful);
|
|
HRESULT ( *save)(IXMLDOMDocument *This,VARIANT destination);
|
|
HRESULT ( *get_validateOnParse)(IXMLDOMDocument *This,VARIANT_BOOL *isValidating);
|
|
HRESULT ( *put_validateOnParse)(IXMLDOMDocument *This,VARIANT_BOOL isValidating);
|
|
HRESULT ( *get_resolveExternals)(IXMLDOMDocument *This,VARIANT_BOOL *isResolving);
|
|
HRESULT ( *put_resolveExternals)(IXMLDOMDocument *This,VARIANT_BOOL isResolving);
|
|
HRESULT ( *get_preserveWhiteSpace)(IXMLDOMDocument *This,VARIANT_BOOL *isPreserving);
|
|
HRESULT ( *put_preserveWhiteSpace)(IXMLDOMDocument *This,VARIANT_BOOL isPreserving);
|
|
HRESULT ( *put_onreadystatechange)(IXMLDOMDocument *This,VARIANT readystatechangeSink);
|
|
HRESULT ( *put_ondataavailable)(IXMLDOMDocument *This,VARIANT ondataavailableSink);
|
|
HRESULT ( *put_ontransformnode)(IXMLDOMDocument *This,VARIANT ontransformnodeSink);
|
|
|
|
} IXMLDOMDocumentVtbl;
|
|
struct IXMLDOMDocument {
|
|
struct IXMLDOMDocumentVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMDocument_get_doctype_Proxy(IXMLDOMDocument *This,IXMLDOMDocumentType **documentType);
|
|
void IXMLDOMDocument_get_doctype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_implementation_Proxy(IXMLDOMDocument *This,IXMLDOMImplementation **impl);
|
|
void IXMLDOMDocument_get_implementation_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_documentElement_Proxy(IXMLDOMDocument *This,IXMLDOMElement **DOMElement);
|
|
void IXMLDOMDocument_get_documentElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_putref_documentElement_Proxy(IXMLDOMDocument *This,IXMLDOMElement *DOMElement);
|
|
void IXMLDOMDocument_putref_documentElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createElement_Proxy(IXMLDOMDocument *This,BSTR tagName,IXMLDOMElement **element);
|
|
void IXMLDOMDocument_createElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createDocumentFragment_Proxy(IXMLDOMDocument *This,IXMLDOMDocumentFragment **docFrag);
|
|
void IXMLDOMDocument_createDocumentFragment_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createTextNode_Proxy(IXMLDOMDocument *This,BSTR data,IXMLDOMText **text);
|
|
void IXMLDOMDocument_createTextNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createComment_Proxy(IXMLDOMDocument *This,BSTR data,IXMLDOMComment **comment);
|
|
void IXMLDOMDocument_createComment_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createCDATASection_Proxy(IXMLDOMDocument *This,BSTR data,IXMLDOMCDATASection **cdata);
|
|
void IXMLDOMDocument_createCDATASection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createProcessingInstruction_Proxy(IXMLDOMDocument *This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi);
|
|
void IXMLDOMDocument_createProcessingInstruction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createAttribute_Proxy(IXMLDOMDocument *This,BSTR name,IXMLDOMAttribute **attribute);
|
|
void IXMLDOMDocument_createAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createEntityReference_Proxy(IXMLDOMDocument *This,BSTR name,IXMLDOMEntityReference **entityRef);
|
|
void IXMLDOMDocument_createEntityReference_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_getElementsByTagName_Proxy(IXMLDOMDocument *This,BSTR tagName,IXMLDOMNodeList **resultList);
|
|
void IXMLDOMDocument_getElementsByTagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_createNode_Proxy(IXMLDOMDocument *This,VARIANT Type,BSTR name,BSTR namespaceURI,IXMLDOMNode **node);
|
|
void IXMLDOMDocument_createNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_nodeFromID_Proxy(IXMLDOMDocument *This,BSTR idString,IXMLDOMNode **node);
|
|
void IXMLDOMDocument_nodeFromID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_load_Proxy(IXMLDOMDocument *This,VARIANT xmlSource,VARIANT_BOOL *isSuccessful);
|
|
void IXMLDOMDocument_load_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_readyState_Proxy(IXMLDOMDocument *This,LONG *value);
|
|
void IXMLDOMDocument_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_parseError_Proxy(IXMLDOMDocument *This,IXMLDOMParseError **errorObj);
|
|
void IXMLDOMDocument_get_parseError_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_url_Proxy(IXMLDOMDocument *This,BSTR *urlString);
|
|
void IXMLDOMDocument_get_url_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_async_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isAsync);
|
|
void IXMLDOMDocument_get_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_async_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isAsync);
|
|
void IXMLDOMDocument_put_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_abort_Proxy(IXMLDOMDocument *This);
|
|
void IXMLDOMDocument_abort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_loadXML_Proxy(IXMLDOMDocument *This,BSTR bstrXML,VARIANT_BOOL *isSuccessful);
|
|
void IXMLDOMDocument_loadXML_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_save_Proxy(IXMLDOMDocument *This,VARIANT destination);
|
|
void IXMLDOMDocument_save_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_validateOnParse_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isValidating);
|
|
void IXMLDOMDocument_get_validateOnParse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_validateOnParse_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isValidating);
|
|
void IXMLDOMDocument_put_validateOnParse_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_resolveExternals_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isResolving);
|
|
void IXMLDOMDocument_get_resolveExternals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_resolveExternals_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isResolving);
|
|
void IXMLDOMDocument_put_resolveExternals_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_get_preserveWhiteSpace_Proxy(IXMLDOMDocument *This,VARIANT_BOOL *isPreserving);
|
|
void IXMLDOMDocument_get_preserveWhiteSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_preserveWhiteSpace_Proxy(IXMLDOMDocument *This,VARIANT_BOOL isPreserving);
|
|
void IXMLDOMDocument_put_preserveWhiteSpace_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_onreadystatechange_Proxy(IXMLDOMDocument *This,VARIANT readystatechangeSink);
|
|
void IXMLDOMDocument_put_onreadystatechange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_ondataavailable_Proxy(IXMLDOMDocument *This,VARIANT ondataavailableSink);
|
|
void IXMLDOMDocument_put_ondataavailable_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocument_put_ontransformnode_Proxy(IXMLDOMDocument *This,VARIANT ontransformnodeSink);
|
|
void IXMLDOMDocument_put_ontransformnode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMNodeList;
|
|
typedef struct IXMLDOMNodeListVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMNodeList *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMNodeList *This);
|
|
ULONG ( *Release)(IXMLDOMNodeList *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMNodeList *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMNodeList *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMNodeList *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMNodeList *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_item)(IXMLDOMNodeList *This,LONG index,IXMLDOMNode **listItem);
|
|
HRESULT ( *get_length)(IXMLDOMNodeList *This,LONG *listLength);
|
|
HRESULT ( *nextNode)(IXMLDOMNodeList *This,IXMLDOMNode **nextItem);
|
|
HRESULT ( *reset)(IXMLDOMNodeList *This);
|
|
HRESULT ( *get__newEnum)(IXMLDOMNodeList *This,IUnknown **ppUnk);
|
|
|
|
} IXMLDOMNodeListVtbl;
|
|
struct IXMLDOMNodeList {
|
|
struct IXMLDOMNodeListVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMNodeList_get_item_Proxy(IXMLDOMNodeList *This,LONG index,IXMLDOMNode **listItem);
|
|
void IXMLDOMNodeList_get_item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNodeList_get_length_Proxy(IXMLDOMNodeList *This,LONG *listLength);
|
|
void IXMLDOMNodeList_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNodeList_nextNode_Proxy(IXMLDOMNodeList *This,IXMLDOMNode **nextItem);
|
|
void IXMLDOMNodeList_nextNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNodeList_reset_Proxy(IXMLDOMNodeList *This);
|
|
void IXMLDOMNodeList_reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNodeList_get__newEnum_Proxy(IXMLDOMNodeList *This,IUnknown **ppUnk);
|
|
void IXMLDOMNodeList_get__newEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMNamedNodeMap;
|
|
typedef struct IXMLDOMNamedNodeMapVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMNamedNodeMap *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMNamedNodeMap *This);
|
|
ULONG ( *Release)(IXMLDOMNamedNodeMap *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMNamedNodeMap *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMNamedNodeMap *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMNamedNodeMap *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMNamedNodeMap *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *getNamedItem)(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
|
|
HRESULT ( *setNamedItem)(IXMLDOMNamedNodeMap *This,IXMLDOMNode *newItem,IXMLDOMNode **nameItem);
|
|
HRESULT ( *removeNamedItem)(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
|
|
HRESULT ( *get_item)(IXMLDOMNamedNodeMap *This,LONG index,IXMLDOMNode **listItem);
|
|
HRESULT ( *get_length)(IXMLDOMNamedNodeMap *This,LONG *listLength);
|
|
HRESULT ( *getQualifiedItem)(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
|
|
HRESULT ( *removeQualifiedItem)(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
|
|
HRESULT ( *nextNode)(IXMLDOMNamedNodeMap *This,IXMLDOMNode **nextItem);
|
|
HRESULT ( *reset)(IXMLDOMNamedNodeMap *This);
|
|
HRESULT ( *get__newEnum)(IXMLDOMNamedNodeMap *This,IUnknown **ppUnk);
|
|
|
|
} IXMLDOMNamedNodeMapVtbl;
|
|
struct IXMLDOMNamedNodeMap {
|
|
struct IXMLDOMNamedNodeMapVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMNamedNodeMap_getNamedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
|
|
void IXMLDOMNamedNodeMap_getNamedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_setNamedItem_Proxy(IXMLDOMNamedNodeMap *This,IXMLDOMNode *newItem,IXMLDOMNode **nameItem);
|
|
void IXMLDOMNamedNodeMap_setNamedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_removeNamedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR name,IXMLDOMNode **namedItem);
|
|
void IXMLDOMNamedNodeMap_removeNamedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_get_item_Proxy(IXMLDOMNamedNodeMap *This,LONG index,IXMLDOMNode **listItem);
|
|
void IXMLDOMNamedNodeMap_get_item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_get_length_Proxy(IXMLDOMNamedNodeMap *This,LONG *listLength);
|
|
void IXMLDOMNamedNodeMap_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_getQualifiedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
|
|
void IXMLDOMNamedNodeMap_getQualifiedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_removeQualifiedItem_Proxy(IXMLDOMNamedNodeMap *This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem);
|
|
void IXMLDOMNamedNodeMap_removeQualifiedItem_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_nextNode_Proxy(IXMLDOMNamedNodeMap *This,IXMLDOMNode **nextItem);
|
|
void IXMLDOMNamedNodeMap_nextNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_reset_Proxy(IXMLDOMNamedNodeMap *This);
|
|
void IXMLDOMNamedNodeMap_reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNamedNodeMap_get__newEnum_Proxy(IXMLDOMNamedNodeMap *This,IUnknown **ppUnk);
|
|
void IXMLDOMNamedNodeMap_get__newEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMCharacterData;
|
|
typedef struct IXMLDOMCharacterDataVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMCharacterData *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMCharacterData *This);
|
|
ULONG ( *Release)(IXMLDOMCharacterData *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMCharacterData *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMCharacterData *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMCharacterData *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMCharacterData *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMCharacterData *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMCharacterData *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMCharacterData *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMCharacterData *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMCharacterData *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMCharacterData *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMCharacterData *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMCharacterData *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMCharacterData *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMCharacterData *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMCharacterData *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMCharacterData *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMCharacterData *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMCharacterData *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMCharacterData *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMCharacterData *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMCharacterData *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMCharacterData *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMCharacterData *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMCharacterData *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMCharacterData *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMCharacterData *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMCharacterData *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMCharacterData *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMCharacterData *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMCharacterData *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMCharacterData *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMCharacterData *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMCharacterData *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMCharacterData *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMCharacterData *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMCharacterData *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMCharacterData *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMCharacterData *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMCharacterData *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMCharacterData *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_data)(IXMLDOMCharacterData *This,BSTR *data);
|
|
HRESULT ( *put_data)(IXMLDOMCharacterData *This,BSTR data);
|
|
HRESULT ( *get_length)(IXMLDOMCharacterData *This,LONG *dataLength);
|
|
HRESULT ( *substringData)(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR *data);
|
|
HRESULT ( *appendData)(IXMLDOMCharacterData *This,BSTR data);
|
|
HRESULT ( *insertData)(IXMLDOMCharacterData *This,LONG offset,BSTR data);
|
|
HRESULT ( *deleteData)(IXMLDOMCharacterData *This,LONG offset,LONG count);
|
|
HRESULT ( *replaceData)(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR data);
|
|
|
|
} IXMLDOMCharacterDataVtbl;
|
|
struct IXMLDOMCharacterData {
|
|
struct IXMLDOMCharacterDataVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMCharacterData_get_data_Proxy(IXMLDOMCharacterData *This,BSTR *data);
|
|
void IXMLDOMCharacterData_get_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_put_data_Proxy(IXMLDOMCharacterData *This,BSTR data);
|
|
void IXMLDOMCharacterData_put_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_get_length_Proxy(IXMLDOMCharacterData *This,LONG *dataLength);
|
|
void IXMLDOMCharacterData_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_substringData_Proxy(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR *data);
|
|
void IXMLDOMCharacterData_substringData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_appendData_Proxy(IXMLDOMCharacterData *This,BSTR data);
|
|
void IXMLDOMCharacterData_appendData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_insertData_Proxy(IXMLDOMCharacterData *This,LONG offset,BSTR data);
|
|
void IXMLDOMCharacterData_insertData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_deleteData_Proxy(IXMLDOMCharacterData *This,LONG offset,LONG count);
|
|
void IXMLDOMCharacterData_deleteData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMCharacterData_replaceData_Proxy(IXMLDOMCharacterData *This,LONG offset,LONG count,BSTR data);
|
|
void IXMLDOMCharacterData_replaceData_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMAttribute;
|
|
typedef struct IXMLDOMAttributeVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMAttribute *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMAttribute *This);
|
|
ULONG ( *Release)(IXMLDOMAttribute *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMAttribute *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMAttribute *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMAttribute *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMAttribute *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMAttribute *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMAttribute *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMAttribute *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMAttribute *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMAttribute *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMAttribute *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMAttribute *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMAttribute *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMAttribute *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMAttribute *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMAttribute *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMAttribute *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMAttribute *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMAttribute *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMAttribute *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMAttribute *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMAttribute *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMAttribute *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMAttribute *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMAttribute *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMAttribute *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMAttribute *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMAttribute *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMAttribute *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMAttribute *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMAttribute *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMAttribute *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMAttribute *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMAttribute *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMAttribute *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMAttribute *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMAttribute *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMAttribute *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMAttribute *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMAttribute *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMAttribute *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_name)(IXMLDOMAttribute *This,BSTR *attributeName);
|
|
HRESULT ( *get_value)(IXMLDOMAttribute *This,VARIANT *attributeValue);
|
|
HRESULT ( *put_value)(IXMLDOMAttribute *This,VARIANT attributeValue);
|
|
|
|
} IXMLDOMAttributeVtbl;
|
|
struct IXMLDOMAttribute {
|
|
struct IXMLDOMAttributeVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMAttribute_get_name_Proxy(IXMLDOMAttribute *This,BSTR *attributeName);
|
|
void IXMLDOMAttribute_get_name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMAttribute_get_value_Proxy(IXMLDOMAttribute *This,VARIANT *attributeValue);
|
|
void IXMLDOMAttribute_get_value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMAttribute_put_value_Proxy(IXMLDOMAttribute *This,VARIANT attributeValue);
|
|
void IXMLDOMAttribute_put_value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMElement;
|
|
typedef struct IXMLDOMElementVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMElement *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMElement *This);
|
|
ULONG ( *Release)(IXMLDOMElement *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMElement *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMElement *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMElement *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMElement *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMElement *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMElement *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMElement *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMElement *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMElement *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMElement *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMElement *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMElement *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMElement *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMElement *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMElement *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMElement *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMElement *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMElement *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMElement *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMElement *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMElement *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMElement *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMElement *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMElement *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMElement *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMElement *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMElement *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMElement *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMElement *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMElement *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMElement *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMElement *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMElement *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMElement *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMElement *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMElement *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMElement *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMElement *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMElement *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMElement *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_tagName)(IXMLDOMElement *This,BSTR *tagName);
|
|
HRESULT ( *getAttribute)(IXMLDOMElement *This,BSTR name,VARIANT *value);
|
|
HRESULT ( *setAttribute)(IXMLDOMElement *This,BSTR name,VARIANT value);
|
|
HRESULT ( *removeAttribute)(IXMLDOMElement *This,BSTR name);
|
|
HRESULT ( *getAttributeNode)(IXMLDOMElement *This,BSTR name,IXMLDOMAttribute **attributeNode);
|
|
HRESULT ( *setAttributeNode)(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
|
|
HRESULT ( *removeAttributeNode)(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
|
|
HRESULT ( *getElementsByTagName)(IXMLDOMElement *This,BSTR tagName,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *normalize)(IXMLDOMElement *This);
|
|
|
|
} IXMLDOMElementVtbl;
|
|
struct IXMLDOMElement {
|
|
struct IXMLDOMElementVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMElement_get_tagName_Proxy(IXMLDOMElement *This,BSTR *tagName);
|
|
void IXMLDOMElement_get_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_getAttribute_Proxy(IXMLDOMElement *This,BSTR name,VARIANT *value);
|
|
void IXMLDOMElement_getAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_setAttribute_Proxy(IXMLDOMElement *This,BSTR name,VARIANT value);
|
|
void IXMLDOMElement_setAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_removeAttribute_Proxy(IXMLDOMElement *This,BSTR name);
|
|
void IXMLDOMElement_removeAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_getAttributeNode_Proxy(IXMLDOMElement *This,BSTR name,IXMLDOMAttribute **attributeNode);
|
|
void IXMLDOMElement_getAttributeNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_setAttributeNode_Proxy(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
|
|
void IXMLDOMElement_setAttributeNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_removeAttributeNode_Proxy(IXMLDOMElement *This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode);
|
|
void IXMLDOMElement_removeAttributeNode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_getElementsByTagName_Proxy(IXMLDOMElement *This,BSTR tagName,IXMLDOMNodeList **resultList);
|
|
void IXMLDOMElement_getElementsByTagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMElement_normalize_Proxy(IXMLDOMElement *This);
|
|
void IXMLDOMElement_normalize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMText;
|
|
typedef struct IXMLDOMTextVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMText *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMText *This);
|
|
ULONG ( *Release)(IXMLDOMText *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMText *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMText *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMText *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMText *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMText *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMText *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMText *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMText *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMText *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMText *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMText *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMText *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMText *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMText *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMText *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMText *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMText *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMText *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMText *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMText *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMText *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMText *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMText *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMText *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMText *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMText *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMText *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMText *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMText *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMText *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMText *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMText *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMText *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMText *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMText *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMText *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMText *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMText *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMText *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMText *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_data)(IXMLDOMText *This,BSTR *data);
|
|
HRESULT ( *put_data)(IXMLDOMText *This,BSTR data);
|
|
HRESULT ( *get_length)(IXMLDOMText *This,LONG *dataLength);
|
|
HRESULT ( *substringData)(IXMLDOMText *This,LONG offset,LONG count,BSTR *data);
|
|
HRESULT ( *appendData)(IXMLDOMText *This,BSTR data);
|
|
HRESULT ( *insertData)(IXMLDOMText *This,LONG offset,BSTR data);
|
|
HRESULT ( *deleteData)(IXMLDOMText *This,LONG offset,LONG count);
|
|
HRESULT ( *replaceData)(IXMLDOMText *This,LONG offset,LONG count,BSTR data);
|
|
HRESULT ( *splitText)(IXMLDOMText *This,LONG offset,IXMLDOMText **rightHandTextNode);
|
|
|
|
} IXMLDOMTextVtbl;
|
|
struct IXMLDOMText {
|
|
struct IXMLDOMTextVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMText_splitText_Proxy(IXMLDOMText *This,LONG offset,IXMLDOMText **rightHandTextNode);
|
|
void IXMLDOMText_splitText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMComment;
|
|
typedef struct IXMLDOMCommentVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMComment *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMComment *This);
|
|
ULONG ( *Release)(IXMLDOMComment *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMComment *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMComment *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMComment *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMComment *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMComment *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMComment *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMComment *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMComment *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMComment *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMComment *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMComment *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMComment *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMComment *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMComment *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMComment *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMComment *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMComment *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMComment *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMComment *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMComment *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMComment *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMComment *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMComment *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMComment *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMComment *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMComment *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMComment *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMComment *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMComment *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMComment *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMComment *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMComment *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMComment *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMComment *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMComment *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMComment *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMComment *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMComment *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMComment *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMComment *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_data)(IXMLDOMComment *This,BSTR *data);
|
|
HRESULT ( *put_data)(IXMLDOMComment *This,BSTR data);
|
|
HRESULT ( *get_length)(IXMLDOMComment *This,LONG *dataLength);
|
|
HRESULT ( *substringData)(IXMLDOMComment *This,LONG offset,LONG count,BSTR *data);
|
|
HRESULT ( *appendData)(IXMLDOMComment *This,BSTR data);
|
|
HRESULT ( *insertData)(IXMLDOMComment *This,LONG offset,BSTR data);
|
|
HRESULT ( *deleteData)(IXMLDOMComment *This,LONG offset,LONG count);
|
|
HRESULT ( *replaceData)(IXMLDOMComment *This,LONG offset,LONG count,BSTR data);
|
|
|
|
} IXMLDOMCommentVtbl;
|
|
struct IXMLDOMComment {
|
|
struct IXMLDOMCommentVtbl *lpVtbl;
|
|
};
|
|
extern const IID IID_IXMLDOMProcessingInstruction;
|
|
typedef struct IXMLDOMProcessingInstructionVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMProcessingInstruction *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMProcessingInstruction *This);
|
|
ULONG ( *Release)(IXMLDOMProcessingInstruction *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMProcessingInstruction *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMProcessingInstruction *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMProcessingInstruction *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMProcessingInstruction *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMProcessingInstruction *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMProcessingInstruction *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMProcessingInstruction *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMProcessingInstruction *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMProcessingInstruction *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMProcessingInstruction *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMProcessingInstruction *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMProcessingInstruction *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMProcessingInstruction *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMProcessingInstruction *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMProcessingInstruction *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMProcessingInstruction *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMProcessingInstruction *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMProcessingInstruction *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMProcessingInstruction *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMProcessingInstruction *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMProcessingInstruction *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMProcessingInstruction *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMProcessingInstruction *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMProcessingInstruction *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMProcessingInstruction *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMProcessingInstruction *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMProcessingInstruction *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_target)(IXMLDOMProcessingInstruction *This,BSTR *name);
|
|
HRESULT ( *get_data)(IXMLDOMProcessingInstruction *This,BSTR *value);
|
|
HRESULT ( *put_data)(IXMLDOMProcessingInstruction *This,BSTR value);
|
|
|
|
} IXMLDOMProcessingInstructionVtbl;
|
|
struct IXMLDOMProcessingInstruction {
|
|
struct IXMLDOMProcessingInstructionVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMProcessingInstruction_get_target_Proxy(IXMLDOMProcessingInstruction *This,BSTR *name);
|
|
void IXMLDOMProcessingInstruction_get_target_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMProcessingInstruction_get_data_Proxy(IXMLDOMProcessingInstruction *This,BSTR *value);
|
|
void IXMLDOMProcessingInstruction_get_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMProcessingInstruction_put_data_Proxy(IXMLDOMProcessingInstruction *This,BSTR value);
|
|
void IXMLDOMProcessingInstruction_put_data_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMCDATASection;
|
|
typedef struct IXMLDOMCDATASectionVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMCDATASection *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMCDATASection *This);
|
|
ULONG ( *Release)(IXMLDOMCDATASection *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMCDATASection *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMCDATASection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMCDATASection *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMCDATASection *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMCDATASection *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMCDATASection *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMCDATASection *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMCDATASection *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMCDATASection *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMCDATASection *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMCDATASection *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMCDATASection *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMCDATASection *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMCDATASection *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMCDATASection *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMCDATASection *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMCDATASection *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMCDATASection *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMCDATASection *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMCDATASection *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMCDATASection *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMCDATASection *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMCDATASection *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMCDATASection *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMCDATASection *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMCDATASection *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMCDATASection *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMCDATASection *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMCDATASection *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMCDATASection *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMCDATASection *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMCDATASection *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMCDATASection *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMCDATASection *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMCDATASection *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMCDATASection *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMCDATASection *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMCDATASection *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMCDATASection *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMCDATASection *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_data)(IXMLDOMCDATASection *This,BSTR *data);
|
|
HRESULT ( *put_data)(IXMLDOMCDATASection *This,BSTR data);
|
|
HRESULT ( *get_length)(IXMLDOMCDATASection *This,LONG *dataLength);
|
|
HRESULT ( *substringData)(IXMLDOMCDATASection *This,LONG offset,LONG count,BSTR *data);
|
|
HRESULT ( *appendData)(IXMLDOMCDATASection *This,BSTR data);
|
|
HRESULT ( *insertData)(IXMLDOMCDATASection *This,LONG offset,BSTR data);
|
|
HRESULT ( *deleteData)(IXMLDOMCDATASection *This,LONG offset,LONG count);
|
|
HRESULT ( *replaceData)(IXMLDOMCDATASection *This,LONG offset,LONG count,BSTR data);
|
|
HRESULT ( *splitText)(IXMLDOMCDATASection *This,LONG offset,IXMLDOMText **rightHandTextNode);
|
|
|
|
} IXMLDOMCDATASectionVtbl;
|
|
struct IXMLDOMCDATASection {
|
|
struct IXMLDOMCDATASectionVtbl *lpVtbl;
|
|
};
|
|
extern const IID IID_IXMLDOMDocumentType;
|
|
typedef struct IXMLDOMDocumentTypeVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMDocumentType *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMDocumentType *This);
|
|
ULONG ( *Release)(IXMLDOMDocumentType *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMDocumentType *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMDocumentType *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMDocumentType *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMDocumentType *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMDocumentType *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMDocumentType *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMDocumentType *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMDocumentType *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMDocumentType *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMDocumentType *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMDocumentType *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMDocumentType *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMDocumentType *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMDocumentType *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMDocumentType *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMDocumentType *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMDocumentType *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMDocumentType *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMDocumentType *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMDocumentType *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMDocumentType *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMDocumentType *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMDocumentType *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMDocumentType *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMDocumentType *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMDocumentType *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMDocumentType *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMDocumentType *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMDocumentType *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMDocumentType *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMDocumentType *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMDocumentType *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMDocumentType *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMDocumentType *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMDocumentType *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMDocumentType *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMDocumentType *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMDocumentType *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMDocumentType *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_name)(IXMLDOMDocumentType *This,BSTR *rootName);
|
|
HRESULT ( *get_entities)(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **entityMap);
|
|
HRESULT ( *get_notations)(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **notationMap);
|
|
|
|
} IXMLDOMDocumentTypeVtbl;
|
|
struct IXMLDOMDocumentType {
|
|
struct IXMLDOMDocumentTypeVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMDocumentType_get_name_Proxy(IXMLDOMDocumentType *This,BSTR *rootName);
|
|
void IXMLDOMDocumentType_get_name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocumentType_get_entities_Proxy(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **entityMap);
|
|
void IXMLDOMDocumentType_get_entities_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMDocumentType_get_notations_Proxy(IXMLDOMDocumentType *This,IXMLDOMNamedNodeMap **notationMap);
|
|
void IXMLDOMDocumentType_get_notations_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMNotation;
|
|
typedef struct IXMLDOMNotationVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMNotation *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMNotation *This);
|
|
ULONG ( *Release)(IXMLDOMNotation *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMNotation *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMNotation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMNotation *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMNotation *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMNotation *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMNotation *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMNotation *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMNotation *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMNotation *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMNotation *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMNotation *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMNotation *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMNotation *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMNotation *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMNotation *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMNotation *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMNotation *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMNotation *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMNotation *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMNotation *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMNotation *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMNotation *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMNotation *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMNotation *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMNotation *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMNotation *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMNotation *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMNotation *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMNotation *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMNotation *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMNotation *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMNotation *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMNotation *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMNotation *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMNotation *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMNotation *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMNotation *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMNotation *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMNotation *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMNotation *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_publicId)(IXMLDOMNotation *This,VARIANT *publicID);
|
|
HRESULT ( *get_systemId)(IXMLDOMNotation *This,VARIANT *systemID);
|
|
|
|
} IXMLDOMNotationVtbl;
|
|
struct IXMLDOMNotation {
|
|
struct IXMLDOMNotationVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMNotation_get_publicId_Proxy(IXMLDOMNotation *This,VARIANT *publicID);
|
|
void IXMLDOMNotation_get_publicId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMNotation_get_systemId_Proxy(IXMLDOMNotation *This,VARIANT *systemID);
|
|
void IXMLDOMNotation_get_systemId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMEntity;
|
|
typedef struct IXMLDOMEntityVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMEntity *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMEntity *This);
|
|
ULONG ( *Release)(IXMLDOMEntity *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMEntity *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMEntity *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMEntity *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMEntity *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMEntity *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMEntity *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMEntity *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMEntity *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMEntity *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMEntity *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMEntity *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMEntity *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMEntity *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMEntity *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMEntity *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMEntity *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMEntity *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMEntity *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMEntity *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMEntity *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMEntity *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMEntity *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMEntity *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMEntity *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMEntity *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMEntity *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMEntity *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMEntity *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMEntity *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMEntity *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMEntity *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMEntity *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMEntity *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMEntity *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMEntity *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMEntity *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMEntity *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMEntity *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMEntity *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMEntity *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *get_publicId)(IXMLDOMEntity *This,VARIANT *publicID);
|
|
HRESULT ( *get_systemId)(IXMLDOMEntity *This,VARIANT *systemID);
|
|
HRESULT ( *get_notationName)(IXMLDOMEntity *This,BSTR *name);
|
|
|
|
} IXMLDOMEntityVtbl;
|
|
struct IXMLDOMEntity {
|
|
struct IXMLDOMEntityVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMEntity_get_publicId_Proxy(IXMLDOMEntity *This,VARIANT *publicID);
|
|
void IXMLDOMEntity_get_publicId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMEntity_get_systemId_Proxy(IXMLDOMEntity *This,VARIANT *systemID);
|
|
void IXMLDOMEntity_get_systemId_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMEntity_get_notationName_Proxy(IXMLDOMEntity *This,BSTR *name);
|
|
void IXMLDOMEntity_get_notationName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDOMEntityReference;
|
|
typedef struct IXMLDOMEntityReferenceVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMEntityReference *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMEntityReference *This);
|
|
ULONG ( *Release)(IXMLDOMEntityReference *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMEntityReference *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMEntityReference *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMEntityReference *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMEntityReference *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXMLDOMEntityReference *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXMLDOMEntityReference *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXMLDOMEntityReference *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXMLDOMEntityReference *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXMLDOMEntityReference *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXMLDOMEntityReference *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXMLDOMEntityReference *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXMLDOMEntityReference *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXMLDOMEntityReference *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXMLDOMEntityReference *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXMLDOMEntityReference *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXMLDOMEntityReference *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXMLDOMEntityReference *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXMLDOMEntityReference *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXMLDOMEntityReference *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXMLDOMEntityReference *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXMLDOMEntityReference *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXMLDOMEntityReference *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXMLDOMEntityReference *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXMLDOMEntityReference *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXMLDOMEntityReference *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXMLDOMEntityReference *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXMLDOMEntityReference *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXMLDOMEntityReference *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXMLDOMEntityReference *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXMLDOMEntityReference *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXMLDOMEntityReference *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXMLDOMEntityReference *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXMLDOMEntityReference *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXMLDOMEntityReference *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXMLDOMEntityReference *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXMLDOMEntityReference *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXMLDOMEntityReference *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXMLDOMEntityReference *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXMLDOMEntityReference *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXMLDOMEntityReference *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
|
|
} IXMLDOMEntityReferenceVtbl;
|
|
struct IXMLDOMEntityReference {
|
|
struct IXMLDOMEntityReferenceVtbl *lpVtbl;
|
|
};
|
|
extern const IID IID_IXMLDOMParseError;
|
|
typedef struct IXMLDOMParseErrorVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDOMParseError *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDOMParseError *This);
|
|
ULONG ( *Release)(IXMLDOMParseError *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDOMParseError *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDOMParseError *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDOMParseError *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDOMParseError *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_errorCode)(IXMLDOMParseError *This,LONG *errorCode);
|
|
HRESULT ( *get_url)(IXMLDOMParseError *This,BSTR *urlString);
|
|
HRESULT ( *get_reason)(IXMLDOMParseError *This,BSTR *reasonString);
|
|
HRESULT ( *get_srcText)(IXMLDOMParseError *This,BSTR *sourceString);
|
|
HRESULT ( *get_line)(IXMLDOMParseError *This,LONG *lineNumber);
|
|
HRESULT ( *get_linepos)(IXMLDOMParseError *This,LONG *linePosition);
|
|
HRESULT ( *get_filepos)(IXMLDOMParseError *This,LONG *filePosition);
|
|
|
|
} IXMLDOMParseErrorVtbl;
|
|
struct IXMLDOMParseError {
|
|
struct IXMLDOMParseErrorVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDOMParseError_get_errorCode_Proxy(IXMLDOMParseError *This,LONG *errorCode);
|
|
void IXMLDOMParseError_get_errorCode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMParseError_get_url_Proxy(IXMLDOMParseError *This,BSTR *urlString);
|
|
void IXMLDOMParseError_get_url_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMParseError_get_reason_Proxy(IXMLDOMParseError *This,BSTR *reasonString);
|
|
void IXMLDOMParseError_get_reason_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMParseError_get_srcText_Proxy(IXMLDOMParseError *This,BSTR *sourceString);
|
|
void IXMLDOMParseError_get_srcText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMParseError_get_line_Proxy(IXMLDOMParseError *This,LONG *lineNumber);
|
|
void IXMLDOMParseError_get_line_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMParseError_get_linepos_Proxy(IXMLDOMParseError *This,LONG *linePosition);
|
|
void IXMLDOMParseError_get_linepos_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDOMParseError_get_filepos_Proxy(IXMLDOMParseError *This,LONG *filePosition);
|
|
void IXMLDOMParseError_get_filepos_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXTLRuntime;
|
|
typedef struct IXTLRuntimeVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXTLRuntime *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXTLRuntime *This);
|
|
ULONG ( *Release)(IXTLRuntime *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXTLRuntime *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXTLRuntime *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXTLRuntime *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXTLRuntime *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_nodeName)(IXTLRuntime *This,BSTR *name);
|
|
HRESULT ( *get_nodeValue)(IXTLRuntime *This,VARIANT *value);
|
|
HRESULT ( *put_nodeValue)(IXTLRuntime *This,VARIANT value);
|
|
HRESULT ( *get_nodeType)(IXTLRuntime *This,DOMNodeType *type);
|
|
HRESULT ( *get_parentNode)(IXTLRuntime *This,IXMLDOMNode **parent);
|
|
HRESULT ( *get_childNodes)(IXTLRuntime *This,IXMLDOMNodeList **childList);
|
|
HRESULT ( *get_firstChild)(IXTLRuntime *This,IXMLDOMNode **firstChild);
|
|
HRESULT ( *get_lastChild)(IXTLRuntime *This,IXMLDOMNode **lastChild);
|
|
HRESULT ( *get_previousSibling)(IXTLRuntime *This,IXMLDOMNode **previousSibling);
|
|
HRESULT ( *get_nextSibling)(IXTLRuntime *This,IXMLDOMNode **nextSibling);
|
|
HRESULT ( *get_attributes)(IXTLRuntime *This,IXMLDOMNamedNodeMap **attributeMap);
|
|
HRESULT ( *insertBefore)(IXTLRuntime *This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *replaceChild)(IXTLRuntime *This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild);
|
|
HRESULT ( *removeChild)(IXTLRuntime *This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild);
|
|
HRESULT ( *appendChild)(IXTLRuntime *This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild);
|
|
HRESULT ( *hasChildNodes)(IXTLRuntime *This,VARIANT_BOOL *hasChild);
|
|
HRESULT ( *get_ownerDocument)(IXTLRuntime *This,IXMLDOMDocument **DOMDocument);
|
|
HRESULT ( *cloneNode)(IXTLRuntime *This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot);
|
|
HRESULT ( *get_nodeTypeString)(IXTLRuntime *This,BSTR *nodeType);
|
|
HRESULT ( *get_text)(IXTLRuntime *This,BSTR *text);
|
|
HRESULT ( *put_text)(IXTLRuntime *This,BSTR text);
|
|
HRESULT ( *get_specified)(IXTLRuntime *This,VARIANT_BOOL *isSpecified);
|
|
HRESULT ( *get_definition)(IXTLRuntime *This,IXMLDOMNode **definitionNode);
|
|
HRESULT ( *get_nodeTypedValue)(IXTLRuntime *This,VARIANT *typedValue);
|
|
HRESULT ( *put_nodeTypedValue)(IXTLRuntime *This,VARIANT typedValue);
|
|
HRESULT ( *get_dataType)(IXTLRuntime *This,VARIANT *dataTypeName);
|
|
HRESULT ( *put_dataType)(IXTLRuntime *This,BSTR dataTypeName);
|
|
HRESULT ( *get_xml)(IXTLRuntime *This,BSTR *xmlString);
|
|
HRESULT ( *transformNode)(IXTLRuntime *This,IXMLDOMNode *stylesheet,BSTR *xmlString);
|
|
HRESULT ( *selectNodes)(IXTLRuntime *This,BSTR queryString,IXMLDOMNodeList **resultList);
|
|
HRESULT ( *selectSingleNode)(IXTLRuntime *This,BSTR queryString,IXMLDOMNode **resultNode);
|
|
HRESULT ( *get_parsed)(IXTLRuntime *This,VARIANT_BOOL *isParsed);
|
|
HRESULT ( *get_namespaceURI)(IXTLRuntime *This,BSTR *namespaceURI);
|
|
HRESULT ( *get_prefix)(IXTLRuntime *This,BSTR *prefixString);
|
|
HRESULT ( *get_baseName)(IXTLRuntime *This,BSTR *nameString);
|
|
HRESULT ( *transformNodeToObject)(IXTLRuntime *This,IXMLDOMNode *stylesheet,VARIANT outputObject);
|
|
HRESULT ( *uniqueID)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pID);
|
|
HRESULT ( *depth)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pDepth);
|
|
HRESULT ( *childNumber)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
|
|
HRESULT ( *ancestorChildNumber)(IXTLRuntime *This,BSTR bstrNodeName,IXMLDOMNode *pNode,LONG *pNumber);
|
|
HRESULT ( *absoluteChildNumber)(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
|
|
HRESULT ( *formatIndex)(IXTLRuntime *This,LONG lIndex,BSTR bstrFormat,BSTR *pbstrFormattedString);
|
|
HRESULT ( *formatNumber)(IXTLRuntime *This,double dblNumber,BSTR bstrFormat,BSTR *pbstrFormattedString);
|
|
HRESULT ( *formatDate)(IXTLRuntime *This,VARIANT varDate,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
|
|
HRESULT ( *formatTime)(IXTLRuntime *This,VARIANT varTime,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
|
|
|
|
} IXTLRuntimeVtbl;
|
|
struct IXTLRuntime {
|
|
struct IXTLRuntimeVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXTLRuntime_uniqueID_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pID);
|
|
void IXTLRuntime_uniqueID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_depth_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pDepth);
|
|
void IXTLRuntime_depth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_childNumber_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
|
|
void IXTLRuntime_childNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_ancestorChildNumber_Proxy(IXTLRuntime *This,BSTR bstrNodeName,IXMLDOMNode *pNode,LONG *pNumber);
|
|
void IXTLRuntime_ancestorChildNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_absoluteChildNumber_Proxy(IXTLRuntime *This,IXMLDOMNode *pNode,LONG *pNumber);
|
|
void IXTLRuntime_absoluteChildNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_formatIndex_Proxy(IXTLRuntime *This,LONG lIndex,BSTR bstrFormat,BSTR *pbstrFormattedString);
|
|
void IXTLRuntime_formatIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_formatNumber_Proxy(IXTLRuntime *This,double dblNumber,BSTR bstrFormat,BSTR *pbstrFormattedString);
|
|
void IXTLRuntime_formatNumber_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_formatDate_Proxy(IXTLRuntime *This,VARIANT varDate,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
|
|
void IXTLRuntime_formatDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXTLRuntime_formatTime_Proxy(IXTLRuntime *This,VARIANT varTime,BSTR bstrFormat,VARIANT varDestLocale,BSTR *pbstrFormattedString);
|
|
void IXTLRuntime_formatTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID DIID_XMLDOMDocumentEvents;
|
|
typedef struct XMLDOMDocumentEventsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(XMLDOMDocumentEvents *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(XMLDOMDocumentEvents *This);
|
|
ULONG ( *Release)(XMLDOMDocumentEvents *This);
|
|
HRESULT ( *GetTypeInfoCount)(XMLDOMDocumentEvents *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(XMLDOMDocumentEvents *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(XMLDOMDocumentEvents *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(XMLDOMDocumentEvents *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
|
|
} XMLDOMDocumentEventsVtbl;
|
|
struct XMLDOMDocumentEvents {
|
|
struct XMLDOMDocumentEventsVtbl *lpVtbl;
|
|
};
|
|
extern const CLSID CLSID_DOMDocument;
|
|
extern const CLSID CLSID_DOMFreeThreadedDocument;
|
|
extern const IID IID_IXMLHttpRequest;
|
|
typedef struct IXMLHttpRequestVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLHttpRequest *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLHttpRequest *This);
|
|
ULONG ( *Release)(IXMLHttpRequest *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLHttpRequest *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLHttpRequest *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLHttpRequest *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLHttpRequest *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *open)(IXMLHttpRequest *This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT bstrUser,VARIANT bstrPassword);
|
|
HRESULT ( *setRequestHeader)(IXMLHttpRequest *This,BSTR bstrHeader,BSTR bstrValue);
|
|
HRESULT ( *getResponseHeader)(IXMLHttpRequest *This,BSTR bstrHeader,BSTR *pbstrValue);
|
|
HRESULT ( *getAllResponseHeaders)(IXMLHttpRequest *This,BSTR *pbstrHeaders);
|
|
HRESULT ( *send)(IXMLHttpRequest *This,VARIANT varBody);
|
|
HRESULT ( *abort)(IXMLHttpRequest *This);
|
|
HRESULT ( *get_status)(IXMLHttpRequest *This,LONG *plStatus);
|
|
HRESULT ( *get_statusText)(IXMLHttpRequest *This,BSTR *pbstrStatus);
|
|
HRESULT ( *get_responseXML)(IXMLHttpRequest *This,IDispatch **ppBody);
|
|
HRESULT ( *get_responseText)(IXMLHttpRequest *This,BSTR *pbstrBody);
|
|
HRESULT ( *get_responseBody)(IXMLHttpRequest *This,VARIANT *pvarBody);
|
|
HRESULT ( *get_responseStream)(IXMLHttpRequest *This,VARIANT *pvarBody);
|
|
HRESULT ( *get_readyState)(IXMLHttpRequest *This,LONG *plState);
|
|
HRESULT ( *put_onreadystatechange)(IXMLHttpRequest *This,IDispatch *pReadyStateSink);
|
|
|
|
} IXMLHttpRequestVtbl;
|
|
struct IXMLHttpRequest {
|
|
struct IXMLHttpRequestVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLHttpRequest_open_Proxy(IXMLHttpRequest *This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT bstrUser,VARIANT bstrPassword);
|
|
void IXMLHttpRequest_open_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_setRequestHeader_Proxy(IXMLHttpRequest *This,BSTR bstrHeader,BSTR bstrValue);
|
|
void IXMLHttpRequest_setRequestHeader_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_getResponseHeader_Proxy(IXMLHttpRequest *This,BSTR bstrHeader,BSTR *pbstrValue);
|
|
void IXMLHttpRequest_getResponseHeader_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_getAllResponseHeaders_Proxy(IXMLHttpRequest *This,BSTR *pbstrHeaders);
|
|
void IXMLHttpRequest_getAllResponseHeaders_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_send_Proxy(IXMLHttpRequest *This,VARIANT varBody);
|
|
void IXMLHttpRequest_send_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_abort_Proxy(IXMLHttpRequest *This);
|
|
void IXMLHttpRequest_abort_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_status_Proxy(IXMLHttpRequest *This,LONG *plStatus);
|
|
void IXMLHttpRequest_get_status_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_statusText_Proxy(IXMLHttpRequest *This,BSTR *pbstrStatus);
|
|
void IXMLHttpRequest_get_statusText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_responseXML_Proxy(IXMLHttpRequest *This,IDispatch **ppBody);
|
|
void IXMLHttpRequest_get_responseXML_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_responseText_Proxy(IXMLHttpRequest *This,BSTR *pbstrBody);
|
|
void IXMLHttpRequest_get_responseText_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_responseBody_Proxy(IXMLHttpRequest *This,VARIANT *pvarBody);
|
|
void IXMLHttpRequest_get_responseBody_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_responseStream_Proxy(IXMLHttpRequest *This,VARIANT *pvarBody);
|
|
void IXMLHttpRequest_get_responseStream_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_get_readyState_Proxy(IXMLHttpRequest *This,LONG *plState);
|
|
void IXMLHttpRequest_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLHttpRequest_put_onreadystatechange_Proxy(IXMLHttpRequest *This,IDispatch *pReadyStateSink);
|
|
void IXMLHttpRequest_put_onreadystatechange_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const CLSID CLSID_XMLHTTPRequest;
|
|
extern const IID IID_IXMLDSOControl;
|
|
typedef struct IXMLDSOControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDSOControl *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDSOControl *This);
|
|
ULONG ( *Release)(IXMLDSOControl *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDSOControl *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDSOControl *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDSOControl *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDSOControl *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_XMLDocument)(IXMLDSOControl *This,IXMLDOMDocument **ppDoc);
|
|
HRESULT ( *put_XMLDocument)(IXMLDSOControl *This,IXMLDOMDocument *ppDoc);
|
|
HRESULT ( *get_JavaDSOCompatible)(IXMLDSOControl *This,WINBOOL *fJavaDSOCompatible);
|
|
HRESULT ( *put_JavaDSOCompatible)(IXMLDSOControl *This,WINBOOL fJavaDSOCompatible);
|
|
HRESULT ( *get_readyState)(IXMLDSOControl *This,LONG *state);
|
|
|
|
} IXMLDSOControlVtbl;
|
|
struct IXMLDSOControl {
|
|
struct IXMLDSOControlVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDSOControl_get_XMLDocument_Proxy(IXMLDSOControl *This,IXMLDOMDocument **ppDoc);
|
|
void IXMLDSOControl_get_XMLDocument_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDSOControl_put_XMLDocument_Proxy(IXMLDSOControl *This,IXMLDOMDocument *ppDoc);
|
|
void IXMLDSOControl_put_XMLDocument_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDSOControl_get_JavaDSOCompatible_Proxy(IXMLDSOControl *This,WINBOOL *fJavaDSOCompatible);
|
|
void IXMLDSOControl_get_JavaDSOCompatible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDSOControl_put_JavaDSOCompatible_Proxy(IXMLDSOControl *This,WINBOOL fJavaDSOCompatible);
|
|
void IXMLDSOControl_put_JavaDSOCompatible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDSOControl_get_readyState_Proxy(IXMLDSOControl *This,LONG *state);
|
|
void IXMLDSOControl_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const CLSID CLSID_XMLDSOControl;
|
|
extern const IID IID_IXMLElementCollection;
|
|
typedef struct IXMLElementCollectionVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLElementCollection *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLElementCollection *This);
|
|
ULONG ( *Release)(IXMLElementCollection *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLElementCollection *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLElementCollection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLElementCollection *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLElementCollection *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *put_length)(IXMLElementCollection *This,LONG v);
|
|
HRESULT ( *get_length)(IXMLElementCollection *This,LONG *p);
|
|
HRESULT ( *get__newEnum)(IXMLElementCollection *This,IUnknown **ppUnk);
|
|
HRESULT ( *item)(IXMLElementCollection *This,VARIANT var1,VARIANT var2,IDispatch **ppDisp);
|
|
|
|
} IXMLElementCollectionVtbl;
|
|
struct IXMLElementCollection {
|
|
struct IXMLElementCollectionVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLElementCollection_put_length_Proxy(IXMLElementCollection *This,LONG v);
|
|
void IXMLElementCollection_put_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElementCollection_get_length_Proxy(IXMLElementCollection *This,LONG *p);
|
|
void IXMLElementCollection_get_length_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElementCollection_get__newEnum_Proxy(IXMLElementCollection *This,IUnknown **ppUnk);
|
|
void IXMLElementCollection_get__newEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElementCollection_item_Proxy(IXMLElementCollection *This,VARIANT var1,VARIANT var2,IDispatch **ppDisp);
|
|
void IXMLElementCollection_item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDocument;
|
|
typedef struct IXMLDocumentVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDocument *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDocument *This);
|
|
ULONG ( *Release)(IXMLDocument *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDocument *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDocument *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDocument *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDocument *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_root)(IXMLDocument *This,IXMLElement **p);
|
|
HRESULT ( *get_fileSize)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *get_fileModifiedDate)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *get_fileUpdatedDate)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *get_URL)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *put_URL)(IXMLDocument *This,BSTR p);
|
|
HRESULT ( *get_mimeType)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *get_readyState)(IXMLDocument *This,LONG *pl);
|
|
HRESULT ( *get_charset)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *put_charset)(IXMLDocument *This,BSTR p);
|
|
HRESULT ( *get_version)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *get_doctype)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *get_dtdURL)(IXMLDocument *This,BSTR *p);
|
|
HRESULT ( *createElement)(IXMLDocument *This,VARIANT vType,VARIANT var1,IXMLElement **ppElem);
|
|
|
|
} IXMLDocumentVtbl;
|
|
struct IXMLDocument {
|
|
struct IXMLDocumentVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDocument_get_root_Proxy(IXMLDocument *This,IXMLElement **p);
|
|
void IXMLDocument_get_root_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_fileSize_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_fileSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_fileModifiedDate_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_fileModifiedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_fileUpdatedDate_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_fileUpdatedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_URL_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_put_URL_Proxy(IXMLDocument *This,BSTR p);
|
|
void IXMLDocument_put_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_mimeType_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_mimeType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_readyState_Proxy(IXMLDocument *This,LONG *pl);
|
|
void IXMLDocument_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_charset_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_put_charset_Proxy(IXMLDocument *This,BSTR p);
|
|
void IXMLDocument_put_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_version_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_doctype_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_doctype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_get_dtdURL_Proxy(IXMLDocument *This,BSTR *p);
|
|
void IXMLDocument_get_dtdURL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument_createElement_Proxy(IXMLDocument *This,VARIANT vType,VARIANT var1,IXMLElement **ppElem);
|
|
void IXMLDocument_createElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLDocument2;
|
|
typedef struct IXMLDocument2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLDocument2 *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLDocument2 *This);
|
|
ULONG ( *Release)(IXMLDocument2 *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLDocument2 *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLDocument2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLDocument2 *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLDocument2 *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_root)(IXMLDocument2 *This,IXMLElement2 **p);
|
|
HRESULT ( *get_fileSize)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *get_fileModifiedDate)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *get_fileUpdatedDate)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *get_URL)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *put_URL)(IXMLDocument2 *This,BSTR p);
|
|
HRESULT ( *get_mimeType)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *get_readyState)(IXMLDocument2 *This,LONG *pl);
|
|
HRESULT ( *get_charset)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *put_charset)(IXMLDocument2 *This,BSTR p);
|
|
HRESULT ( *get_version)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *get_doctype)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *get_dtdURL)(IXMLDocument2 *This,BSTR *p);
|
|
HRESULT ( *createElement)(IXMLDocument2 *This,VARIANT vType,VARIANT var1,IXMLElement2 **ppElem);
|
|
HRESULT ( *get_async)(IXMLDocument2 *This,VARIANT_BOOL *pf);
|
|
HRESULT ( *put_async)(IXMLDocument2 *This,VARIANT_BOOL f);
|
|
|
|
} IXMLDocument2Vtbl;
|
|
struct IXMLDocument2 {
|
|
struct IXMLDocument2Vtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLDocument2_get_root_Proxy(IXMLDocument2 *This,IXMLElement2 **p);
|
|
void IXMLDocument2_get_root_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_fileSize_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_fileSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_fileModifiedDate_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_fileModifiedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_fileUpdatedDate_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_fileUpdatedDate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_URL_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_put_URL_Proxy(IXMLDocument2 *This,BSTR p);
|
|
void IXMLDocument2_put_URL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_mimeType_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_mimeType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_readyState_Proxy(IXMLDocument2 *This,LONG *pl);
|
|
void IXMLDocument2_get_readyState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_charset_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_put_charset_Proxy(IXMLDocument2 *This,BSTR p);
|
|
void IXMLDocument2_put_charset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_version_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_version_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_doctype_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_doctype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_dtdURL_Proxy(IXMLDocument2 *This,BSTR *p);
|
|
void IXMLDocument2_get_dtdURL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_createElement_Proxy(IXMLDocument2 *This,VARIANT vType,VARIANT var1,IXMLElement2 **ppElem);
|
|
void IXMLDocument2_createElement_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_get_async_Proxy(IXMLDocument2 *This,VARIANT_BOOL *pf);
|
|
void IXMLDocument2_get_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLDocument2_put_async_Proxy(IXMLDocument2 *This,VARIANT_BOOL f);
|
|
void IXMLDocument2_put_async_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLElement;
|
|
typedef struct IXMLElementVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLElement *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLElement *This);
|
|
ULONG ( *Release)(IXMLElement *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLElement *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLElement *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLElement *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLElement *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_tagName)(IXMLElement *This,BSTR *p);
|
|
HRESULT ( *put_tagName)(IXMLElement *This,BSTR p);
|
|
HRESULT ( *get_parent)(IXMLElement *This,IXMLElement **ppParent);
|
|
HRESULT ( *setAttribute)(IXMLElement *This,BSTR strPropertyName,VARIANT PropertyValue);
|
|
HRESULT ( *getAttribute)(IXMLElement *This,BSTR strPropertyName,VARIANT *PropertyValue);
|
|
HRESULT ( *removeAttribute)(IXMLElement *This,BSTR strPropertyName);
|
|
HRESULT ( *get_children)(IXMLElement *This,IXMLElementCollection **pp);
|
|
HRESULT ( *get_type)(IXMLElement *This,LONG *plType);
|
|
HRESULT ( *get_text)(IXMLElement *This,BSTR *p);
|
|
HRESULT ( *put_text)(IXMLElement *This,BSTR p);
|
|
HRESULT ( *addChild)(IXMLElement *This,IXMLElement *pChildElem,LONG lIndex,LONG lReserved);
|
|
HRESULT ( *removeChild)(IXMLElement *This,IXMLElement *pChildElem);
|
|
|
|
} IXMLElementVtbl;
|
|
struct IXMLElement {
|
|
struct IXMLElementVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLElement_get_tagName_Proxy(IXMLElement *This,BSTR *p);
|
|
void IXMLElement_get_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_put_tagName_Proxy(IXMLElement *This,BSTR p);
|
|
void IXMLElement_put_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_get_parent_Proxy(IXMLElement *This,IXMLElement **ppParent);
|
|
void IXMLElement_get_parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_setAttribute_Proxy(IXMLElement *This,BSTR strPropertyName,VARIANT PropertyValue);
|
|
void IXMLElement_setAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_getAttribute_Proxy(IXMLElement *This,BSTR strPropertyName,VARIANT *PropertyValue);
|
|
void IXMLElement_getAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_removeAttribute_Proxy(IXMLElement *This,BSTR strPropertyName);
|
|
void IXMLElement_removeAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_get_children_Proxy(IXMLElement *This,IXMLElementCollection **pp);
|
|
void IXMLElement_get_children_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_get_type_Proxy(IXMLElement *This,LONG *plType);
|
|
void IXMLElement_get_type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_get_text_Proxy(IXMLElement *This,BSTR *p);
|
|
void IXMLElement_get_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_put_text_Proxy(IXMLElement *This,BSTR p);
|
|
void IXMLElement_put_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_addChild_Proxy(IXMLElement *This,IXMLElement *pChildElem,LONG lIndex,LONG lReserved);
|
|
void IXMLElement_addChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement_removeChild_Proxy(IXMLElement *This,IXMLElement *pChildElem);
|
|
void IXMLElement_removeChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLElement2;
|
|
typedef struct IXMLElement2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLElement2 *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLElement2 *This);
|
|
ULONG ( *Release)(IXMLElement2 *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLElement2 *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLElement2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLElement2 *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLElement2 *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_tagName)(IXMLElement2 *This,BSTR *p);
|
|
HRESULT ( *put_tagName)(IXMLElement2 *This,BSTR p);
|
|
HRESULT ( *get_parent)(IXMLElement2 *This,IXMLElement2 **ppParent);
|
|
HRESULT ( *setAttribute)(IXMLElement2 *This,BSTR strPropertyName,VARIANT PropertyValue);
|
|
HRESULT ( *getAttribute)(IXMLElement2 *This,BSTR strPropertyName,VARIANT *PropertyValue);
|
|
HRESULT ( *removeAttribute)(IXMLElement2 *This,BSTR strPropertyName);
|
|
HRESULT ( *get_children)(IXMLElement2 *This,IXMLElementCollection **pp);
|
|
HRESULT ( *get_type)(IXMLElement2 *This,LONG *plType);
|
|
HRESULT ( *get_text)(IXMLElement2 *This,BSTR *p);
|
|
HRESULT ( *put_text)(IXMLElement2 *This,BSTR p);
|
|
HRESULT ( *addChild)(IXMLElement2 *This,IXMLElement2 *pChildElem,LONG lIndex,LONG lReserved);
|
|
HRESULT ( *removeChild)(IXMLElement2 *This,IXMLElement2 *pChildElem);
|
|
HRESULT ( *get_attributes)(IXMLElement2 *This,IXMLElementCollection **pp);
|
|
|
|
} IXMLElement2Vtbl;
|
|
struct IXMLElement2 {
|
|
struct IXMLElement2Vtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLElement2_get_tagName_Proxy(IXMLElement2 *This,BSTR *p);
|
|
void IXMLElement2_get_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_put_tagName_Proxy(IXMLElement2 *This,BSTR p);
|
|
void IXMLElement2_put_tagName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_get_parent_Proxy(IXMLElement2 *This,IXMLElement2 **ppParent);
|
|
void IXMLElement2_get_parent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_setAttribute_Proxy(IXMLElement2 *This,BSTR strPropertyName,VARIANT PropertyValue);
|
|
void IXMLElement2_setAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_getAttribute_Proxy(IXMLElement2 *This,BSTR strPropertyName,VARIANT *PropertyValue);
|
|
void IXMLElement2_getAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_removeAttribute_Proxy(IXMLElement2 *This,BSTR strPropertyName);
|
|
void IXMLElement2_removeAttribute_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_get_children_Proxy(IXMLElement2 *This,IXMLElementCollection **pp);
|
|
void IXMLElement2_get_children_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_get_type_Proxy(IXMLElement2 *This,LONG *plType);
|
|
void IXMLElement2_get_type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_get_text_Proxy(IXMLElement2 *This,BSTR *p);
|
|
void IXMLElement2_get_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_put_text_Proxy(IXMLElement2 *This,BSTR p);
|
|
void IXMLElement2_put_text_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_addChild_Proxy(IXMLElement2 *This,IXMLElement2 *pChildElem,LONG lIndex,LONG lReserved);
|
|
void IXMLElement2_addChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_removeChild_Proxy(IXMLElement2 *This,IXMLElement2 *pChildElem);
|
|
void IXMLElement2_removeChild_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLElement2_get_attributes_Proxy(IXMLElement2 *This,IXMLElementCollection **pp);
|
|
void IXMLElement2_get_attributes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLAttribute;
|
|
typedef struct IXMLAttributeVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLAttribute *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLAttribute *This);
|
|
ULONG ( *Release)(IXMLAttribute *This);
|
|
HRESULT ( *GetTypeInfoCount)(IXMLAttribute *This,UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(IXMLAttribute *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(IXMLAttribute *This,const IID *const riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(IXMLAttribute *This,DISPID dispIdMember,const IID *const riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
|
|
HRESULT ( *get_name)(IXMLAttribute *This,BSTR *n);
|
|
HRESULT ( *get_value)(IXMLAttribute *This,BSTR *v);
|
|
|
|
} IXMLAttributeVtbl;
|
|
struct IXMLAttribute {
|
|
struct IXMLAttributeVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLAttribute_get_name_Proxy(IXMLAttribute *This,BSTR *n);
|
|
void IXMLAttribute_get_name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
HRESULT IXMLAttribute_get_value_Proxy(IXMLAttribute *This,BSTR *v);
|
|
void IXMLAttribute_get_value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const IID IID_IXMLError;
|
|
typedef struct IXMLErrorVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(IXMLError *This,const IID *const riid,void **ppvObject);
|
|
ULONG ( *AddRef)(IXMLError *This);
|
|
ULONG ( *Release)(IXMLError *This);
|
|
HRESULT ( *GetErrorInfo)(IXMLError *This,XML_ERROR *pErrorReturn);
|
|
|
|
} IXMLErrorVtbl;
|
|
struct IXMLError {
|
|
struct IXMLErrorVtbl *lpVtbl;
|
|
};
|
|
HRESULT IXMLError_GetErrorInfo_Proxy(IXMLError *This,XML_ERROR *pErrorReturn);
|
|
void IXMLError_GetErrorInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
|
|
extern const CLSID CLSID_XMLDocument;
|
|
|
|
typedef struct IBindStatusCallbackMsg IBindStatusCallbackMsg;
|
|
extern const IID CLSID_SBS_StdURLMoniker;
|
|
extern const IID CLSID_SBS_HttpProtocol;
|
|
extern const IID CLSID_SBS_FtpProtocol;
|
|
extern const IID CLSID_SBS_GopherProtocol;
|
|
extern const IID CLSID_SBS_HttpSProtocol;
|
|
extern const IID CLSID_SBS_FileProtocol;
|
|
extern const IID CLSID_SBS_MkProtocol;
|
|
extern const IID CLSID_SBS_UrlMkBindCtx;
|
|
extern const IID CLSID_SBS_SoftDistExt;
|
|
extern const IID CLSID_SBS_CdlProtocol;
|
|
extern const IID CLSID_SBS_ClassInstallFilter;
|
|
extern const IID CLSID_SBS_InternetSecurityManager;
|
|
extern const IID CLSID_SBS_InternetZoneManager;
|
|
extern const IID IID_IAsyncMoniker;
|
|
extern const IID CLSID_StdURLMoniker;
|
|
extern const IID CLSID_HttpProtocol;
|
|
extern const IID CLSID_FtpProtocol;
|
|
extern const IID CLSID_GopherProtocol;
|
|
extern const IID CLSID_HttpSProtocol;
|
|
extern const IID CLSID_FileProtocol;
|
|
extern const IID CLSID_MkProtocol;
|
|
extern const IID CLSID_StdURLProtocol;
|
|
extern const IID CLSID_UrlMkBindCtx;
|
|
extern const IID CLSID_CdlProtocol;
|
|
extern const IID CLSID_ClassInstallFilter;
|
|
extern const IID IID_IAsyncBindCtx;
|
|
extern HRESULT CreateURLMoniker(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER *ppmk);
|
|
extern HRESULT CreateURLMonikerEx(LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER *ppmk, DWORD dwFlags);
|
|
extern HRESULT GetClassURL(LPCWSTR szURL, CLSID *pClsID);
|
|
extern HRESULT CreateAsyncBindCtx(DWORD reserved, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEFetc, IBindCtx **ppBC);
|
|
extern HRESULT CreateAsyncBindCtxEx(IBindCtx *pbc, DWORD dwOptions, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEnum, IBindCtx **ppBC, DWORD reserved);
|
|
extern HRESULT MkParseDisplayNameEx(IBindCtx *pbc, LPCWSTR szDisplayName, ULONG *pchEaten, LPMONIKER *ppmk);
|
|
extern HRESULT RegisterBindStatusCallback(LPBC pBC, IBindStatusCallback *pBSCb, IBindStatusCallback **ppBSCBPrev, DWORD dwReserved);
|
|
extern HRESULT RevokeBindStatusCallback(LPBC pBC, IBindStatusCallback *pBSCb);
|
|
extern HRESULT GetClassFileOrMime(LPBC pBC, LPCWSTR szFilename, LPVOID pBuffer, DWORD cbSize, LPCWSTR szMime, DWORD dwReserved, CLSID *pclsid);
|
|
extern HRESULT IsValidURL(LPBC pBC, LPCWSTR szURL, DWORD dwReserved);
|
|
extern HRESULT CoGetClassObjectFromURL(const IID *const rCLASSID, LPCWSTR szCODE, DWORD dwFileVersionMS, DWORD dwFileVersionLS, LPCWSTR szTYPE, LPBINDCTX pBindCtx, DWORD dwClsContext, LPVOID pvReserved, const IID *const riid, LPVOID *ppv);
|
|
extern HRESULT IEInstallScope(LPDWORD pdwScope);
|
|
extern HRESULT FaultInIEFeature(HWND hWnd, uCLSSPEC *pClassSpec, QUERYCONTEXT *pQuery, DWORD dwFlags);
|
|
extern HRESULT GetComponentIDFromCLSSPEC(uCLSSPEC *pClassspec, LPSTR *ppszComponentID);
|
|
extern HRESULT IsAsyncMoniker(IMoniker *pmk);
|
|
extern HRESULT CreateURLBinding(LPCWSTR lpszUrl, IBindCtx *pbc, IBinding **ppBdg);
|
|
extern HRESULT RegisterMediaTypes(UINT ctypes, const LPCSTR *rgszTypes, CLIPFORMAT *rgcfTypes);
|
|
extern HRESULT FindMediaType(LPCSTR rgszTypes, CLIPFORMAT *rgcfTypes);
|
|
extern HRESULT CreateFormatEnumerator(UINT cfmtetc, FORMATETC *rgfmtetc, IEnumFORMATETC **ppenumfmtetc);
|
|
extern HRESULT RegisterFormatEnumerator(LPBC pBC, IEnumFORMATETC *pEFetc, DWORD reserved);
|
|
extern HRESULT RevokeFormatEnumerator(LPBC pBC, IEnumFORMATETC *pEFetc);
|
|
extern HRESULT RegisterMediaTypeClass(LPBC pBC,UINT ctypes, const LPCSTR *rgszTypes, CLSID *rgclsID, DWORD reserved);
|
|
extern HRESULT FindMediaTypeClass(LPBC pBC, LPCSTR szType, CLSID *pclsID, DWORD reserved);
|
|
extern HRESULT UrlMkSetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved);
|
|
extern HRESULT UrlMkGetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD *pdwBufferLengthOut, DWORD dwReserved);
|
|
extern HRESULT FindMimeFromData(LPBC pBC, LPCWSTR pwzUrl, LPVOID pBuffer, DWORD cbSize, LPCWSTR pwzMimeProposed, DWORD dwMimeFlags, LPWSTR *ppwzMimeOut, DWORD dwReserved);
|
|
extern HRESULT ObtainUserAgentString(DWORD dwOption, LPSTR pszUAOut, DWORD *cbSize);
|
|
extern HRESULT CompareSecurityIds(BYTE *pbSecurityId1, DWORD dwLen1, BYTE *pbSecurityId2, DWORD dwLen2, DWORD dwReserved);
|
|
extern HRESULT CompatFlagsFromClsid(CLSID *pclsid, LPDWORD pdwCompatFlags, LPDWORD pdwMiscStatusFlags);
|
|
typedef IPersistMoniker *LPPERSISTMONIKER;
|
|
extern const GUID IID_IPersistMoniker;
|
|
typedef struct IPersistMonikerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistMoniker *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistMoniker *This);
|
|
ULONG ( *Release)(
|
|
IPersistMoniker *This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistMoniker *This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistMoniker *This);
|
|
HRESULT ( *Load)(
|
|
IPersistMoniker *This,
|
|
WINBOOL fFullyAvailable,
|
|
IMoniker *pimkName,
|
|
LPBC pibc,
|
|
DWORD grfMode);
|
|
HRESULT ( *Save)(
|
|
IPersistMoniker *This,
|
|
IMoniker *pimkName,
|
|
LPBC pbc,
|
|
WINBOOL fRemember);
|
|
HRESULT ( *SaveCompleted)(
|
|
IPersistMoniker *This,
|
|
IMoniker *pimkName,
|
|
LPBC pibc);
|
|
HRESULT ( *GetCurMoniker)(
|
|
IPersistMoniker *This,
|
|
IMoniker **ppimkName);
|
|
|
|
} IPersistMonikerVtbl;
|
|
struct IPersistMoniker {
|
|
IPersistMonikerVtbl* lpVtbl;
|
|
};
|
|
typedef IMonikerProp *LPMONIKERPROP;
|
|
typedef enum __WIDL_urlmon_generated_name_00000002 {
|
|
MIMETYPEPROP = 0x0,
|
|
USE_SRC_URL = 0x1,
|
|
CLASSIDPROP = 0x2,
|
|
TRUSTEDDOWNLOADPROP = 0x3,
|
|
POPUPLEVELPROP = 0x4
|
|
} MONIKERPROPERTY;
|
|
extern const GUID IID_IMonikerProp;
|
|
typedef struct IMonikerPropVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IMonikerProp *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IMonikerProp *This);
|
|
ULONG ( *Release)(
|
|
IMonikerProp *This);
|
|
HRESULT ( *PutProperty)(
|
|
IMonikerProp *This,
|
|
MONIKERPROPERTY mkp,
|
|
LPCWSTR val);
|
|
|
|
} IMonikerPropVtbl;
|
|
struct IMonikerProp {
|
|
IMonikerPropVtbl* lpVtbl;
|
|
};
|
|
typedef IBindProtocol *LPBINDPROTOCOL;
|
|
extern const GUID IID_IBindProtocol;
|
|
typedef struct IBindProtocolVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBindProtocol *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBindProtocol *This);
|
|
ULONG ( *Release)(
|
|
IBindProtocol *This);
|
|
HRESULT ( *CreateBinding)(
|
|
IBindProtocol *This,
|
|
LPCWSTR szUrl,
|
|
IBindCtx *pbc,
|
|
IBinding **ppb);
|
|
|
|
} IBindProtocolVtbl;
|
|
struct IBindProtocol {
|
|
IBindProtocolVtbl* lpVtbl;
|
|
};
|
|
typedef IBinding *LPBINDING;
|
|
extern const GUID IID_IBinding;
|
|
typedef struct IBindingVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBinding *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBinding *This);
|
|
ULONG ( *Release)(
|
|
IBinding *This);
|
|
HRESULT ( *Abort)(
|
|
IBinding *This);
|
|
HRESULT ( *Suspend)(
|
|
IBinding *This);
|
|
HRESULT ( *Resume)(
|
|
IBinding *This);
|
|
HRESULT ( *SetPriority)(
|
|
IBinding *This,
|
|
LONG nPriority);
|
|
HRESULT ( *GetPriority)(
|
|
IBinding *This,
|
|
LONG *pnPriority);
|
|
HRESULT ( *GetBindResult)(
|
|
IBinding *This,
|
|
CLSID *pclsidProtocol,
|
|
DWORD *pdwResult,
|
|
LPOLESTR *pszResult,
|
|
DWORD *pdwReserved);
|
|
|
|
} IBindingVtbl;
|
|
struct IBinding {
|
|
IBindingVtbl* lpVtbl;
|
|
};
|
|
HRESULT IBinding_RemoteGetBindResult_Proxy(
|
|
IBinding* This,
|
|
CLSID *pclsidProtocol,
|
|
DWORD *pdwResult,
|
|
LPOLESTR *pszResult,
|
|
DWORD dwReserved);
|
|
void IBinding_RemoteGetBindResult_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBinding_GetBindResult_Proxy(
|
|
IBinding* This,
|
|
CLSID *pclsidProtocol,
|
|
DWORD *pdwResult,
|
|
LPOLESTR *pszResult,
|
|
DWORD *pdwReserved);
|
|
HRESULT IBinding_GetBindResult_Stub(
|
|
IBinding* This,
|
|
CLSID *pclsidProtocol,
|
|
DWORD *pdwResult,
|
|
LPOLESTR *pszResult,
|
|
DWORD dwReserved);
|
|
typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
|
|
typedef enum __WIDL_urlmon_generated_name_00000003 {
|
|
BINDVERB_GET = 0x0,
|
|
BINDVERB_POST = 0x1,
|
|
BINDVERB_PUT = 0x2,
|
|
BINDVERB_CUSTOM = 0x3,
|
|
BINDVERB_RESERVED1 = 0x4
|
|
} BINDVERB;
|
|
typedef enum __WIDL_urlmon_generated_name_00000004 {
|
|
BINDINFOF_URLENCODESTGMEDDATA = 0x1,
|
|
BINDINFOF_URLENCODEDEXTRAINFO = 0x2
|
|
} BINDINFOF;
|
|
typedef enum __WIDL_urlmon_generated_name_00000005 {
|
|
BINDF_ASYNCHRONOUS = 0x1,
|
|
BINDF_ASYNCSTORAGE = 0x2,
|
|
BINDF_NOPROGRESSIVERENDERING = 0x4,
|
|
BINDF_OFFLINEOPERATION = 0x8,
|
|
BINDF_GETNEWESTVERSION = 0x10,
|
|
BINDF_NOWRITECACHE = 0x20,
|
|
BINDF_NEEDFILE = 0x40,
|
|
BINDF_PULLDATA = 0x80,
|
|
BINDF_IGNORESECURITYPROBLEM = 0x100,
|
|
BINDF_RESYNCHRONIZE = 0x200,
|
|
BINDF_HYPERLINK = 0x400,
|
|
BINDF_NO_UI = 0x800,
|
|
BINDF_SILENTOPERATION = 0x1000,
|
|
BINDF_PRAGMA_NO_CACHE = 0x2000,
|
|
BINDF_GETCLASSOBJECT = 0x4000,
|
|
BINDF_RESERVED_1 = 0x8000,
|
|
BINDF_FREE_THREADED = 0x10000,
|
|
BINDF_DIRECT_READ = 0x20000,
|
|
BINDF_FORMS_SUBMIT = 0x40000,
|
|
BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
|
|
BINDF_FROMURLMON = 0x100000,
|
|
BINDF_FWD_BACK = 0x200000,
|
|
BINDF_PREFERDEFAULTHANDLER = 0x400000,
|
|
BINDF_ENFORCERESTRICTED = 0x800000,
|
|
BINDF_RESERVED_2 = 0x80000000,
|
|
BINDF_RESERVED_3 = 0x1000000,
|
|
BINDF_RESERVED_4 = 0x2000000,
|
|
BINDF_RESERVED_5 = 0x4000000,
|
|
BINDF_RESERVED_6 = 0x8000000,
|
|
BINDF_RESERVED_7 = 0x40000000,
|
|
BINDF_RESERVED_8 = 0x20000000
|
|
} BINDF;
|
|
typedef enum __WIDL_urlmon_generated_name_00000006 {
|
|
URL_ENCODING_NONE = 0x0,
|
|
URL_ENCODING_ENABLE_UTF8 = 0x10000000,
|
|
URL_ENCODING_DISABLE_UTF8 = 0x20000000
|
|
} URL_ENCODING;
|
|
typedef struct _tagBINDINFO {
|
|
ULONG cbSize;
|
|
LPWSTR szExtraInfo;
|
|
STGMEDIUM stgmedData;
|
|
DWORD grfBindInfoF;
|
|
DWORD dwBindVerb;
|
|
LPWSTR szCustomVerb;
|
|
DWORD cbstgmedData;
|
|
DWORD dwOptions;
|
|
DWORD dwOptionsFlags;
|
|
DWORD dwCodePage;
|
|
SECURITY_ATTRIBUTES securityAttributes;
|
|
IID iid;
|
|
IUnknown *pUnk;
|
|
DWORD dwReserved;
|
|
} BINDINFO;
|
|
typedef struct _REMSECURITY_ATTRIBUTES {
|
|
DWORD nLength;
|
|
DWORD lpSecurityDescriptor;
|
|
WINBOOL bInheritHandle;
|
|
} REMSECURITY_ATTRIBUTES;
|
|
typedef struct _REMSECURITY_ATTRIBUTES *PREMSECURITY_ATTRIBUTES;
|
|
typedef struct _REMSECURITY_ATTRIBUTES *LPREMSECURITY_ATTRIBUTES;
|
|
typedef struct _tagRemBINDINFO {
|
|
ULONG cbSize;
|
|
LPWSTR szExtraInfo;
|
|
DWORD grfBindInfoF;
|
|
DWORD dwBindVerb;
|
|
LPWSTR szCustomVerb;
|
|
DWORD cbstgmedData;
|
|
DWORD dwOptions;
|
|
DWORD dwOptionsFlags;
|
|
DWORD dwCodePage;
|
|
REMSECURITY_ATTRIBUTES securityAttributes;
|
|
IID iid;
|
|
IUnknown *pUnk;
|
|
DWORD dwReserved;
|
|
} RemBINDINFO;
|
|
typedef struct tagRemFORMATETC {
|
|
DWORD cfFormat;
|
|
DWORD ptd;
|
|
DWORD dwAspect;
|
|
LONG lindex;
|
|
DWORD tymed;
|
|
} RemFORMATETC;
|
|
typedef struct tagRemFORMATETC *LPREMFORMATETC;
|
|
typedef enum __WIDL_urlmon_generated_name_00000007 {
|
|
BINDINFO_OPTIONS_WININETFLAG = 0x10000,
|
|
BINDINFO_OPTIONS_ENABLE_UTF8 = 0x20000,
|
|
BINDINFO_OPTIONS_DISABLE_UTF8 = 0x40000,
|
|
BINDINFO_OPTIONS_USE_IE_ENCODING = 0x80000,
|
|
BINDINFO_OPTIONS_BINDTOOBJECT = 0x100000,
|
|
BINDINFO_OPTIONS_SECURITYOPTOUT = 0x200000,
|
|
BINDINFO_OPTIONS_IGNOREMIMETEXTPLAIN = 0x400000,
|
|
BINDINFO_OPTIONS_USEBINDSTRINGCREDS = 0x800000,
|
|
BINDINFO_OPTIONS_IGNOREHTTPHTTPSREDIRECTS = 0x1000000,
|
|
BINDINFO_OPTIONS_IGNORE_SSLERRORS_ONCE = 0x2000000,
|
|
BINDINFO_WPC_DOWNLOADBLOCKED = 0x8000000,
|
|
BINDINFO_WPC_LOGGING_ENABLED = 0x10000000,
|
|
BINDINFO_OPTIONS_ALLOWCONNECTDATA = 0x20000000,
|
|
BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS = 0x40000000,
|
|
BINDINFO_OPTIONS_SHDOCVW_NAVIGATE = (int)0x80000000
|
|
} BINDINFO_OPTIONS;
|
|
typedef enum __WIDL_urlmon_generated_name_00000008 {
|
|
BSCF_FIRSTDATANOTIFICATION = 0x1,
|
|
BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
|
|
BSCF_LASTDATANOTIFICATION = 0x4,
|
|
BSCF_DATAFULLYAVAILABLE = 0x8,
|
|
BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10,
|
|
BSCF_SKIPDRAINDATAFORFILEURLS = 0x20,
|
|
BSCF_64BITLENGTHDOWNLOAD = 0x40
|
|
} BSCF;
|
|
typedef enum tagBINDSTATUS {
|
|
BINDSTATUS_FINDINGRESOURCE = 1,
|
|
BINDSTATUS_CONNECTING = 2,
|
|
BINDSTATUS_REDIRECTING = 3,
|
|
BINDSTATUS_BEGINDOWNLOADDATA = 4,
|
|
BINDSTATUS_DOWNLOADINGDATA = 5,
|
|
BINDSTATUS_ENDDOWNLOADDATA = 6,
|
|
BINDSTATUS_BEGINDOWNLOADCOMPONENTS = 7,
|
|
BINDSTATUS_INSTALLINGCOMPONENTS = 8,
|
|
BINDSTATUS_ENDDOWNLOADCOMPONENTS = 9,
|
|
BINDSTATUS_USINGCACHEDCOPY = 10,
|
|
BINDSTATUS_SENDINGREQUEST = 11,
|
|
BINDSTATUS_CLASSIDAVAILABLE = 12,
|
|
BINDSTATUS_MIMETYPEAVAILABLE = 13,
|
|
BINDSTATUS_CACHEFILENAMEAVAILABLE = 14,
|
|
BINDSTATUS_BEGINSYNCOPERATION = 15,
|
|
BINDSTATUS_ENDSYNCOPERATION = 16,
|
|
BINDSTATUS_BEGINUPLOADDATA = 17,
|
|
BINDSTATUS_UPLOADINGDATA = 18,
|
|
BINDSTATUS_ENDUPLOADDATA = 19,
|
|
BINDSTATUS_PROTOCOLCLASSID = 20,
|
|
BINDSTATUS_ENCODING = 21,
|
|
BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = 22,
|
|
BINDSTATUS_CLASSINSTALLLOCATION = 23,
|
|
BINDSTATUS_DECODING = 24,
|
|
BINDSTATUS_LOADINGMIMEHANDLER = 25,
|
|
BINDSTATUS_CONTENTDISPOSITIONATTACH = 26,
|
|
BINDSTATUS_FILTERREPORTMIMETYPE = 27,
|
|
BINDSTATUS_CLSIDCANINSTANTIATE = 28,
|
|
BINDSTATUS_IUNKNOWNAVAILABLE = 29,
|
|
BINDSTATUS_DIRECTBIND = 30,
|
|
BINDSTATUS_RAWMIMETYPE = 31,
|
|
BINDSTATUS_PROXYDETECTING = 32,
|
|
BINDSTATUS_ACCEPTRANGES = 33,
|
|
BINDSTATUS_COOKIE_SENT = 34,
|
|
BINDSTATUS_COMPACT_POLICY_RECEIVED = 35,
|
|
BINDSTATUS_COOKIE_SUPPRESSED = 36,
|
|
BINDSTATUS_COOKIE_STATE_UNKNOWN = 37,
|
|
BINDSTATUS_COOKIE_STATE_ACCEPT = 38,
|
|
BINDSTATUS_COOKIE_STATE_REJECT = 39,
|
|
BINDSTATUS_COOKIE_STATE_PROMPT = 40,
|
|
BINDSTATUS_COOKIE_STATE_LEASH = 41,
|
|
BINDSTATUS_COOKIE_STATE_DOWNGRADE = 42,
|
|
BINDSTATUS_POLICY_HREF = 43,
|
|
BINDSTATUS_P3P_HEADER = 44,
|
|
BINDSTATUS_SESSION_COOKIE_RECEIVED = 45,
|
|
BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = 46,
|
|
BINDSTATUS_SESSION_COOKIES_ALLOWED = 47,
|
|
BINDSTATUS_CACHECONTROL = 48,
|
|
BINDSTATUS_CONTENTDISPOSITIONFILENAME = 49,
|
|
BINDSTATUS_MIMETEXTPLAINMISMATCH = 50,
|
|
BINDSTATUS_PUBLISHERAVAILABLE = 51,
|
|
BINDSTATUS_DISPLAYNAMEAVAILABLE = 52,
|
|
BINDSTATUS_SSLUX_NAVBLOCKED = 53,
|
|
BINDSTATUS_SERVER_MIMETYPEAVAILABLE = 54,
|
|
BINDSTATUS_SNIFFED_CLASSIDAVAILABLE = 55,
|
|
BINDSTATUS_64BIT_PROGRESS = 56,
|
|
BINDSTATUS_LAST = BINDSTATUS_64BIT_PROGRESS,
|
|
BINDSTATUS_RESERVED_0 = 57,
|
|
BINDSTATUS_RESERVED_1 = 58,
|
|
BINDSTATUS_RESERVED_2 = 59,
|
|
BINDSTATUS_RESERVED_3 = 60,
|
|
BINDSTATUS_RESERVED_4 = 61,
|
|
BINDSTATUS_RESERVED_5 = 62,
|
|
BINDSTATUS_RESERVED_6 = 63,
|
|
BINDSTATUS_RESERVED_7 = 64,
|
|
BINDSTATUS_RESERVED_8 = 65,
|
|
BINDSTATUS_RESERVED_9 = 66,
|
|
BINDSTATUS_LAST_PRIVATE = BINDSTATUS_RESERVED_9
|
|
} BINDSTATUS;
|
|
extern const GUID IID_IBindStatusCallback;
|
|
typedef struct IBindStatusCallbackVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBindStatusCallback *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBindStatusCallback *This);
|
|
ULONG ( *Release)(
|
|
IBindStatusCallback *This);
|
|
HRESULT ( *OnStartBinding)(
|
|
IBindStatusCallback *This,
|
|
DWORD dwReserved,
|
|
IBinding *pib);
|
|
HRESULT ( *GetPriority)(
|
|
IBindStatusCallback *This,
|
|
LONG *pnPriority);
|
|
HRESULT ( *OnLowResource)(
|
|
IBindStatusCallback *This,
|
|
DWORD reserved);
|
|
HRESULT ( *OnProgress)(
|
|
IBindStatusCallback *This,
|
|
ULONG ulProgress,
|
|
ULONG ulProgressMax,
|
|
ULONG ulStatusCode,
|
|
LPCWSTR szStatusText);
|
|
HRESULT ( *OnStopBinding)(
|
|
IBindStatusCallback *This,
|
|
HRESULT hresult,
|
|
LPCWSTR szError);
|
|
HRESULT ( *GetBindInfo)(
|
|
IBindStatusCallback *This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo);
|
|
HRESULT ( *OnDataAvailable)(
|
|
IBindStatusCallback *This,
|
|
DWORD grfBSCF,
|
|
DWORD dwSize,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pstgmed);
|
|
HRESULT ( *OnObjectAvailable)(
|
|
IBindStatusCallback *This,
|
|
const IID *const riid,
|
|
IUnknown *punk);
|
|
|
|
} IBindStatusCallbackVtbl;
|
|
struct IBindStatusCallback {
|
|
IBindStatusCallbackVtbl* lpVtbl;
|
|
};
|
|
HRESULT IBindStatusCallback_RemoteGetBindInfo_Proxy(
|
|
IBindStatusCallback* This,
|
|
DWORD *grfBINDF,
|
|
RemBINDINFO *pbindinfo,
|
|
RemSTGMEDIUM *pstgmed);
|
|
void IBindStatusCallback_RemoteGetBindInfo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindStatusCallback_RemoteOnDataAvailable_Proxy(
|
|
IBindStatusCallback* This,
|
|
DWORD grfBSCF,
|
|
DWORD dwSize,
|
|
RemFORMATETC *pformatetc,
|
|
RemSTGMEDIUM *pstgmed);
|
|
void IBindStatusCallback_RemoteOnDataAvailable_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindStatusCallback_GetBindInfo_Proxy(
|
|
IBindStatusCallback* This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo);
|
|
HRESULT IBindStatusCallback_GetBindInfo_Stub(
|
|
IBindStatusCallback* This,
|
|
DWORD *grfBINDF,
|
|
RemBINDINFO *pbindinfo,
|
|
RemSTGMEDIUM *pstgmed);
|
|
HRESULT IBindStatusCallback_OnDataAvailable_Proxy(
|
|
IBindStatusCallback* This,
|
|
DWORD grfBSCF,
|
|
DWORD dwSize,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pstgmed);
|
|
HRESULT IBindStatusCallback_OnDataAvailable_Stub(
|
|
IBindStatusCallback* This,
|
|
DWORD grfBSCF,
|
|
DWORD dwSize,
|
|
RemFORMATETC *pformatetc,
|
|
RemSTGMEDIUM *pstgmed);
|
|
typedef IBindStatusCallbackEx *LPBINDSTATUSCALLBACKEX;
|
|
typedef enum __WIDL_urlmon_generated_name_00000009 {
|
|
BINDF2_DISABLEBASICOVERHTTP = 0x1,
|
|
BINDF2_DISABLEAUTOCOOKIEHANDLING = 0x2,
|
|
BINDF2_READ_DATA_GREATER_THAN_4GB = 0x4,
|
|
BINDF2_DISABLE_HTTP_REDIRECT_XSECURITYID = 0x8,
|
|
BINDF2_SETDOWNLOADMODE = 0x20,
|
|
BINDF2_DISABLE_HTTP_REDIRECT_CACHING = 0x40,
|
|
BINDF2_KEEP_CALLBACK_MODULE_LOADED = 0x80,
|
|
BINDF2_ALLOW_PROXY_CRED_PROMPT = 0x100,
|
|
BINDF2_RESERVED_F = 0x20000,
|
|
BINDF2_RESERVED_E = 0x40000,
|
|
BINDF2_RESERVED_D = 0x80000,
|
|
BINDF2_RESERVED_C = 0x100000,
|
|
BINDF2_RESERVED_B = 0x200000,
|
|
BINDF2_RESERVED_A = 0x400000,
|
|
BINDF2_RESERVED_9 = 0x800000,
|
|
BINDF2_RESERVED_8 = 0x1000000,
|
|
BINDF2_RESERVED_7 = 0x2000000,
|
|
BINDF2_RESERVED_6 = 0x4000000,
|
|
BINDF2_RESERVED_5 = 0x8000000,
|
|
BINDF2_RESERVED_4 = 0x10000000,
|
|
BINDF2_RESERVED_3 = 0x20000000,
|
|
BINDF2_RESERVED_2 = 0x40000000,
|
|
BINDF2_RESERVED_1 = 0x80000000
|
|
} BINDF2;
|
|
extern const GUID IID_IBindStatusCallbackEx;
|
|
typedef struct IBindStatusCallbackExVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBindStatusCallbackEx *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBindStatusCallbackEx *This);
|
|
ULONG ( *Release)(
|
|
IBindStatusCallbackEx *This);
|
|
HRESULT ( *OnStartBinding)(
|
|
IBindStatusCallbackEx *This,
|
|
DWORD dwReserved,
|
|
IBinding *pib);
|
|
HRESULT ( *GetPriority)(
|
|
IBindStatusCallbackEx *This,
|
|
LONG *pnPriority);
|
|
HRESULT ( *OnLowResource)(
|
|
IBindStatusCallbackEx *This,
|
|
DWORD reserved);
|
|
HRESULT ( *OnProgress)(
|
|
IBindStatusCallbackEx *This,
|
|
ULONG ulProgress,
|
|
ULONG ulProgressMax,
|
|
ULONG ulStatusCode,
|
|
LPCWSTR szStatusText);
|
|
HRESULT ( *OnStopBinding)(
|
|
IBindStatusCallbackEx *This,
|
|
HRESULT hresult,
|
|
LPCWSTR szError);
|
|
HRESULT ( *GetBindInfo)(
|
|
IBindStatusCallbackEx *This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo);
|
|
HRESULT ( *OnDataAvailable)(
|
|
IBindStatusCallbackEx *This,
|
|
DWORD grfBSCF,
|
|
DWORD dwSize,
|
|
FORMATETC *pformatetc,
|
|
STGMEDIUM *pstgmed);
|
|
HRESULT ( *OnObjectAvailable)(
|
|
IBindStatusCallbackEx *This,
|
|
const IID *const riid,
|
|
IUnknown *punk);
|
|
HRESULT ( *GetBindInfoEx)(
|
|
IBindStatusCallbackEx *This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo,
|
|
DWORD *grfBINDF2,
|
|
DWORD *pdwReserved);
|
|
|
|
} IBindStatusCallbackExVtbl;
|
|
struct IBindStatusCallbackEx {
|
|
IBindStatusCallbackExVtbl* lpVtbl;
|
|
};
|
|
HRESULT IBindStatusCallbackEx_RemoteGetBindInfoEx_Proxy(
|
|
IBindStatusCallbackEx* This,
|
|
DWORD *grfBINDF,
|
|
RemBINDINFO *pbindinfo,
|
|
RemSTGMEDIUM *pstgmed,
|
|
DWORD *grfBINDF2,
|
|
DWORD *pdwReserved);
|
|
void IBindStatusCallbackEx_RemoteGetBindInfoEx_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindStatusCallbackEx_GetBindInfoEx_Proxy(
|
|
IBindStatusCallbackEx* This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo,
|
|
DWORD *grfBINDF2,
|
|
DWORD *pdwReserved);
|
|
HRESULT IBindStatusCallbackEx_GetBindInfoEx_Stub(
|
|
IBindStatusCallbackEx* This,
|
|
DWORD *grfBINDF,
|
|
RemBINDINFO *pbindinfo,
|
|
RemSTGMEDIUM *pstgmed,
|
|
DWORD *grfBINDF2,
|
|
DWORD *pdwReserved);
|
|
typedef IAuthenticate *LPAUTHENTICATION;
|
|
extern const GUID IID_IAuthenticate;
|
|
typedef struct IAuthenticateVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAuthenticate *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAuthenticate *This);
|
|
ULONG ( *Release)(
|
|
IAuthenticate *This);
|
|
HRESULT ( *Authenticate)(
|
|
IAuthenticate *This,
|
|
HWND *phwnd,
|
|
LPWSTR *pszUsername,
|
|
LPWSTR *pszPassword);
|
|
|
|
} IAuthenticateVtbl;
|
|
struct IAuthenticate {
|
|
IAuthenticateVtbl* lpVtbl;
|
|
};
|
|
typedef IAuthenticateEx *LPAUTHENTICATIONEX;
|
|
typedef enum __WIDL_urlmon_generated_name_0000000A {
|
|
AUTHENTICATEF_PROXY = 0x1,
|
|
AUTHENTICATEF_BASIC = 0x2,
|
|
AUTHENTICATEF_HTTP = 0x4
|
|
} AUTHENTICATEF;
|
|
typedef struct _tagAUTHENTICATEINFO {
|
|
DWORD dwFlags;
|
|
DWORD dwReserved;
|
|
} AUTHENTICATEINFO;
|
|
extern const GUID IID_IAuthenticateEx;
|
|
typedef struct IAuthenticateExVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAuthenticateEx *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAuthenticateEx *This);
|
|
ULONG ( *Release)(
|
|
IAuthenticateEx *This);
|
|
HRESULT ( *Authenticate)(
|
|
IAuthenticateEx *This,
|
|
HWND *phwnd,
|
|
LPWSTR *pszUsername,
|
|
LPWSTR *pszPassword);
|
|
HRESULT ( *AuthenticateEx)(
|
|
IAuthenticateEx *This,
|
|
HWND *phwnd,
|
|
LPWSTR *pszUsername,
|
|
LPWSTR *pszPassword,
|
|
AUTHENTICATEINFO *pauthinfo);
|
|
|
|
} IAuthenticateExVtbl;
|
|
struct IAuthenticateEx {
|
|
IAuthenticateExVtbl* lpVtbl;
|
|
};
|
|
typedef IHttpNegotiate *LPHTTPNEGOTIATE;
|
|
extern const GUID IID_IHttpNegotiate;
|
|
typedef struct IHttpNegotiateVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IHttpNegotiate *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IHttpNegotiate *This);
|
|
ULONG ( *Release)(
|
|
IHttpNegotiate *This);
|
|
HRESULT ( *BeginningTransaction)(
|
|
IHttpNegotiate *This,
|
|
LPCWSTR szURL,
|
|
LPCWSTR szHeaders,
|
|
DWORD dwReserved,
|
|
LPWSTR *pszAdditionalHeaders);
|
|
HRESULT ( *OnResponse)(
|
|
IHttpNegotiate *This,
|
|
DWORD dwResponseCode,
|
|
LPCWSTR szResponseHeaders,
|
|
LPCWSTR szRequestHeaders,
|
|
LPWSTR *pszAdditionalRequestHeaders);
|
|
|
|
} IHttpNegotiateVtbl;
|
|
struct IHttpNegotiate {
|
|
IHttpNegotiateVtbl* lpVtbl;
|
|
};
|
|
typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;
|
|
extern const GUID IID_IHttpNegotiate2;
|
|
typedef struct IHttpNegotiate2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IHttpNegotiate2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IHttpNegotiate2 *This);
|
|
ULONG ( *Release)(
|
|
IHttpNegotiate2 *This);
|
|
HRESULT ( *BeginningTransaction)(
|
|
IHttpNegotiate2 *This,
|
|
LPCWSTR szURL,
|
|
LPCWSTR szHeaders,
|
|
DWORD dwReserved,
|
|
LPWSTR *pszAdditionalHeaders);
|
|
HRESULT ( *OnResponse)(
|
|
IHttpNegotiate2 *This,
|
|
DWORD dwResponseCode,
|
|
LPCWSTR szResponseHeaders,
|
|
LPCWSTR szRequestHeaders,
|
|
LPWSTR *pszAdditionalRequestHeaders);
|
|
HRESULT ( *GetRootSecurityId)(
|
|
IHttpNegotiate2 *This,
|
|
BYTE *pbSecurityId,
|
|
DWORD *pcbSecurityId,
|
|
DWORD_PTR dwReserved);
|
|
|
|
} IHttpNegotiate2Vtbl;
|
|
struct IHttpNegotiate2 {
|
|
IHttpNegotiate2Vtbl* lpVtbl;
|
|
};
|
|
typedef IHttpNegotiate3 *LPHTTPNEGOTIATE3;
|
|
extern const GUID IID_IHttpNegotiate3;
|
|
typedef struct IHttpNegotiate3Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IHttpNegotiate3 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IHttpNegotiate3 *This);
|
|
ULONG ( *Release)(
|
|
IHttpNegotiate3 *This);
|
|
HRESULT ( *BeginningTransaction)(
|
|
IHttpNegotiate3 *This,
|
|
LPCWSTR szURL,
|
|
LPCWSTR szHeaders,
|
|
DWORD dwReserved,
|
|
LPWSTR *pszAdditionalHeaders);
|
|
HRESULT ( *OnResponse)(
|
|
IHttpNegotiate3 *This,
|
|
DWORD dwResponseCode,
|
|
LPCWSTR szResponseHeaders,
|
|
LPCWSTR szRequestHeaders,
|
|
LPWSTR *pszAdditionalRequestHeaders);
|
|
HRESULT ( *GetRootSecurityId)(
|
|
IHttpNegotiate3 *This,
|
|
BYTE *pbSecurityId,
|
|
DWORD *pcbSecurityId,
|
|
DWORD_PTR dwReserved);
|
|
HRESULT ( *GetSerializedClientCertContext)(
|
|
IHttpNegotiate3 *This,
|
|
BYTE **ppbCert,
|
|
DWORD *pcbCert);
|
|
|
|
} IHttpNegotiate3Vtbl;
|
|
struct IHttpNegotiate3 {
|
|
IHttpNegotiate3Vtbl* lpVtbl;
|
|
};
|
|
typedef IWinInetFileStream *LPWININETFILESTREAM;
|
|
extern const GUID IID_IWinInetFileStream;
|
|
typedef struct IWinInetFileStreamVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWinInetFileStream *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWinInetFileStream *This);
|
|
ULONG ( *Release)(
|
|
IWinInetFileStream *This);
|
|
HRESULT ( *SetHandleForUnlock)(
|
|
IWinInetFileStream *This,
|
|
DWORD_PTR hWinInetLockHandle,
|
|
DWORD_PTR dwReserved);
|
|
HRESULT ( *SetDeleteFile)(
|
|
IWinInetFileStream *This,
|
|
DWORD_PTR dwReserved);
|
|
|
|
} IWinInetFileStreamVtbl;
|
|
struct IWinInetFileStream {
|
|
IWinInetFileStreamVtbl* lpVtbl;
|
|
};
|
|
typedef IWindowForBindingUI *LPWINDOWFORBINDINGUI;
|
|
extern const GUID IID_IWindowForBindingUI;
|
|
typedef struct IWindowForBindingUIVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWindowForBindingUI *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWindowForBindingUI *This);
|
|
ULONG ( *Release)(
|
|
IWindowForBindingUI *This);
|
|
HRESULT ( *GetWindow)(
|
|
IWindowForBindingUI *This,
|
|
const GUID *const rguidReason,
|
|
HWND *phwnd);
|
|
|
|
} IWindowForBindingUIVtbl;
|
|
struct IWindowForBindingUI {
|
|
IWindowForBindingUIVtbl* lpVtbl;
|
|
};
|
|
typedef ICodeInstall *LPCODEINSTALL;
|
|
typedef enum __WIDL_urlmon_generated_name_0000000B {
|
|
CIP_DISK_FULL = 0,
|
|
CIP_ACCESS_DENIED = 1,
|
|
CIP_NEWER_VERSION_EXISTS = 2,
|
|
CIP_OLDER_VERSION_EXISTS = 3,
|
|
CIP_NAME_CONFLICT = 4,
|
|
CIP_TRUST_VERIFICATION_COMPONENT_MISSING = 5,
|
|
CIP_EXE_SELF_REGISTERATION_TIMEOUT = 6,
|
|
CIP_UNSAFE_TO_ABORT = 7,
|
|
CIP_NEED_REBOOT = 8,
|
|
CIP_NEED_REBOOT_UI_PERMISSION = 9
|
|
} CIP_STATUS;
|
|
extern const GUID IID_ICodeInstall;
|
|
typedef struct ICodeInstallVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICodeInstall *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICodeInstall *This);
|
|
ULONG ( *Release)(
|
|
ICodeInstall *This);
|
|
HRESULT ( *GetWindow)(
|
|
ICodeInstall *This,
|
|
const GUID *const rguidReason,
|
|
HWND *phwnd);
|
|
HRESULT ( *OnCodeInstallProblem)(
|
|
ICodeInstall *This,
|
|
ULONG ulStatusCode,
|
|
LPCWSTR szDestination,
|
|
LPCWSTR szSource,
|
|
DWORD dwReserved);
|
|
|
|
} ICodeInstallVtbl;
|
|
struct ICodeInstall {
|
|
ICodeInstallVtbl* lpVtbl;
|
|
};
|
|
typedef IWinInetInfo *LPWININETINFO;
|
|
extern const GUID IID_IWinInetInfo;
|
|
typedef struct IWinInetInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWinInetInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWinInetInfo *This);
|
|
ULONG ( *Release)(
|
|
IWinInetInfo *This);
|
|
HRESULT ( *QueryOption)(
|
|
IWinInetInfo *This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD *pcbBuf);
|
|
|
|
} IWinInetInfoVtbl;
|
|
struct IWinInetInfo {
|
|
IWinInetInfoVtbl* lpVtbl;
|
|
};
|
|
HRESULT IWinInetInfo_RemoteQueryOption_Proxy(
|
|
IWinInetInfo* This,
|
|
DWORD dwOption,
|
|
BYTE *pBuffer,
|
|
DWORD *pcbBuf);
|
|
void IWinInetInfo_RemoteQueryOption_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IWinInetInfo_QueryOption_Proxy(
|
|
IWinInetInfo* This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD *pcbBuf);
|
|
HRESULT IWinInetInfo_QueryOption_Stub(
|
|
IWinInetInfo* This,
|
|
DWORD dwOption,
|
|
BYTE *pBuffer,
|
|
DWORD *pcbBuf);
|
|
typedef IHttpSecurity *LPHTTPSECURITY;
|
|
extern const GUID IID_IHttpSecurity;
|
|
typedef struct IHttpSecurityVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IHttpSecurity *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IHttpSecurity *This);
|
|
ULONG ( *Release)(
|
|
IHttpSecurity *This);
|
|
HRESULT ( *GetWindow)(
|
|
IHttpSecurity *This,
|
|
const GUID *const rguidReason,
|
|
HWND *phwnd);
|
|
HRESULT ( *OnSecurityProblem)(
|
|
IHttpSecurity *This,
|
|
DWORD dwProblem);
|
|
|
|
} IHttpSecurityVtbl;
|
|
struct IHttpSecurity {
|
|
IHttpSecurityVtbl* lpVtbl;
|
|
};
|
|
typedef IWinInetHttpInfo *LPWININETHTTPINFO;
|
|
extern const GUID IID_IWinInetHttpInfo;
|
|
typedef struct IWinInetHttpInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWinInetHttpInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWinInetHttpInfo *This);
|
|
ULONG ( *Release)(
|
|
IWinInetHttpInfo *This);
|
|
HRESULT ( *QueryOption)(
|
|
IWinInetHttpInfo *This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD *pcbBuf);
|
|
HRESULT ( *QueryInfo)(
|
|
IWinInetHttpInfo *This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD *pcbBuf,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwReserved);
|
|
|
|
} IWinInetHttpInfoVtbl;
|
|
struct IWinInetHttpInfo {
|
|
IWinInetHttpInfoVtbl* lpVtbl;
|
|
};
|
|
HRESULT IWinInetHttpInfo_RemoteQueryInfo_Proxy(
|
|
IWinInetHttpInfo* This,
|
|
DWORD dwOption,
|
|
BYTE *pBuffer,
|
|
DWORD *pcbBuf,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwReserved);
|
|
void IWinInetHttpInfo_RemoteQueryInfo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IWinInetHttpInfo_QueryInfo_Proxy(
|
|
IWinInetHttpInfo* This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD *pcbBuf,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwReserved);
|
|
HRESULT IWinInetHttpInfo_QueryInfo_Stub(
|
|
IWinInetHttpInfo* This,
|
|
DWORD dwOption,
|
|
BYTE *pBuffer,
|
|
DWORD *pcbBuf,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwReserved);
|
|
extern const GUID IID_IWinInetHttpTimeouts;
|
|
typedef struct IWinInetHttpTimeoutsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWinInetHttpTimeouts *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWinInetHttpTimeouts *This);
|
|
ULONG ( *Release)(
|
|
IWinInetHttpTimeouts *This);
|
|
HRESULT ( *GetRequestTimeouts)(
|
|
IWinInetHttpTimeouts *This,
|
|
DWORD *pdwConnectTimeout,
|
|
DWORD *pdwSendTimeout,
|
|
DWORD *pdwReceiveTimeout);
|
|
|
|
} IWinInetHttpTimeoutsVtbl;
|
|
struct IWinInetHttpTimeouts {
|
|
IWinInetHttpTimeoutsVtbl* lpVtbl;
|
|
};
|
|
extern const GUID SID_BindHost;
|
|
typedef IBindHost *LPBINDHOST;
|
|
extern const GUID IID_IBindHost;
|
|
typedef struct IBindHostVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBindHost *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBindHost *This);
|
|
ULONG ( *Release)(
|
|
IBindHost *This);
|
|
HRESULT ( *CreateMoniker)(
|
|
IBindHost *This,
|
|
LPOLESTR szName,
|
|
IBindCtx *pBC,
|
|
IMoniker **ppmk,
|
|
DWORD dwReserved);
|
|
HRESULT ( *MonikerBindToStorage)(
|
|
IBindHost *This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
void **ppvObj);
|
|
HRESULT ( *MonikerBindToObject)(
|
|
IBindHost *This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
void **ppvObj);
|
|
|
|
} IBindHostVtbl;
|
|
struct IBindHost {
|
|
IBindHostVtbl* lpVtbl;
|
|
};
|
|
HRESULT IBindHost_RemoteMonikerBindToStorage_Proxy(
|
|
IBindHost* This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
void IBindHost_RemoteMonikerBindToStorage_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindHost_RemoteMonikerBindToObject_Proxy(
|
|
IBindHost* This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
void IBindHost_RemoteMonikerBindToObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IBindHost_MonikerBindToStorage_Proxy(
|
|
IBindHost* This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
void **ppvObj);
|
|
HRESULT IBindHost_MonikerBindToStorage_Stub(
|
|
IBindHost* This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
HRESULT IBindHost_MonikerBindToObject_Proxy(
|
|
IBindHost* This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
void **ppvObj);
|
|
HRESULT IBindHost_MonikerBindToObject_Stub(
|
|
IBindHost* This,
|
|
IMoniker *pMk,
|
|
IBindCtx *pBC,
|
|
IBindStatusCallback *pBSC,
|
|
const IID *const riid,
|
|
IUnknown **ppvObj);
|
|
struct IBindStatusCallback;
|
|
extern HRESULT HlinkSimpleNavigateToString(LPCWSTR szTarget, LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk, IBindCtx *pbc, IBindStatusCallback *, DWORD grfHLNF, DWORD dwReserved);
|
|
extern HRESULT HlinkSimpleNavigateToMoniker(IMoniker *pmkTarget, LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk, IBindCtx *pbc, IBindStatusCallback *, DWORD grfHLNF, DWORD dwReserved);
|
|
extern HRESULT URLOpenStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLOpenStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLOpenPullStreamA(LPUNKNOWN,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLOpenPullStreamW(LPUNKNOWN,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLDownloadToFileA(LPUNKNOWN,LPCSTR,LPCSTR,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLDownloadToFileW(LPUNKNOWN,LPCWSTR,LPCWSTR,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLDownloadToCacheFileA(LPUNKNOWN, LPCSTR, LPSTR, DWORD, DWORD, LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLDownloadToCacheFileW(LPUNKNOWN, LPCWSTR, LPWSTR, DWORD, DWORD, LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLOpenBlockingStreamA(LPUNKNOWN,LPCSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT URLOpenBlockingStreamW(LPUNKNOWN,LPCWSTR,LPSTREAM*,DWORD,LPBINDSTATUSCALLBACK);
|
|
extern HRESULT HlinkGoBack(IUnknown *pUnk);
|
|
extern HRESULT HlinkGoForward(IUnknown *pUnk);
|
|
extern HRESULT HlinkNavigateString(IUnknown *pUnk, LPCWSTR szTarget);
|
|
extern HRESULT HlinkNavigateMoniker(IUnknown *pUnk, IMoniker *pmkTarget);
|
|
typedef IInternet *LPIINTERNET;
|
|
extern const GUID IID_IInternet;
|
|
typedef struct IInternetVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternet *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternet *This);
|
|
ULONG ( *Release)(
|
|
IInternet *This);
|
|
|
|
} IInternetVtbl;
|
|
struct IInternet {
|
|
IInternetVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetBindInfo *LPIINTERNETBINDINFO;
|
|
typedef enum tagBINDSTRING {
|
|
BINDSTRING_HEADERS = 1,
|
|
BINDSTRING_ACCEPT_MIMES = 2,
|
|
BINDSTRING_EXTRA_URL = 3,
|
|
BINDSTRING_LANGUAGE = 4,
|
|
BINDSTRING_USERNAME = 5,
|
|
BINDSTRING_PASSWORD = 6,
|
|
BINDSTRING_UA_PIXELS = 7,
|
|
BINDSTRING_UA_COLOR = 8,
|
|
BINDSTRING_OS = 9,
|
|
BINDSTRING_USER_AGENT = 10,
|
|
BINDSTRING_ACCEPT_ENCODINGS = 11,
|
|
BINDSTRING_POST_COOKIE = 12,
|
|
BINDSTRING_POST_DATA_MIME = 13,
|
|
BINDSTRING_URL = 14,
|
|
BINDSTRING_IID = 15,
|
|
BINDSTRING_FLAG_BIND_TO_OBJECT = 16,
|
|
BINDSTRING_PTR_BIND_CONTEXT = 17,
|
|
BINDSTRING_XDR_ORIGIN = 18,
|
|
BINDSTRING_DOWNLOADPATH = 19,
|
|
BINDSTRING_ROOTDOC_URL = 20,
|
|
BINDSTRING_INITIAL_FILENAME = 21,
|
|
BINDSTRING_PROXY_USERNAME = 22,
|
|
BINDSTRING_PROXY_PASSWORD = 23
|
|
} BINDSTRING;
|
|
extern const GUID IID_IInternetBindInfo;
|
|
typedef struct IInternetBindInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetBindInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetBindInfo *This);
|
|
ULONG ( *Release)(
|
|
IInternetBindInfo *This);
|
|
HRESULT ( *GetBindInfo)(
|
|
IInternetBindInfo *This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo);
|
|
HRESULT ( *GetBindString)(
|
|
IInternetBindInfo *This,
|
|
ULONG ulStringType,
|
|
LPOLESTR *ppwzStr,
|
|
ULONG cEl,
|
|
ULONG *pcElFetched);
|
|
|
|
} IInternetBindInfoVtbl;
|
|
struct IInternetBindInfo {
|
|
IInternetBindInfoVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetBindInfoEx *LPIINTERNETBINDINFOEX;
|
|
extern const GUID IID_IInternetBindInfoEx;
|
|
typedef struct IInternetBindInfoExVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetBindInfoEx *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetBindInfoEx *This);
|
|
ULONG ( *Release)(
|
|
IInternetBindInfoEx *This);
|
|
HRESULT ( *GetBindInfo)(
|
|
IInternetBindInfoEx *This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo);
|
|
HRESULT ( *GetBindString)(
|
|
IInternetBindInfoEx *This,
|
|
ULONG ulStringType,
|
|
LPOLESTR *ppwzStr,
|
|
ULONG cEl,
|
|
ULONG *pcElFetched);
|
|
HRESULT ( *GetBindInfoEx)(
|
|
IInternetBindInfoEx *This,
|
|
DWORD *grfBINDF,
|
|
BINDINFO *pbindinfo,
|
|
DWORD *grfBINDF2,
|
|
DWORD *pdwReserved);
|
|
|
|
} IInternetBindInfoExVtbl;
|
|
struct IInternetBindInfoEx {
|
|
IInternetBindInfoExVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
|
|
typedef enum _tagPI_FLAGS {
|
|
PI_PARSE_URL = 0x1,
|
|
PI_FILTER_MODE = 0x2,
|
|
PI_FORCE_ASYNC = 0x4,
|
|
PI_USE_WORKERTHREAD = 0x8,
|
|
PI_MIMEVERIFICATION = 0x10,
|
|
PI_CLSIDLOOKUP = 0x20,
|
|
PI_DATAPROGRESS = 0x40,
|
|
PI_SYNCHRONOUS = 0x80,
|
|
PI_APARTMENTTHREADED = 0x100,
|
|
PI_CLASSINSTALL = 0x200,
|
|
PI_PASSONBINDCTX = 0x2000,
|
|
PI_NOMIMEHANDLER = 0x8000,
|
|
PI_LOADAPPDIRECT = 0x4000,
|
|
PD_FORCE_SWITCH = 0x10000,
|
|
PI_PREFERDEFAULTHANDLER = 0x20000
|
|
} PI_FLAGS;
|
|
typedef struct _tagPROTOCOLDATA {
|
|
DWORD grfFlags;
|
|
DWORD dwState;
|
|
LPVOID pData;
|
|
ULONG cbData;
|
|
} PROTOCOLDATA;
|
|
typedef struct _tagStartParam {
|
|
IID iid;
|
|
IBindCtx *pIBindCtx;
|
|
IUnknown *pItf;
|
|
} StartParam;
|
|
extern const GUID IID_IInternetProtocolRoot;
|
|
typedef struct IInternetProtocolRootVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetProtocolRoot *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetProtocolRoot *This);
|
|
ULONG ( *Release)(
|
|
IInternetProtocolRoot *This);
|
|
HRESULT ( *Start)(
|
|
IInternetProtocolRoot *This,
|
|
LPCWSTR szUrl,
|
|
IInternetProtocolSink *pOIProtSink,
|
|
IInternetBindInfo *pOIBindInfo,
|
|
DWORD grfPI,
|
|
HANDLE_PTR dwReserved);
|
|
HRESULT ( *Continue)(
|
|
IInternetProtocolRoot *This,
|
|
PROTOCOLDATA *pProtocolData);
|
|
HRESULT ( *Abort)(
|
|
IInternetProtocolRoot *This,
|
|
HRESULT hrReason,
|
|
DWORD dwOptions);
|
|
HRESULT ( *Terminate)(
|
|
IInternetProtocolRoot *This,
|
|
DWORD dwOptions);
|
|
HRESULT ( *Suspend)(
|
|
IInternetProtocolRoot *This);
|
|
HRESULT ( *Resume)(
|
|
IInternetProtocolRoot *This);
|
|
|
|
} IInternetProtocolRootVtbl;
|
|
struct IInternetProtocolRoot {
|
|
IInternetProtocolRootVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetProtocol *LPIINTERNETPROTOCOL;
|
|
extern const GUID IID_IInternetProtocol;
|
|
typedef struct IInternetProtocolVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetProtocol *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetProtocol *This);
|
|
ULONG ( *Release)(
|
|
IInternetProtocol *This);
|
|
HRESULT ( *Start)(
|
|
IInternetProtocol *This,
|
|
LPCWSTR szUrl,
|
|
IInternetProtocolSink *pOIProtSink,
|
|
IInternetBindInfo *pOIBindInfo,
|
|
DWORD grfPI,
|
|
HANDLE_PTR dwReserved);
|
|
HRESULT ( *Continue)(
|
|
IInternetProtocol *This,
|
|
PROTOCOLDATA *pProtocolData);
|
|
HRESULT ( *Abort)(
|
|
IInternetProtocol *This,
|
|
HRESULT hrReason,
|
|
DWORD dwOptions);
|
|
HRESULT ( *Terminate)(
|
|
IInternetProtocol *This,
|
|
DWORD dwOptions);
|
|
HRESULT ( *Suspend)(
|
|
IInternetProtocol *This);
|
|
HRESULT ( *Resume)(
|
|
IInternetProtocol *This);
|
|
HRESULT ( *Read)(
|
|
IInternetProtocol *This,
|
|
void *pv,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT ( *Seek)(
|
|
IInternetProtocol *This,
|
|
LARGE_INTEGER dlibMove,
|
|
DWORD dwOrigin,
|
|
ULARGE_INTEGER *plibNewPosition);
|
|
HRESULT ( *LockRequest)(
|
|
IInternetProtocol *This,
|
|
DWORD dwOptions);
|
|
HRESULT ( *UnlockRequest)(
|
|
IInternetProtocol *This);
|
|
|
|
} IInternetProtocolVtbl;
|
|
struct IInternetProtocol {
|
|
IInternetProtocolVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
|
|
extern const GUID IID_IInternetProtocolSink;
|
|
typedef struct IInternetProtocolSinkVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetProtocolSink *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetProtocolSink *This);
|
|
ULONG ( *Release)(
|
|
IInternetProtocolSink *This);
|
|
HRESULT ( *Switch)(
|
|
IInternetProtocolSink *This,
|
|
PROTOCOLDATA *pProtocolData);
|
|
HRESULT ( *ReportProgress)(
|
|
IInternetProtocolSink *This,
|
|
ULONG ulStatusCode,
|
|
LPCWSTR szStatusText);
|
|
HRESULT ( *ReportData)(
|
|
IInternetProtocolSink *This,
|
|
DWORD grfBSCF,
|
|
ULONG ulProgress,
|
|
ULONG ulProgressMax);
|
|
HRESULT ( *ReportResult)(
|
|
IInternetProtocolSink *This,
|
|
HRESULT hrResult,
|
|
DWORD dwError,
|
|
LPCWSTR szResult);
|
|
|
|
} IInternetProtocolSinkVtbl;
|
|
struct IInternetProtocolSink {
|
|
IInternetProtocolSinkVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetProtocolSinkStackable *LPIINTERNETPROTOCOLSINKStackable;
|
|
extern const GUID IID_IInternetProtocolSinkStackable;
|
|
typedef struct IInternetProtocolSinkStackableVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetProtocolSinkStackable *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetProtocolSinkStackable *This);
|
|
ULONG ( *Release)(
|
|
IInternetProtocolSinkStackable *This);
|
|
HRESULT ( *SwitchSink)(
|
|
IInternetProtocolSinkStackable *This,
|
|
IInternetProtocolSink *pOIProtSink);
|
|
HRESULT ( *CommitSwitch)(
|
|
IInternetProtocolSinkStackable *This);
|
|
HRESULT ( *RollbackSwitch)(
|
|
IInternetProtocolSinkStackable *This);
|
|
|
|
} IInternetProtocolSinkStackableVtbl;
|
|
struct IInternetProtocolSinkStackable {
|
|
IInternetProtocolSinkStackableVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetSession *LPIINTERNETSESSION;
|
|
typedef enum _tagOIBDG_FLAGS {
|
|
OIBDG_APARTMENTTHREADED = 0x100,
|
|
OIBDG_DATAONLY = 0x1000
|
|
} OIBDG_FLAGS;
|
|
extern const GUID IID_IInternetSession;
|
|
typedef struct IInternetSessionVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetSession *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetSession *This);
|
|
ULONG ( *Release)(
|
|
IInternetSession *This);
|
|
HRESULT ( *RegisterNameSpace)(
|
|
IInternetSession *This,
|
|
IClassFactory *pCF,
|
|
const IID *const rclsid,
|
|
LPCWSTR pwzProtocol,
|
|
ULONG cPatterns,
|
|
const LPCWSTR *ppwzPatterns,
|
|
DWORD dwReserved);
|
|
HRESULT ( *UnregisterNameSpace)(
|
|
IInternetSession *This,
|
|
IClassFactory *pCF,
|
|
LPCWSTR pszProtocol);
|
|
HRESULT ( *RegisterMimeFilter)(
|
|
IInternetSession *This,
|
|
IClassFactory *pCF,
|
|
const IID *const rclsid,
|
|
LPCWSTR pwzType);
|
|
HRESULT ( *UnregisterMimeFilter)(
|
|
IInternetSession *This,
|
|
IClassFactory *pCF,
|
|
LPCWSTR pwzType);
|
|
HRESULT ( *CreateBinding)(
|
|
IInternetSession *This,
|
|
LPBC pBC,
|
|
LPCWSTR szUrl,
|
|
IUnknown *pUnkOuter,
|
|
IUnknown **ppUnk,
|
|
IInternetProtocol **ppOInetProt,
|
|
DWORD dwOption);
|
|
HRESULT ( *SetSessionOption)(
|
|
IInternetSession *This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD dwBufferLength,
|
|
DWORD dwReserved);
|
|
HRESULT ( *GetSessionOption)(
|
|
IInternetSession *This,
|
|
DWORD dwOption,
|
|
LPVOID pBuffer,
|
|
DWORD *pdwBufferLength,
|
|
DWORD dwReserved);
|
|
|
|
} IInternetSessionVtbl;
|
|
struct IInternetSession {
|
|
IInternetSessionVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetThreadSwitch *LPIINTERNETTHREADSWITCH;
|
|
extern const GUID IID_IInternetThreadSwitch;
|
|
typedef struct IInternetThreadSwitchVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetThreadSwitch *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetThreadSwitch *This);
|
|
ULONG ( *Release)(
|
|
IInternetThreadSwitch *This);
|
|
HRESULT ( *Prepare)(
|
|
IInternetThreadSwitch *This);
|
|
HRESULT ( *Continue)(
|
|
IInternetThreadSwitch *This);
|
|
|
|
} IInternetThreadSwitchVtbl;
|
|
struct IInternetThreadSwitch {
|
|
IInternetThreadSwitchVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetPriority *LPIINTERNETPRIORITY;
|
|
extern const GUID IID_IInternetPriority;
|
|
typedef struct IInternetPriorityVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetPriority *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetPriority *This);
|
|
ULONG ( *Release)(
|
|
IInternetPriority *This);
|
|
HRESULT ( *SetPriority)(
|
|
IInternetPriority *This,
|
|
LONG nPriority);
|
|
HRESULT ( *GetPriority)(
|
|
IInternetPriority *This,
|
|
LONG *pnPriority);
|
|
|
|
} IInternetPriorityVtbl;
|
|
struct IInternetPriority {
|
|
IInternetPriorityVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
|
|
typedef enum _tagPARSEACTION {
|
|
PARSE_CANONICALIZE = 1,
|
|
PARSE_FRIENDLY = 2,
|
|
PARSE_SECURITY_URL = 3,
|
|
PARSE_ROOTDOCUMENT = 4,
|
|
PARSE_DOCUMENT = 5,
|
|
PARSE_ANCHOR = 6,
|
|
PARSE_ENCODE_IS_UNESCAPE = 7,
|
|
PARSE_DECODE_IS_ESCAPE = 8,
|
|
PARSE_PATH_FROM_URL = 9,
|
|
PARSE_URL_FROM_PATH = 10,
|
|
PARSE_MIME = 11,
|
|
PARSE_SERVER = 12,
|
|
PARSE_SCHEMA = 13,
|
|
PARSE_SITE = 14,
|
|
PARSE_DOMAIN = 15,
|
|
PARSE_LOCATION = 16,
|
|
PARSE_SECURITY_DOMAIN = 17,
|
|
PARSE_ESCAPE = 18,
|
|
PARSE_UNESCAPE = 19
|
|
} PARSEACTION;
|
|
typedef enum _tagPSUACTION {
|
|
PSU_DEFAULT = 1,
|
|
PSU_SECURITY_URL_ONLY = 2
|
|
} PSUACTION;
|
|
typedef enum _tagQUERYOPTION {
|
|
QUERY_EXPIRATION_DATE = 1,
|
|
QUERY_TIME_OF_LAST_CHANGE = 2,
|
|
QUERY_CONTENT_ENCODING = 3,
|
|
QUERY_CONTENT_TYPE = 4,
|
|
QUERY_REFRESH = 5,
|
|
QUERY_RECOMBINE = 6,
|
|
QUERY_CAN_NAVIGATE = 7,
|
|
QUERY_USES_NETWORK = 8,
|
|
QUERY_IS_CACHED = 9,
|
|
QUERY_IS_INSTALLEDENTRY = 10,
|
|
QUERY_IS_CACHED_OR_MAPPED = 11,
|
|
QUERY_USES_CACHE = 12,
|
|
QUERY_IS_SECURE = 13,
|
|
QUERY_IS_SAFE = 14,
|
|
QUERY_USES_HISTORYFOLDER = 15,
|
|
QUERY_IS_CACHED_AND_USABLE_OFFLINE = 16
|
|
} QUERYOPTION;
|
|
extern const GUID IID_IInternetProtocolInfo;
|
|
typedef struct IInternetProtocolInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetProtocolInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetProtocolInfo *This);
|
|
ULONG ( *Release)(
|
|
IInternetProtocolInfo *This);
|
|
HRESULT ( *ParseUrl)(
|
|
IInternetProtocolInfo *This,
|
|
LPCWSTR pwzUrl,
|
|
PARSEACTION ParseAction,
|
|
DWORD dwParseFlags,
|
|
LPWSTR pwzResult,
|
|
DWORD cchResult,
|
|
DWORD *pcchResult,
|
|
DWORD dwReserved);
|
|
HRESULT ( *CombineUrl)(
|
|
IInternetProtocolInfo *This,
|
|
LPCWSTR pwzBaseUrl,
|
|
LPCWSTR pwzRelativeUrl,
|
|
DWORD dwCombineFlags,
|
|
LPWSTR pwzResult,
|
|
DWORD cchResult,
|
|
DWORD *pcchResult,
|
|
DWORD dwReserved);
|
|
HRESULT ( *CompareUrl)(
|
|
IInternetProtocolInfo *This,
|
|
LPCWSTR pwzUrl1,
|
|
LPCWSTR pwzUrl2,
|
|
DWORD dwCompareFlags);
|
|
HRESULT ( *QueryInfo)(
|
|
IInternetProtocolInfo *This,
|
|
LPCWSTR pwzUrl,
|
|
QUERYOPTION OueryOption,
|
|
DWORD dwQueryFlags,
|
|
LPVOID pBuffer,
|
|
DWORD cbBuffer,
|
|
DWORD *pcbBuf,
|
|
DWORD dwReserved);
|
|
|
|
} IInternetProtocolInfoVtbl;
|
|
struct IInternetProtocolInfo {
|
|
IInternetProtocolInfoVtbl* lpVtbl;
|
|
};
|
|
extern HRESULT CoInternetParseUrl(LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved);
|
|
extern HRESULT CoInternetCombineUrl(LPCWSTR pwzBaseUrl, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved);
|
|
extern HRESULT CoInternetCompareUrl(LPCWSTR pwzUrl1, LPCWSTR pwzUrl2, DWORD dwFlags);
|
|
extern HRESULT CoInternetGetProtocolFlags(LPCWSTR pwzUrl, DWORD *pdwFlags, DWORD dwReserved);
|
|
extern HRESULT CoInternetQueryInfo(LPCWSTR pwzUrl, QUERYOPTION QueryOptions, DWORD dwQueryFlags, LPVOID pvBuffer, DWORD cbBuffer, DWORD *pcbBuffer, DWORD dwReserved);
|
|
extern HRESULT CoInternetGetSession(DWORD dwSessionMode, IInternetSession **ppIInternetSession, DWORD dwReserved);
|
|
extern HRESULT CoInternetGetSecurityUrl(LPCWSTR pwszUrl, LPWSTR *ppwszSecUrl, PSUACTION psuAction, DWORD dwReserved);
|
|
extern HRESULT AsyncInstallDistributionUnit(LPCWSTR szDistUnit, LPCWSTR szTYPE, LPCWSTR szExt, DWORD dwFileVersionMS, DWORD dwFileVersionLS, LPCWSTR szURL,IBindCtx *pbc, LPVOID pvReserved,DWORD flags);
|
|
extern HRESULT CopyStgMedium(const STGMEDIUM *pcstgmedSrc, STGMEDIUM *pstgmedDest);
|
|
extern HRESULT CopyBindInfo(const BINDINFO *pcbiSrc, BINDINFO *pbiDest);
|
|
extern void ReleaseBindInfo(BINDINFO *pbindinfo);
|
|
extern HRESULT CoInternetCreateSecurityManager(IServiceProvider *pSP, IInternetSecurityManager **ppSM, DWORD dwReserved);
|
|
extern HRESULT CoInternetCreateZoneManager(IServiceProvider *pSP, IInternetZoneManager **ppZM, DWORD dwReserved);
|
|
extern const IID CLSID_InternetSecurityManager;
|
|
extern const IID CLSID_InternetZoneManager;
|
|
extern const GUID IID_IInternetSecurityMgrSite;
|
|
typedef struct IInternetSecurityMgrSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetSecurityMgrSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetSecurityMgrSite *This);
|
|
ULONG ( *Release)(
|
|
IInternetSecurityMgrSite *This);
|
|
HRESULT ( *GetWindow)(
|
|
IInternetSecurityMgrSite *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *EnableModeless)(
|
|
IInternetSecurityMgrSite *This,
|
|
WINBOOL fEnable);
|
|
|
|
} IInternetSecurityMgrSiteVtbl;
|
|
struct IInternetSecurityMgrSite {
|
|
IInternetSecurityMgrSiteVtbl* lpVtbl;
|
|
};
|
|
typedef enum __WIDL_urlmon_generated_name_0000000E {
|
|
PUAF_DEFAULT = 0x0,
|
|
PUAF_NOUI = 0x1,
|
|
PUAF_ISFILE = 0x2,
|
|
PUAF_WARN_IF_DENIED = 0x4,
|
|
PUAF_FORCEUI_FOREGROUND = 0x8,
|
|
PUAF_CHECK_TIFS = 0x10,
|
|
PUAF_DONTCHECKBOXINDIALOG = 0x20,
|
|
PUAF_TRUSTED = 0x40,
|
|
PUAF_ACCEPT_WILDCARD_SCHEME = 0x80,
|
|
PUAF_ENFORCERESTRICTED = 0x100,
|
|
PUAF_NOSAVEDFILECHECK = 0x200,
|
|
PUAF_REQUIRESAVEDFILECHECK = 0x400,
|
|
PUAF_DONT_USE_CACHE = 0x1000,
|
|
PUAF_RESERVED1 = 0x2000,
|
|
PUAF_RESERVED2 = 0x4000,
|
|
PUAF_LMZ_UNLOCKED = 0x10000,
|
|
PUAF_LMZ_LOCKED = 0x20000,
|
|
PUAF_DEFAULTZONEPOL = 0x40000,
|
|
PUAF_NPL_USE_LOCKED_IF_RESTRICTED = 0x80000,
|
|
PUAF_NOUIIFLOCKED = 0x100000,
|
|
PUAF_DRAGPROTOCOLCHECK = 0x200000
|
|
} PUAF;
|
|
typedef enum __WIDL_urlmon_generated_name_0000000F {
|
|
PUAFOUT_DEFAULT = 0x0,
|
|
PUAFOUT_ISLOCKZONEPOLICY = 0x1
|
|
} PUAFOUT;
|
|
typedef enum __WIDL_urlmon_generated_name_00000010 {
|
|
SZM_CREATE = 0x0,
|
|
SZM_DELETE = 0x1
|
|
} SZM_FLAGS;
|
|
extern const GUID IID_IInternetSecurityManager;
|
|
typedef struct IInternetSecurityManagerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetSecurityManager *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetSecurityManager *This);
|
|
ULONG ( *Release)(
|
|
IInternetSecurityManager *This);
|
|
HRESULT ( *SetSecuritySite)(
|
|
IInternetSecurityManager *This,
|
|
IInternetSecurityMgrSite *pSite);
|
|
HRESULT ( *GetSecuritySite)(
|
|
IInternetSecurityManager *This,
|
|
IInternetSecurityMgrSite **ppSite);
|
|
HRESULT ( *MapUrlToZone)(
|
|
IInternetSecurityManager *This,
|
|
LPCWSTR pwszUrl,
|
|
DWORD *pdwZone,
|
|
DWORD dwFlags);
|
|
HRESULT ( *GetSecurityId)(
|
|
IInternetSecurityManager *This,
|
|
LPCWSTR pwszUrl,
|
|
BYTE *pbSecurityId,
|
|
DWORD *pcbSecurityId,
|
|
DWORD_PTR dwReserved);
|
|
HRESULT ( *ProcessUrlAction)(
|
|
IInternetSecurityManager *This,
|
|
LPCWSTR pwszUrl,
|
|
DWORD dwAction,
|
|
BYTE *pPolicy,
|
|
DWORD cbPolicy,
|
|
BYTE *pContext,
|
|
DWORD cbContext,
|
|
DWORD dwFlags,
|
|
DWORD dwReserved);
|
|
HRESULT ( *QueryCustomPolicy)(
|
|
IInternetSecurityManager *This,
|
|
LPCWSTR pwszUrl,
|
|
const GUID *const guidKey,
|
|
BYTE **ppPolicy,
|
|
DWORD *pcbPolicy,
|
|
BYTE *pContext,
|
|
DWORD cbContext,
|
|
DWORD dwReserved);
|
|
HRESULT ( *SetZoneMapping)(
|
|
IInternetSecurityManager *This,
|
|
DWORD dwZone,
|
|
LPCWSTR lpszPattern,
|
|
DWORD dwFlags);
|
|
HRESULT ( *GetZoneMappings)(
|
|
IInternetSecurityManager *This,
|
|
DWORD dwZone,
|
|
IEnumString **ppenumString,
|
|
DWORD dwFlags);
|
|
|
|
} IInternetSecurityManagerVtbl;
|
|
struct IInternetSecurityManager {
|
|
IInternetSecurityManagerVtbl* lpVtbl;
|
|
};
|
|
extern const GUID IID_IInternetHostSecurityManager;
|
|
typedef struct IInternetHostSecurityManagerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetHostSecurityManager *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetHostSecurityManager *This);
|
|
ULONG ( *Release)(
|
|
IInternetHostSecurityManager *This);
|
|
HRESULT ( *GetSecurityId)(
|
|
IInternetHostSecurityManager *This,
|
|
BYTE *pbSecurityId,
|
|
DWORD *pcbSecurityId,
|
|
DWORD_PTR dwReserved);
|
|
HRESULT ( *ProcessUrlAction)(
|
|
IInternetHostSecurityManager *This,
|
|
DWORD dwAction,
|
|
BYTE *pPolicy,
|
|
DWORD cbPolicy,
|
|
BYTE *pContext,
|
|
DWORD cbContext,
|
|
DWORD dwFlags,
|
|
DWORD dwReserved);
|
|
HRESULT ( *QueryCustomPolicy)(
|
|
IInternetHostSecurityManager *This,
|
|
const GUID *const guidKey,
|
|
BYTE **ppPolicy,
|
|
DWORD *pcbPolicy,
|
|
BYTE *pContext,
|
|
DWORD cbContext,
|
|
DWORD dwReserved);
|
|
|
|
} IInternetHostSecurityManagerVtbl;
|
|
struct IInternetHostSecurityManager {
|
|
IInternetHostSecurityManagerVtbl* lpVtbl;
|
|
};
|
|
typedef IInternetZoneManager *LPURLZONEMANAGER;
|
|
typedef enum tagURLZONE {
|
|
URLZONE_INVALID = -1,
|
|
URLZONE_PREDEFINED_MIN = 0,
|
|
URLZONE_LOCAL_MACHINE = 0,
|
|
URLZONE_INTRANET = 1,
|
|
URLZONE_TRUSTED = 2,
|
|
URLZONE_INTERNET = 3,
|
|
URLZONE_UNTRUSTED = 4,
|
|
URLZONE_PREDEFINED_MAX = 999,
|
|
URLZONE_USER_MIN = 1000,
|
|
URLZONE_USER_MAX = 10000
|
|
} URLZONE;
|
|
typedef enum tagURLTEMPLATE {
|
|
URLTEMPLATE_CUSTOM = 0x0,
|
|
URLTEMPLATE_PREDEFINED_MIN = 0x10000,
|
|
URLTEMPLATE_LOW = 0x10000,
|
|
URLTEMPLATE_MEDLOW = 0x10500,
|
|
URLTEMPLATE_MEDIUM = 0x11000,
|
|
URLTEMPLATE_MEDHIGH = 0x11500,
|
|
URLTEMPLATE_HIGH = 0x12000,
|
|
URLTEMPLATE_PREDEFINED_MAX = 0x20000
|
|
} URLTEMPLATE;
|
|
enum {
|
|
MAX_ZONE_PATH = 260,
|
|
MAX_ZONE_DESCRIPTION = 200
|
|
};
|
|
typedef enum __WIDL_urlmon_generated_name_00000011 {
|
|
ZAFLAGS_CUSTOM_EDIT = 0x1,
|
|
ZAFLAGS_ADD_SITES = 0x2,
|
|
ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
|
|
ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
|
|
ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
|
|
ZAFLAGS_NO_UI = 0x20,
|
|
ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
|
|
ZAFLAGS_UNC_AS_INTRANET = 0x80,
|
|
ZAFLAGS_DETECT_INTRANET = 0x100,
|
|
ZAFLAGS_USE_LOCKED_ZONES = 0x10000,
|
|
ZAFLAGS_VERIFY_TEMPLATE_SETTINGS = 0x20000,
|
|
ZAFLAGS_NO_CACHE = 0x40000
|
|
} ZAFLAGS;
|
|
typedef struct _ZONEATTRIBUTES {
|
|
ULONG cbSize;
|
|
WCHAR szDisplayName[260];
|
|
WCHAR szDescription[200];
|
|
WCHAR szIconPath[260];
|
|
DWORD dwTemplateMinLevel;
|
|
DWORD dwTemplateRecommended;
|
|
DWORD dwTemplateCurrentLevel;
|
|
DWORD dwFlags;
|
|
} ZONEATTRIBUTES;
|
|
typedef struct _ZONEATTRIBUTES *LPZONEATTRIBUTES;
|
|
typedef enum _URLZONEREG {
|
|
URLZONEREG_DEFAULT = 0,
|
|
URLZONEREG_HKLM = 1,
|
|
URLZONEREG_HKCU = 2
|
|
} URLZONEREG;
|
|
extern const GUID IID_IInternetZoneManager;
|
|
typedef struct IInternetZoneManagerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IInternetZoneManager *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IInternetZoneManager *This);
|
|
ULONG ( *Release)(
|
|
IInternetZoneManager *This);
|
|
HRESULT ( *GetZoneAttributes)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwZone,
|
|
ZONEATTRIBUTES *pZoneAttributes);
|
|
HRESULT ( *SetZoneAttributes)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwZone,
|
|
ZONEATTRIBUTES *pZoneAttributes);
|
|
HRESULT ( *GetZoneCustomPolicy)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwZone,
|
|
const GUID *const guidKey,
|
|
BYTE **ppPolicy,
|
|
DWORD *pcbPolicy,
|
|
URLZONEREG urlZoneReg);
|
|
HRESULT ( *SetZoneCustomPolicy)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwZone,
|
|
const GUID *const guidKey,
|
|
BYTE *pPolicy,
|
|
DWORD cbPolicy,
|
|
URLZONEREG urlZoneReg);
|
|
HRESULT ( *GetZoneActionPolicy)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwZone,
|
|
DWORD dwAction,
|
|
BYTE *pPolicy,
|
|
DWORD cbPolicy,
|
|
URLZONEREG urlZoneReg);
|
|
HRESULT ( *SetZoneActionPolicy)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwZone,
|
|
DWORD dwAction,
|
|
BYTE *pPolicy,
|
|
DWORD cbPolicy,
|
|
URLZONEREG urlZoneReg);
|
|
HRESULT ( *PromptAction)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwAction,
|
|
HWND hwndParent,
|
|
LPCWSTR pwszUrl,
|
|
LPCWSTR pwszText,
|
|
DWORD dwPromptFlags);
|
|
HRESULT ( *LogAction)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwAction,
|
|
LPCWSTR pwszUrl,
|
|
LPCWSTR pwszText,
|
|
DWORD dwLogFlags);
|
|
HRESULT ( *CreateZoneEnumerator)(
|
|
IInternetZoneManager *This,
|
|
DWORD *pdwEnum,
|
|
DWORD *pdwCount,
|
|
DWORD dwFlags);
|
|
HRESULT ( *GetZoneAt)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwEnum,
|
|
DWORD dwIndex,
|
|
DWORD *pdwZone);
|
|
HRESULT ( *DestroyZoneEnumerator)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwEnum);
|
|
HRESULT ( *CopyTemplatePoliciesToZone)(
|
|
IInternetZoneManager *This,
|
|
DWORD dwTemplate,
|
|
DWORD dwZone,
|
|
DWORD dwReserved);
|
|
|
|
} IInternetZoneManagerVtbl;
|
|
struct IInternetZoneManager {
|
|
IInternetZoneManagerVtbl* lpVtbl;
|
|
};
|
|
extern const IID CLSID_SoftDistExt;
|
|
typedef struct _tagCODEBASEHOLD {
|
|
ULONG cbSize;
|
|
LPWSTR szDistUnit;
|
|
LPWSTR szCodeBase;
|
|
DWORD dwVersionMS;
|
|
DWORD dwVersionLS;
|
|
DWORD dwStyle;
|
|
} CODEBASEHOLD;
|
|
typedef struct _tagCODEBASEHOLD *LPCODEBASEHOLD;
|
|
typedef struct _tagSOFTDISTINFO {
|
|
ULONG cbSize;
|
|
DWORD dwFlags;
|
|
DWORD dwAdState;
|
|
LPWSTR szTitle;
|
|
LPWSTR szAbstract;
|
|
LPWSTR szHREF;
|
|
DWORD dwInstalledVersionMS;
|
|
DWORD dwInstalledVersionLS;
|
|
DWORD dwUpdateVersionMS;
|
|
DWORD dwUpdateVersionLS;
|
|
DWORD dwAdvertisedVersionMS;
|
|
DWORD dwAdvertisedVersionLS;
|
|
DWORD dwReserved;
|
|
} SOFTDISTINFO;
|
|
typedef struct _tagSOFTDISTINFO *LPSOFTDISTINFO;
|
|
extern const GUID IID_ISoftDistExt;
|
|
typedef struct ISoftDistExtVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISoftDistExt *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISoftDistExt *This);
|
|
ULONG ( *Release)(
|
|
ISoftDistExt *This);
|
|
HRESULT ( *ProcessSoftDist)(
|
|
ISoftDistExt *This,
|
|
LPCWSTR szCDFURL,
|
|
IXMLElement *pSoftDistElement,
|
|
LPSOFTDISTINFO lpsdi);
|
|
HRESULT ( *GetFirstCodeBase)(
|
|
ISoftDistExt *This,
|
|
LPWSTR *szCodeBase,
|
|
LPDWORD dwMaxSize);
|
|
HRESULT ( *GetNextCodeBase)(
|
|
ISoftDistExt *This,
|
|
LPWSTR *szCodeBase,
|
|
LPDWORD dwMaxSize);
|
|
HRESULT ( *AsyncInstallDistributionUnit)(
|
|
ISoftDistExt *This,
|
|
IBindCtx *pbc,
|
|
LPVOID pvReserved,
|
|
DWORD flags,
|
|
LPCODEBASEHOLD lpcbh);
|
|
|
|
} ISoftDistExtVtbl;
|
|
struct ISoftDistExt {
|
|
ISoftDistExtVtbl* lpVtbl;
|
|
};
|
|
extern HRESULT GetSoftwareUpdateInfo(LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);
|
|
extern HRESULT SetSoftwareUpdateAdvertisementState(LPCWSTR szDistUnit, DWORD dwAdState, DWORD dwAdvertisedVersionMS, DWORD dwAdvertisedVersionLS);
|
|
typedef ICatalogFileInfo *LPCATALOGFILEINFO;
|
|
extern const GUID IID_ICatalogFileInfo;
|
|
typedef struct ICatalogFileInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ICatalogFileInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ICatalogFileInfo *This);
|
|
ULONG ( *Release)(
|
|
ICatalogFileInfo *This);
|
|
HRESULT ( *GetCatalogFile)(
|
|
ICatalogFileInfo *This,
|
|
LPSTR *ppszCatalogFile);
|
|
HRESULT ( *GetJavaTrust)(
|
|
ICatalogFileInfo *This,
|
|
void **ppJavaTrust);
|
|
|
|
} ICatalogFileInfoVtbl;
|
|
struct ICatalogFileInfo {
|
|
ICatalogFileInfoVtbl* lpVtbl;
|
|
};
|
|
typedef IDataFilter *LPDATAFILTER;
|
|
extern const GUID IID_IDataFilter;
|
|
typedef struct IDataFilterVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IDataFilter *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IDataFilter *This);
|
|
ULONG ( *Release)(
|
|
IDataFilter *This);
|
|
HRESULT ( *DoEncode)(
|
|
IDataFilter *This,
|
|
DWORD dwFlags,
|
|
LONG lInBufferSize,
|
|
BYTE *pbInBuffer,
|
|
LONG lOutBufferSize,
|
|
BYTE *pbOutBuffer,
|
|
LONG lInBytesAvailable,
|
|
LONG *plInBytesRead,
|
|
LONG *plOutBytesWritten,
|
|
DWORD dwReserved);
|
|
HRESULT ( *DoDecode)(
|
|
IDataFilter *This,
|
|
DWORD dwFlags,
|
|
LONG lInBufferSize,
|
|
BYTE *pbInBuffer,
|
|
LONG lOutBufferSize,
|
|
BYTE *pbOutBuffer,
|
|
LONG lInBytesAvailable,
|
|
LONG *plInBytesRead,
|
|
LONG *plOutBytesWritten,
|
|
DWORD dwReserved);
|
|
HRESULT ( *SetEncodingLevel)(
|
|
IDataFilter *This,
|
|
DWORD dwEncLevel);
|
|
|
|
} IDataFilterVtbl;
|
|
struct IDataFilter {
|
|
IDataFilterVtbl* lpVtbl;
|
|
};
|
|
typedef struct _tagPROTOCOLFILTERDATA {
|
|
DWORD cbSize;
|
|
IInternetProtocolSink *pProtocolSink;
|
|
IInternetProtocol *pProtocol;
|
|
IUnknown *pUnk;
|
|
DWORD dwFilterFlags;
|
|
} PROTOCOLFILTERDATA;
|
|
typedef IEncodingFilterFactory *LPENCODINGFILTERFACTORY;
|
|
typedef struct _tagDATAINFO {
|
|
ULONG ulTotalSize;
|
|
ULONG ulavrPacketSize;
|
|
ULONG ulConnectSpeed;
|
|
ULONG ulProcessorSpeed;
|
|
} DATAINFO;
|
|
extern const GUID IID_IEncodingFilterFactory;
|
|
typedef struct IEncodingFilterFactoryVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEncodingFilterFactory *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEncodingFilterFactory *This);
|
|
ULONG ( *Release)(
|
|
IEncodingFilterFactory *This);
|
|
HRESULT ( *FindBestFilter)(
|
|
IEncodingFilterFactory *This,
|
|
LPCWSTR pwzCodeIn,
|
|
LPCWSTR pwzCodeOut,
|
|
DATAINFO info,
|
|
IDataFilter **ppDF);
|
|
HRESULT ( *GetDefaultFilter)(
|
|
IEncodingFilterFactory *This,
|
|
LPCWSTR pwzCodeIn,
|
|
LPCWSTR pwzCodeOut,
|
|
IDataFilter **ppDF);
|
|
|
|
} IEncodingFilterFactoryVtbl;
|
|
struct IEncodingFilterFactory {
|
|
IEncodingFilterFactoryVtbl* lpVtbl;
|
|
};
|
|
WINBOOL IsLoggingEnabledA(LPCSTR pszUrl);
|
|
WINBOOL IsLoggingEnabledW(LPCWSTR pwszUrl);
|
|
typedef struct _tagHIT_LOGGING_INFO {
|
|
DWORD dwStructSize;
|
|
LPSTR lpszLoggedUrlName;
|
|
SYSTEMTIME StartTime;
|
|
SYSTEMTIME EndTime;
|
|
LPSTR lpszExtendedInfo;
|
|
} HIT_LOGGING_INFO;
|
|
typedef struct _tagHIT_LOGGING_INFO *LPHIT_LOGGING_INFO;
|
|
WINBOOL WriteHitLogging(LPHIT_LOGGING_INFO lpLogginginfo);
|
|
struct CONFIRMSAFETY {
|
|
CLSID clsid;
|
|
IUnknown *pUnk;
|
|
DWORD dwFlags;
|
|
};
|
|
extern const GUID GUID_CUSTOM_CONFIRMOBJECTSAFETY;
|
|
typedef IWrappedProtocol *LPIWRAPPEDPROTOCOL;
|
|
extern const GUID IID_IWrappedProtocol;
|
|
typedef struct IWrappedProtocolVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IWrappedProtocol *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IWrappedProtocol *This);
|
|
ULONG ( *Release)(
|
|
IWrappedProtocol *This);
|
|
HRESULT ( *GetWrapperCode)(
|
|
IWrappedProtocol *This,
|
|
LONG *pnCode,
|
|
DWORD_PTR dwReserved);
|
|
|
|
} IWrappedProtocolVtbl;
|
|
struct IWrappedProtocol {
|
|
IWrappedProtocolVtbl* lpVtbl;
|
|
};
|
|
typedef IGetBindHandle *LPGETBINDHANDLE;
|
|
typedef enum __WIDL_urlmon_generated_name_00000012 {
|
|
BINDHANDLETYPES_APPCACHE = 0x0,
|
|
BINDHANDLETYPES_DEPENDENCY = 0x1,
|
|
BINDHANDLETYPES_COUNT = 0x2
|
|
} BINDHANDLETYPES;
|
|
extern const GUID IID_IGetBindHandle;
|
|
typedef struct IGetBindHandleVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IGetBindHandle *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IGetBindHandle *This);
|
|
ULONG ( *Release)(
|
|
IGetBindHandle *This);
|
|
HRESULT ( *GetBindHandle)(
|
|
IGetBindHandle *This,
|
|
BINDHANDLETYPES enumRequestedHandle,
|
|
HANDLE *pRetHandle);
|
|
|
|
} IGetBindHandleVtbl;
|
|
struct IGetBindHandle {
|
|
IGetBindHandleVtbl* lpVtbl;
|
|
};
|
|
typedef struct _tagPROTOCOL_ARGUMENT {
|
|
LPCWSTR szMethod;
|
|
LPCWSTR szTargetUrl;
|
|
} PROTOCOL_ARGUMENT;
|
|
typedef struct _tagPROTOCOL_ARGUMENT *LPPROTOCOL_ARGUMENT;
|
|
typedef IBindCallbackRedirect *LPBINDCALLBACKREDIRECT;
|
|
extern const GUID IID_IBindCallbackRedirect;
|
|
typedef struct IBindCallbackRedirectVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IBindCallbackRedirect *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IBindCallbackRedirect *This);
|
|
ULONG ( *Release)(
|
|
IBindCallbackRedirect *This);
|
|
HRESULT ( *Redirect)(
|
|
IBindCallbackRedirect *This,
|
|
LPCWSTR lpcUrl,
|
|
VARIANT_BOOL *vbCancel);
|
|
|
|
} IBindCallbackRedirectVtbl;
|
|
struct IBindCallbackRedirect {
|
|
IBindCallbackRedirectVtbl* lpVtbl;
|
|
};
|
|
ULONG STGMEDIUM_UserSize (ULONG *, ULONG, STGMEDIUM *);
|
|
unsigned char * STGMEDIUM_UserMarshal (ULONG *, unsigned char *, STGMEDIUM *);
|
|
unsigned char * STGMEDIUM_UserUnmarshal(ULONG *, unsigned char *, STGMEDIUM *);
|
|
void STGMEDIUM_UserFree (ULONG *, STGMEDIUM *);
|
|
ULONG CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
|
|
void CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
|
|
ULONG HWND_UserSize (ULONG *, ULONG, HWND *);
|
|
unsigned char * HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
|
|
unsigned char * HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
|
|
void HWND_UserFree (ULONG *, HWND *);
|
|
ULONG BSTR_UserSize (ULONG *, ULONG, BSTR *);
|
|
unsigned char * BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
|
|
unsigned char * BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
|
|
void BSTR_UserFree (ULONG *, BSTR *);
|
|
typedef struct IPropertyStorage IPropertyStorage;
|
|
typedef struct IPropertySetStorage IPropertySetStorage;
|
|
typedef struct IEnumSTATPROPSTG IEnumSTATPROPSTG;
|
|
typedef struct IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG;
|
|
typedef struct tagVersionedStream {
|
|
GUID guidVersion;
|
|
IStream *pStream;
|
|
} VERSIONEDSTREAM;
|
|
typedef struct tagVersionedStream *LPVERSIONEDSTREAM;
|
|
typedef struct tagPROPVARIANT PROPVARIANT;
|
|
typedef struct tagCAC {
|
|
ULONG cElems;
|
|
CHAR *pElems;
|
|
} CAC;
|
|
typedef struct tagCAUB {
|
|
ULONG cElems;
|
|
UCHAR *pElems;
|
|
} CAUB;
|
|
typedef struct tagCAI {
|
|
ULONG cElems;
|
|
SHORT *pElems;
|
|
} CAI;
|
|
typedef struct tagCAUI {
|
|
ULONG cElems;
|
|
USHORT *pElems;
|
|
} CAUI;
|
|
typedef struct tagCAL {
|
|
ULONG cElems;
|
|
LONG *pElems;
|
|
} CAL;
|
|
typedef struct tagCAUL {
|
|
ULONG cElems;
|
|
ULONG *pElems;
|
|
} CAUL;
|
|
typedef struct tagCAFLT {
|
|
ULONG cElems;
|
|
FLOAT *pElems;
|
|
} CAFLT;
|
|
typedef struct tagCADBL {
|
|
ULONG cElems;
|
|
DOUBLE *pElems;
|
|
} CADBL;
|
|
typedef struct tagCACY {
|
|
ULONG cElems;
|
|
CY *pElems;
|
|
} CACY;
|
|
typedef struct tagCADATE {
|
|
ULONG cElems;
|
|
DATE *pElems;
|
|
} CADATE;
|
|
typedef struct tagCABSTR {
|
|
ULONG cElems;
|
|
BSTR *pElems;
|
|
} CABSTR;
|
|
typedef struct tagCABSTRBLOB {
|
|
ULONG cElems;
|
|
BSTRBLOB *pElems;
|
|
} CABSTRBLOB;
|
|
typedef struct tagCABOOL {
|
|
ULONG cElems;
|
|
VARIANT_BOOL *pElems;
|
|
} CABOOL;
|
|
typedef struct tagCASCODE {
|
|
ULONG cElems;
|
|
SCODE *pElems;
|
|
} CASCODE;
|
|
typedef struct tagCAPROPVARIANT {
|
|
ULONG cElems;
|
|
PROPVARIANT *pElems;
|
|
} CAPROPVARIANT;
|
|
typedef struct tagCAH {
|
|
ULONG cElems;
|
|
LARGE_INTEGER *pElems;
|
|
} CAH;
|
|
typedef struct tagCAUH {
|
|
ULONG cElems;
|
|
ULARGE_INTEGER *pElems;
|
|
} CAUH;
|
|
typedef struct tagCALPSTR {
|
|
ULONG cElems;
|
|
LPSTR *pElems;
|
|
} CALPSTR;
|
|
typedef struct tagCALPWSTR {
|
|
ULONG cElems;
|
|
LPWSTR *pElems;
|
|
} CALPWSTR;
|
|
typedef struct tagCAFILETIME {
|
|
ULONG cElems;
|
|
FILETIME *pElems;
|
|
} CAFILETIME;
|
|
typedef struct tagCACLIPDATA {
|
|
ULONG cElems;
|
|
CLIPDATA *pElems;
|
|
} CACLIPDATA;
|
|
typedef struct tagCACLSID {
|
|
ULONG cElems;
|
|
CLSID *pElems;
|
|
} CACLSID;
|
|
typedef WORD PROPVAR_PAD1;
|
|
typedef WORD PROPVAR_PAD2;
|
|
typedef WORD PROPVAR_PAD3;
|
|
struct tagPROPVARIANT {
|
|
__extension__ union {
|
|
__extension__
|
|
struct {
|
|
VARTYPE vt;
|
|
PROPVAR_PAD1 wReserved1;
|
|
PROPVAR_PAD2 wReserved2;
|
|
PROPVAR_PAD3 wReserved3;
|
|
__extension__ union {
|
|
CHAR cVal;
|
|
UCHAR bVal;
|
|
SHORT iVal;
|
|
USHORT uiVal;
|
|
LONG lVal;
|
|
ULONG ulVal;
|
|
INT intVal;
|
|
UINT uintVal;
|
|
LARGE_INTEGER hVal;
|
|
ULARGE_INTEGER uhVal;
|
|
FLOAT fltVal;
|
|
DOUBLE dblVal;
|
|
VARIANT_BOOL boolVal;
|
|
SCODE scode;
|
|
CY cyVal;
|
|
DATE date;
|
|
FILETIME filetime;
|
|
CLSID *puuid;
|
|
CLIPDATA *pclipdata;
|
|
BSTR bstrVal;
|
|
BSTRBLOB bstrblobVal;
|
|
BLOB blob;
|
|
LPSTR pszVal;
|
|
LPWSTR pwszVal;
|
|
IUnknown *punkVal;
|
|
IDispatch *pdispVal;
|
|
IStream *pStream;
|
|
IStorage *pStorage;
|
|
LPVERSIONEDSTREAM pVersionedStream;
|
|
LPSAFEARRAY parray;
|
|
CAC cac;
|
|
CAUB caub;
|
|
CAI cai;
|
|
CAUI caui;
|
|
CAL cal;
|
|
CAUL caul;
|
|
CAH cah;
|
|
CAUH cauh;
|
|
CAFLT caflt;
|
|
CADBL cadbl;
|
|
CABOOL cabool;
|
|
CASCODE cascode;
|
|
CACY cacy;
|
|
CADATE cadate;
|
|
CAFILETIME cafiletime;
|
|
CACLSID cauuid;
|
|
CACLIPDATA caclipdata;
|
|
CABSTR cabstr;
|
|
CABSTRBLOB cabstrblob;
|
|
CALPSTR calpstr;
|
|
CALPWSTR calpwstr;
|
|
CAPROPVARIANT capropvar;
|
|
CHAR *pcVal;
|
|
UCHAR *pbVal;
|
|
SHORT *piVal;
|
|
USHORT *puiVal;
|
|
LONG *plVal;
|
|
ULONG *pulVal;
|
|
INT *pintVal;
|
|
UINT *puintVal;
|
|
FLOAT *pfltVal;
|
|
DOUBLE *pdblVal;
|
|
VARIANT_BOOL *pboolVal;
|
|
DECIMAL *pdecVal;
|
|
SCODE *pscode;
|
|
CY *pcyVal;
|
|
DATE *pdate;
|
|
BSTR *pbstrVal;
|
|
IUnknown **ppunkVal;
|
|
IDispatch **ppdispVal;
|
|
LPSAFEARRAY *pparray;
|
|
PROPVARIANT *pvarVal;
|
|
} ;
|
|
};
|
|
DECIMAL decVal;
|
|
};
|
|
};
|
|
typedef struct tagPROPVARIANT * LPPROPVARIANT;
|
|
enum PIDMSI_STATUS_VALUE {
|
|
PIDMSI_STATUS_NORMAL = 0,
|
|
PIDMSI_STATUS_NEW = 1,
|
|
PIDMSI_STATUS_PRELIM = 2,
|
|
PIDMSI_STATUS_DRAFT = 3,
|
|
PIDMSI_STATUS_INPROGRESS = 4,
|
|
PIDMSI_STATUS_EDIT = 5,
|
|
PIDMSI_STATUS_REVIEW = 6,
|
|
PIDMSI_STATUS_PROOF = 7,
|
|
PIDMSI_STATUS_FINAL = 8,
|
|
PIDMSI_STATUS_OTHER = 0x7fff
|
|
};
|
|
typedef struct tagPROPSPEC {
|
|
ULONG ulKind;
|
|
union {
|
|
PROPID propid;
|
|
LPOLESTR lpwstr;
|
|
} ;
|
|
} PROPSPEC;
|
|
typedef struct tagSTATPROPSTG {
|
|
LPOLESTR lpwstrName;
|
|
PROPID propid;
|
|
VARTYPE vt;
|
|
} STATPROPSTG;
|
|
typedef struct tagSTATPROPSETSTG {
|
|
FMTID fmtid;
|
|
CLSID clsid;
|
|
DWORD grfFlags;
|
|
FILETIME mtime;
|
|
FILETIME ctime;
|
|
FILETIME atime;
|
|
DWORD dwOSVersion;
|
|
} STATPROPSETSTG;
|
|
extern const GUID IID_IPropertyStorage;
|
|
typedef struct IPropertyStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyStorage *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyStorage *This);
|
|
ULONG ( *Release)(
|
|
IPropertyStorage *This);
|
|
HRESULT ( *ReadMultiple)(
|
|
IPropertyStorage *This,
|
|
ULONG cpspec,
|
|
const PROPSPEC rgpspec[],
|
|
PROPVARIANT rgpropvar[]);
|
|
HRESULT ( *WriteMultiple)(
|
|
IPropertyStorage *This,
|
|
ULONG cpspec,
|
|
const PROPSPEC rgpspec[],
|
|
const PROPVARIANT rgpropvar[],
|
|
PROPID propidNameFirst);
|
|
HRESULT ( *DeleteMultiple)(
|
|
IPropertyStorage *This,
|
|
ULONG cpspec,
|
|
const PROPSPEC rgpspec[]);
|
|
HRESULT ( *ReadPropertyNames)(
|
|
IPropertyStorage *This,
|
|
ULONG cpropid,
|
|
const PROPID rgpropid[],
|
|
LPOLESTR rglpwstrName[]);
|
|
HRESULT ( *WritePropertyNames)(
|
|
IPropertyStorage *This,
|
|
ULONG cpropid,
|
|
const PROPID rgpropid[],
|
|
const LPOLESTR rglpwstrName[]);
|
|
HRESULT ( *DeletePropertyNames)(
|
|
IPropertyStorage *This,
|
|
ULONG cpropid,
|
|
const PROPID rgpropid[]);
|
|
HRESULT ( *Commit)(
|
|
IPropertyStorage *This,
|
|
DWORD grfCommitFlags);
|
|
HRESULT ( *Revert)(
|
|
IPropertyStorage *This);
|
|
HRESULT ( *Enum)(
|
|
IPropertyStorage *This,
|
|
IEnumSTATPROPSTG **ppenum);
|
|
HRESULT ( *SetTimes)(
|
|
IPropertyStorage *This,
|
|
const FILETIME *pctime,
|
|
const FILETIME *patime,
|
|
const FILETIME *pmtime);
|
|
HRESULT ( *SetClass)(
|
|
IPropertyStorage *This,
|
|
const IID *const clsid);
|
|
HRESULT ( *Stat)(
|
|
IPropertyStorage *This,
|
|
STATPROPSETSTG *pstatpsstg);
|
|
|
|
} IPropertyStorageVtbl;
|
|
struct IPropertyStorage {
|
|
IPropertyStorageVtbl* lpVtbl;
|
|
};
|
|
typedef IPropertySetStorage *LPPROPERTYSETSTORAGE;
|
|
extern const GUID IID_IPropertySetStorage;
|
|
typedef struct IPropertySetStorageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertySetStorage *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertySetStorage *This);
|
|
ULONG ( *Release)(
|
|
IPropertySetStorage *This);
|
|
HRESULT ( *Create)(
|
|
IPropertySetStorage *This,
|
|
const IID *const rfmtid,
|
|
const CLSID *pclsid,
|
|
DWORD grfFlags,
|
|
DWORD grfMode,
|
|
IPropertyStorage **ppprstg);
|
|
HRESULT ( *Open)(
|
|
IPropertySetStorage *This,
|
|
const IID *const rfmtid,
|
|
DWORD grfMode,
|
|
IPropertyStorage **ppprstg);
|
|
HRESULT ( *Delete)(
|
|
IPropertySetStorage *This,
|
|
const IID *const rfmtid);
|
|
HRESULT ( *Enum)(
|
|
IPropertySetStorage *This,
|
|
IEnumSTATPROPSETSTG **ppenum);
|
|
|
|
} IPropertySetStorageVtbl;
|
|
struct IPropertySetStorage {
|
|
IPropertySetStorageVtbl* lpVtbl;
|
|
};
|
|
typedef IEnumSTATPROPSTG *LPENUMSTATPROPSTG;
|
|
extern const GUID IID_IEnumSTATPROPSTG;
|
|
typedef struct IEnumSTATPROPSTGVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumSTATPROPSTG *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumSTATPROPSTG *This);
|
|
ULONG ( *Release)(
|
|
IEnumSTATPROPSTG *This);
|
|
HRESULT ( *Next)(
|
|
IEnumSTATPROPSTG *This,
|
|
ULONG celt,
|
|
STATPROPSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumSTATPROPSTG *This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumSTATPROPSTG *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumSTATPROPSTG *This,
|
|
IEnumSTATPROPSTG **ppenum);
|
|
|
|
} IEnumSTATPROPSTGVtbl;
|
|
struct IEnumSTATPROPSTG {
|
|
IEnumSTATPROPSTGVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumSTATPROPSTG_RemoteNext_Proxy(
|
|
IEnumSTATPROPSTG* This,
|
|
ULONG celt,
|
|
STATPROPSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumSTATPROPSTG_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATPROPSTG_Next_Proxy(
|
|
IEnumSTATPROPSTG* This,
|
|
ULONG celt,
|
|
STATPROPSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumSTATPROPSTG_Next_Stub(
|
|
IEnumSTATPROPSTG* This,
|
|
ULONG celt,
|
|
STATPROPSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG;
|
|
extern const GUID IID_IEnumSTATPROPSETSTG;
|
|
typedef struct IEnumSTATPROPSETSTGVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumSTATPROPSETSTG *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumSTATPROPSETSTG *This);
|
|
ULONG ( *Release)(
|
|
IEnumSTATPROPSETSTG *This);
|
|
HRESULT ( *Next)(
|
|
IEnumSTATPROPSETSTG *This,
|
|
ULONG celt,
|
|
STATPROPSETSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumSTATPROPSETSTG *This,
|
|
ULONG celt);
|
|
HRESULT ( *Reset)(
|
|
IEnumSTATPROPSETSTG *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumSTATPROPSETSTG *This,
|
|
IEnumSTATPROPSETSTG **ppenum);
|
|
|
|
} IEnumSTATPROPSETSTGVtbl;
|
|
struct IEnumSTATPROPSETSTG {
|
|
IEnumSTATPROPSETSTGVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumSTATPROPSETSTG_RemoteNext_Proxy(
|
|
IEnumSTATPROPSETSTG* This,
|
|
ULONG celt,
|
|
STATPROPSETSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
void IEnumSTATPROPSETSTG_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumSTATPROPSETSTG_Next_Proxy(
|
|
IEnumSTATPROPSETSTG* This,
|
|
ULONG celt,
|
|
STATPROPSETSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
HRESULT IEnumSTATPROPSETSTG_Next_Stub(
|
|
IEnumSTATPROPSETSTG* This,
|
|
ULONG celt,
|
|
STATPROPSETSTG *rgelt,
|
|
ULONG *pceltFetched);
|
|
typedef IPropertyStorage *LPPROPERTYSTORAGE;
|
|
extern __attribute__((dllimport)) HRESULT PropVariantCopy(PROPVARIANT *pvarDest,const PROPVARIANT *pvarSrc);
|
|
extern __attribute__((dllimport)) HRESULT PropVariantClear(PROPVARIANT *pvar);
|
|
extern __attribute__((dllimport)) HRESULT FreePropVariantArray(ULONG cVariants, PROPVARIANT *rgvars);
|
|
extern __attribute__((dllimport)) HRESULT StgCreatePropStg(IUnknown *pUnk, const IID *const fmtid, const CLSID *pclsid, DWORD grfFlags, DWORD dwReserved, IPropertyStorage **ppPropStg);
|
|
extern __attribute__((dllimport)) HRESULT StgOpenPropStg(IUnknown *pUnk, const IID *const fmtid, DWORD grfFlags, DWORD dwReserved, IPropertyStorage **ppPropStg);
|
|
extern __attribute__((dllimport)) HRESULT StgCreatePropSetStg(IStorage *pStorage, DWORD dwReserved, IPropertySetStorage **ppPropSetStg);
|
|
extern __attribute__((dllimport)) HRESULT FmtIdToPropStgName(const FMTID *pfmtid, LPOLESTR oszName);
|
|
extern __attribute__((dllimport)) HRESULT PropStgNameToFmtId(const LPOLESTR oszName, FMTID *pfmtid);
|
|
typedef struct tagSERIALIZEDPROPERTYVALUE {
|
|
DWORD dwType;
|
|
BYTE rgb[1];
|
|
} SERIALIZEDPROPERTYVALUE;
|
|
extern SERIALIZEDPROPERTYVALUE * StgConvertVariantToProperty(const PROPVARIANT *pvar, USHORT CodePage, SERIALIZEDPROPERTYVALUE *pprop, ULONG *pcb, PROPID pid, BOOLEAN fReserved, ULONG *pcIndirect);
|
|
ULONG BSTR_UserSize (ULONG *, ULONG, BSTR *);
|
|
unsigned char * BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
|
|
unsigned char * BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
|
|
void BSTR_UserFree (ULONG *, BSTR *);
|
|
ULONG LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *);
|
|
unsigned char * LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *);
|
|
unsigned char * LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *);
|
|
void LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *);
|
|
extern __attribute__((dllimport)) HRESULT CreateStdProgressIndicator (HWND hwndParent, LPCOLESTR pszTitle, IBindStatusCallback *pIbscCaller, IBindStatusCallback **ppIbsc);
|
|
#pragma pack(pop)
|
|
#pragma pack(push,8)
|
|
extern const IID IID_StdOle;
|
|
extern __attribute__((dllimport)) BSTR SysAllocString(const OLECHAR *);
|
|
extern __attribute__((dllimport)) INT SysReAllocString(BSTR *,const OLECHAR *);
|
|
extern __attribute__((dllimport)) BSTR SysAllocStringLen(const OLECHAR *,UINT);
|
|
extern __attribute__((dllimport)) INT SysReAllocStringLen(BSTR *,const OLECHAR *,UINT);
|
|
extern __attribute__((dllimport)) void SysFreeString(BSTR);
|
|
extern __attribute__((dllimport)) UINT SysStringLen(BSTR);
|
|
extern __attribute__((dllimport)) UINT SysStringByteLen(BSTR bstr);
|
|
extern __attribute__((dllimport)) BSTR SysAllocStringByteLen(LPCSTR psz,UINT len);
|
|
extern __attribute__((dllimport)) INT DosDateTimeToVariantTime(USHORT wDosDate,USHORT wDosTime,DOUBLE *pvtime);
|
|
extern __attribute__((dllimport)) INT VariantTimeToDosDateTime(DOUBLE vtime,USHORT *pwDosDate,USHORT *pwDosTime);
|
|
extern __attribute__((dllimport)) INT SystemTimeToVariantTime(LPSYSTEMTIME lpSystemTime,DOUBLE *pvtime);
|
|
extern __attribute__((dllimport)) INT VariantTimeToSystemTime(DOUBLE vtime,LPSYSTEMTIME lpSystemTime);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayAllocDescriptor(UINT cDims,SAFEARRAY **ppsaOut);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayAllocDescriptorEx(VARTYPE vt,UINT cDims,SAFEARRAY **ppsaOut);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayAllocData(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) SAFEARRAY * SafeArrayCreate(VARTYPE vt,UINT cDims,SAFEARRAYBOUND *rgsabound);
|
|
extern __attribute__((dllimport)) SAFEARRAY * SafeArrayCreateEx(VARTYPE vt,UINT cDims,SAFEARRAYBOUND *rgsabound,PVOID pvExtra);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayCopyData(SAFEARRAY *psaSource,SAFEARRAY *psaTarget);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayDestroyDescriptor(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayDestroyData(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayDestroy(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayRedim(SAFEARRAY *psa,SAFEARRAYBOUND *psaboundNew);
|
|
extern __attribute__((dllimport)) UINT SafeArrayGetDim(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) UINT SafeArrayGetElemsize(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayGetUBound(SAFEARRAY *psa,UINT nDim,LONG *plUbound);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayGetLBound(SAFEARRAY *psa,UINT nDim,LONG *plLbound);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayLock(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayUnlock(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayAccessData(SAFEARRAY *psa,void **ppvData);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayUnaccessData(SAFEARRAY *psa);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayGetElement(SAFEARRAY *psa,LONG *rgIndices,void *pv);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayPutElement(SAFEARRAY *psa,LONG *rgIndices,void *pv);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayCopy(SAFEARRAY *psa,SAFEARRAY **ppsaOut);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayPtrOfIndex(SAFEARRAY *psa,LONG *rgIndices,void **ppvData);
|
|
extern __attribute__((dllimport)) HRESULT SafeArraySetRecordInfo(SAFEARRAY *psa,IRecordInfo *prinfo);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayGetRecordInfo(SAFEARRAY *psa,IRecordInfo **prinfo);
|
|
extern __attribute__((dllimport)) HRESULT SafeArraySetIID(SAFEARRAY *psa,const GUID *const guid);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayGetIID(SAFEARRAY *psa,GUID *pguid);
|
|
extern __attribute__((dllimport)) HRESULT SafeArrayGetVartype(SAFEARRAY *psa,VARTYPE *pvt);
|
|
extern __attribute__((dllimport)) SAFEARRAY * SafeArrayCreateVector(VARTYPE vt,LONG lLbound,ULONG cElements);
|
|
extern __attribute__((dllimport)) SAFEARRAY * SafeArrayCreateVectorEx(VARTYPE vt,LONG lLbound,ULONG cElements,PVOID pvExtra);
|
|
extern __attribute__((dllimport)) void VariantInit(VARIANTARG *pvarg);
|
|
extern __attribute__((dllimport)) HRESULT VariantClear(VARIANTARG *pvarg);
|
|
extern __attribute__((dllimport)) HRESULT VariantCopy(VARIANTARG *pvargDest,VARIANTARG *pvargSrc);
|
|
extern __attribute__((dllimport)) HRESULT VariantCopyInd(VARIANT *pvarDest,VARIANTARG *pvargSrc);
|
|
extern __attribute__((dllimport)) HRESULT VariantChangeType(VARIANTARG *pvargDest,VARIANTARG *pvarSrc,USHORT wFlags,VARTYPE vt);
|
|
extern __attribute__((dllimport)) HRESULT VariantChangeTypeEx(VARIANTARG *pvargDest,VARIANTARG *pvarSrc,LCID lcid,USHORT wFlags,VARTYPE vt);
|
|
extern __attribute__((dllimport)) HRESULT VectorFromBstr (BSTR bstr,SAFEARRAY **ppsa);
|
|
extern __attribute__((dllimport)) HRESULT BstrFromVector (SAFEARRAY *psa,BSTR *pbstr);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromI2(SHORT sIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromI4(LONG lIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromI8(LONG64 i64In,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromR4(FLOAT fltIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromR8(DOUBLE dblIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromCy(CY cyIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromDate(DATE dateIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromDisp(IDispatch *pdispIn,LCID lcid,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromBool(VARIANT_BOOL boolIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromI1(CHAR cIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromUI2(USHORT uiIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromUI4(ULONG ulIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromUI8(ULONG64 ui64In,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI1FromDec(DECIMAL *pdecIn,BYTE *pbOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromUI1(BYTE bIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromI4(LONG lIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromI8(LONG64 i64In,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromR4(FLOAT fltIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromR8(DOUBLE dblIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromCy(CY cyIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromDate(DATE dateIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromDisp(IDispatch *pdispIn,LCID lcid,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromBool(VARIANT_BOOL boolIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromI1(CHAR cIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromUI2(USHORT uiIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromUI4(ULONG ulIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromUI8(ULONG64 ui64In,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI2FromDec(DECIMAL *pdecIn,SHORT *psOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromUI1(BYTE bIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromI2(SHORT sIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromI8(LONG64 i64In,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromR4(FLOAT fltIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromR8(DOUBLE dblIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromCy(CY cyIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromDate(DATE dateIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromDisp(IDispatch *pdispIn,LCID lcid,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromBool(VARIANT_BOOL boolIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromI1(CHAR cIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromUI2(USHORT uiIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromUI4(ULONG ulIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromUI8(ULONG64 ui64In,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromDec(DECIMAL *pdecIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromInt(INT intIn,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromUI1(BYTE bIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromI2(SHORT sIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromI4(LONG lIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromR4(FLOAT fltIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromR8(DOUBLE dblIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromCy(CY cyIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromDate(DATE dateIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromStr(OLECHAR *strIn,LCID lcid,unsigned long dwFlags,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromDisp(IDispatch *pdispIn,LCID lcid,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromBool(VARIANT_BOOL boolIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromI1(CHAR cIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromUI2(USHORT uiIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromUI4(ULONG ulIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromUI8(ULONG64 ui64In,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromDec(DECIMAL *pdecIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarI8FromInt(INT intIn,LONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromUI1(BYTE bIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromI2(SHORT sIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromI4(LONG lIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromI8(LONG64 i64In,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromR8(DOUBLE dblIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromCy(CY cyIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromDate(DATE dateIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromDisp(IDispatch *pdispIn,LCID lcid,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromBool(VARIANT_BOOL boolIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromI1(CHAR cIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromUI2(USHORT uiIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromUI4(ULONG ulIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromUI8(ULONG64 ui64In,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR4FromDec(DECIMAL *pdecIn,FLOAT *pfltOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromUI1(BYTE bIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromI2(SHORT sIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromI4(LONG lIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromI8(LONG64 i64In,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromR4(FLOAT fltIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromCy(CY cyIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromDate(DATE dateIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromDisp(IDispatch *pdispIn,LCID lcid,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromBool(VARIANT_BOOL boolIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromI1(CHAR cIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromUI2(USHORT uiIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromUI4(ULONG ulIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromUI8(ULONG64 ui64In,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarR8FromDec(DECIMAL *pdecIn,DOUBLE *pdblOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromUI1(BYTE bIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromI2(SHORT sIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromI4(LONG lIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromI8(LONG64 i64In,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromR4(FLOAT fltIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromR8(DOUBLE dblIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromCy(CY cyIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromDisp(IDispatch *pdispIn,LCID lcid,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromBool(VARIANT_BOOL boolIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromI1(CHAR cIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromUI2(USHORT uiIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromUI4(ULONG ulIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromUI8(ULONG64 ui64In,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromDec(DECIMAL *pdecIn,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromUI1(BYTE bIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromI2(SHORT sIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromI4(LONG lIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromI8(LONG64 i64In,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromR4(FLOAT fltIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromR8(DOUBLE dblIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromDate(DATE dateIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromDisp(IDispatch *pdispIn,LCID lcid,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromBool(VARIANT_BOOL boolIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromI1(CHAR cIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromUI2(USHORT uiIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromUI4(ULONG ulIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromUI8(ULONG64 ui64In,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarCyFromDec(DECIMAL *pdecIn,CY *pcyOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromUI1(BYTE bVal,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromI2(SHORT iVal,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromI4(LONG lIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromI8(LONG64 i64In,LCID lcid,unsigned long dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromR4(FLOAT fltIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromR8(DOUBLE dblIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromCy(CY cyIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromDate(DATE dateIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromDisp(IDispatch *pdispIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromBool(VARIANT_BOOL boolIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromI1(CHAR cIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromUI2(USHORT uiIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromUI4(ULONG ulIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromUI8(ULONG64 ui64In,LCID lcid,unsigned long dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBstrFromDec(DECIMAL *pdecIn,LCID lcid,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromUI1(BYTE bIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromI2(SHORT sIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromI4(LONG lIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromI8(LONG64 i64In,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromR4(FLOAT fltIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromR8(DOUBLE dblIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromDate(DATE dateIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromCy(CY cyIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromDisp(IDispatch *pdispIn,LCID lcid,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromI1(CHAR cIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromUI2(USHORT uiIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromUI4(ULONG ulIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromUI8(ULONG64 i64In,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarBoolFromDec(DECIMAL *pdecIn,VARIANT_BOOL *pboolOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromUI1(BYTE bIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromI2(SHORT uiIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromI4(LONG lIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromI8(LONG64 i64In,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromR4(FLOAT fltIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromR8(DOUBLE dblIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromDate(DATE dateIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromCy(CY cyIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromDisp(IDispatch *pdispIn,LCID lcid,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromBool(VARIANT_BOOL boolIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromUI2(USHORT uiIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromUI4(ULONG ulIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromUI8(ULONG64 i64In,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI1FromDec(DECIMAL *pdecIn,CHAR *pcOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromUI1(BYTE bIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromI2(SHORT uiIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromI4(LONG lIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromI8(LONG64 i64In,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromR4(FLOAT fltIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromR8(DOUBLE dblIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromDate(DATE dateIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromCy(CY cyIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromDisp(IDispatch *pdispIn,LCID lcid,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromBool(VARIANT_BOOL boolIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromI1(CHAR cIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromUI4(ULONG ulIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromUI8(ULONG64 i64In,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI2FromDec(DECIMAL *pdecIn,USHORT *puiOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromUI1(BYTE bIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromI2(SHORT uiIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromI4(LONG lIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromI8(LONG64 i64In,ULONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromR4(FLOAT fltIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromR8(DOUBLE dblIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromDate(DATE dateIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromCy(CY cyIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromDisp(IDispatch *pdispIn,LCID lcid,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromBool(VARIANT_BOOL boolIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromI1(CHAR cIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromUI2(USHORT uiIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromUI8(ULONG64 ui64In,ULONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI4FromDec(DECIMAL *pdecIn,ULONG *pulOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromUI1(BYTE bIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromI2(SHORT sIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromI4(LONG lIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromI8(LONG64 ui64In,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromR4(FLOAT fltIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromR8(DOUBLE dblIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromCy(CY cyIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromDate(DATE dateIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromStr(OLECHAR *strIn,LCID lcid,unsigned long dwFlags,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromDisp(IDispatch *pdispIn,LCID lcid,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromBool(VARIANT_BOOL boolIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromI1(CHAR cIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromUI2(USHORT uiIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromUI4(ULONG ulIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromDec(DECIMAL *pdecIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarUI8FromInt(INT intIn,ULONG64 *pi64Out);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromUI1(BYTE bIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromI2(SHORT uiIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromI4(LONG lIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromI8(LONG64 i64In,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromR4(FLOAT fltIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromR8(DOUBLE dblIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromDate(DATE dateIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromCy(CY cyIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromDisp(IDispatch *pdispIn,LCID lcid,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromBool(VARIANT_BOOL boolIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromI1(CHAR cIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromUI2(USHORT uiIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromUI4(ULONG ulIn,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDecFromUI8(ULONG64 ui64In,DECIMAL *pdecOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromI8(LONG64 i64In,LONG *plOut);
|
|
extern __attribute__((dllimport)) HRESULT VarI4FromUI8(ULONG64 ui64In,LONG *plOut);
|
|
typedef struct {
|
|
INT cDig;
|
|
ULONG dwInFlags;
|
|
ULONG dwOutFlags;
|
|
INT cchUsed;
|
|
INT nBaseShift;
|
|
INT nPwr10;
|
|
} NUMPARSE;
|
|
extern __attribute__((dllimport)) HRESULT VarParseNumFromStr(OLECHAR *strIn,LCID lcid,ULONG dwFlags,NUMPARSE *pnumprs,BYTE *rgbDig);
|
|
extern __attribute__((dllimport)) HRESULT VarNumFromParseNum(NUMPARSE *pnumprs,BYTE *rgbDig,ULONG dwVtBits,VARIANT *pvar);
|
|
extern HRESULT VarAdd(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarAnd(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarCat(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarDiv(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarEqv(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarIdiv(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarImp(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarMod(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarMul(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarOr(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarPow(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarSub(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarXor(LPVARIANT pvarLeft,LPVARIANT pvarRight,LPVARIANT pvarResult);
|
|
extern HRESULT VarAbs(LPVARIANT pvarIn,LPVARIANT pvarResult);
|
|
extern HRESULT VarFix(LPVARIANT pvarIn,LPVARIANT pvarResult);
|
|
extern HRESULT VarInt(LPVARIANT pvarIn,LPVARIANT pvarResult);
|
|
extern HRESULT VarNeg(LPVARIANT pvarIn,LPVARIANT pvarResult);
|
|
extern HRESULT VarNot(LPVARIANT pvarIn,LPVARIANT pvarResult);
|
|
extern HRESULT VarRound(LPVARIANT pvarIn,int cDecimals,LPVARIANT pvarResult);
|
|
extern HRESULT VarCmp(LPVARIANT pvarLeft,LPVARIANT pvarRight,LCID lcid,ULONG dwFlags);
|
|
extern HRESULT VarDecAdd(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecDiv(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecMul(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecSub(LPDECIMAL pdecLeft,LPDECIMAL pdecRight,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecAbs(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecFix(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecInt(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecNeg(LPDECIMAL pdecIn,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecRound(LPDECIMAL pdecIn,int cDecimals,LPDECIMAL pdecResult);
|
|
extern HRESULT VarDecCmp(LPDECIMAL pdecLeft,LPDECIMAL pdecRight);
|
|
extern HRESULT VarDecCmpR8(LPDECIMAL pdecLeft,double dblRight);
|
|
extern HRESULT VarCyAdd(CY cyLeft,CY cyRight,LPCY pcyResult);
|
|
extern HRESULT VarCyMul(CY cyLeft,CY cyRight,LPCY pcyResult);
|
|
extern HRESULT VarCyMulI4(CY cyLeft,long lRight,LPCY pcyResult);
|
|
extern HRESULT VarCyMulI8(CY cyLeft,LONG64 lRight,LPCY pcyResult);
|
|
extern HRESULT VarCySub(CY cyLeft,CY cyRight,LPCY pcyResult);
|
|
extern HRESULT VarCyAbs(CY cyIn,LPCY pcyResult);
|
|
extern HRESULT VarCyFix(CY cyIn,LPCY pcyResult);
|
|
extern HRESULT VarCyInt(CY cyIn,LPCY pcyResult);
|
|
extern HRESULT VarCyNeg(CY cyIn,LPCY pcyResult);
|
|
extern HRESULT VarCyRound(CY cyIn,int cDecimals,LPCY pcyResult);
|
|
extern HRESULT VarCyCmp(CY cyLeft,CY cyRight);
|
|
extern HRESULT VarCyCmpR8(CY cyLeft,double dblRight);
|
|
extern HRESULT VarBstrCat(BSTR bstrLeft,BSTR bstrRight,LPBSTR pbstrResult);
|
|
extern HRESULT VarBstrCmp(BSTR bstrLeft,BSTR bstrRight,LCID lcid,ULONG dwFlags);
|
|
extern HRESULT VarR8Pow(double dblLeft,double dblRight,double *pdblResult);
|
|
extern HRESULT VarR4CmpR8(float fltLeft,double dblRight);
|
|
extern HRESULT VarR8Round(double dblIn,int cDecimals,double *pdblResult);
|
|
typedef struct {
|
|
SYSTEMTIME st;
|
|
USHORT wDayOfYear;
|
|
} UDATE;
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromUdate(UDATE *pudateIn,ULONG dwFlags,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarDateFromUdateEx(UDATE *pudateIn,LCID lcid,ULONG dwFlags,DATE *pdateOut);
|
|
extern __attribute__((dllimport)) HRESULT VarUdateFromDate(DATE dateIn,ULONG dwFlags,UDATE *pudateOut);
|
|
extern __attribute__((dllimport)) HRESULT GetAltMonthNames(LCID lcid,LPOLESTR **prgp);
|
|
extern __attribute__((dllimport)) HRESULT VarFormat(LPVARIANT pvarIn,LPOLESTR pstrFormat,int iFirstDay,int iFirstWeek,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarFormatDateTime(LPVARIANT pvarIn,int iNamedFormat,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarFormatNumber(LPVARIANT pvarIn,int iNumDig,int iIncLead,int iUseParens,int iGroup,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarFormatPercent(LPVARIANT pvarIn,int iNumDig,int iIncLead,int iUseParens,int iGroup,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarFormatCurrency(LPVARIANT pvarIn,int iNumDig,int iIncLead,int iUseParens,int iGroup,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarWeekdayName(int iWeekday,int fAbbrev,int iFirstDay,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarMonthName(int iMonth,int fAbbrev,ULONG dwFlags,BSTR *pbstrOut);
|
|
extern __attribute__((dllimport)) HRESULT VarFormatFromTokens(LPVARIANT pvarIn,LPOLESTR pstrFormat,LPBYTE pbTokCur,ULONG dwFlags,BSTR *pbstrOut,LCID lcid);
|
|
extern __attribute__((dllimport)) HRESULT VarTokenizeFormatString(LPOLESTR pstrFormat,LPBYTE rgbTok,int cbTok,int iFirstDay,int iFirstWeek,LCID lcid,int *pcbActual);
|
|
typedef ITypeLib *LPTYPELIB;
|
|
typedef LONG DISPID;
|
|
typedef DISPID MEMBERID;
|
|
typedef ITypeInfo *LPTYPEINFO;
|
|
typedef ITypeComp *LPTYPECOMP;
|
|
typedef ICreateTypeLib *LPCREATETYPELIB;
|
|
typedef ICreateTypeInfo *LPCREATETYPEINFO;
|
|
extern __attribute__((dllimport)) ULONG LHashValOfNameSysA(SYSKIND syskind,LCID lcid,LPCSTR szName);
|
|
extern __attribute__((dllimport)) ULONG LHashValOfNameSys(SYSKIND syskind,LCID lcid,const OLECHAR *szName);
|
|
extern __attribute__((dllimport)) HRESULT LoadTypeLib(const OLECHAR *szFile,ITypeLib **pptlib);
|
|
typedef enum tagREGKIND {
|
|
REGKIND_DEFAULT,REGKIND_REGISTER,REGKIND_NONE
|
|
} REGKIND;
|
|
extern __attribute__((dllimport)) HRESULT LoadTypeLibEx(LPCOLESTR szFile,REGKIND regkind,ITypeLib **pptlib);
|
|
extern __attribute__((dllimport)) HRESULT LoadRegTypeLib(const GUID *const rguid,WORD wVerMajor,WORD wVerMinor,LCID lcid,ITypeLib **pptlib);
|
|
extern __attribute__((dllimport)) HRESULT QueryPathOfRegTypeLib(const GUID *const guid,USHORT wMaj,USHORT wMin,LCID lcid,LPBSTR lpbstrPathName);
|
|
extern __attribute__((dllimport)) HRESULT RegisterTypeLib(ITypeLib *ptlib,OLECHAR *szFullPath,OLECHAR *szHelpDir);
|
|
extern __attribute__((dllimport)) HRESULT UnRegisterTypeLib(const GUID *const libID,WORD wVerMajor,WORD wVerMinor,LCID lcid,SYSKIND syskind);
|
|
extern __attribute__((dllimport)) HRESULT CreateTypeLib(SYSKIND syskind,const OLECHAR *szFile,ICreateTypeLib **ppctlib);
|
|
extern __attribute__((dllimport)) HRESULT CreateTypeLib2(SYSKIND syskind,LPCOLESTR szFile,ICreateTypeLib2 **ppctlib);
|
|
typedef IDispatch *LPDISPATCH;
|
|
typedef struct tagPARAMDATA {
|
|
OLECHAR *szName;
|
|
VARTYPE vt;
|
|
} PARAMDATA,*LPPARAMDATA;
|
|
typedef struct tagMETHODDATA {
|
|
OLECHAR *szName;
|
|
PARAMDATA *ppdata;
|
|
DISPID dispid;
|
|
UINT iMeth;
|
|
CALLCONV cc;
|
|
UINT cArgs;
|
|
WORD wFlags;
|
|
VARTYPE vtReturn;
|
|
} METHODDATA,*LPMETHODDATA;
|
|
typedef struct tagINTERFACEDATA {
|
|
METHODDATA *pmethdata;
|
|
UINT cMembers;
|
|
} INTERFACEDATA,*LPINTERFACEDATA;
|
|
extern __attribute__((dllimport)) HRESULT DispGetParam(DISPPARAMS *pdispparams,UINT position,VARTYPE vtTarg,VARIANT *pvarResult,UINT *puArgErr);
|
|
extern __attribute__((dllimport)) HRESULT DispGetIDsOfNames(ITypeInfo *ptinfo,OLECHAR **rgszNames,UINT cNames,DISPID *rgdispid);
|
|
extern __attribute__((dllimport)) HRESULT DispInvoke(void *_this,ITypeInfo *ptinfo,DISPID dispidMember,WORD wFlags,DISPPARAMS *pparams,VARIANT *pvarResult,EXCEPINFO *pexcepinfo,UINT *puArgErr);
|
|
extern __attribute__((dllimport)) HRESULT CreateDispTypeInfo(INTERFACEDATA *pidata,LCID lcid,ITypeInfo **pptinfo);
|
|
extern __attribute__((dllimport)) HRESULT CreateStdDispatch(IUnknown *punkOuter,void *pvThis,ITypeInfo *ptinfo,IUnknown **ppunkStdDisp);
|
|
extern __attribute__((dllimport)) HRESULT DispCallFunc(void *pvInstance,ULONG_PTR oVft,CALLCONV cc,VARTYPE vtReturn,UINT cActuals,VARTYPE *prgvt,VARIANTARG **prgpvarg,VARIANT *pvargResult);
|
|
extern __attribute__((dllimport)) HRESULT RegisterActiveObject(IUnknown *punk,const IID *const rclsid,DWORD dwFlags,DWORD *pdwRegister);
|
|
extern __attribute__((dllimport)) HRESULT RevokeActiveObject(DWORD dwRegister,void *pvReserved);
|
|
extern __attribute__((dllimport)) HRESULT GetActiveObject(const IID *const rclsid,void *pvReserved,IUnknown **ppunk);
|
|
extern __attribute__((dllimport)) HRESULT SetErrorInfo(ULONG dwReserved,IErrorInfo *perrinfo);
|
|
extern __attribute__((dllimport)) HRESULT GetErrorInfo(ULONG dwReserved,IErrorInfo **pperrinfo);
|
|
extern __attribute__((dllimport)) HRESULT CreateErrorInfo(ICreateErrorInfo **pperrinfo);
|
|
extern __attribute__((dllimport)) HRESULT GetRecordInfoFromTypeInfo(ITypeInfo *pTypeInfo,IRecordInfo **ppRecInfo);
|
|
extern __attribute__((dllimport)) HRESULT GetRecordInfoFromGuids(const GUID *const rGuidTypeLib,ULONG uVerMajor,ULONG uVerMinor,LCID lcid,const GUID *const rGuidTypeInfo,IRecordInfo **ppRecInfo);
|
|
extern __attribute__((dllimport)) ULONG OaBuildVersion(void);
|
|
extern __attribute__((dllimport)) void ClearCustData(LPCUSTDATA pCustData);
|
|
#pragma pack(pop)
|
|
extern __attribute__((dllimport)) DWORD OleBuildVersion (void);
|
|
extern __attribute__((dllimport)) HRESULT CreateDataAdviseHolder (LPDATAADVISEHOLDER *ppDAHolder);
|
|
extern __attribute__((dllimport)) HRESULT ReadClassStg (LPSTORAGE pStg, CLSID *pclsid);
|
|
extern __attribute__((dllimport)) HRESULT WriteClassStg (LPSTORAGE pStg, const IID *const rclsid);
|
|
extern __attribute__((dllimport)) HRESULT ReadClassStm (LPSTREAM pStm, CLSID *pclsid);
|
|
extern __attribute__((dllimport)) HRESULT WriteClassStm (LPSTREAM pStm, const IID *const rclsid);
|
|
extern __attribute__((dllimport)) HRESULT WriteFmtUserTypeStg (LPSTORAGE pstg, CLIPFORMAT cf, LPOLESTR lpszUserType);
|
|
extern __attribute__((dllimport)) HRESULT ReadFmtUserTypeStg (LPSTORAGE pstg, CLIPFORMAT *pcf, LPOLESTR *lplpszUserType);
|
|
extern __attribute__((dllimport)) HRESULT OleInitialize (LPVOID pvReserved);
|
|
extern __attribute__((dllimport)) void OleUninitialize (void);
|
|
extern __attribute__((dllimport)) HRESULT OleQueryLinkFromData (LPDATAOBJECT pSrcDataObject);
|
|
extern __attribute__((dllimport)) HRESULT OleQueryCreateFromData (LPDATAOBJECT pSrcDataObject);
|
|
extern __attribute__((dllimport)) HRESULT OleCreate (const IID *const rclsid, const IID *const riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateEx (const IID *const rclsid, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateFromData (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateFromDataEx (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateLinkFromData (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateLinkFromDataEx (LPDATAOBJECT pSrcDataObj, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateStaticFromData (LPDATAOBJECT pSrcDataObj, const IID *const iid, DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateLink (LPMONIKER pmkLinkSrc, const IID *const riid, DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateLinkEx (LPMONIKER pmkLinkSrc, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateLinkToFile (LPCOLESTR lpszFileName, const IID *const riid, DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateLinkToFileEx (LPCOLESTR lpszFileName, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateFromFile (const IID *const rclsid, LPCOLESTR lpszFileName, const IID *const riid, DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateFromFileEx (const IID *const rclsid, LPCOLESTR lpszFileName, const IID *const riid, DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD *rgAdvf, LPFORMATETC rgFormatEtc, IAdviseSink *lpAdviseSink, DWORD *rgdwConnection, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleLoad (LPSTORAGE pStg, const IID *const riid, LPOLECLIENTSITE pClientSite, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleSave (LPPERSISTSTORAGE pPS, LPSTORAGE pStg, WINBOOL fSameAsLoad);
|
|
extern __attribute__((dllimport)) HRESULT OleLoadFromStream (LPSTREAM pStm, const IID *const iidInterface, LPVOID *ppvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleSaveToStream (LPPERSISTSTREAM pPStm, LPSTREAM pStm);
|
|
extern __attribute__((dllimport)) HRESULT OleSetContainedObject (LPUNKNOWN pUnknown, WINBOOL fContained);
|
|
extern __attribute__((dllimport)) HRESULT OleNoteObjectVisible (LPUNKNOWN pUnknown, WINBOOL fVisible);
|
|
extern __attribute__((dllimport)) HRESULT RegisterDragDrop (HWND hwnd, LPDROPTARGET pDropTarget);
|
|
extern __attribute__((dllimport)) HRESULT RevokeDragDrop (HWND hwnd);
|
|
extern __attribute__((dllimport)) HRESULT DoDragDrop (LPDATAOBJECT pDataObj, LPDROPSOURCE pDropSource, DWORD dwOKEffects, LPDWORD pdwEffect);
|
|
extern __attribute__((dllimport)) HRESULT OleSetClipboard (LPDATAOBJECT pDataObj);
|
|
extern __attribute__((dllimport)) HRESULT OleGetClipboard (LPDATAOBJECT *ppDataObj);
|
|
extern __attribute__((dllimport)) HRESULT OleFlushClipboard (void);
|
|
extern __attribute__((dllimport)) HRESULT OleIsCurrentClipboard (LPDATAOBJECT pDataObj);
|
|
extern __attribute__((dllimport)) HOLEMENU OleCreateMenuDescriptor (HMENU hmenuCombined, LPOLEMENUGROUPWIDTHS lpMenuWidths);
|
|
extern __attribute__((dllimport)) HRESULT OleSetMenuDescriptor (HOLEMENU holemenu, HWND hwndFrame, HWND hwndActiveObject, LPOLEINPLACEFRAME lpFrame, LPOLEINPLACEACTIVEOBJECT lpActiveObj);
|
|
extern __attribute__((dllimport)) HRESULT OleDestroyMenuDescriptor (HOLEMENU holemenu);
|
|
extern __attribute__((dllimport)) HRESULT OleTranslateAccelerator (LPOLEINPLACEFRAME lpFrame, LPOLEINPLACEFRAMEINFO lpFrameInfo, LPMSG lpmsg);
|
|
extern __attribute__((dllimport)) HANDLE OleDuplicateData (HANDLE hSrc, CLIPFORMAT cfFormat, UINT uiFlags);
|
|
extern __attribute__((dllimport)) HRESULT OleDraw (LPUNKNOWN pUnknown, DWORD dwAspect, HDC hdcDraw, LPCRECT lprcBounds);
|
|
extern __attribute__((dllimport)) HRESULT OleRun (LPUNKNOWN pUnknown);
|
|
extern __attribute__((dllimport)) WINBOOL OleIsRunning (LPOLEOBJECT pObject);
|
|
extern __attribute__((dllimport)) HRESULT OleLockRunning (LPUNKNOWN pUnknown, WINBOOL fLock, WINBOOL fLastUnlockCloses);
|
|
extern __attribute__((dllimport)) void ReleaseStgMedium (LPSTGMEDIUM);
|
|
extern __attribute__((dllimport)) HRESULT CreateOleAdviseHolder (LPOLEADVISEHOLDER *ppOAHolder);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateDefaultHandler (const IID *const clsid, LPUNKNOWN pUnkOuter, const IID *const riid, LPVOID *lplpObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateEmbeddingHelper (const IID *const clsid, LPUNKNOWN pUnkOuter, DWORD flags, LPCLASSFACTORY pCF, const IID *const riid, LPVOID *lplpObj);
|
|
extern __attribute__((dllimport)) WINBOOL IsAccelerator (HACCEL hAccel, int cAccelEntries, LPMSG lpMsg, WORD *lpwCmd);
|
|
extern __attribute__((dllimport)) HGLOBAL OleGetIconOfFile (LPOLESTR lpszPath, WINBOOL fUseFileAsLabel);
|
|
extern __attribute__((dllimport)) HGLOBAL OleGetIconOfClass (const IID *const rclsid, LPOLESTR lpszLabel, WINBOOL fUseTypeAsLabel);
|
|
extern __attribute__((dllimport)) HGLOBAL OleMetafilePictFromIconAndLabel (HICON hIcon, LPOLESTR lpszLabel, LPOLESTR lpszSourceFile, UINT iIconIndex);
|
|
extern __attribute__((dllimport)) HRESULT OleRegGetUserType (const IID *const clsid, DWORD dwFormOfType, LPOLESTR *pszUserType);
|
|
extern __attribute__((dllimport)) HRESULT OleRegGetMiscStatus (const IID *const clsid, DWORD dwAspect, DWORD *pdwStatus);
|
|
extern __attribute__((dllimport)) HRESULT OleRegEnumFormatEtc (const IID *const clsid, DWORD dwDirection, LPENUMFORMATETC *ppenum);
|
|
extern __attribute__((dllimport)) HRESULT OleRegEnumVerbs (const IID *const clsid, LPENUMOLEVERB *ppenum);
|
|
typedef struct _OLESTREAM *LPOLESTREAM;
|
|
typedef struct _OLESTREAMVTBL {
|
|
DWORD ( *Get) (LPOLESTREAM, void *, DWORD);
|
|
DWORD ( *Put) (LPOLESTREAM, const void *, DWORD);
|
|
} OLESTREAMVTBL;
|
|
typedef OLESTREAMVTBL *LPOLESTREAMVTBL;
|
|
typedef struct _OLESTREAM {
|
|
LPOLESTREAMVTBL lpstbl;
|
|
} OLESTREAM;
|
|
extern __attribute__((dllimport)) HRESULT OleConvertOLESTREAMToIStorage (LPOLESTREAM lpolestream, LPSTORAGE pstg, const DVTARGETDEVICE *ptd);
|
|
extern __attribute__((dllimport)) HRESULT OleConvertIStorageToOLESTREAM (LPSTORAGE pstg, LPOLESTREAM lpolestream);
|
|
extern __attribute__((dllimport)) HRESULT GetHGlobalFromILockBytes (LPLOCKBYTES plkbyt, HGLOBAL *phglobal);
|
|
extern __attribute__((dllimport)) HRESULT CreateILockBytesOnHGlobal (HGLOBAL hGlobal, WINBOOL fDeleteOnRelease, LPLOCKBYTES *pplkbyt);
|
|
extern __attribute__((dllimport)) HRESULT OleDoAutoConvert (LPSTORAGE pStg, LPCLSID pClsidNew);
|
|
extern __attribute__((dllimport)) HRESULT OleGetAutoConvert (const IID *const clsidOld, LPCLSID pClsidNew);
|
|
extern __attribute__((dllimport)) HRESULT OleSetAutoConvert (const IID *const clsidOld, const IID *const clsidNew);
|
|
extern __attribute__((dllimport)) HRESULT GetConvertStg (LPSTORAGE pStg);
|
|
extern __attribute__((dllimport)) HRESULT SetConvertStg (LPSTORAGE pStg, WINBOOL fConvert);
|
|
extern __attribute__((dllimport)) HRESULT OleConvertIStorageToOLESTREAMEx (LPSTORAGE pstg, CLIPFORMAT cfFormat, LONG lWidth, LONG lHeight, DWORD dwSize, LPSTGMEDIUM pmedium, LPOLESTREAM polestm);
|
|
extern __attribute__((dllimport)) HRESULT OleConvertOLESTREAMToIStorageEx (LPOLESTREAM polestm, LPSTORAGE pstg, CLIPFORMAT *pcfFormat, LONG *plwWidth, LONG *plHeight, DWORD *pdwSize, LPSTGMEDIUM pmedium);
|
|
#pragma pack(pop)
|
|
extern const GUID GUID_DEVINTERFACE_DISK;
|
|
extern const GUID GUID_DEVINTERFACE_CDROM;
|
|
extern const GUID GUID_DEVINTERFACE_PARTITION;
|
|
extern const GUID GUID_DEVINTERFACE_TAPE;
|
|
extern const GUID GUID_DEVINTERFACE_WRITEONCEDISK;
|
|
extern const GUID GUID_DEVINTERFACE_VOLUME;
|
|
extern const GUID GUID_DEVINTERFACE_MEDIUMCHANGER;
|
|
extern const GUID GUID_DEVINTERFACE_FLOPPY;
|
|
extern const GUID GUID_DEVINTERFACE_CDCHANGER;
|
|
extern const GUID GUID_DEVINTERFACE_STORAGEPORT;
|
|
extern const GUID GUID_DEVINTERFACE_COMPORT;
|
|
extern const GUID GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR;
|
|
typedef struct _STORAGE_READ_CAPACITY {
|
|
ULONG Version;
|
|
ULONG Size;
|
|
ULONG BlockLength;
|
|
LARGE_INTEGER NumberOfBlocks;
|
|
LARGE_INTEGER DiskLength;
|
|
} STORAGE_READ_CAPACITY, *PSTORAGE_READ_CAPACITY;
|
|
typedef struct _STORAGE_HOTPLUG_INFO {
|
|
DWORD Size;
|
|
BOOLEAN MediaRemovable;
|
|
BOOLEAN MediaHotplug;
|
|
BOOLEAN DeviceHotplug;
|
|
BOOLEAN WriteCacheEnableOverride;
|
|
} STORAGE_HOTPLUG_INFO,*PSTORAGE_HOTPLUG_INFO;
|
|
typedef struct _STORAGE_DEVICE_NUMBER {
|
|
DWORD DeviceType;
|
|
DWORD DeviceNumber;
|
|
DWORD PartitionNumber;
|
|
} STORAGE_DEVICE_NUMBER,*PSTORAGE_DEVICE_NUMBER;
|
|
typedef struct _STORAGE_BUS_RESET_REQUEST {
|
|
BYTE PathId;
|
|
} STORAGE_BUS_RESET_REQUEST,*PSTORAGE_BUS_RESET_REQUEST;
|
|
typedef struct STORAGE_BREAK_RESERVATION_REQUEST {
|
|
DWORD Length;
|
|
BYTE _unused;
|
|
BYTE PathId;
|
|
BYTE TargetId;
|
|
BYTE Lun;
|
|
} STORAGE_BREAK_RESERVATION_REQUEST,*PSTORAGE_BREAK_RESERVATION_REQUEST;
|
|
typedef struct _PREVENT_MEDIA_REMOVAL {
|
|
BOOLEAN PreventMediaRemoval;
|
|
} PREVENT_MEDIA_REMOVAL,*PPREVENT_MEDIA_REMOVAL;
|
|
typedef struct _CLASS_MEDIA_CHANGE_CONTEXT {
|
|
DWORD MediaChangeCount;
|
|
DWORD NewState;
|
|
} CLASS_MEDIA_CHANGE_CONTEXT,*PCLASS_MEDIA_CHANGE_CONTEXT;
|
|
typedef struct _TAPE_STATISTICS {
|
|
DWORD Version;
|
|
DWORD Flags;
|
|
LARGE_INTEGER RecoveredWrites;
|
|
LARGE_INTEGER UnrecoveredWrites;
|
|
LARGE_INTEGER RecoveredReads;
|
|
LARGE_INTEGER UnrecoveredReads;
|
|
BYTE CompressionRatioReads;
|
|
BYTE CompressionRatioWrites;
|
|
} TAPE_STATISTICS,*PTAPE_STATISTICS;
|
|
typedef struct _TAPE_GET_STATISTICS {
|
|
DWORD Operation;
|
|
} TAPE_GET_STATISTICS,*PTAPE_GET_STATISTICS;
|
|
typedef enum _STORAGE_MEDIA_TYPE {
|
|
DDS_4mm = 0x20,
|
|
MiniQic,
|
|
Travan,
|
|
QIC,
|
|
MP_8mm,
|
|
AME_8mm,
|
|
AIT1_8mm,
|
|
DLT,
|
|
NCTP,
|
|
IBM_3480,
|
|
IBM_3490E,
|
|
IBM_Magstar_3590,
|
|
IBM_Magstar_MP,
|
|
STK_DATA_D3,
|
|
SONY_DTF,
|
|
DV_6mm,
|
|
DMI,
|
|
SONY_D2,
|
|
CLEANER_CARTRIDGE,
|
|
CD_ROM,
|
|
CD_R,
|
|
CD_RW,
|
|
DVD_ROM,
|
|
DVD_R,
|
|
DVD_RW,
|
|
MO_3_RW,
|
|
MO_5_WO,
|
|
MO_5_RW,
|
|
MO_5_LIMDOW,
|
|
PC_5_WO,
|
|
PC_5_RW,
|
|
PD_5_RW,
|
|
ABL_5_WO,
|
|
PINNACLE_APEX_5_RW,
|
|
SONY_12_WO,
|
|
PHILIPS_12_WO,
|
|
HITACHI_12_WO,
|
|
CYGNET_12_WO,
|
|
KODAK_14_WO,
|
|
MO_NFR_525,
|
|
NIKON_12_RW,
|
|
IOMEGA_ZIP,
|
|
IOMEGA_JAZ,
|
|
SYQUEST_EZ135,
|
|
SYQUEST_EZFLYER,
|
|
SYQUEST_SYJET,
|
|
AVATAR_F2,
|
|
MP2_8mm,
|
|
DST_S,
|
|
DST_M,
|
|
DST_L,
|
|
VXATape_1,
|
|
VXATape_2,
|
|
STK_9840,
|
|
LTO_Ultrium,
|
|
LTO_Accelis,
|
|
DVD_RAM,
|
|
AIT_8mm,
|
|
ADR_1,
|
|
ADR_2,
|
|
STK_9940,
|
|
SAIT,
|
|
VXATape
|
|
} STORAGE_MEDIA_TYPE, *PSTORAGE_MEDIA_TYPE;
|
|
typedef enum _STORAGE_BUS_TYPE {
|
|
BusTypeUnknown = 0x00,
|
|
BusTypeScsi = 0x1,
|
|
BusTypeAtapi = 0x2,
|
|
BusTypeAta = 0x3,
|
|
BusType1394 = 0x4,
|
|
BusTypeSsa = 0x5,
|
|
BusTypeFibre = 0x6,
|
|
BusTypeUsb = 0x7,
|
|
BusTypeRAID = 0x8,
|
|
BusTypeMax,
|
|
BusTypeMaxReserved = 0x7F
|
|
} STORAGE_BUS_TYPE, *PSTORAGE_BUS_TYPE;
|
|
typedef struct _DEVICE_MEDIA_INFO {
|
|
union {
|
|
struct {
|
|
LARGE_INTEGER Cylinders;
|
|
STORAGE_MEDIA_TYPE MediaType;
|
|
DWORD TracksPerCylinder;
|
|
DWORD SectorsPerTrack;
|
|
DWORD BytesPerSector;
|
|
DWORD NumberMediaSides;
|
|
DWORD MediaCharacteristics;
|
|
} DiskInfo;
|
|
struct {
|
|
LARGE_INTEGER Cylinders;
|
|
STORAGE_MEDIA_TYPE MediaType;
|
|
DWORD TracksPerCylinder;
|
|
DWORD SectorsPerTrack;
|
|
DWORD BytesPerSector;
|
|
DWORD NumberMediaSides;
|
|
DWORD MediaCharacteristics;
|
|
} RemovableDiskInfo;
|
|
struct {
|
|
STORAGE_MEDIA_TYPE MediaType;
|
|
DWORD MediaCharacteristics;
|
|
DWORD CurrentBlockSize;
|
|
STORAGE_BUS_TYPE BusType;
|
|
union {
|
|
struct {
|
|
BYTE MediumType;
|
|
BYTE DensityCode;
|
|
} ScsiInformation;
|
|
} BusSpecificData;
|
|
} TapeInfo;
|
|
} DeviceSpecific;
|
|
} DEVICE_MEDIA_INFO,*PDEVICE_MEDIA_INFO;
|
|
typedef struct _GET_MEDIA_TYPES {
|
|
DWORD DeviceType;
|
|
DWORD MediaInfoCount;
|
|
DEVICE_MEDIA_INFO MediaInfo[1];
|
|
} GET_MEDIA_TYPES,*PGET_MEDIA_TYPES;
|
|
typedef struct _STORAGE_PREDICT_FAILURE {
|
|
DWORD PredictFailure;
|
|
BYTE VendorSpecific[512];
|
|
} STORAGE_PREDICT_FAILURE,*PSTORAGE_PREDICT_FAILURE;
|
|
typedef enum _MEDIA_TYPE {
|
|
Unknown,F5_1Pt2_512,F3_1Pt44_512,F3_2Pt88_512,F3_20Pt8_512,F3_720_512,F5_360_512,F5_320_512,F5_320_1024,F5_180_512,F5_160_512,
|
|
RemovableMedia,FixedMedia,F3_120M_512,F3_640_512,F5_640_512,F5_720_512,F3_1Pt2_512,F3_1Pt23_1024,F5_1Pt23_1024,F3_128Mb_512,
|
|
F3_230Mb_512,F8_256_128,F3_200Mb_512,F3_240M_512,F3_32M_512
|
|
} MEDIA_TYPE,*PMEDIA_TYPE;
|
|
typedef struct _FORMAT_PARAMETERS {
|
|
MEDIA_TYPE MediaType;
|
|
DWORD StartCylinderNumber;
|
|
DWORD EndCylinderNumber;
|
|
DWORD StartHeadNumber;
|
|
DWORD EndHeadNumber;
|
|
} FORMAT_PARAMETERS,*PFORMAT_PARAMETERS;
|
|
typedef WORD BAD_TRACK_NUMBER;
|
|
typedef WORD *PBAD_TRACK_NUMBER;
|
|
typedef struct _FORMAT_EX_PARAMETERS {
|
|
MEDIA_TYPE MediaType;
|
|
DWORD StartCylinderNumber;
|
|
DWORD EndCylinderNumber;
|
|
DWORD StartHeadNumber;
|
|
DWORD EndHeadNumber;
|
|
WORD FormatGapLength;
|
|
WORD SectorsPerTrack;
|
|
WORD SectorNumber[1];
|
|
} FORMAT_EX_PARAMETERS,*PFORMAT_EX_PARAMETERS;
|
|
typedef struct _DISK_GEOMETRY {
|
|
LARGE_INTEGER Cylinders;
|
|
MEDIA_TYPE MediaType;
|
|
DWORD TracksPerCylinder;
|
|
DWORD SectorsPerTrack;
|
|
DWORD BytesPerSector;
|
|
} DISK_GEOMETRY,*PDISK_GEOMETRY;
|
|
typedef struct _PARTITION_INFORMATION {
|
|
LARGE_INTEGER StartingOffset;
|
|
LARGE_INTEGER PartitionLength;
|
|
DWORD HiddenSectors;
|
|
DWORD PartitionNumber;
|
|
BYTE PartitionType;
|
|
BOOLEAN BootIndicator;
|
|
BOOLEAN RecognizedPartition;
|
|
BOOLEAN RewritePartition;
|
|
} PARTITION_INFORMATION,*PPARTITION_INFORMATION;
|
|
typedef struct _SET_PARTITION_INFORMATION {
|
|
BYTE PartitionType;
|
|
} SET_PARTITION_INFORMATION,*PSET_PARTITION_INFORMATION;
|
|
typedef struct _DRIVE_LAYOUT_INFORMATION {
|
|
DWORD PartitionCount;
|
|
DWORD Signature;
|
|
PARTITION_INFORMATION PartitionEntry[1];
|
|
} DRIVE_LAYOUT_INFORMATION,*PDRIVE_LAYOUT_INFORMATION;
|
|
typedef struct _VERIFY_INFORMATION {
|
|
LARGE_INTEGER StartingOffset;
|
|
DWORD Length;
|
|
} VERIFY_INFORMATION,*PVERIFY_INFORMATION;
|
|
typedef struct _REASSIGN_BLOCKS {
|
|
WORD Reserved;
|
|
WORD Count;
|
|
DWORD BlockNumber[1];
|
|
} REASSIGN_BLOCKS,*PREASSIGN_BLOCKS;
|
|
#pragma pack(push,1)
|
|
typedef struct _REASSIGN_BLOCKS_EX {
|
|
WORD Reserved;
|
|
WORD Count;
|
|
LARGE_INTEGER BlockNumber[1];
|
|
} REASSIGN_BLOCKS_EX,*PREASSIGN_BLOCKS_EX;
|
|
#pragma pack(pop)
|
|
typedef enum _PARTITION_STYLE {
|
|
PARTITION_STYLE_MBR,PARTITION_STYLE_GPT,PARTITION_STYLE_RAW
|
|
} PARTITION_STYLE;
|
|
typedef struct _PARTITION_INFORMATION_GPT {
|
|
GUID PartitionType;
|
|
GUID PartitionId;
|
|
DWORD64 Attributes;
|
|
WCHAR Name [36];
|
|
} PARTITION_INFORMATION_GPT,*PPARTITION_INFORMATION_GPT;
|
|
typedef struct _PARTITION_INFORMATION_MBR {
|
|
BYTE PartitionType;
|
|
BOOLEAN BootIndicator;
|
|
BOOLEAN RecognizedPartition;
|
|
DWORD HiddenSectors;
|
|
} PARTITION_INFORMATION_MBR,*PPARTITION_INFORMATION_MBR;
|
|
typedef SET_PARTITION_INFORMATION SET_PARTITION_INFORMATION_MBR;
|
|
typedef PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_GPT;
|
|
typedef struct _SET_PARTITION_INFORMATION_EX {
|
|
PARTITION_STYLE PartitionStyle;
|
|
__extension__ union {
|
|
SET_PARTITION_INFORMATION_MBR Mbr;
|
|
SET_PARTITION_INFORMATION_GPT Gpt;
|
|
} ;
|
|
} SET_PARTITION_INFORMATION_EX,*PSET_PARTITION_INFORMATION_EX;
|
|
typedef struct _CREATE_DISK_GPT {
|
|
GUID DiskId;
|
|
DWORD MaxPartitionCount;
|
|
} CREATE_DISK_GPT,*PCREATE_DISK_GPT;
|
|
typedef struct _CREATE_DISK_MBR {
|
|
DWORD Signature;
|
|
} CREATE_DISK_MBR,*PCREATE_DISK_MBR;
|
|
typedef struct _CREATE_DISK {
|
|
PARTITION_STYLE PartitionStyle;
|
|
__extension__ union {
|
|
CREATE_DISK_MBR Mbr;
|
|
CREATE_DISK_GPT Gpt;
|
|
} ;
|
|
} CREATE_DISK,*PCREATE_DISK;
|
|
typedef struct _GET_LENGTH_INFORMATION {
|
|
LARGE_INTEGER Length;
|
|
} GET_LENGTH_INFORMATION,*PGET_LENGTH_INFORMATION;
|
|
typedef struct _PARTITION_INFORMATION_EX {
|
|
PARTITION_STYLE PartitionStyle;
|
|
LARGE_INTEGER StartingOffset;
|
|
LARGE_INTEGER PartitionLength;
|
|
DWORD PartitionNumber;
|
|
BOOLEAN RewritePartition;
|
|
__extension__ union {
|
|
PARTITION_INFORMATION_MBR Mbr;
|
|
PARTITION_INFORMATION_GPT Gpt;
|
|
} ;
|
|
} PARTITION_INFORMATION_EX,*PPARTITION_INFORMATION_EX;
|
|
typedef struct _DRIVE_LAYOUT_INFORMATION_GPT {
|
|
GUID DiskId;
|
|
LARGE_INTEGER StartingUsableOffset;
|
|
LARGE_INTEGER UsableLength;
|
|
DWORD MaxPartitionCount;
|
|
} DRIVE_LAYOUT_INFORMATION_GPT,*PDRIVE_LAYOUT_INFORMATION_GPT;
|
|
typedef struct _DRIVE_LAYOUT_INFORMATION_MBR {
|
|
DWORD Signature;
|
|
} DRIVE_LAYOUT_INFORMATION_MBR,*PDRIVE_LAYOUT_INFORMATION_MBR;
|
|
typedef struct _DRIVE_LAYOUT_INFORMATION_EX {
|
|
DWORD PartitionStyle;
|
|
DWORD PartitionCount;
|
|
__extension__ union {
|
|
DRIVE_LAYOUT_INFORMATION_MBR Mbr;
|
|
DRIVE_LAYOUT_INFORMATION_GPT Gpt;
|
|
} ;
|
|
PARTITION_INFORMATION_EX PartitionEntry[1];
|
|
} DRIVE_LAYOUT_INFORMATION_EX,*PDRIVE_LAYOUT_INFORMATION_EX;
|
|
typedef enum _DETECTION_TYPE {
|
|
DetectNone,DetectInt13,DetectExInt13
|
|
} DETECTION_TYPE;
|
|
typedef struct _DISK_INT13_INFO {
|
|
WORD DriveSelect;
|
|
DWORD MaxCylinders;
|
|
WORD SectorsPerTrack;
|
|
WORD MaxHeads;
|
|
WORD NumberDrives;
|
|
} DISK_INT13_INFO,*PDISK_INT13_INFO;
|
|
typedef struct _DISK_EX_INT13_INFO {
|
|
WORD ExBufferSize;
|
|
WORD ExFlags;
|
|
DWORD ExCylinders;
|
|
DWORD ExHeads;
|
|
DWORD ExSectorsPerTrack;
|
|
DWORD64 ExSectorsPerDrive;
|
|
WORD ExSectorSize;
|
|
WORD ExReserved;
|
|
} DISK_EX_INT13_INFO,*PDISK_EX_INT13_INFO;
|
|
typedef struct _DISK_DETECTION_INFO {
|
|
DWORD SizeOfDetectInfo;
|
|
DETECTION_TYPE DetectionType;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
DISK_INT13_INFO Int13;
|
|
DISK_EX_INT13_INFO ExInt13;
|
|
} ;
|
|
} ;
|
|
} DISK_DETECTION_INFO,*PDISK_DETECTION_INFO;
|
|
typedef struct _DISK_PARTITION_INFO {
|
|
DWORD SizeOfPartitionInfo;
|
|
PARTITION_STYLE PartitionStyle;
|
|
__extension__ union {
|
|
struct {
|
|
DWORD Signature;
|
|
DWORD CheckSum;
|
|
} Mbr;
|
|
struct {
|
|
GUID DiskId;
|
|
} Gpt;
|
|
} ;
|
|
} DISK_PARTITION_INFO,*PDISK_PARTITION_INFO;
|
|
typedef struct _DISK_GEOMETRY_EX {
|
|
DISK_GEOMETRY Geometry;
|
|
LARGE_INTEGER DiskSize;
|
|
BYTE Data[1];
|
|
} DISK_GEOMETRY_EX,*PDISK_GEOMETRY_EX;
|
|
typedef struct _DISK_CONTROLLER_NUMBER {
|
|
DWORD ControllerNumber;
|
|
DWORD DiskNumber;
|
|
} DISK_CONTROLLER_NUMBER,*PDISK_CONTROLLER_NUMBER;
|
|
typedef enum {
|
|
EqualPriority,KeepPrefetchedData,KeepReadData
|
|
} DISK_CACHE_RETENTION_PRIORITY;
|
|
typedef struct _DISK_CACHE_INFORMATION {
|
|
BOOLEAN ParametersSavable;
|
|
BOOLEAN ReadCacheEnabled;
|
|
BOOLEAN WriteCacheEnabled;
|
|
DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority;
|
|
DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority;
|
|
WORD DisablePrefetchTransferLength;
|
|
BOOLEAN PrefetchScalar;
|
|
__extension__ union {
|
|
struct {
|
|
WORD Minimum;
|
|
WORD Maximum;
|
|
WORD MaximumBlocks;
|
|
} ScalarPrefetch;
|
|
struct {
|
|
WORD Minimum;
|
|
WORD Maximum;
|
|
} BlockPrefetch;
|
|
} ;
|
|
} DISK_CACHE_INFORMATION,*PDISK_CACHE_INFORMATION;
|
|
typedef struct _DISK_GROW_PARTITION {
|
|
DWORD PartitionNumber;
|
|
LARGE_INTEGER BytesToGrow;
|
|
} DISK_GROW_PARTITION,*PDISK_GROW_PARTITION;
|
|
typedef struct _HISTOGRAM_BUCKET {
|
|
DWORD Reads;
|
|
DWORD Writes;
|
|
} HISTOGRAM_BUCKET,*PHISTOGRAM_BUCKET;
|
|
typedef struct _DISK_HISTOGRAM {
|
|
LARGE_INTEGER DiskSize;
|
|
LARGE_INTEGER Start;
|
|
LARGE_INTEGER End;
|
|
LARGE_INTEGER Average;
|
|
LARGE_INTEGER AverageRead;
|
|
LARGE_INTEGER AverageWrite;
|
|
DWORD Granularity;
|
|
DWORD Size;
|
|
DWORD ReadCount;
|
|
DWORD WriteCount;
|
|
PHISTOGRAM_BUCKET Histogram;
|
|
} DISK_HISTOGRAM,*PDISK_HISTOGRAM;
|
|
typedef struct _DISK_PERFORMANCE {
|
|
LARGE_INTEGER BytesRead;
|
|
LARGE_INTEGER BytesWritten;
|
|
LARGE_INTEGER ReadTime;
|
|
LARGE_INTEGER WriteTime;
|
|
LARGE_INTEGER IdleTime;
|
|
DWORD ReadCount;
|
|
DWORD WriteCount;
|
|
DWORD QueueDepth;
|
|
DWORD SplitCount;
|
|
LARGE_INTEGER QueryTime;
|
|
DWORD StorageDeviceNumber;
|
|
WCHAR StorageManagerName[8];
|
|
} DISK_PERFORMANCE,*PDISK_PERFORMANCE;
|
|
typedef struct _DISK_RECORD {
|
|
LARGE_INTEGER ByteOffset;
|
|
LARGE_INTEGER StartTime;
|
|
LARGE_INTEGER EndTime;
|
|
PVOID VirtualAddress;
|
|
DWORD NumberOfBytes;
|
|
BYTE DeviceNumber;
|
|
BOOLEAN ReadRequest;
|
|
} DISK_RECORD,*PDISK_RECORD;
|
|
typedef struct _DISK_LOGGING {
|
|
BYTE Function;
|
|
PVOID BufferAddress;
|
|
DWORD BufferSize;
|
|
} DISK_LOGGING,*PDISK_LOGGING;
|
|
typedef enum _BIN_TYPES {
|
|
RequestSize,RequestLocation
|
|
} BIN_TYPES;
|
|
typedef struct _BIN_RANGE {
|
|
LARGE_INTEGER StartValue;
|
|
LARGE_INTEGER Length;
|
|
} BIN_RANGE,*PBIN_RANGE;
|
|
typedef struct _PERF_BIN {
|
|
DWORD NumberOfBins;
|
|
DWORD TypeOfBin;
|
|
BIN_RANGE BinsRanges[1];
|
|
} PERF_BIN,*PPERF_BIN;
|
|
typedef struct _BIN_COUNT {
|
|
BIN_RANGE BinRange;
|
|
DWORD BinCount;
|
|
} BIN_COUNT,*PBIN_COUNT;
|
|
typedef struct _BIN_RESULTS {
|
|
DWORD NumberOfBins;
|
|
BIN_COUNT BinCounts[1];
|
|
} BIN_RESULTS,*PBIN_RESULTS;
|
|
#pragma pack(push,1)
|
|
typedef struct _GETVERSIONINPARAMS {
|
|
BYTE bVersion;
|
|
BYTE bRevision;
|
|
BYTE bReserved;
|
|
BYTE bIDEDeviceMap;
|
|
DWORD fCapabilities;
|
|
DWORD dwReserved[4];
|
|
} GETVERSIONINPARAMS,*PGETVERSIONINPARAMS,*LPGETVERSIONINPARAMS;
|
|
#pragma pack(pop)
|
|
#pragma pack(push,1)
|
|
typedef struct _IDEREGS {
|
|
BYTE bFeaturesReg;
|
|
BYTE bSectorCountReg;
|
|
BYTE bSectorNumberReg;
|
|
BYTE bCylLowReg;
|
|
BYTE bCylHighReg;
|
|
BYTE bDriveHeadReg;
|
|
BYTE bCommandReg;
|
|
BYTE bReserved;
|
|
} IDEREGS,*PIDEREGS,*LPIDEREGS;
|
|
#pragma pack(pop)
|
|
#pragma pack(push,1)
|
|
typedef struct _SENDCMDINPARAMS {
|
|
DWORD cBufferSize;
|
|
IDEREGS irDriveRegs;
|
|
BYTE bDriveNumber;
|
|
BYTE bReserved[3];
|
|
DWORD dwReserved[4];
|
|
BYTE bBuffer[1];
|
|
} SENDCMDINPARAMS,*PSENDCMDINPARAMS,*LPSENDCMDINPARAMS;
|
|
#pragma pack(pop)
|
|
#pragma pack(push,1)
|
|
typedef struct _DRIVERSTATUS {
|
|
BYTE bDriverError;
|
|
BYTE bIDEError;
|
|
BYTE bReserved[2];
|
|
DWORD dwReserved[2];
|
|
} DRIVERSTATUS,*PDRIVERSTATUS,*LPDRIVERSTATUS;
|
|
#pragma pack(pop)
|
|
#pragma pack(push,1)
|
|
typedef struct _SENDCMDOUTPARAMS {
|
|
DWORD cBufferSize;
|
|
DRIVERSTATUS DriverStatus;
|
|
BYTE bBuffer[1];
|
|
} SENDCMDOUTPARAMS,*PSENDCMDOUTPARAMS,*LPSENDCMDOUTPARAMS;
|
|
#pragma pack(pop)
|
|
typedef enum _ELEMENT_TYPE {
|
|
AllElements,ChangerTransport,ChangerSlot,ChangerIEPort,ChangerDrive,ChangerDoor,ChangerKeypad,ChangerMaxElement
|
|
} ELEMENT_TYPE,*PELEMENT_TYPE;
|
|
typedef struct _CHANGER_ELEMENT {
|
|
ELEMENT_TYPE ElementType;
|
|
DWORD ElementAddress;
|
|
} CHANGER_ELEMENT,*PCHANGER_ELEMENT;
|
|
typedef struct _CHANGER_ELEMENT_LIST {
|
|
CHANGER_ELEMENT Element;
|
|
DWORD NumberOfElements;
|
|
} CHANGER_ELEMENT_LIST ,*PCHANGER_ELEMENT_LIST;
|
|
typedef struct _GET_CHANGER_PARAMETERS {
|
|
DWORD Size;
|
|
WORD NumberTransportElements;
|
|
WORD NumberStorageElements;
|
|
WORD NumberCleanerSlots;
|
|
WORD NumberIEElements;
|
|
WORD NumberDataTransferElements;
|
|
WORD NumberOfDoors;
|
|
WORD FirstSlotNumber;
|
|
WORD FirstDriveNumber;
|
|
WORD FirstTransportNumber;
|
|
WORD FirstIEPortNumber;
|
|
WORD FirstCleanerSlotAddress;
|
|
WORD MagazineSize;
|
|
DWORD DriveCleanTimeout;
|
|
DWORD Features0;
|
|
DWORD Features1;
|
|
BYTE MoveFromTransport;
|
|
BYTE MoveFromSlot;
|
|
BYTE MoveFromIePort;
|
|
BYTE MoveFromDrive;
|
|
BYTE ExchangeFromTransport;
|
|
BYTE ExchangeFromSlot;
|
|
BYTE ExchangeFromIePort;
|
|
BYTE ExchangeFromDrive;
|
|
BYTE LockUnlockCapabilities;
|
|
BYTE PositionCapabilities;
|
|
BYTE Reserved1[2];
|
|
DWORD Reserved2[2];
|
|
} GET_CHANGER_PARAMETERS,*PGET_CHANGER_PARAMETERS;
|
|
typedef struct _CHANGER_PRODUCT_DATA {
|
|
BYTE VendorId[8];
|
|
BYTE ProductId[16];
|
|
BYTE Revision[4];
|
|
BYTE SerialNumber[32];
|
|
BYTE DeviceType;
|
|
} CHANGER_PRODUCT_DATA,*PCHANGER_PRODUCT_DATA;
|
|
typedef struct _CHANGER_SET_ACCESS {
|
|
CHANGER_ELEMENT Element;
|
|
DWORD Control;
|
|
} CHANGER_SET_ACCESS,*PCHANGER_SET_ACCESS;
|
|
typedef struct _CHANGER_READ_ELEMENT_STATUS {
|
|
CHANGER_ELEMENT_LIST ElementList;
|
|
BOOLEAN VolumeTagInfo;
|
|
} CHANGER_READ_ELEMENT_STATUS,*PCHANGER_READ_ELEMENT_STATUS;
|
|
typedef struct _CHANGER_ELEMENT_STATUS {
|
|
CHANGER_ELEMENT Element;
|
|
CHANGER_ELEMENT SrcElementAddress;
|
|
DWORD Flags;
|
|
DWORD ExceptionCode;
|
|
BYTE TargetId;
|
|
BYTE Lun;
|
|
WORD Reserved;
|
|
BYTE PrimaryVolumeID[36];
|
|
BYTE AlternateVolumeID[36];
|
|
} CHANGER_ELEMENT_STATUS,*PCHANGER_ELEMENT_STATUS;
|
|
typedef struct _CHANGER_ELEMENT_STATUS_EX {
|
|
CHANGER_ELEMENT Element;
|
|
CHANGER_ELEMENT SrcElementAddress;
|
|
DWORD Flags;
|
|
DWORD ExceptionCode;
|
|
BYTE TargetId;
|
|
BYTE Lun;
|
|
WORD Reserved;
|
|
BYTE PrimaryVolumeID[36];
|
|
BYTE AlternateVolumeID[36];
|
|
BYTE VendorIdentification[8];
|
|
BYTE ProductIdentification[16];
|
|
BYTE SerialNumber[32];
|
|
} CHANGER_ELEMENT_STATUS_EX,*PCHANGER_ELEMENT_STATUS_EX;
|
|
typedef struct _CHANGER_INITIALIZE_ELEMENT_STATUS {
|
|
CHANGER_ELEMENT_LIST ElementList;
|
|
BOOLEAN BarCodeScan;
|
|
} CHANGER_INITIALIZE_ELEMENT_STATUS,*PCHANGER_INITIALIZE_ELEMENT_STATUS;
|
|
typedef struct _CHANGER_SET_POSITION {
|
|
CHANGER_ELEMENT Transport;
|
|
CHANGER_ELEMENT Destination;
|
|
BOOLEAN Flip;
|
|
} CHANGER_SET_POSITION,*PCHANGER_SET_POSITION;
|
|
typedef struct _CHANGER_EXCHANGE_MEDIUM {
|
|
CHANGER_ELEMENT Transport;
|
|
CHANGER_ELEMENT Source;
|
|
CHANGER_ELEMENT Destination1;
|
|
CHANGER_ELEMENT Destination2;
|
|
BOOLEAN Flip1;
|
|
BOOLEAN Flip2;
|
|
} CHANGER_EXCHANGE_MEDIUM,*PCHANGER_EXCHANGE_MEDIUM;
|
|
typedef struct _CHANGER_MOVE_MEDIUM {
|
|
CHANGER_ELEMENT Transport;
|
|
CHANGER_ELEMENT Source;
|
|
CHANGER_ELEMENT Destination;
|
|
BOOLEAN Flip;
|
|
} CHANGER_MOVE_MEDIUM,*PCHANGER_MOVE_MEDIUM;
|
|
typedef struct _CHANGER_SEND_VOLUME_TAG_INFORMATION {
|
|
CHANGER_ELEMENT StartingElement;
|
|
DWORD ActionCode;
|
|
BYTE VolumeIDTemplate[40];
|
|
} CHANGER_SEND_VOLUME_TAG_INFORMATION,*PCHANGER_SEND_VOLUME_TAG_INFORMATION;
|
|
typedef struct _READ_ELEMENT_ADDRESS_INFO {
|
|
DWORD NumberOfElements;
|
|
CHANGER_ELEMENT_STATUS ElementStatus[1];
|
|
} READ_ELEMENT_ADDRESS_INFO,*PREAD_ELEMENT_ADDRESS_INFO;
|
|
typedef enum _CHANGER_DEVICE_PROBLEM_TYPE {
|
|
DeviceProblemNone,DeviceProblemHardware,DeviceProblemCHMError,DeviceProblemDoorOpen,DeviceProblemCalibrationError,DeviceProblemTargetFailure,
|
|
DeviceProblemCHMMoveError,DeviceProblemCHMZeroError,DeviceProblemCartridgeInsertError,DeviceProblemPositionError,DeviceProblemSensorError,
|
|
DeviceProblemCartridgeEjectError,DeviceProblemGripperError,DeviceProblemDriveError
|
|
} CHANGER_DEVICE_PROBLEM_TYPE,*PCHANGER_DEVICE_PROBLEM_TYPE;
|
|
typedef struct _PATHNAME_BUFFER {
|
|
DWORD PathNameLength;
|
|
WCHAR Name[1];
|
|
} PATHNAME_BUFFER,*PPATHNAME_BUFFER;
|
|
typedef struct _FSCTL_QUERY_FAT_BPB_BUFFER {
|
|
BYTE First0x24BytesOfBootSector[0x24];
|
|
} FSCTL_QUERY_FAT_BPB_BUFFER,*PFSCTL_QUERY_FAT_BPB_BUFFER;
|
|
typedef struct {
|
|
LARGE_INTEGER VolumeSerialNumber;
|
|
LARGE_INTEGER NumberSectors;
|
|
LARGE_INTEGER TotalClusters;
|
|
LARGE_INTEGER FreeClusters;
|
|
LARGE_INTEGER TotalReserved;
|
|
DWORD BytesPerSector;
|
|
DWORD BytesPerCluster;
|
|
DWORD BytesPerFileRecordSegment;
|
|
DWORD ClustersPerFileRecordSegment;
|
|
LARGE_INTEGER MftValidDataLength;
|
|
LARGE_INTEGER MftStartLcn;
|
|
LARGE_INTEGER Mft2StartLcn;
|
|
LARGE_INTEGER MftZoneStart;
|
|
LARGE_INTEGER MftZoneEnd;
|
|
} NTFS_VOLUME_DATA_BUFFER,*PNTFS_VOLUME_DATA_BUFFER;
|
|
typedef struct {
|
|
DWORD ByteCount;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
} NTFS_EXTENDED_VOLUME_DATA,*PNTFS_EXTENDED_VOLUME_DATA;
|
|
typedef struct {
|
|
LARGE_INTEGER StartingLcn;
|
|
} STARTING_LCN_INPUT_BUFFER,*PSTARTING_LCN_INPUT_BUFFER;
|
|
typedef struct {
|
|
LARGE_INTEGER StartingLcn;
|
|
LARGE_INTEGER BitmapSize;
|
|
BYTE Buffer[1];
|
|
} VOLUME_BITMAP_BUFFER,*PVOLUME_BITMAP_BUFFER;
|
|
typedef struct {
|
|
LARGE_INTEGER StartingVcn;
|
|
} STARTING_VCN_INPUT_BUFFER,*PSTARTING_VCN_INPUT_BUFFER;
|
|
typedef struct RETRIEVAL_POINTERS_BUFFER {
|
|
DWORD ExtentCount;
|
|
LARGE_INTEGER StartingVcn;
|
|
struct {
|
|
LARGE_INTEGER NextVcn;
|
|
LARGE_INTEGER Lcn;
|
|
} Extents[1];
|
|
} RETRIEVAL_POINTERS_BUFFER,*PRETRIEVAL_POINTERS_BUFFER;
|
|
typedef struct {
|
|
LARGE_INTEGER FileReferenceNumber;
|
|
} NTFS_FILE_RECORD_INPUT_BUFFER,*PNTFS_FILE_RECORD_INPUT_BUFFER;
|
|
typedef struct {
|
|
LARGE_INTEGER FileReferenceNumber;
|
|
DWORD FileRecordLength;
|
|
BYTE FileRecordBuffer[1];
|
|
} NTFS_FILE_RECORD_OUTPUT_BUFFER,*PNTFS_FILE_RECORD_OUTPUT_BUFFER;
|
|
typedef struct {
|
|
HANDLE FileHandle;
|
|
LARGE_INTEGER StartingVcn;
|
|
LARGE_INTEGER StartingLcn;
|
|
DWORD ClusterCount;
|
|
} MOVE_FILE_DATA,*PMOVE_FILE_DATA;
|
|
typedef struct _MOVE_FILE_DATA32 {
|
|
UINT32 FileHandle;
|
|
LARGE_INTEGER StartingVcn;
|
|
LARGE_INTEGER StartingLcn;
|
|
DWORD ClusterCount;
|
|
} MOVE_FILE_DATA32,*PMOVE_FILE_DATA32;
|
|
typedef struct {
|
|
DWORD Restart;
|
|
SID Sid;
|
|
} FIND_BY_SID_DATA,*PFIND_BY_SID_DATA;
|
|
typedef struct {
|
|
DWORD NextEntryOffset;
|
|
DWORD FileIndex;
|
|
DWORD FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FIND_BY_SID_OUTPUT,*PFIND_BY_SID_OUTPUT;
|
|
typedef struct {
|
|
DWORDLONG StartFileReferenceNumber;
|
|
USN LowUsn;
|
|
USN HighUsn;
|
|
} MFT_ENUM_DATA,*PMFT_ENUM_DATA;
|
|
typedef struct {
|
|
DWORDLONG MaximumSize;
|
|
DWORDLONG AllocationDelta;
|
|
} CREATE_USN_JOURNAL_DATA,*PCREATE_USN_JOURNAL_DATA;
|
|
typedef struct {
|
|
USN StartUsn;
|
|
DWORD ReasonMask;
|
|
DWORD ReturnOnlyOnClose;
|
|
DWORDLONG Timeout;
|
|
DWORDLONG BytesToWaitFor;
|
|
DWORDLONG UsnJournalID;
|
|
} READ_USN_JOURNAL_DATA,*PREAD_USN_JOURNAL_DATA;
|
|
typedef struct {
|
|
DWORD RecordLength;
|
|
WORD MajorVersion;
|
|
WORD MinorVersion;
|
|
DWORDLONG FileReferenceNumber;
|
|
DWORDLONG ParentFileReferenceNumber;
|
|
USN Usn;
|
|
LARGE_INTEGER TimeStamp;
|
|
DWORD Reason;
|
|
DWORD SourceInfo;
|
|
DWORD SecurityId;
|
|
DWORD FileAttributes;
|
|
WORD FileNameLength;
|
|
WORD FileNameOffset;
|
|
WCHAR FileName[1];
|
|
} USN_RECORD,*PUSN_RECORD;
|
|
typedef struct {
|
|
DWORDLONG UsnJournalID;
|
|
USN FirstUsn;
|
|
USN NextUsn;
|
|
USN LowestValidUsn;
|
|
USN MaxUsn;
|
|
DWORDLONG MaximumSize;
|
|
DWORDLONG AllocationDelta;
|
|
} USN_JOURNAL_DATA,*PUSN_JOURNAL_DATA;
|
|
typedef struct {
|
|
DWORDLONG UsnJournalID;
|
|
DWORD DeleteFlags;
|
|
} DELETE_USN_JOURNAL_DATA,*PDELETE_USN_JOURNAL_DATA;
|
|
typedef struct {
|
|
DWORD UsnSourceInfo;
|
|
HANDLE VolumeHandle;
|
|
DWORD HandleInfo;
|
|
} MARK_HANDLE_INFO,*PMARK_HANDLE_INFO;
|
|
typedef struct {
|
|
DWORD UsnSourceInfo;
|
|
UINT32 VolumeHandle;
|
|
DWORD HandleInfo;
|
|
} MARK_HANDLE_INFO32,*PMARK_HANDLE_INFO32;
|
|
typedef struct {
|
|
ACCESS_MASK DesiredAccess;
|
|
DWORD SecurityIds[1];
|
|
} BULK_SECURITY_TEST_DATA,*PBULK_SECURITY_TEST_DATA;
|
|
typedef struct _FILE_PREFETCH {
|
|
DWORD Type;
|
|
DWORD Count;
|
|
DWORDLONG Prefetch[1];
|
|
} FILE_PREFETCH,*PFILE_PREFETCH;
|
|
typedef struct _FILESYSTEM_STATISTICS {
|
|
WORD FileSystemType;
|
|
WORD Version;
|
|
DWORD SizeOfCompleteStructure;
|
|
DWORD UserFileReads;
|
|
DWORD UserFileReadBytes;
|
|
DWORD UserDiskReads;
|
|
DWORD UserFileWrites;
|
|
DWORD UserFileWriteBytes;
|
|
DWORD UserDiskWrites;
|
|
DWORD MetaDataReads;
|
|
DWORD MetaDataReadBytes;
|
|
DWORD MetaDataDiskReads;
|
|
DWORD MetaDataWrites;
|
|
DWORD MetaDataWriteBytes;
|
|
DWORD MetaDataDiskWrites;
|
|
} FILESYSTEM_STATISTICS,*PFILESYSTEM_STATISTICS;
|
|
typedef struct _FAT_STATISTICS {
|
|
DWORD CreateHits;
|
|
DWORD SuccessfulCreates;
|
|
DWORD FailedCreates;
|
|
DWORD NonCachedReads;
|
|
DWORD NonCachedReadBytes;
|
|
DWORD NonCachedWrites;
|
|
DWORD NonCachedWriteBytes;
|
|
DWORD NonCachedDiskReads;
|
|
DWORD NonCachedDiskWrites;
|
|
} FAT_STATISTICS,*PFAT_STATISTICS;
|
|
typedef struct _EXFAT_STATISTICS {
|
|
DWORD CreateHits;
|
|
DWORD SuccessfulCreates;
|
|
DWORD FailedCreates;
|
|
DWORD NonCachedReads;
|
|
DWORD NonCachedReadBytes;
|
|
DWORD NonCachedWrites;
|
|
DWORD NonCachedWriteBytes;
|
|
DWORD NonCachedDiskReads;
|
|
DWORD NonCachedDiskWrites;
|
|
} EXFAT_STATISTICS, *PEXFAT_STATISTICS;
|
|
typedef struct _NTFS_STATISTICS {
|
|
DWORD LogFileFullExceptions;
|
|
DWORD OtherExceptions;
|
|
DWORD MftReads;
|
|
DWORD MftReadBytes;
|
|
DWORD MftWrites;
|
|
DWORD MftWriteBytes;
|
|
struct {
|
|
WORD Write;
|
|
WORD Create;
|
|
WORD SetInfo;
|
|
WORD Flush;
|
|
} MftWritesUserLevel;
|
|
WORD MftWritesFlushForLogFileFull;
|
|
WORD MftWritesLazyWriter;
|
|
WORD MftWritesUserRequest;
|
|
DWORD Mft2Writes;
|
|
DWORD Mft2WriteBytes;
|
|
struct {
|
|
WORD Write;
|
|
WORD Create;
|
|
WORD SetInfo;
|
|
WORD Flush;
|
|
} Mft2WritesUserLevel;
|
|
WORD Mft2WritesFlushForLogFileFull;
|
|
WORD Mft2WritesLazyWriter;
|
|
WORD Mft2WritesUserRequest;
|
|
DWORD RootIndexReads;
|
|
DWORD RootIndexReadBytes;
|
|
DWORD RootIndexWrites;
|
|
DWORD RootIndexWriteBytes;
|
|
DWORD BitmapReads;
|
|
DWORD BitmapReadBytes;
|
|
DWORD BitmapWrites;
|
|
DWORD BitmapWriteBytes;
|
|
WORD BitmapWritesFlushForLogFileFull;
|
|
WORD BitmapWritesLazyWriter;
|
|
WORD BitmapWritesUserRequest;
|
|
struct {
|
|
WORD Write;
|
|
WORD Create;
|
|
WORD SetInfo;
|
|
} BitmapWritesUserLevel;
|
|
DWORD MftBitmapReads;
|
|
DWORD MftBitmapReadBytes;
|
|
DWORD MftBitmapWrites;
|
|
DWORD MftBitmapWriteBytes;
|
|
WORD MftBitmapWritesFlushForLogFileFull;
|
|
WORD MftBitmapWritesLazyWriter;
|
|
WORD MftBitmapWritesUserRequest;
|
|
struct {
|
|
WORD Write;
|
|
WORD Create;
|
|
WORD SetInfo;
|
|
WORD Flush;
|
|
} MftBitmapWritesUserLevel;
|
|
DWORD UserIndexReads;
|
|
DWORD UserIndexReadBytes;
|
|
DWORD UserIndexWrites;
|
|
DWORD UserIndexWriteBytes;
|
|
DWORD LogFileReads;
|
|
DWORD LogFileReadBytes;
|
|
DWORD LogFileWrites;
|
|
DWORD LogFileWriteBytes;
|
|
struct {
|
|
DWORD Calls;
|
|
DWORD Clusters;
|
|
DWORD Hints;
|
|
DWORD RunsReturned;
|
|
DWORD HintsHonored;
|
|
DWORD HintsClusters;
|
|
DWORD Cache;
|
|
DWORD CacheClusters;
|
|
DWORD CacheMiss;
|
|
DWORD CacheMissClusters;
|
|
} Allocate;
|
|
} NTFS_STATISTICS,*PNTFS_STATISTICS;
|
|
typedef struct _FILE_OBJECTID_BUFFER {
|
|
BYTE ObjectId[16];
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
BYTE BirthVolumeId[16];
|
|
BYTE BirthObjectId[16];
|
|
BYTE DomainId[16];
|
|
} ;
|
|
BYTE ExtendedInfo[48];
|
|
} ;
|
|
} FILE_OBJECTID_BUFFER,*PFILE_OBJECTID_BUFFER;
|
|
typedef struct _FILE_SET_SPARSE_BUFFER {
|
|
BOOLEAN SetSparse;
|
|
} FILE_SET_SPARSE_BUFFER,*PFILE_SET_SPARSE_BUFFER;
|
|
typedef struct _FILE_ZERO_DATA_INFORMATION {
|
|
LARGE_INTEGER FileOffset;
|
|
LARGE_INTEGER BeyondFinalZero;
|
|
} FILE_ZERO_DATA_INFORMATION,*PFILE_ZERO_DATA_INFORMATION;
|
|
typedef struct _FILE_ALLOCATED_RANGE_BUFFER {
|
|
LARGE_INTEGER FileOffset;
|
|
LARGE_INTEGER Length;
|
|
} FILE_ALLOCATED_RANGE_BUFFER,*PFILE_ALLOCATED_RANGE_BUFFER;
|
|
typedef struct _ENCRYPTION_BUFFER {
|
|
DWORD EncryptionOperation;
|
|
BYTE Private[1];
|
|
} ENCRYPTION_BUFFER,*PENCRYPTION_BUFFER;
|
|
typedef struct _DECRYPTION_STATUS_BUFFER {
|
|
BOOLEAN NoEncryptedStreams;
|
|
} DECRYPTION_STATUS_BUFFER,*PDECRYPTION_STATUS_BUFFER;
|
|
typedef struct _REQUEST_RAW_ENCRYPTED_DATA {
|
|
LONGLONG FileOffset;
|
|
DWORD Length;
|
|
} REQUEST_RAW_ENCRYPTED_DATA,*PREQUEST_RAW_ENCRYPTED_DATA;
|
|
typedef struct _ENCRYPTED_DATA_INFO {
|
|
DWORDLONG StartingFileOffset;
|
|
DWORD OutputBufferOffset;
|
|
DWORD BytesWithinFileSize;
|
|
DWORD BytesWithinValidDataLength;
|
|
WORD CompressionFormat;
|
|
BYTE DataUnitShift;
|
|
BYTE ChunkShift;
|
|
BYTE ClusterShift;
|
|
BYTE EncryptionFormat;
|
|
WORD NumberOfDataBlocks;
|
|
DWORD DataBlockSize[1];
|
|
} ENCRYPTED_DATA_INFO;
|
|
typedef ENCRYPTED_DATA_INFO *PENCRYPTED_DATA_INFO;
|
|
typedef struct _PLEX_READ_DATA_REQUEST {
|
|
LARGE_INTEGER ByteOffset;
|
|
DWORD ByteLength;
|
|
DWORD PlexNumber;
|
|
} PLEX_READ_DATA_REQUEST,*PPLEX_READ_DATA_REQUEST;
|
|
typedef struct _SI_COPYFILE {
|
|
DWORD SourceFileNameLength;
|
|
DWORD DestinationFileNameLength;
|
|
DWORD Flags;
|
|
WCHAR FileNameBuffer[1];
|
|
} SI_COPYFILE,*PSI_COPYFILE;
|
|
typedef struct _STORAGE_DESCRIPTOR_HEADER {
|
|
DWORD Version;
|
|
DWORD Size;
|
|
} STORAGE_DESCRIPTOR_HEADER, *PSTORAGE_DESCRIPTOR_HEADER;
|
|
typedef enum _STORAGE_PROPERTY_ID {
|
|
StorageDeviceProperty = 0,
|
|
StorageAdapterProperty = 1,
|
|
StorageDeviceIdProperty = 2,
|
|
StorageDeviceUniqueIdProperty = 3,
|
|
StorageDeviceWriteCacheProperty = 4,
|
|
StorageMiniportProperty = 5,
|
|
StorageAccessAlignmentProperty = 6,
|
|
StorageDeviceSeekPenaltyProperty = 7,
|
|
StorageDeviceTrimProperty = 8
|
|
} STORAGE_PROPERTY_ID, *PSTORAGE_PROPERTY_ID;
|
|
typedef enum _STORAGE_QUERY_TYPE {
|
|
PropertyStandardQuery = 0,
|
|
PropertyExistsQuery = 1,
|
|
PropertyMaskQuery = 2,
|
|
PropertyQueryMaxDefined = 3
|
|
} STORAGE_QUERY_TYPE, *PSTORAGE_QUERY_TYPE;
|
|
typedef struct _STORAGE_PROPERTY_QUERY {
|
|
STORAGE_PROPERTY_ID PropertyId;
|
|
STORAGE_QUERY_TYPE QueryType;
|
|
BYTE AdditionalParameters[1];
|
|
} STORAGE_PROPERTY_QUERY, *PSTORAGE_PROPERTY_QUERY;
|
|
typedef struct _STORAGE_DEVICE_DESCRIPTOR {
|
|
DWORD Version;
|
|
DWORD Size;
|
|
BYTE DeviceType;
|
|
BYTE DeviceTypeModifier;
|
|
BOOLEAN RemovableMedia;
|
|
BOOLEAN CommandQueueing;
|
|
DWORD VendorIdOffset;
|
|
DWORD ProductIdOffset;
|
|
DWORD ProductRevisionOffset;
|
|
DWORD SerialNumberOffset;
|
|
STORAGE_BUS_TYPE BusType;
|
|
DWORD RawPropertiesLength;
|
|
BYTE RawDeviceProperties[1];
|
|
} STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;
|
|
typedef struct _STORAGE_ADAPTER_DESCRIPTOR {
|
|
DWORD Version;
|
|
DWORD Size;
|
|
DWORD MaximumTransferLength;
|
|
DWORD MaximumPhysicalPages;
|
|
DWORD AlignmentMask;
|
|
BOOLEAN AdapterUsesPio;
|
|
BOOLEAN AdapterScansDown;
|
|
BOOLEAN CommandQueueing;
|
|
BOOLEAN AcceleratedTransfer;
|
|
BYTE BusType;
|
|
WORD BusMajorVersion;
|
|
WORD BusMinorVersion;
|
|
} STORAGE_ADAPTER_DESCRIPTOR, *PSTORAGE_ADAPTER_DESCRIPTOR;
|
|
typedef struct _STORAGE_DEVICE_ID_DESCRIPTOR {
|
|
DWORD Version;
|
|
DWORD Size;
|
|
DWORD NumberOfIdentifiers;
|
|
BYTE Identifiers[1];
|
|
} STORAGE_DEVICE_ID_DESCRIPTOR, *PSTORAGE_DEVICE_ID_DESCRIPTOR;
|
|
typedef struct _VOLUME_GET_GPT_ATTRIBUTES_INFORMATION {
|
|
ULONGLONG GptAttributes;
|
|
} VOLUME_GET_GPT_ATTRIBUTES_INFORMATION, *PVOLUME_GET_GPT_ATTRIBUTES_INFORMATION;
|
|
typedef struct _DISK_EXTENT {
|
|
DWORD DiskNumber;
|
|
LARGE_INTEGER StartingOffset;
|
|
LARGE_INTEGER ExtentLength;
|
|
} DISK_EXTENT,*PDISK_EXTENT;
|
|
typedef struct _VOLUME_DISK_EXTENTS {
|
|
DWORD NumberOfDiskExtents;
|
|
DISK_EXTENT Extents[1];
|
|
} VOLUME_DISK_EXTENTS,*PVOLUME_DISK_EXTENTS;
|
|
typedef WORD UWORD;
|
|
typedef struct _SCARD_IO_REQUEST {
|
|
DWORD dwProtocol;
|
|
DWORD cbPciLength;
|
|
} SCARD_IO_REQUEST,*PSCARD_IO_REQUEST,*LPSCARD_IO_REQUEST;
|
|
typedef const SCARD_IO_REQUEST *LPCSCARD_IO_REQUEST;
|
|
typedef struct {
|
|
BYTE
|
|
bCla,bIns,bP1,bP2,bP3;
|
|
} SCARD_T0_COMMAND,*LPSCARD_T0_COMMAND;
|
|
typedef struct {
|
|
SCARD_IO_REQUEST ioRequest;
|
|
BYTE bSw1,bSw2;
|
|
__extension__ union {
|
|
SCARD_T0_COMMAND CmdBytes;
|
|
BYTE rgbHeader[5];
|
|
};
|
|
} SCARD_T0_REQUEST;
|
|
typedef SCARD_T0_REQUEST *PSCARD_T0_REQUEST,*LPSCARD_T0_REQUEST;
|
|
typedef struct {
|
|
SCARD_IO_REQUEST ioRequest;
|
|
} SCARD_T1_REQUEST;
|
|
typedef SCARD_T1_REQUEST *PSCARD_T1_REQUEST,*LPSCARD_T1_REQUEST;
|
|
typedef const BYTE *LPCBYTE;
|
|
__attribute__((dllimport)) extern const SCARD_IO_REQUEST g_rgSCardT0Pci,g_rgSCardT1Pci,g_rgSCardRawPci;
|
|
typedef ULONG_PTR SCARDCONTEXT;
|
|
typedef SCARDCONTEXT *PSCARDCONTEXT,*LPSCARDCONTEXT;
|
|
typedef ULONG_PTR SCARDHANDLE;
|
|
typedef SCARDHANDLE *PSCARDHANDLE,*LPSCARDHANDLE;
|
|
extern LONG SCardEstablishContext(DWORD dwScope,LPCVOID pvReserved1,LPCVOID pvReserved2,LPSCARDCONTEXT phContext);
|
|
extern LONG SCardReleaseContext(SCARDCONTEXT hContext);
|
|
extern LONG SCardIsValidContext(SCARDCONTEXT hContext);
|
|
extern LONG SCardListReaderGroupsA(SCARDCONTEXT hContext,LPSTR mszGroups,LPDWORD pcchGroups);
|
|
extern LONG SCardListReaderGroupsW(SCARDCONTEXT hContext,LPWSTR mszGroups,LPDWORD pcchGroups);
|
|
extern LONG SCardListReadersA(SCARDCONTEXT hContext,LPCSTR mszGroups,LPSTR mszReaders,LPDWORD pcchReaders);
|
|
extern LONG SCardListReadersW(SCARDCONTEXT hContext,LPCWSTR mszGroups,LPWSTR mszReaders,LPDWORD pcchReaders);
|
|
extern LONG SCardListCardsA(SCARDCONTEXT hContext,LPCBYTE pbAtr,LPCGUID rgquidInterfaces,DWORD cguidInterfaceCount,LPSTR mszCards,LPDWORD pcchCards);
|
|
extern LONG SCardListCardsW(SCARDCONTEXT hContext,LPCBYTE pbAtr,LPCGUID rgquidInterfaces,DWORD cguidInterfaceCount,LPWSTR mszCards,LPDWORD pcchCards);
|
|
extern LONG SCardListInterfacesA(SCARDCONTEXT hContext,LPCSTR szCard,LPGUID pguidInterfaces,LPDWORD pcguidInterfaces);
|
|
extern LONG SCardListInterfacesW(SCARDCONTEXT hContext,LPCWSTR szCard,LPGUID pguidInterfaces,LPDWORD pcguidInterfaces);
|
|
extern LONG SCardGetProviderIdA(SCARDCONTEXT hContext,LPCSTR szCard,LPGUID pguidProviderId);
|
|
extern LONG SCardGetProviderIdW(SCARDCONTEXT hContext,LPCWSTR szCard,LPGUID pguidProviderId);
|
|
extern LONG SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext,LPCSTR szCardName,DWORD dwProviderId,LPSTR szProvider,LPDWORD pcchProvider);
|
|
extern LONG SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext,LPCWSTR szCardName,DWORD dwProviderId,LPWSTR szProvider,LPDWORD pcchProvider);
|
|
extern LONG SCardIntroduceReaderGroupA(SCARDCONTEXT hContext,LPCSTR szGroupName);
|
|
extern LONG SCardIntroduceReaderGroupW(SCARDCONTEXT hContext,LPCWSTR szGroupName);
|
|
extern LONG SCardForgetReaderGroupA(SCARDCONTEXT hContext,LPCSTR szGroupName);
|
|
extern LONG SCardForgetReaderGroupW(SCARDCONTEXT hContext,LPCWSTR szGroupName);
|
|
extern LONG SCardIntroduceReaderA(SCARDCONTEXT hContext,LPCSTR szReaderName,LPCSTR szDeviceName);
|
|
extern LONG SCardIntroduceReaderW(SCARDCONTEXT hContext,LPCWSTR szReaderName,LPCWSTR szDeviceName);
|
|
extern LONG SCardForgetReaderA(SCARDCONTEXT hContext,LPCSTR szReaderName);
|
|
extern LONG SCardForgetReaderW(SCARDCONTEXT hContext,LPCWSTR szReaderName);
|
|
extern LONG SCardAddReaderToGroupA(SCARDCONTEXT hContext,LPCSTR szReaderName,LPCSTR szGroupName);
|
|
extern LONG SCardAddReaderToGroupW(SCARDCONTEXT hContext,LPCWSTR szReaderName,LPCWSTR szGroupName);
|
|
extern LONG SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext,LPCSTR szReaderName,LPCSTR szGroupName);
|
|
extern LONG SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext,LPCWSTR szReaderName,LPCWSTR szGroupName);
|
|
extern LONG SCardIntroduceCardTypeA(SCARDCONTEXT hContext,LPCSTR szCardName,LPCGUID pguidPrimaryProvider,LPCGUID rgguidInterfaces,DWORD dwInterfaceCount,LPCBYTE pbAtr,LPCBYTE pbAtrMask,DWORD cbAtrLen);
|
|
extern LONG SCardIntroduceCardTypeW(SCARDCONTEXT hContext,LPCWSTR szCardName,LPCGUID pguidPrimaryProvider,LPCGUID rgguidInterfaces,DWORD dwInterfaceCount,LPCBYTE pbAtr,LPCBYTE pbAtrMask,DWORD cbAtrLen);
|
|
extern LONG SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext,LPCSTR szCardName,DWORD dwProviderId,LPCSTR szProvider);
|
|
extern LONG SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext,LPCWSTR szCardName,DWORD dwProviderId,LPCWSTR szProvider);
|
|
extern LONG SCardForgetCardTypeA(SCARDCONTEXT hContext,LPCSTR szCardName);
|
|
extern LONG SCardForgetCardTypeW(SCARDCONTEXT hContext,LPCWSTR szCardName);
|
|
extern LONG SCardFreeMemory(SCARDCONTEXT hContext,LPCVOID pvMem);
|
|
extern HANDLE SCardAccessStartedEvent(void);
|
|
extern void SCardReleaseStartedEvent(void);
|
|
typedef struct {
|
|
LPCSTR szReader;
|
|
LPVOID pvUserData;
|
|
DWORD dwCurrentState;
|
|
DWORD dwEventState;
|
|
DWORD cbAtr;
|
|
BYTE rgbAtr[36];
|
|
} SCARD_READERSTATEA,*PSCARD_READERSTATEA,*LPSCARD_READERSTATEA;
|
|
typedef struct {
|
|
LPCWSTR szReader;
|
|
LPVOID pvUserData;
|
|
DWORD dwCurrentState;
|
|
DWORD dwEventState;
|
|
DWORD cbAtr;
|
|
BYTE rgbAtr[36];
|
|
} SCARD_READERSTATEW,*PSCARD_READERSTATEW,*LPSCARD_READERSTATEW;
|
|
typedef SCARD_READERSTATEA SCARD_READERSTATE;
|
|
typedef PSCARD_READERSTATEA PSCARD_READERSTATE;
|
|
typedef LPSCARD_READERSTATEA LPSCARD_READERSTATE;
|
|
extern LONG SCardLocateCardsA(SCARDCONTEXT hContext,LPCSTR mszCards,LPSCARD_READERSTATEA rgReaderStates,DWORD cReaders);
|
|
extern LONG SCardLocateCardsW(SCARDCONTEXT hContext,LPCWSTR mszCards,LPSCARD_READERSTATEW rgReaderStates,DWORD cReaders);
|
|
typedef struct _SCARD_ATRMASK {
|
|
DWORD cbAtr;
|
|
BYTE rgbAtr[36];
|
|
BYTE rgbMask[36];
|
|
} SCARD_ATRMASK,*PSCARD_ATRMASK,*LPSCARD_ATRMASK;
|
|
extern LONG SCardLocateCardsByATRA(SCARDCONTEXT hContext,LPSCARD_ATRMASK rgAtrMasks,DWORD cAtrs,LPSCARD_READERSTATEA rgReaderStates,DWORD cReaders);
|
|
extern LONG SCardLocateCardsByATRW(SCARDCONTEXT hContext,LPSCARD_ATRMASK rgAtrMasks,DWORD cAtrs,LPSCARD_READERSTATEW rgReaderStates,DWORD cReaders);
|
|
extern LONG SCardGetStatusChangeA(SCARDCONTEXT hContext,DWORD dwTimeout,LPSCARD_READERSTATEA rgReaderStates,DWORD cReaders);
|
|
extern LONG SCardGetStatusChangeW(SCARDCONTEXT hContext,DWORD dwTimeout,LPSCARD_READERSTATEW rgReaderStates,DWORD cReaders);
|
|
extern LONG SCardCancel(SCARDCONTEXT hContext);
|
|
extern LONG SCardConnectA(SCARDCONTEXT hContext,LPCSTR szReader,DWORD dwShareMode,DWORD dwPreferredProtocols,LPSCARDHANDLE phCard,LPDWORD pdwActiveProtocol);
|
|
extern LONG SCardConnectW(SCARDCONTEXT hContext,LPCWSTR szReader,DWORD dwShareMode,DWORD dwPreferredProtocols,LPSCARDHANDLE phCard,LPDWORD pdwActiveProtocol);
|
|
extern LONG SCardReconnect(SCARDHANDLE hCard,DWORD dwShareMode,DWORD dwPreferredProtocols,DWORD dwInitialization,LPDWORD pdwActiveProtocol);
|
|
extern LONG SCardDisconnect(SCARDHANDLE hCard,DWORD dwDisposition);
|
|
extern LONG SCardBeginTransaction(SCARDHANDLE hCard);
|
|
extern LONG SCardEndTransaction(SCARDHANDLE hCard,DWORD dwDisposition);
|
|
extern LONG SCardCancelTransaction(SCARDHANDLE hCard);
|
|
extern LONG SCardState(SCARDHANDLE hCard,LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbAtrLen);
|
|
extern LONG SCardStatusA(SCARDHANDLE hCard,LPSTR szReaderName,LPDWORD pcchReaderLen,LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbAtrLen);
|
|
extern LONG SCardStatusW(SCARDHANDLE hCard,LPWSTR szReaderName,LPDWORD pcchReaderLen,LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbAtrLen);
|
|
extern LONG SCardTransmit(SCARDHANDLE hCard,LPCSCARD_IO_REQUEST pioSendPci,LPCBYTE pbSendBuffer,DWORD cbSendLength,LPSCARD_IO_REQUEST pioRecvPci,LPBYTE pbRecvBuffer,LPDWORD pcbRecvLength);
|
|
extern LONG SCardControl(SCARDHANDLE hCard,DWORD dwControlCode,LPCVOID lpInBuffer,DWORD nInBufferSize,LPVOID lpOutBuffer,DWORD nOutBufferSize,LPDWORD lpBytesReturned);
|
|
extern LONG SCardGetAttrib(SCARDHANDLE hCard,DWORD dwAttrId,LPBYTE pbAttr,LPDWORD pcbAttrLen);
|
|
extern LONG SCardSetAttrib(SCARDHANDLE hCard,DWORD dwAttrId,LPCBYTE pbAttr,DWORD cbAttrLen);
|
|
typedef SCARDHANDLE ( *LPOCNCONNPROCA) (SCARDCONTEXT,LPSTR,LPSTR,PVOID);
|
|
typedef SCARDHANDLE ( *LPOCNCONNPROCW) (SCARDCONTEXT,LPWSTR,LPWSTR,PVOID);
|
|
typedef WINBOOL ( *LPOCNCHKPROC) (SCARDCONTEXT,SCARDHANDLE,PVOID);
|
|
typedef void ( *LPOCNDSCPROC) (SCARDCONTEXT,SCARDHANDLE,PVOID);
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
LPSTR lpstrGroupNames;
|
|
DWORD nMaxGroupNames;
|
|
LPCGUID rgguidInterfaces;
|
|
DWORD cguidInterfaces;
|
|
LPSTR lpstrCardNames;
|
|
DWORD nMaxCardNames;
|
|
LPOCNCHKPROC lpfnCheck;
|
|
LPOCNCONNPROCA lpfnConnect;
|
|
LPOCNDSCPROC lpfnDisconnect;
|
|
LPVOID pvUserData;
|
|
DWORD dwShareMode;
|
|
DWORD dwPreferredProtocols;
|
|
} OPENCARD_SEARCH_CRITERIAA,*POPENCARD_SEARCH_CRITERIAA,*LPOPENCARD_SEARCH_CRITERIAA;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
LPWSTR lpstrGroupNames;
|
|
DWORD nMaxGroupNames;
|
|
LPCGUID rgguidInterfaces;
|
|
DWORD cguidInterfaces;
|
|
LPWSTR lpstrCardNames;
|
|
DWORD nMaxCardNames;
|
|
LPOCNCHKPROC lpfnCheck;
|
|
LPOCNCONNPROCW lpfnConnect;
|
|
LPOCNDSCPROC lpfnDisconnect;
|
|
LPVOID pvUserData;
|
|
DWORD dwShareMode;
|
|
DWORD dwPreferredProtocols;
|
|
} OPENCARD_SEARCH_CRITERIAW,*POPENCARD_SEARCH_CRITERIAW,*LPOPENCARD_SEARCH_CRITERIAW;
|
|
typedef OPENCARD_SEARCH_CRITERIAA OPENCARD_SEARCH_CRITERIA;
|
|
typedef POPENCARD_SEARCH_CRITERIAA POPENCARD_SEARCH_CRITERIA;
|
|
typedef LPOPENCARD_SEARCH_CRITERIAA LPOPENCARD_SEARCH_CRITERIA;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
SCARDCONTEXT hSCardContext;
|
|
HWND hwndOwner;
|
|
DWORD dwFlags;
|
|
LPCSTR lpstrTitle;
|
|
LPCSTR lpstrSearchDesc;
|
|
HICON hIcon;
|
|
POPENCARD_SEARCH_CRITERIAA pOpenCardSearchCriteria;
|
|
LPOCNCONNPROCA lpfnConnect;
|
|
LPVOID pvUserData;
|
|
DWORD dwShareMode;
|
|
DWORD dwPreferredProtocols;
|
|
LPSTR lpstrRdr;
|
|
DWORD nMaxRdr;
|
|
LPSTR lpstrCard;
|
|
DWORD nMaxCard;
|
|
DWORD dwActiveProtocol;
|
|
SCARDHANDLE hCardHandle;
|
|
} OPENCARDNAME_EXA,*POPENCARDNAME_EXA,*LPOPENCARDNAME_EXA;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
SCARDCONTEXT hSCardContext;
|
|
HWND hwndOwner;
|
|
DWORD dwFlags;
|
|
LPCWSTR lpstrTitle;
|
|
LPCWSTR lpstrSearchDesc;
|
|
HICON hIcon;
|
|
POPENCARD_SEARCH_CRITERIAW pOpenCardSearchCriteria;
|
|
LPOCNCONNPROCW lpfnConnect;
|
|
LPVOID pvUserData;
|
|
DWORD dwShareMode;
|
|
DWORD dwPreferredProtocols;
|
|
LPWSTR lpstrRdr;
|
|
DWORD nMaxRdr;
|
|
LPWSTR lpstrCard;
|
|
DWORD nMaxCard;
|
|
DWORD dwActiveProtocol;
|
|
SCARDHANDLE hCardHandle;
|
|
} OPENCARDNAME_EXW,*POPENCARDNAME_EXW,*LPOPENCARDNAME_EXW;
|
|
typedef OPENCARDNAME_EXA OPENCARDNAME_EX;
|
|
typedef POPENCARDNAME_EXA POPENCARDNAME_EX;
|
|
typedef LPOPENCARDNAME_EXA LPOPENCARDNAME_EX;
|
|
extern LONG SCardUIDlgSelectCardA(LPOPENCARDNAME_EXA);
|
|
extern LONG SCardUIDlgSelectCardW(LPOPENCARDNAME_EXW);
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
HWND hwndOwner;
|
|
SCARDCONTEXT hSCardContext;
|
|
LPSTR lpstrGroupNames;
|
|
DWORD nMaxGroupNames;
|
|
LPSTR lpstrCardNames;
|
|
DWORD nMaxCardNames;
|
|
LPCGUID rgguidInterfaces;
|
|
DWORD cguidInterfaces;
|
|
LPSTR lpstrRdr;
|
|
DWORD nMaxRdr;
|
|
LPSTR lpstrCard;
|
|
DWORD nMaxCard;
|
|
LPCSTR lpstrTitle;
|
|
DWORD dwFlags;
|
|
LPVOID pvUserData;
|
|
DWORD dwShareMode;
|
|
DWORD dwPreferredProtocols;
|
|
DWORD dwActiveProtocol;
|
|
LPOCNCONNPROCA lpfnConnect;
|
|
LPOCNCHKPROC lpfnCheck;
|
|
LPOCNDSCPROC lpfnDisconnect;
|
|
SCARDHANDLE hCardHandle;
|
|
} OPENCARDNAMEA,*POPENCARDNAMEA,*LPOPENCARDNAMEA;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
HWND hwndOwner;
|
|
SCARDCONTEXT hSCardContext;
|
|
LPWSTR lpstrGroupNames;
|
|
DWORD nMaxGroupNames;
|
|
LPWSTR lpstrCardNames;
|
|
DWORD nMaxCardNames;
|
|
LPCGUID rgguidInterfaces;
|
|
DWORD cguidInterfaces;
|
|
LPWSTR lpstrRdr;
|
|
DWORD nMaxRdr;
|
|
LPWSTR lpstrCard;
|
|
DWORD nMaxCard;
|
|
LPCWSTR lpstrTitle;
|
|
DWORD dwFlags;
|
|
LPVOID pvUserData;
|
|
DWORD dwShareMode;
|
|
DWORD dwPreferredProtocols;
|
|
DWORD dwActiveProtocol;
|
|
LPOCNCONNPROCW lpfnConnect;
|
|
LPOCNCHKPROC lpfnCheck;
|
|
LPOCNDSCPROC lpfnDisconnect;
|
|
SCARDHANDLE hCardHandle;
|
|
} OPENCARDNAMEW,*POPENCARDNAMEW,*LPOPENCARDNAMEW;
|
|
typedef OPENCARDNAMEA OPENCARDNAME;
|
|
typedef POPENCARDNAMEA POPENCARDNAME;
|
|
typedef LPOPENCARDNAMEA LPOPENCARDNAME;
|
|
extern LONG GetOpenCardNameA(LPOPENCARDNAMEA);
|
|
extern LONG GetOpenCardNameW(LPOPENCARDNAMEW);
|
|
extern LONG SCardDlgExtendedError(void);
|
|
#pragma pack(push,8)
|
|
struct _PSP;
|
|
struct _PROPSHEETPAGEA;
|
|
struct _PROPSHEETPAGEW;
|
|
typedef struct _PSP *HPROPSHEETPAGE;
|
|
typedef UINT ( *LPFNPSPCALLBACKA)(HWND hwnd,UINT uMsg,struct _PROPSHEETPAGEA *ppsp);
|
|
typedef UINT ( *LPFNPSPCALLBACKW)(HWND hwnd,UINT uMsg,struct _PROPSHEETPAGEW *ppsp);
|
|
typedef LPCDLGTEMPLATE PROPSHEETPAGE_RESOURCE;
|
|
typedef struct _PROPSHEETPAGEA_V1 {
|
|
DWORD dwSize,dwFlags; HINSTANCE hInstance; __extension__ union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
|
|
} PROPSHEETPAGEA_V1,*LPPROPSHEETPAGEA_V1;
|
|
typedef const PROPSHEETPAGEA_V1 *LPCPROPSHEETPAGEA_V1;
|
|
typedef struct _PROPSHEETPAGEA_V2 {
|
|
DWORD dwSize,dwFlags; HINSTANCE hInstance; __extension__ union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
|
|
LPCSTR pszHeaderTitle;
|
|
LPCSTR pszHeaderSubTitle;
|
|
} PROPSHEETPAGEA_V2,*LPPROPSHEETPAGEA_V2;
|
|
typedef const PROPSHEETPAGEA_V2 *LPCPROPSHEETPAGEA_V2;
|
|
typedef struct _PROPSHEETPAGEA {
|
|
DWORD dwSize,dwFlags; HINSTANCE hInstance; __extension__ union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
|
|
LPCSTR pszHeaderTitle;
|
|
LPCSTR pszHeaderSubTitle;
|
|
HANDLE hActCtx;
|
|
} PROPSHEETPAGEA_V3,*LPPROPSHEETPAGEA_V3;
|
|
typedef const PROPSHEETPAGEA_V3 *LPCPROPSHEETPAGEA_V3;
|
|
typedef struct _PROPSHEETPAGEW_V1 {
|
|
DWORD dwSize, dwFlags; HINSTANCE hInstance; __extension__ union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
|
|
} PROPSHEETPAGEW_V1,*LPPROPSHEETPAGEW_V1;
|
|
typedef const PROPSHEETPAGEW_V1 *LPCPROPSHEETPAGEW_V1;
|
|
typedef struct _PROPSHEETPAGEW_V2 {
|
|
DWORD dwSize, dwFlags; HINSTANCE hInstance; __extension__ union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
|
|
LPCWSTR pszHeaderTitle;
|
|
LPCWSTR pszHeaderSubTitle;
|
|
} PROPSHEETPAGEW_V2,*LPPROPSHEETPAGEW_V2;
|
|
typedef const PROPSHEETPAGEW_V2 *LPCPROPSHEETPAGEW_V2;
|
|
typedef struct _PROPSHEETPAGEW {
|
|
DWORD dwSize, dwFlags; HINSTANCE hInstance; __extension__ union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; __extension__ union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
|
|
LPCWSTR pszHeaderTitle;
|
|
LPCWSTR pszHeaderSubTitle;
|
|
HANDLE hActCtx;
|
|
} PROPSHEETPAGEW_V3,*LPPROPSHEETPAGEW_V3;
|
|
typedef const PROPSHEETPAGEW_V3 *LPCPROPSHEETPAGEW_V3;
|
|
typedef PROPSHEETPAGEA_V3 PROPSHEETPAGEA_LATEST;
|
|
typedef PROPSHEETPAGEW_V3 PROPSHEETPAGEW_LATEST;
|
|
typedef LPPROPSHEETPAGEA_V3 LPPROPSHEETPAGEA_LATEST;
|
|
typedef LPPROPSHEETPAGEW_V3 LPPROPSHEETPAGEW_LATEST;
|
|
typedef LPCPROPSHEETPAGEA_V3 LPCPROPSHEETPAGEA_LATEST;
|
|
typedef LPCPROPSHEETPAGEW_V3 LPCPROPSHEETPAGEW_LATEST;
|
|
typedef PROPSHEETPAGEA_V3 PROPSHEETPAGEA;
|
|
typedef PROPSHEETPAGEW_V3 PROPSHEETPAGEW;
|
|
typedef LPPROPSHEETPAGEA_V3 LPPROPSHEETPAGEA;
|
|
typedef LPPROPSHEETPAGEW_V3 LPPROPSHEETPAGEW;
|
|
typedef LPCPROPSHEETPAGEA_V3 LPCPROPSHEETPAGEA;
|
|
typedef LPCPROPSHEETPAGEW_V3 LPCPROPSHEETPAGEW;
|
|
typedef int ( *PFNPROPSHEETCALLBACK)(HWND,UINT,LPARAM);
|
|
typedef struct _PROPSHEETHEADERA {
|
|
DWORD dwSize;
|
|
DWORD dwFlags;
|
|
HWND hwndParent;
|
|
HINSTANCE hInstance;
|
|
__extension__ union {
|
|
HICON hIcon;
|
|
LPCSTR pszIcon;
|
|
} ;
|
|
LPCSTR pszCaption;
|
|
UINT nPages;
|
|
__extension__ union {
|
|
UINT nStartPage;
|
|
LPCSTR pStartPage;
|
|
} ;
|
|
__extension__ union {
|
|
LPCPROPSHEETPAGEA ppsp;
|
|
HPROPSHEETPAGE *phpage;
|
|
} ;
|
|
PFNPROPSHEETCALLBACK pfnCallback;
|
|
__extension__ union {
|
|
HBITMAP hbmWatermark;
|
|
LPCSTR pszbmWatermark;
|
|
} ;
|
|
HPALETTE hplWatermark;
|
|
__extension__ union {
|
|
HBITMAP hbmHeader;
|
|
LPCSTR pszbmHeader;
|
|
} ;
|
|
} PROPSHEETHEADERA,*LPPROPSHEETHEADERA;
|
|
typedef const PROPSHEETHEADERA *LPCPROPSHEETHEADERA;
|
|
typedef struct _PROPSHEETHEADERW {
|
|
DWORD dwSize;
|
|
DWORD dwFlags;
|
|
HWND hwndParent;
|
|
HINSTANCE hInstance;
|
|
__extension__ union {
|
|
HICON hIcon;
|
|
LPCWSTR pszIcon;
|
|
} ;
|
|
LPCWSTR pszCaption;
|
|
UINT nPages;
|
|
__extension__ union {
|
|
UINT nStartPage;
|
|
LPCWSTR pStartPage;
|
|
} ;
|
|
__extension__ union {
|
|
LPCPROPSHEETPAGEW ppsp;
|
|
HPROPSHEETPAGE *phpage;
|
|
} ;
|
|
PFNPROPSHEETCALLBACK pfnCallback;
|
|
__extension__ union {
|
|
HBITMAP hbmWatermark;
|
|
LPCWSTR pszbmWatermark;
|
|
} ;
|
|
HPALETTE hplWatermark;
|
|
__extension__ union {
|
|
HBITMAP hbmHeader;
|
|
LPCWSTR pszbmHeader;
|
|
} ;
|
|
} PROPSHEETHEADERW,*LPPROPSHEETHEADERW;
|
|
typedef const PROPSHEETHEADERW *LPCPROPSHEETHEADERW;
|
|
__attribute__((dllimport)) HPROPSHEETPAGE CreatePropertySheetPageA(LPCPROPSHEETPAGEA constPropSheetPagePointer);
|
|
__attribute__((dllimport)) HPROPSHEETPAGE CreatePropertySheetPageW(LPCPROPSHEETPAGEW constPropSheetPagePointer);
|
|
__attribute__((dllimport)) WINBOOL DestroyPropertySheetPage(HPROPSHEETPAGE);
|
|
__attribute__((dllimport)) INT_PTR PropertySheetA(LPCPROPSHEETHEADERA);
|
|
__attribute__((dllimport)) INT_PTR PropertySheetW(LPCPROPSHEETHEADERW);
|
|
typedef WINBOOL ( *LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE,LPARAM);
|
|
typedef WINBOOL ( *LPFNADDPROPSHEETPAGES)(LPVOID,LPFNADDPROPSHEETPAGE,LPARAM);
|
|
typedef struct _PSHNOTIFY {
|
|
NMHDR hdr;
|
|
LPARAM lParam;
|
|
} PSHNOTIFY,*LPPSHNOTIFY;
|
|
#pragma pack(pop)
|
|
typedef struct _PRINTER_INFO_1A {
|
|
DWORD Flags;
|
|
LPSTR pDescription;
|
|
LPSTR pName;
|
|
LPSTR pComment;
|
|
} PRINTER_INFO_1A,*PPRINTER_INFO_1A,*LPPRINTER_INFO_1A;
|
|
typedef struct _PRINTER_INFO_1W {
|
|
DWORD Flags;
|
|
LPWSTR pDescription;
|
|
LPWSTR pName;
|
|
LPWSTR pComment;
|
|
} PRINTER_INFO_1W,*PPRINTER_INFO_1W,*LPPRINTER_INFO_1W;
|
|
typedef PRINTER_INFO_1A PRINTER_INFO_1;
|
|
typedef PPRINTER_INFO_1A PPRINTER_INFO_1;
|
|
typedef LPPRINTER_INFO_1A LPPRINTER_INFO_1;
|
|
typedef struct _PRINTER_INFO_2A {
|
|
LPSTR pServerName;
|
|
LPSTR pPrinterName;
|
|
LPSTR pShareName;
|
|
LPSTR pPortName;
|
|
LPSTR pDriverName;
|
|
LPSTR pComment;
|
|
LPSTR pLocation;
|
|
LPDEVMODEA pDevMode;
|
|
LPSTR pSepFile;
|
|
LPSTR pPrintProcessor;
|
|
LPSTR pDatatype;
|
|
LPSTR pParameters;
|
|
PSECURITY_DESCRIPTOR pSecurityDescriptor;
|
|
DWORD Attributes;
|
|
DWORD Priority;
|
|
DWORD DefaultPriority;
|
|
DWORD StartTime;
|
|
DWORD UntilTime;
|
|
DWORD Status;
|
|
DWORD cJobs;
|
|
DWORD AveragePPM;
|
|
} PRINTER_INFO_2A,*PPRINTER_INFO_2A,*LPPRINTER_INFO_2A;
|
|
typedef struct _PRINTER_INFO_2W {
|
|
LPWSTR pServerName;
|
|
LPWSTR pPrinterName;
|
|
LPWSTR pShareName;
|
|
LPWSTR pPortName;
|
|
LPWSTR pDriverName;
|
|
LPWSTR pComment;
|
|
LPWSTR pLocation;
|
|
LPDEVMODEW pDevMode;
|
|
LPWSTR pSepFile;
|
|
LPWSTR pPrintProcessor;
|
|
LPWSTR pDatatype;
|
|
LPWSTR pParameters;
|
|
PSECURITY_DESCRIPTOR pSecurityDescriptor;
|
|
DWORD Attributes;
|
|
DWORD Priority;
|
|
DWORD DefaultPriority;
|
|
DWORD StartTime;
|
|
DWORD UntilTime;
|
|
DWORD Status;
|
|
DWORD cJobs;
|
|
DWORD AveragePPM;
|
|
} PRINTER_INFO_2W,*PPRINTER_INFO_2W,*LPPRINTER_INFO_2W;
|
|
typedef PRINTER_INFO_2A PRINTER_INFO_2;
|
|
typedef PPRINTER_INFO_2A PPRINTER_INFO_2;
|
|
typedef LPPRINTER_INFO_2A LPPRINTER_INFO_2;
|
|
typedef struct _PRINTER_INFO_3 {
|
|
PSECURITY_DESCRIPTOR pSecurityDescriptor;
|
|
} PRINTER_INFO_3,*PPRINTER_INFO_3,*LPPRINTER_INFO_3;
|
|
typedef struct _PRINTER_INFO_4A {
|
|
LPSTR pPrinterName;
|
|
LPSTR pServerName;
|
|
DWORD Attributes;
|
|
} PRINTER_INFO_4A,*PPRINTER_INFO_4A,*LPPRINTER_INFO_4A;
|
|
typedef struct _PRINTER_INFO_4W {
|
|
LPWSTR pPrinterName;
|
|
LPWSTR pServerName;
|
|
DWORD Attributes;
|
|
} PRINTER_INFO_4W,*PPRINTER_INFO_4W,*LPPRINTER_INFO_4W;
|
|
typedef PRINTER_INFO_4A PRINTER_INFO_4;
|
|
typedef PPRINTER_INFO_4A PPRINTER_INFO_4;
|
|
typedef LPPRINTER_INFO_4A LPPRINTER_INFO_4;
|
|
typedef struct _PRINTER_INFO_5A {
|
|
LPSTR pPrinterName;
|
|
LPSTR pPortName;
|
|
DWORD Attributes;
|
|
DWORD DeviceNotSelectedTimeout;
|
|
DWORD TransmissionRetryTimeout;
|
|
} PRINTER_INFO_5A,*PPRINTER_INFO_5A,*LPPRINTER_INFO_5A;
|
|
typedef struct _PRINTER_INFO_5W {
|
|
LPWSTR pPrinterName;
|
|
LPWSTR pPortName;
|
|
DWORD Attributes;
|
|
DWORD DeviceNotSelectedTimeout;
|
|
DWORD TransmissionRetryTimeout;
|
|
} PRINTER_INFO_5W,*PPRINTER_INFO_5W,*LPPRINTER_INFO_5W;
|
|
typedef PRINTER_INFO_5A PRINTER_INFO_5;
|
|
typedef PPRINTER_INFO_5A PPRINTER_INFO_5;
|
|
typedef LPPRINTER_INFO_5A LPPRINTER_INFO_5;
|
|
typedef struct _PRINTER_INFO_6 {
|
|
DWORD dwStatus;
|
|
} PRINTER_INFO_6,*PPRINTER_INFO_6,*LPPRINTER_INFO_6;
|
|
typedef struct _PRINTER_INFO_7A {
|
|
LPSTR pszObjectGUID;
|
|
DWORD dwAction;
|
|
} PRINTER_INFO_7A,*PPRINTER_INFO_7A,*LPPRINTER_INFO_7A;
|
|
typedef struct _PRINTER_INFO_7W {
|
|
LPWSTR pszObjectGUID;
|
|
DWORD dwAction;
|
|
} PRINTER_INFO_7W,*PPRINTER_INFO_7W,*LPPRINTER_INFO_7W;
|
|
typedef PRINTER_INFO_7A PRINTER_INFO_7;
|
|
typedef PPRINTER_INFO_7A PPRINTER_INFO_7;
|
|
typedef LPPRINTER_INFO_7A LPPRINTER_INFO_7;
|
|
typedef struct _PRINTER_INFO_8A {
|
|
LPDEVMODEA pDevMode;
|
|
} PRINTER_INFO_8A,*PPRINTER_INFO_8A,*LPPRINTER_INFO_8A;
|
|
typedef struct _PRINTER_INFO_8W {
|
|
LPDEVMODEW pDevMode;
|
|
} PRINTER_INFO_8W,*PPRINTER_INFO_8W,*LPPRINTER_INFO_8W;
|
|
typedef PRINTER_INFO_8A PRINTER_INFO_8;
|
|
typedef PPRINTER_INFO_8A PPRINTER_INFO_8;
|
|
typedef LPPRINTER_INFO_8A LPPRINTER_INFO_8;
|
|
typedef struct _PRINTER_INFO_9A {
|
|
LPDEVMODEA pDevMode;
|
|
} PRINTER_INFO_9A,*PPRINTER_INFO_9A,*LPPRINTER_INFO_9A;
|
|
typedef struct _PRINTER_INFO_9W {
|
|
LPDEVMODEW pDevMode;
|
|
} PRINTER_INFO_9W,*PPRINTER_INFO_9W,*LPPRINTER_INFO_9W;
|
|
typedef PRINTER_INFO_9A PRINTER_INFO_9;
|
|
typedef PPRINTER_INFO_9A PPRINTER_INFO_9;
|
|
typedef LPPRINTER_INFO_9A LPPRINTER_INFO_9;
|
|
typedef struct _JOB_INFO_1A {
|
|
DWORD JobId;
|
|
LPSTR pPrinterName;
|
|
LPSTR pMachineName;
|
|
LPSTR pUserName;
|
|
LPSTR pDocument;
|
|
LPSTR pDatatype;
|
|
LPSTR pStatus;
|
|
DWORD Status;
|
|
DWORD Priority;
|
|
DWORD Position;
|
|
DWORD TotalPages;
|
|
DWORD PagesPrinted;
|
|
SYSTEMTIME Submitted;
|
|
} JOB_INFO_1A,*PJOB_INFO_1A,*LPJOB_INFO_1A;
|
|
typedef struct _JOB_INFO_1W {
|
|
DWORD JobId;
|
|
LPWSTR pPrinterName;
|
|
LPWSTR pMachineName;
|
|
LPWSTR pUserName;
|
|
LPWSTR pDocument;
|
|
LPWSTR pDatatype;
|
|
LPWSTR pStatus;
|
|
DWORD Status;
|
|
DWORD Priority;
|
|
DWORD Position;
|
|
DWORD TotalPages;
|
|
DWORD PagesPrinted;
|
|
SYSTEMTIME Submitted;
|
|
} JOB_INFO_1W,*PJOB_INFO_1W,*LPJOB_INFO_1W;
|
|
typedef JOB_INFO_1A JOB_INFO_1;
|
|
typedef PJOB_INFO_1A PJOB_INFO_1;
|
|
typedef LPJOB_INFO_1A LPJOB_INFO_1;
|
|
typedef struct _JOB_INFO_2A {
|
|
DWORD JobId;
|
|
LPSTR pPrinterName;
|
|
LPSTR pMachineName;
|
|
LPSTR pUserName;
|
|
LPSTR pDocument;
|
|
LPSTR pNotifyName;
|
|
LPSTR pDatatype;
|
|
LPSTR pPrintProcessor;
|
|
LPSTR pParameters;
|
|
LPSTR pDriverName;
|
|
LPDEVMODEA pDevMode;
|
|
LPSTR pStatus;
|
|
PSECURITY_DESCRIPTOR pSecurityDescriptor;
|
|
DWORD Status;
|
|
DWORD Priority;
|
|
DWORD Position;
|
|
DWORD StartTime;
|
|
DWORD UntilTime;
|
|
DWORD TotalPages;
|
|
DWORD Size;
|
|
SYSTEMTIME Submitted;
|
|
DWORD Time;
|
|
DWORD PagesPrinted;
|
|
} JOB_INFO_2A,*PJOB_INFO_2A,*LPJOB_INFO_2A;
|
|
typedef struct _JOB_INFO_2W {
|
|
DWORD JobId;
|
|
LPWSTR pPrinterName;
|
|
LPWSTR pMachineName;
|
|
LPWSTR pUserName;
|
|
LPWSTR pDocument;
|
|
LPWSTR pNotifyName;
|
|
LPWSTR pDatatype;
|
|
LPWSTR pPrintProcessor;
|
|
LPWSTR pParameters;
|
|
LPWSTR pDriverName;
|
|
LPDEVMODEW pDevMode;
|
|
LPWSTR pStatus;
|
|
PSECURITY_DESCRIPTOR pSecurityDescriptor;
|
|
DWORD Status;
|
|
DWORD Priority;
|
|
DWORD Position;
|
|
DWORD StartTime;
|
|
DWORD UntilTime;
|
|
DWORD TotalPages;
|
|
DWORD Size;
|
|
SYSTEMTIME Submitted;
|
|
DWORD Time;
|
|
DWORD PagesPrinted;
|
|
} JOB_INFO_2W,*PJOB_INFO_2W,*LPJOB_INFO_2W;
|
|
typedef JOB_INFO_2A JOB_INFO_2;
|
|
typedef PJOB_INFO_2A PJOB_INFO_2;
|
|
typedef LPJOB_INFO_2A LPJOB_INFO_2;
|
|
typedef struct _JOB_INFO_3 {
|
|
DWORD JobId;
|
|
DWORD NextJobId;
|
|
DWORD Reserved;
|
|
} JOB_INFO_3,*PJOB_INFO_3,*LPJOB_INFO_3;
|
|
typedef struct _ADDJOB_INFO_1A {
|
|
LPSTR Path;
|
|
DWORD JobId;
|
|
} ADDJOB_INFO_1A,*PADDJOB_INFO_1A,*LPADDJOB_INFO_1A;
|
|
typedef struct _ADDJOB_INFO_1W {
|
|
LPWSTR Path;
|
|
DWORD JobId;
|
|
} ADDJOB_INFO_1W,*PADDJOB_INFO_1W,*LPADDJOB_INFO_1W;
|
|
typedef ADDJOB_INFO_1A ADDJOB_INFO_1;
|
|
typedef PADDJOB_INFO_1A PADDJOB_INFO_1;
|
|
typedef LPADDJOB_INFO_1A LPADDJOB_INFO_1;
|
|
typedef struct _DRIVER_INFO_1A {
|
|
LPSTR pName;
|
|
} DRIVER_INFO_1A,*PDRIVER_INFO_1A,*LPDRIVER_INFO_1A;
|
|
typedef struct _DRIVER_INFO_1W {
|
|
LPWSTR pName;
|
|
} DRIVER_INFO_1W,*PDRIVER_INFO_1W,*LPDRIVER_INFO_1W;
|
|
typedef DRIVER_INFO_1A DRIVER_INFO_1;
|
|
typedef PDRIVER_INFO_1A PDRIVER_INFO_1;
|
|
typedef LPDRIVER_INFO_1A LPDRIVER_INFO_1;
|
|
typedef struct _DRIVER_INFO_2A {
|
|
DWORD cVersion;
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDriverPath;
|
|
LPSTR pDataFile;
|
|
LPSTR pConfigFile;
|
|
} DRIVER_INFO_2A,*PDRIVER_INFO_2A,*LPDRIVER_INFO_2A;
|
|
typedef struct _DRIVER_INFO_2W {
|
|
DWORD cVersion;
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDriverPath;
|
|
LPWSTR pDataFile;
|
|
LPWSTR pConfigFile;
|
|
} DRIVER_INFO_2W,*PDRIVER_INFO_2W,*LPDRIVER_INFO_2W;
|
|
typedef DRIVER_INFO_2A DRIVER_INFO_2;
|
|
typedef PDRIVER_INFO_2A PDRIVER_INFO_2;
|
|
typedef LPDRIVER_INFO_2A LPDRIVER_INFO_2;
|
|
typedef struct _DRIVER_INFO_3A {
|
|
DWORD cVersion;
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDriverPath;
|
|
LPSTR pDataFile;
|
|
LPSTR pConfigFile;
|
|
LPSTR pHelpFile;
|
|
LPSTR pDependentFiles;
|
|
LPSTR pMonitorName;
|
|
LPSTR pDefaultDataType;
|
|
} DRIVER_INFO_3A,*PDRIVER_INFO_3A,*LPDRIVER_INFO_3A;
|
|
typedef struct _DRIVER_INFO_3W {
|
|
DWORD cVersion;
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDriverPath;
|
|
LPWSTR pDataFile;
|
|
LPWSTR pConfigFile;
|
|
LPWSTR pHelpFile;
|
|
LPWSTR pDependentFiles;
|
|
LPWSTR pMonitorName;
|
|
LPWSTR pDefaultDataType;
|
|
} DRIVER_INFO_3W,*PDRIVER_INFO_3W,*LPDRIVER_INFO_3W;
|
|
typedef DRIVER_INFO_3A DRIVER_INFO_3;
|
|
typedef PDRIVER_INFO_3A PDRIVER_INFO_3;
|
|
typedef LPDRIVER_INFO_3A LPDRIVER_INFO_3;
|
|
typedef struct _DRIVER_INFO_4A {
|
|
DWORD cVersion;
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDriverPath;
|
|
LPSTR pDataFile;
|
|
LPSTR pConfigFile;
|
|
LPSTR pHelpFile;
|
|
LPSTR pDependentFiles;
|
|
LPSTR pMonitorName;
|
|
LPSTR pDefaultDataType;
|
|
LPSTR pszzPreviousNames;
|
|
} DRIVER_INFO_4A,*PDRIVER_INFO_4A,*LPDRIVER_INFO_4A;
|
|
typedef struct _DRIVER_INFO_4W {
|
|
DWORD cVersion;
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDriverPath;
|
|
LPWSTR pDataFile;
|
|
LPWSTR pConfigFile;
|
|
LPWSTR pHelpFile;
|
|
LPWSTR pDependentFiles;
|
|
LPWSTR pMonitorName;
|
|
LPWSTR pDefaultDataType;
|
|
LPWSTR pszzPreviousNames;
|
|
} DRIVER_INFO_4W,*PDRIVER_INFO_4W,*LPDRIVER_INFO_4W;
|
|
typedef DRIVER_INFO_4A DRIVER_INFO_4;
|
|
typedef PDRIVER_INFO_4A PDRIVER_INFO_4;
|
|
typedef LPDRIVER_INFO_4A LPDRIVER_INFO_4;
|
|
typedef struct _DRIVER_INFO_5A {
|
|
DWORD cVersion;
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDriverPath;
|
|
LPSTR pDataFile;
|
|
LPSTR pConfigFile;
|
|
DWORD dwDriverAttributes;
|
|
DWORD dwConfigVersion;
|
|
DWORD dwDriverVersion;
|
|
} DRIVER_INFO_5A,*PDRIVER_INFO_5A,*LPDRIVER_INFO_5A;
|
|
typedef struct _DRIVER_INFO_5W {
|
|
DWORD cVersion;
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDriverPath;
|
|
LPWSTR pDataFile;
|
|
LPWSTR pConfigFile;
|
|
DWORD dwDriverAttributes;
|
|
DWORD dwConfigVersion;
|
|
DWORD dwDriverVersion;
|
|
} DRIVER_INFO_5W,*PDRIVER_INFO_5W,*LPDRIVER_INFO_5W;
|
|
typedef DRIVER_INFO_5A DRIVER_INFO_5;
|
|
typedef PDRIVER_INFO_5A PDRIVER_INFO_5;
|
|
typedef LPDRIVER_INFO_5A LPDRIVER_INFO_5;
|
|
typedef struct _DRIVER_INFO_6A {
|
|
DWORD cVersion;
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDriverPath;
|
|
LPSTR pDataFile;
|
|
LPSTR pConfigFile;
|
|
LPSTR pHelpFile;
|
|
LPSTR pDependentFiles;
|
|
LPSTR pMonitorName;
|
|
LPSTR pDefaultDataType;
|
|
LPSTR pszzPreviousNames;
|
|
FILETIME ftDriverDate;
|
|
DWORDLONG dwlDriverVersion;
|
|
LPSTR pszMfgName;
|
|
LPSTR pszOEMUrl;
|
|
LPSTR pszHardwareID;
|
|
LPSTR pszProvider;
|
|
} DRIVER_INFO_6A,*PDRIVER_INFO_6A,*LPDRIVER_INFO_6A;
|
|
typedef struct _DRIVER_INFO_6W {
|
|
DWORD cVersion;
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDriverPath;
|
|
LPWSTR pDataFile;
|
|
LPWSTR pConfigFile;
|
|
LPWSTR pHelpFile;
|
|
LPWSTR pDependentFiles;
|
|
LPWSTR pMonitorName;
|
|
LPWSTR pDefaultDataType;
|
|
LPWSTR pszzPreviousNames;
|
|
FILETIME ftDriverDate;
|
|
DWORDLONG dwlDriverVersion;
|
|
LPWSTR pszMfgName;
|
|
LPWSTR pszOEMUrl;
|
|
LPWSTR pszHardwareID;
|
|
LPWSTR pszProvider;
|
|
} DRIVER_INFO_6W,*PDRIVER_INFO_6W,*LPDRIVER_INFO_6W;
|
|
typedef DRIVER_INFO_6A DRIVER_INFO_6;
|
|
typedef PDRIVER_INFO_6A PDRIVER_INFO_6;
|
|
typedef LPDRIVER_INFO_6A LPDRIVER_INFO_6;
|
|
typedef struct _DOC_INFO_1A {
|
|
LPSTR pDocName;
|
|
LPSTR pOutputFile;
|
|
LPSTR pDatatype;
|
|
} DOC_INFO_1A,*PDOC_INFO_1A,*LPDOC_INFO_1A;
|
|
typedef struct _DOC_INFO_1W {
|
|
LPWSTR pDocName;
|
|
LPWSTR pOutputFile;
|
|
LPWSTR pDatatype;
|
|
} DOC_INFO_1W,*PDOC_INFO_1W,*LPDOC_INFO_1W;
|
|
typedef DOC_INFO_1A DOC_INFO_1;
|
|
typedef PDOC_INFO_1A PDOC_INFO_1;
|
|
typedef LPDOC_INFO_1A LPDOC_INFO_1;
|
|
typedef struct _FORM_INFO_1A {
|
|
DWORD Flags;
|
|
LPSTR pName;
|
|
SIZEL Size;
|
|
RECTL ImageableArea;
|
|
} FORM_INFO_1A,*PFORM_INFO_1A,*LPFORM_INFO_1A;
|
|
typedef struct _FORM_INFO_1W {
|
|
DWORD Flags;
|
|
LPWSTR pName;
|
|
SIZEL Size;
|
|
RECTL ImageableArea;
|
|
} FORM_INFO_1W,*PFORM_INFO_1W,*LPFORM_INFO_1W;
|
|
typedef FORM_INFO_1A FORM_INFO_1;
|
|
typedef PFORM_INFO_1A PFORM_INFO_1;
|
|
typedef LPFORM_INFO_1A LPFORM_INFO_1;
|
|
typedef struct _DOC_INFO_2A {
|
|
LPSTR pDocName;
|
|
LPSTR pOutputFile;
|
|
LPSTR pDatatype;
|
|
DWORD dwMode;
|
|
DWORD JobId;
|
|
} DOC_INFO_2A,*PDOC_INFO_2A,*LPDOC_INFO_2A;
|
|
typedef struct _DOC_INFO_2W {
|
|
LPWSTR pDocName;
|
|
LPWSTR pOutputFile;
|
|
LPWSTR pDatatype;
|
|
DWORD dwMode;
|
|
DWORD JobId;
|
|
} DOC_INFO_2W,*PDOC_INFO_2W,*LPDOC_INFO_2W;
|
|
typedef DOC_INFO_2A DOC_INFO_2;
|
|
typedef PDOC_INFO_2A PDOC_INFO_2;
|
|
typedef LPDOC_INFO_2A LPDOC_INFO_2;
|
|
typedef struct _DOC_INFO_3A {
|
|
LPSTR pDocName;
|
|
LPSTR pOutputFile;
|
|
LPSTR pDatatype;
|
|
DWORD dwFlags;
|
|
} DOC_INFO_3A,*PDOC_INFO_3A,*LPDOC_INFO_3A;
|
|
typedef struct _DOC_INFO_3W {
|
|
LPWSTR pDocName;
|
|
LPWSTR pOutputFile;
|
|
LPWSTR pDatatype;
|
|
DWORD dwFlags;
|
|
} DOC_INFO_3W,*PDOC_INFO_3W,*LPDOC_INFO_3W;
|
|
typedef DOC_INFO_3A DOC_INFO_3;
|
|
typedef PDOC_INFO_3A PDOC_INFO_3;
|
|
typedef LPDOC_INFO_3A LPDOC_INFO_3;
|
|
typedef struct _PRINTPROCESSOR_INFO_1A {
|
|
LPSTR pName;
|
|
} PRINTPROCESSOR_INFO_1A,*PPRINTPROCESSOR_INFO_1A,*LPPRINTPROCESSOR_INFO_1A;
|
|
typedef struct _PRINTPROCESSOR_INFO_1W {
|
|
LPWSTR pName;
|
|
} PRINTPROCESSOR_INFO_1W,*PPRINTPROCESSOR_INFO_1W,*LPPRINTPROCESSOR_INFO_1W;
|
|
typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1;
|
|
typedef PPRINTPROCESSOR_INFO_1A PPRINTPROCESSOR_INFO_1;
|
|
typedef LPPRINTPROCESSOR_INFO_1A LPPRINTPROCESSOR_INFO_1;
|
|
typedef struct _PRINTPROCESSOR_CAPS_1 {
|
|
DWORD dwLevel;
|
|
DWORD dwNupOptions;
|
|
DWORD dwPageOrderFlags;
|
|
DWORD dwNumberOfCopies;
|
|
} PRINTPROCESSOR_CAPS_1,*PPRINTPROCESSOR_CAPS_1;
|
|
typedef struct _PORT_INFO_1A {
|
|
LPSTR pName;
|
|
} PORT_INFO_1A,*PPORT_INFO_1A,*LPPORT_INFO_1A;
|
|
typedef struct _PORT_INFO_1W {
|
|
LPWSTR pName;
|
|
} PORT_INFO_1W,*PPORT_INFO_1W,*LPPORT_INFO_1W;
|
|
typedef PORT_INFO_1A PORT_INFO_1;
|
|
typedef PPORT_INFO_1A PPORT_INFO_1;
|
|
typedef LPPORT_INFO_1A LPPORT_INFO_1;
|
|
typedef struct _PORT_INFO_2A {
|
|
LPSTR pPortName;
|
|
LPSTR pMonitorName;
|
|
LPSTR pDescription;
|
|
DWORD fPortType;
|
|
DWORD Reserved;
|
|
} PORT_INFO_2A,*PPORT_INFO_2A,*LPPORT_INFO_2A;
|
|
typedef struct _PORT_INFO_2W {
|
|
LPWSTR pPortName;
|
|
LPWSTR pMonitorName;
|
|
LPWSTR pDescription;
|
|
DWORD fPortType;
|
|
DWORD Reserved;
|
|
} PORT_INFO_2W,*PPORT_INFO_2W,*LPPORT_INFO_2W;
|
|
typedef PORT_INFO_2A PORT_INFO_2;
|
|
typedef PPORT_INFO_2A PPORT_INFO_2;
|
|
typedef LPPORT_INFO_2A LPPORT_INFO_2;
|
|
typedef struct _PORT_INFO_3A {
|
|
DWORD dwStatus;
|
|
LPSTR pszStatus;
|
|
DWORD dwSeverity;
|
|
} PORT_INFO_3A,*PPORT_INFO_3A,*LPPORT_INFO_3A;
|
|
typedef struct _PORT_INFO_3W {
|
|
DWORD dwStatus;
|
|
LPWSTR pszStatus;
|
|
DWORD dwSeverity;
|
|
} PORT_INFO_3W,*PPORT_INFO_3W,*LPPORT_INFO_3W;
|
|
typedef PORT_INFO_3A PORT_INFO_3;
|
|
typedef PPORT_INFO_3A PPORT_INFO_3;
|
|
typedef LPPORT_INFO_3A LPPORT_INFO_3;
|
|
typedef struct _MONITOR_INFO_1A{
|
|
LPSTR pName;
|
|
} MONITOR_INFO_1A,*PMONITOR_INFO_1A,*LPMONITOR_INFO_1A;
|
|
typedef struct _MONITOR_INFO_1W{
|
|
LPWSTR pName;
|
|
} MONITOR_INFO_1W,*PMONITOR_INFO_1W,*LPMONITOR_INFO_1W;
|
|
typedef MONITOR_INFO_1A MONITOR_INFO_1;
|
|
typedef PMONITOR_INFO_1A PMONITOR_INFO_1;
|
|
typedef LPMONITOR_INFO_1A LPMONITOR_INFO_1;
|
|
typedef struct _MONITOR_INFO_2A {
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDLLName;
|
|
} MONITOR_INFO_2A,*PMONITOR_INFO_2A,*LPMONITOR_INFO_2A;
|
|
typedef struct _MONITOR_INFO_2W {
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDLLName;
|
|
} MONITOR_INFO_2W,*PMONITOR_INFO_2W,*LPMONITOR_INFO_2W;
|
|
typedef MONITOR_INFO_2A MONITOR_INFO_2;
|
|
typedef PMONITOR_INFO_2A PMONITOR_INFO_2;
|
|
typedef LPMONITOR_INFO_2A LPMONITOR_INFO_2;
|
|
typedef struct _DATATYPES_INFO_1A {
|
|
LPSTR pName;
|
|
} DATATYPES_INFO_1A,*PDATATYPES_INFO_1A,*LPDATATYPES_INFO_1A;
|
|
typedef struct _DATATYPES_INFO_1W {
|
|
LPWSTR pName;
|
|
} DATATYPES_INFO_1W,*PDATATYPES_INFO_1W,*LPDATATYPES_INFO_1W;
|
|
typedef DATATYPES_INFO_1A DATATYPES_INFO_1;
|
|
typedef PDATATYPES_INFO_1A PDATATYPES_INFO_1;
|
|
typedef LPDATATYPES_INFO_1A LPDATATYPES_INFO_1;
|
|
typedef struct _PRINTER_DEFAULTSA {
|
|
LPSTR pDatatype;
|
|
LPDEVMODEA pDevMode;
|
|
ACCESS_MASK DesiredAccess;
|
|
} PRINTER_DEFAULTSA,*PPRINTER_DEFAULTSA,*LPPRINTER_DEFAULTSA;
|
|
typedef struct _PRINTER_DEFAULTSW {
|
|
LPWSTR pDatatype;
|
|
LPDEVMODEW pDevMode;
|
|
ACCESS_MASK DesiredAccess;
|
|
} PRINTER_DEFAULTSW,*PPRINTER_DEFAULTSW,*LPPRINTER_DEFAULTSW;
|
|
typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS;
|
|
typedef PPRINTER_DEFAULTSA PPRINTER_DEFAULTS;
|
|
typedef LPPRINTER_DEFAULTSA LPPRINTER_DEFAULTS;
|
|
typedef struct _PRINTER_ENUM_VALUESA {
|
|
LPSTR pValueName;
|
|
DWORD cbValueName;
|
|
DWORD dwType;
|
|
LPBYTE pData;
|
|
DWORD cbData;
|
|
} PRINTER_ENUM_VALUESA,*PPRINTER_ENUM_VALUESA,*LPPRINTER_ENUM_VALUESA;
|
|
typedef struct _PRINTER_ENUM_VALUESW {
|
|
LPWSTR pValueName;
|
|
DWORD cbValueName;
|
|
DWORD dwType;
|
|
LPBYTE pData;
|
|
DWORD cbData;
|
|
} PRINTER_ENUM_VALUESW,*PPRINTER_ENUM_VALUESW,*LPPRINTER_ENUM_VALUESW;
|
|
typedef PRINTER_ENUM_VALUESA PRINTER_ENUM_VALUES;
|
|
typedef PPRINTER_ENUM_VALUESA PPRINTER_ENUM_VALUES;
|
|
typedef LPPRINTER_ENUM_VALUESA LPPRINTER_ENUM_VALUES;
|
|
WINBOOL EnumPrintersA(DWORD Flags,LPSTR Name,DWORD Level,LPBYTE pPrinterEnum,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumPrintersW(DWORD Flags,LPWSTR Name,DWORD Level,LPBYTE pPrinterEnum,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL OpenPrinterA(LPSTR pPrinterName,LPHANDLE phPrinter,LPPRINTER_DEFAULTSA pDefault);
|
|
WINBOOL OpenPrinterW(LPWSTR pPrinterName,LPHANDLE phPrinter,LPPRINTER_DEFAULTSW pDefault);
|
|
WINBOOL ResetPrinterA(HANDLE hPrinter,LPPRINTER_DEFAULTSA pDefault);
|
|
WINBOOL ResetPrinterW(HANDLE hPrinter,LPPRINTER_DEFAULTSW pDefault);
|
|
WINBOOL SetJobA(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD Command);
|
|
WINBOOL SetJobW(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD Command);
|
|
WINBOOL GetJobA(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetJobW(HANDLE hPrinter,DWORD JobId,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL EnumJobsA(HANDLE hPrinter,DWORD FirstJob,DWORD NoJobs,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumJobsW(HANDLE hPrinter,DWORD FirstJob,DWORD NoJobs,DWORD Level,LPBYTE pJob,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
HANDLE AddPrinterA(LPSTR pName,DWORD Level,LPBYTE pPrinter);
|
|
HANDLE AddPrinterW(LPWSTR pName,DWORD Level,LPBYTE pPrinter);
|
|
WINBOOL DeletePrinter(HANDLE hPrinter);
|
|
WINBOOL SetPrinterA(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD Command);
|
|
WINBOOL SetPrinterW(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD Command);
|
|
WINBOOL GetPrinterA(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetPrinterW(HANDLE hPrinter,DWORD Level,LPBYTE pPrinter,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL AddPrinterDriverA(LPSTR pName,DWORD Level,LPBYTE pDriverInfo);
|
|
WINBOOL AddPrinterDriverW(LPWSTR pName,DWORD Level,LPBYTE pDriverInfo);
|
|
WINBOOL AddPrinterDriverExA(LPSTR pName,DWORD Level,LPBYTE pDriverInfo,DWORD dwFileCopyFlags);
|
|
WINBOOL AddPrinterDriverExW(LPWSTR pName,DWORD Level,LPBYTE pDriverInfo,DWORD dwFileCopyFlags);
|
|
WINBOOL EnumPrinterDriversA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumPrinterDriversW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL GetPrinterDriverA(HANDLE hPrinter,LPSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetPrinterDriverW(HANDLE hPrinter,LPWSTR pEnvironment,DWORD Level,LPBYTE pDriverInfo,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetPrinterDriverDirectoryA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pDriverDirectory,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetPrinterDriverDirectoryW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pDriverDirectory,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL DeletePrinterDriverA(LPSTR pName,LPSTR pEnvironment,LPSTR pDriverName);
|
|
WINBOOL DeletePrinterDriverW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pDriverName);
|
|
WINBOOL DeletePrinterDriverExA(LPSTR pName,LPSTR pEnvironment,LPSTR pDriverName,DWORD dwDeleteFlag,DWORD dwVersionFlag);
|
|
WINBOOL DeletePrinterDriverExW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pDriverName,DWORD dwDeleteFlag,DWORD dwVersionFlag);
|
|
WINBOOL AddPrintProcessorA(LPSTR pName,LPSTR pEnvironment,LPSTR pPathName,LPSTR pPrintProcessorName);
|
|
WINBOOL AddPrintProcessorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pPathName,LPWSTR pPrintProcessorName);
|
|
WINBOOL EnumPrintProcessorsA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumPrintProcessorsW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL GetPrintProcessorDirectoryA(LPSTR pName,LPSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetPrintProcessorDirectoryW(LPWSTR pName,LPWSTR pEnvironment,DWORD Level,LPBYTE pPrintProcessorInfo,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL EnumPrintProcessorDatatypesA(LPSTR pName,LPSTR pPrintProcessorName,DWORD Level,LPBYTE pDatatypes,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumPrintProcessorDatatypesW(LPWSTR pName,LPWSTR pPrintProcessorName,DWORD Level,LPBYTE pDatatypes,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL DeletePrintProcessorA(LPSTR pName,LPSTR pEnvironment,LPSTR pPrintProcessorName);
|
|
WINBOOL DeletePrintProcessorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pPrintProcessorName);
|
|
DWORD StartDocPrinterA(HANDLE hPrinter,DWORD Level,LPBYTE pDocInfo);
|
|
DWORD StartDocPrinterW(HANDLE hPrinter,DWORD Level,LPBYTE pDocInfo);
|
|
WINBOOL StartPagePrinter(HANDLE hPrinter);
|
|
WINBOOL WritePrinter(HANDLE hPrinter,LPVOID pBuf,DWORD cbBuf,LPDWORD pcWritten);
|
|
WINBOOL FlushPrinter(HANDLE hPrinter,LPVOID pBuf,DWORD cbBuf,LPDWORD pcWritten,DWORD cSleep);
|
|
WINBOOL EndPagePrinter(HANDLE hPrinter);
|
|
WINBOOL AbortPrinter(HANDLE hPrinter);
|
|
WINBOOL ReadPrinter(HANDLE hPrinter,LPVOID pBuf,DWORD cbBuf,LPDWORD pNoBytesRead);
|
|
WINBOOL EndDocPrinter(HANDLE hPrinter);
|
|
WINBOOL AddJobA(HANDLE hPrinter,DWORD Level,LPBYTE pData,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL AddJobW(HANDLE hPrinter,DWORD Level,LPBYTE pData,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL ScheduleJob(HANDLE hPrinter,DWORD JobId);
|
|
WINBOOL PrinterProperties(HWND hWnd,HANDLE hPrinter);
|
|
LONG DocumentPropertiesA(HWND hWnd,HANDLE hPrinter,LPSTR pDeviceName,PDEVMODEA pDevModeOutput,PDEVMODEA pDevModeInput,DWORD fMode);
|
|
LONG DocumentPropertiesW(HWND hWnd,HANDLE hPrinter,LPWSTR pDeviceName,PDEVMODEW pDevModeOutput,PDEVMODEW pDevModeInput,DWORD fMode);
|
|
LONG AdvancedDocumentPropertiesA(HWND hWnd,HANDLE hPrinter,LPSTR pDeviceName,PDEVMODEA pDevModeOutput,PDEVMODEA pDevModeInput);
|
|
LONG AdvancedDocumentPropertiesW(HWND hWnd,HANDLE hPrinter,LPWSTR pDeviceName,PDEVMODEW pDevModeOutput,PDEVMODEW pDevModeInput);
|
|
LONG ExtDeviceMode(HWND hWnd,HANDLE hInst,LPDEVMODEA pDevModeOutput,LPSTR pDeviceName,LPSTR pPort,LPDEVMODEA pDevModeInput,LPSTR pProfile,DWORD fMode);
|
|
DWORD GetPrinterDataA(HANDLE hPrinter,LPSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
|
|
DWORD GetPrinterDataW(HANDLE hPrinter,LPWSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
|
|
DWORD GetPrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPCSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
|
|
DWORD GetPrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPCWSTR pValueName,LPDWORD pType,LPBYTE pData,DWORD nSize,LPDWORD pcbNeeded);
|
|
DWORD EnumPrinterDataA(HANDLE hPrinter,DWORD dwIndex,LPSTR pValueName,DWORD cbValueName,LPDWORD pcbValueName,LPDWORD pType,LPBYTE pData,DWORD cbData,LPDWORD pcbData);
|
|
DWORD EnumPrinterDataW(HANDLE hPrinter,DWORD dwIndex,LPWSTR pValueName,DWORD cbValueName,LPDWORD pcbValueName,LPDWORD pType,LPBYTE pData,DWORD cbData,LPDWORD pcbData);
|
|
DWORD EnumPrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPBYTE pEnumValues,DWORD cbEnumValues,LPDWORD pcbEnumValues,LPDWORD pnEnumValues);
|
|
DWORD EnumPrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPBYTE pEnumValues,DWORD cbEnumValues,LPDWORD pcbEnumValues,LPDWORD pnEnumValues);
|
|
DWORD EnumPrinterKeyA(HANDLE hPrinter,LPCSTR pKeyName,LPSTR pSubkey,DWORD cbSubkey,LPDWORD pcbSubkey);
|
|
DWORD EnumPrinterKeyW(HANDLE hPrinter,LPCWSTR pKeyName,LPWSTR pSubkey,DWORD cbSubkey,LPDWORD pcbSubkey);
|
|
DWORD SetPrinterDataA(HANDLE hPrinter,LPSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
|
|
DWORD SetPrinterDataW(HANDLE hPrinter,LPWSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
|
|
DWORD SetPrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPCSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
|
|
DWORD SetPrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPCWSTR pValueName,DWORD Type,LPBYTE pData,DWORD cbData);
|
|
DWORD DeletePrinterDataA(HANDLE hPrinter,LPSTR pValueName);
|
|
DWORD DeletePrinterDataW(HANDLE hPrinter,LPWSTR pValueName);
|
|
DWORD DeletePrinterDataExA(HANDLE hPrinter,LPCSTR pKeyName,LPCSTR pValueName);
|
|
DWORD DeletePrinterDataExW(HANDLE hPrinter,LPCWSTR pKeyName,LPCWSTR pValueName);
|
|
DWORD DeletePrinterKeyA(HANDLE hPrinter,LPCSTR pKeyName);
|
|
DWORD DeletePrinterKeyW(HANDLE hPrinter,LPCWSTR pKeyName);
|
|
typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
|
|
WORD Type;
|
|
WORD Reserved0;
|
|
DWORD Reserved1;
|
|
DWORD Reserved2;
|
|
DWORD Count;
|
|
PWORD pFields;
|
|
} PRINTER_NOTIFY_OPTIONS_TYPE,*PPRINTER_NOTIFY_OPTIONS_TYPE,*LPPRINTER_NOTIFY_OPTIONS_TYPE;
|
|
typedef struct _PRINTER_NOTIFY_OPTIONS {
|
|
DWORD Version;
|
|
DWORD Flags;
|
|
DWORD Count;
|
|
PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
|
|
} PRINTER_NOTIFY_OPTIONS,*PPRINTER_NOTIFY_OPTIONS,*LPPRINTER_NOTIFY_OPTIONS;
|
|
typedef struct _PRINTER_NOTIFY_INFO_DATA {
|
|
WORD Type;
|
|
WORD Field;
|
|
DWORD Reserved;
|
|
DWORD Id;
|
|
union {
|
|
DWORD adwData[2];
|
|
struct {
|
|
DWORD cbBuf;
|
|
LPVOID pBuf;
|
|
} Data;
|
|
} NotifyData;
|
|
} PRINTER_NOTIFY_INFO_DATA,*PPRINTER_NOTIFY_INFO_DATA,*LPPRINTER_NOTIFY_INFO_DATA;
|
|
typedef struct _PRINTER_NOTIFY_INFO {
|
|
DWORD Version;
|
|
DWORD Flags;
|
|
DWORD Count;
|
|
PRINTER_NOTIFY_INFO_DATA aData[1];
|
|
} PRINTER_NOTIFY_INFO,*PPRINTER_NOTIFY_INFO,*LPPRINTER_NOTIFY_INFO;
|
|
typedef struct _BINARY_CONTAINER{
|
|
DWORD cbBuf;
|
|
LPBYTE pData;
|
|
} BINARY_CONTAINER,*PBINARY_CONTAINER;
|
|
typedef struct _BIDI_DATA{
|
|
DWORD dwBidiType;
|
|
union {
|
|
WINBOOL bData;
|
|
LONG iData;
|
|
LPWSTR sData;
|
|
FLOAT fData;
|
|
BINARY_CONTAINER biData;
|
|
} u;
|
|
} BIDI_DATA,*PBIDI_DATA,*LPBIDI_DATA;
|
|
typedef struct _BIDI_REQUEST_DATA{
|
|
DWORD dwReqNumber;
|
|
LPWSTR pSchema;
|
|
BIDI_DATA data;
|
|
} BIDI_REQUEST_DATA ,*PBIDI_REQUEST_DATA ,*LPBIDI_REQUEST_DATA;
|
|
typedef struct _BIDI_REQUEST_CONTAINER{
|
|
DWORD Version;
|
|
DWORD Flags;
|
|
DWORD Count;
|
|
BIDI_REQUEST_DATA aData[1 ];
|
|
}BIDI_REQUEST_CONTAINER,*PBIDI_REQUEST_CONTAINER,*LPBIDI_REQUEST_CONTAINER;
|
|
typedef struct _BIDI_RESPONSE_DATA{
|
|
DWORD dwResult;
|
|
DWORD dwReqNumber;
|
|
LPWSTR pSchema;
|
|
BIDI_DATA data;
|
|
} BIDI_RESPONSE_DATA,*PBIDI_RESPONSE_DATA,*LPBIDI_RESPONSE_DATA;
|
|
typedef struct _BIDI_RESPONSE_CONTAINER{
|
|
DWORD Version;
|
|
DWORD Flags;
|
|
DWORD Count;
|
|
BIDI_RESPONSE_DATA aData[1 ];
|
|
} BIDI_RESPONSE_CONTAINER,*PBIDI_RESPONSE_CONTAINER,*LPBIDI_RESPONSE_CONTAINER;
|
|
typedef enum {
|
|
BIDI_NULL = 0,BIDI_INT = 1,BIDI_FLOAT = 2,BIDI_BOOL = 3,BIDI_STRING = 4,BIDI_TEXT = 5,BIDI_ENUM = 6,BIDI_BLOB = 7
|
|
} BIDI_TYPE;
|
|
DWORD WaitForPrinterChange(HANDLE hPrinter,DWORD Flags);
|
|
HANDLE FindFirstPrinterChangeNotification(HANDLE hPrinter,DWORD fdwFlags,DWORD fdwOptions,LPVOID pPrinterNotifyOptions);
|
|
WINBOOL FindNextPrinterChangeNotification(HANDLE hChange,PDWORD pdwChange,LPVOID pPrinterNotifyOptions,LPVOID *ppPrinterNotifyInfo);
|
|
WINBOOL FreePrinterNotifyInfo (PPRINTER_NOTIFY_INFO pPrinterNotifyInfo);
|
|
WINBOOL FindClosePrinterChangeNotification(HANDLE hChange);
|
|
DWORD PrinterMessageBoxA(HANDLE hPrinter,DWORD Error,HWND hWnd,LPSTR pText,LPSTR pCaption,DWORD dwType);
|
|
DWORD PrinterMessageBoxW(HANDLE hPrinter,DWORD Error,HWND hWnd,LPWSTR pText,LPWSTR pCaption,DWORD dwType);
|
|
WINBOOL ClosePrinter(HANDLE hPrinter);
|
|
WINBOOL AddFormA(HANDLE hPrinter,DWORD Level,LPBYTE pForm);
|
|
WINBOOL AddFormW(HANDLE hPrinter,DWORD Level,LPBYTE pForm);
|
|
WINBOOL DeleteFormA(HANDLE hPrinter,LPSTR pFormName);
|
|
WINBOOL DeleteFormW(HANDLE hPrinter,LPWSTR pFormName);
|
|
WINBOOL GetFormA(HANDLE hPrinter,LPSTR pFormName,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL GetFormW(HANDLE hPrinter,LPWSTR pFormName,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded);
|
|
WINBOOL SetFormA(HANDLE hPrinter,LPSTR pFormName,DWORD Level,LPBYTE pForm);
|
|
WINBOOL SetFormW(HANDLE hPrinter,LPWSTR pFormName,DWORD Level,LPBYTE pForm);
|
|
WINBOOL EnumFormsA(HANDLE hPrinter,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumFormsW(HANDLE hPrinter,DWORD Level,LPBYTE pForm,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumMonitorsA(LPSTR pName,DWORD Level,LPBYTE pMonitor,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumMonitorsW(LPWSTR pName,DWORD Level,LPBYTE pMonitor,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL AddMonitorA(LPSTR pName,DWORD Level,LPBYTE pMonitorInfo);
|
|
WINBOOL AddMonitorW(LPWSTR pName,DWORD Level,LPBYTE pMonitorInfo);
|
|
WINBOOL DeleteMonitorA(LPSTR pName,LPSTR pEnvironment,LPSTR pMonitorName);
|
|
WINBOOL DeleteMonitorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pMonitorName);
|
|
WINBOOL EnumPortsA(LPSTR pName,DWORD Level,LPBYTE pPorts,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL EnumPortsW(LPWSTR pName,DWORD Level,LPBYTE pPorts,DWORD cbBuf,LPDWORD pcbNeeded,LPDWORD pcReturned);
|
|
WINBOOL AddPortA(LPSTR pName,HWND hWnd,LPSTR pMonitorName);
|
|
WINBOOL AddPortW(LPWSTR pName,HWND hWnd,LPWSTR pMonitorName);
|
|
WINBOOL ConfigurePortA(LPSTR pName,HWND hWnd,LPSTR pPortName);
|
|
WINBOOL ConfigurePortW(LPWSTR pName,HWND hWnd,LPWSTR pPortName);
|
|
WINBOOL DeletePortA(LPSTR pName,HWND hWnd,LPSTR pPortName);
|
|
WINBOOL DeletePortW(LPWSTR pName,HWND hWnd,LPWSTR pPortName);
|
|
WINBOOL XcvDataW(HANDLE hXcv,PCWSTR pszDataName,PBYTE pInputData,DWORD cbInputData,PBYTE pOutputData,DWORD cbOutputData,PDWORD pcbOutputNeeded,PDWORD pdwStatus);
|
|
WINBOOL GetDefaultPrinterA(LPSTR pszBuffer,LPDWORD pcchBuffer);
|
|
WINBOOL GetDefaultPrinterW(LPWSTR pszBuffer,LPDWORD pcchBuffer);
|
|
WINBOOL SetDefaultPrinterA(LPCSTR pszPrinter);
|
|
WINBOOL SetDefaultPrinterW(LPCWSTR pszPrinter);
|
|
WINBOOL SetPortA(LPSTR pName,LPSTR pPortName,DWORD dwLevel,LPBYTE pPortInfo);
|
|
WINBOOL SetPortW(LPWSTR pName,LPWSTR pPortName,DWORD dwLevel,LPBYTE pPortInfo);
|
|
WINBOOL AddPrinterConnectionA(LPSTR pName);
|
|
WINBOOL AddPrinterConnectionW(LPWSTR pName);
|
|
WINBOOL DeletePrinterConnectionA(LPSTR pName);
|
|
WINBOOL DeletePrinterConnectionW(LPWSTR pName);
|
|
HANDLE ConnectToPrinterDlg(HWND hwnd,DWORD Flags);
|
|
typedef struct _PROVIDOR_INFO_1A{
|
|
LPSTR pName;
|
|
LPSTR pEnvironment;
|
|
LPSTR pDLLName;
|
|
} PROVIDOR_INFO_1A,*PPROVIDOR_INFO_1A,*LPPROVIDOR_INFO_1A;
|
|
typedef struct _PROVIDOR_INFO_1W{
|
|
LPWSTR pName;
|
|
LPWSTR pEnvironment;
|
|
LPWSTR pDLLName;
|
|
} PROVIDOR_INFO_1W,*PPROVIDOR_INFO_1W,*LPPROVIDOR_INFO_1W;
|
|
typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1;
|
|
typedef PPROVIDOR_INFO_1A PPROVIDOR_INFO_1;
|
|
typedef LPPROVIDOR_INFO_1A LPPROVIDOR_INFO_1;
|
|
typedef struct _PROVIDOR_INFO_2A{
|
|
LPSTR pOrder;
|
|
} PROVIDOR_INFO_2A,*PPROVIDOR_INFO_2A,*LPPROVIDOR_INFO_2A;
|
|
typedef struct _PROVIDOR_INFO_2W{
|
|
LPWSTR pOrder;
|
|
} PROVIDOR_INFO_2W,*PPROVIDOR_INFO_2W,*LPPROVIDOR_INFO_2W;
|
|
typedef PROVIDOR_INFO_2A PROVIDOR_INFO_2;
|
|
typedef PPROVIDOR_INFO_2A PPROVIDOR_INFO_2;
|
|
typedef LPPROVIDOR_INFO_2A LPPROVIDOR_INFO_2;
|
|
WINBOOL AddPrintProvidorA(LPSTR pName,DWORD level,LPBYTE pProvidorInfo);
|
|
WINBOOL AddPrintProvidorW(LPWSTR pName,DWORD level,LPBYTE pProvidorInfo);
|
|
WINBOOL DeletePrintProvidorA(LPSTR pName,LPSTR pEnvironment,LPSTR pPrintProvidorName);
|
|
WINBOOL DeletePrintProvidorW(LPWSTR pName,LPWSTR pEnvironment,LPWSTR pPrintProvidorName);
|
|
WINBOOL IsValidDevmodeA (PDEVMODEA pDevmode,size_t DevmodeSize);
|
|
WINBOOL IsValidDevmodeW (PDEVMODEW pDevmode,size_t DevmodeSize);
|
|
extern const GUID IID_IPrintDialogCallback;
|
|
extern const GUID IID_IPrintDialogServices;
|
|
typedef UINT_PTR ( *LPOFNHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
|
|
typedef struct tagOFN_NT4A {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
LPCSTR lpstrFilter;
|
|
LPSTR lpstrCustomFilter;
|
|
DWORD nMaxCustFilter;
|
|
DWORD nFilterIndex;
|
|
LPSTR lpstrFile;
|
|
DWORD nMaxFile;
|
|
LPSTR lpstrFileTitle;
|
|
DWORD nMaxFileTitle;
|
|
LPCSTR lpstrInitialDir;
|
|
LPCSTR lpstrTitle;
|
|
DWORD Flags;
|
|
WORD nFileOffset;
|
|
WORD nFileExtension;
|
|
LPCSTR lpstrDefExt;
|
|
LPARAM lCustData;
|
|
LPOFNHOOKPROC lpfnHook;
|
|
LPCSTR lpTemplateName;
|
|
} OPENFILENAME_NT4A,*LPOPENFILENAME_NT4A;
|
|
typedef struct tagOFN_NT4W {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
LPCWSTR lpstrFilter;
|
|
LPWSTR lpstrCustomFilter;
|
|
DWORD nMaxCustFilter;
|
|
DWORD nFilterIndex;
|
|
LPWSTR lpstrFile;
|
|
DWORD nMaxFile;
|
|
LPWSTR lpstrFileTitle;
|
|
DWORD nMaxFileTitle;
|
|
LPCWSTR lpstrInitialDir;
|
|
LPCWSTR lpstrTitle;
|
|
DWORD Flags;
|
|
WORD nFileOffset;
|
|
WORD nFileExtension;
|
|
LPCWSTR lpstrDefExt;
|
|
LPARAM lCustData;
|
|
LPOFNHOOKPROC lpfnHook;
|
|
LPCWSTR lpTemplateName;
|
|
} OPENFILENAME_NT4W,*LPOPENFILENAME_NT4W;
|
|
typedef OPENFILENAME_NT4A OPENFILENAME_NT4;
|
|
typedef LPOPENFILENAME_NT4A LPOPENFILENAME_NT4;
|
|
typedef struct tagOFNA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
LPCSTR lpstrFilter;
|
|
LPSTR lpstrCustomFilter;
|
|
DWORD nMaxCustFilter;
|
|
DWORD nFilterIndex;
|
|
LPSTR lpstrFile;
|
|
DWORD nMaxFile;
|
|
LPSTR lpstrFileTitle;
|
|
DWORD nMaxFileTitle;
|
|
LPCSTR lpstrInitialDir;
|
|
LPCSTR lpstrTitle;
|
|
DWORD Flags;
|
|
WORD nFileOffset;
|
|
WORD nFileExtension;
|
|
LPCSTR lpstrDefExt;
|
|
LPARAM lCustData;
|
|
LPOFNHOOKPROC lpfnHook;
|
|
LPCSTR lpTemplateName;
|
|
void *pvReserved;
|
|
DWORD dwReserved;
|
|
DWORD FlagsEx;
|
|
} OPENFILENAMEA,*LPOPENFILENAMEA;
|
|
typedef struct tagOFNW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
LPCWSTR lpstrFilter;
|
|
LPWSTR lpstrCustomFilter;
|
|
DWORD nMaxCustFilter;
|
|
DWORD nFilterIndex;
|
|
LPWSTR lpstrFile;
|
|
DWORD nMaxFile;
|
|
LPWSTR lpstrFileTitle;
|
|
DWORD nMaxFileTitle;
|
|
LPCWSTR lpstrInitialDir;
|
|
LPCWSTR lpstrTitle;
|
|
DWORD Flags;
|
|
WORD nFileOffset;
|
|
WORD nFileExtension;
|
|
LPCWSTR lpstrDefExt;
|
|
LPARAM lCustData;
|
|
LPOFNHOOKPROC lpfnHook;
|
|
LPCWSTR lpTemplateName;
|
|
void *pvReserved;
|
|
DWORD dwReserved;
|
|
DWORD FlagsEx;
|
|
} OPENFILENAMEW,*LPOPENFILENAMEW;
|
|
typedef OPENFILENAMEA OPENFILENAME;
|
|
typedef LPOPENFILENAMEA LPOPENFILENAME;
|
|
__attribute__((dllimport)) WINBOOL GetOpenFileNameA(LPOPENFILENAMEA);
|
|
__attribute__((dllimport)) WINBOOL GetOpenFileNameW(LPOPENFILENAMEW);
|
|
__attribute__((dllimport)) WINBOOL GetSaveFileNameA(LPOPENFILENAMEA);
|
|
__attribute__((dllimport)) WINBOOL GetSaveFileNameW(LPOPENFILENAMEW);
|
|
__attribute__((dllimport)) short GetFileTitleA(LPCSTR,LPSTR,WORD);
|
|
__attribute__((dllimport)) short GetFileTitleW(LPCWSTR,LPWSTR,WORD);
|
|
typedef UINT_PTR ( *LPCCHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
|
|
typedef struct _OFNOTIFYA {
|
|
NMHDR hdr;
|
|
LPOPENFILENAMEA lpOFN;
|
|
LPSTR pszFile;
|
|
} OFNOTIFYA,*LPOFNOTIFYA;
|
|
typedef struct _OFNOTIFYW {
|
|
NMHDR hdr;
|
|
LPOPENFILENAMEW lpOFN;
|
|
LPWSTR pszFile;
|
|
} OFNOTIFYW,*LPOFNOTIFYW;
|
|
typedef OFNOTIFYA OFNOTIFY;
|
|
typedef LPOFNOTIFYA LPOFNOTIFY;
|
|
typedef struct _OFNOTIFYEXA {
|
|
NMHDR hdr;
|
|
LPOPENFILENAMEA lpOFN;
|
|
LPVOID psf;
|
|
LPVOID pidl;
|
|
} OFNOTIFYEXA,*LPOFNOTIFYEXA;
|
|
typedef struct _OFNOTIFYEXW {
|
|
NMHDR hdr;
|
|
LPOPENFILENAMEW lpOFN;
|
|
LPVOID psf;
|
|
LPVOID pidl;
|
|
} OFNOTIFYEXW,*LPOFNOTIFYEXW;
|
|
typedef OFNOTIFYEXA OFNOTIFYEX;
|
|
typedef LPOFNOTIFYEXA LPOFNOTIFYEX;
|
|
typedef struct tagCHOOSECOLORA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HWND hInstance;
|
|
COLORREF rgbResult;
|
|
COLORREF *lpCustColors;
|
|
DWORD Flags;
|
|
LPARAM lCustData;
|
|
LPCCHOOKPROC lpfnHook;
|
|
LPCSTR lpTemplateName;
|
|
} CHOOSECOLORA,*LPCHOOSECOLORA;
|
|
typedef struct tagCHOOSECOLORW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HWND hInstance;
|
|
COLORREF rgbResult;
|
|
COLORREF *lpCustColors;
|
|
DWORD Flags;
|
|
LPARAM lCustData;
|
|
LPCCHOOKPROC lpfnHook;
|
|
LPCWSTR lpTemplateName;
|
|
} CHOOSECOLORW,*LPCHOOSECOLORW;
|
|
typedef CHOOSECOLORA CHOOSECOLOR;
|
|
typedef LPCHOOSECOLORA LPCHOOSECOLOR;
|
|
__attribute__((dllimport)) WINBOOL ChooseColorA(LPCHOOSECOLORA);
|
|
__attribute__((dllimport)) WINBOOL ChooseColorW(LPCHOOSECOLORW);
|
|
typedef UINT_PTR ( *LPFRHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
|
|
typedef struct tagFINDREPLACEA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
DWORD Flags;
|
|
LPSTR lpstrFindWhat;
|
|
LPSTR lpstrReplaceWith;
|
|
WORD wFindWhatLen;
|
|
WORD wReplaceWithLen;
|
|
LPARAM lCustData;
|
|
LPFRHOOKPROC lpfnHook;
|
|
LPCSTR lpTemplateName;
|
|
} FINDREPLACEA,*LPFINDREPLACEA;
|
|
typedef struct tagFINDREPLACEW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HINSTANCE hInstance;
|
|
DWORD Flags;
|
|
LPWSTR lpstrFindWhat;
|
|
LPWSTR lpstrReplaceWith;
|
|
WORD wFindWhatLen;
|
|
WORD wReplaceWithLen;
|
|
LPARAM lCustData;
|
|
LPFRHOOKPROC lpfnHook;
|
|
LPCWSTR lpTemplateName;
|
|
} FINDREPLACEW,*LPFINDREPLACEW;
|
|
typedef FINDREPLACEA FINDREPLACE;
|
|
typedef LPFINDREPLACEA LPFINDREPLACE;
|
|
__attribute__((dllimport)) HWND FindTextA(LPFINDREPLACEA);
|
|
__attribute__((dllimport)) HWND FindTextW(LPFINDREPLACEW);
|
|
__attribute__((dllimport)) HWND ReplaceTextA(LPFINDREPLACEA);
|
|
__attribute__((dllimport)) HWND ReplaceTextW(LPFINDREPLACEW);
|
|
typedef UINT_PTR ( *LPCFHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
|
|
typedef struct tagCHOOSEFONTA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HDC hDC;
|
|
LPLOGFONTA lpLogFont;
|
|
INT iPointSize;
|
|
DWORD Flags;
|
|
COLORREF rgbColors;
|
|
LPARAM lCustData;
|
|
LPCFHOOKPROC lpfnHook;
|
|
LPCSTR lpTemplateName;
|
|
HINSTANCE hInstance;
|
|
LPSTR lpszStyle;
|
|
WORD nFontType;
|
|
WORD ___MISSING_ALIGNMENT__;
|
|
INT nSizeMin;
|
|
INT nSizeMax;
|
|
} CHOOSEFONTA,*LPCHOOSEFONTA;
|
|
typedef struct tagCHOOSEFONTW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HDC hDC;
|
|
LPLOGFONTW lpLogFont;
|
|
INT iPointSize;
|
|
DWORD Flags;
|
|
COLORREF rgbColors;
|
|
LPARAM lCustData;
|
|
LPCFHOOKPROC lpfnHook;
|
|
LPCWSTR lpTemplateName;
|
|
HINSTANCE hInstance;
|
|
LPWSTR lpszStyle;
|
|
WORD nFontType;
|
|
WORD ___MISSING_ALIGNMENT__;
|
|
INT nSizeMin;
|
|
INT nSizeMax;
|
|
} CHOOSEFONTW,*LPCHOOSEFONTW;
|
|
typedef CHOOSEFONTA CHOOSEFONT;
|
|
typedef LPCHOOSEFONTA LPCHOOSEFONT;
|
|
__attribute__((dllimport)) WINBOOL ChooseFontA(LPCHOOSEFONTA);
|
|
__attribute__((dllimport)) WINBOOL ChooseFontW(LPCHOOSEFONTW);
|
|
typedef UINT_PTR ( *LPPRINTHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
|
|
typedef UINT_PTR ( *LPSETUPHOOKPROC) (HWND,UINT,WPARAM,LPARAM);
|
|
typedef struct tagPDA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HGLOBAL hDevMode;
|
|
HGLOBAL hDevNames;
|
|
HDC hDC;
|
|
DWORD Flags;
|
|
WORD nFromPage;
|
|
WORD nToPage;
|
|
WORD nMinPage;
|
|
WORD nMaxPage;
|
|
WORD nCopies;
|
|
HINSTANCE hInstance;
|
|
LPARAM lCustData;
|
|
LPPRINTHOOKPROC lpfnPrintHook;
|
|
LPSETUPHOOKPROC lpfnSetupHook;
|
|
LPCSTR lpPrintTemplateName;
|
|
LPCSTR lpSetupTemplateName;
|
|
HGLOBAL hPrintTemplate;
|
|
HGLOBAL hSetupTemplate;
|
|
} PRINTDLGA,*LPPRINTDLGA;
|
|
typedef struct tagPDW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HGLOBAL hDevMode;
|
|
HGLOBAL hDevNames;
|
|
HDC hDC;
|
|
DWORD Flags;
|
|
WORD nFromPage;
|
|
WORD nToPage;
|
|
WORD nMinPage;
|
|
WORD nMaxPage;
|
|
WORD nCopies;
|
|
HINSTANCE hInstance;
|
|
LPARAM lCustData;
|
|
LPPRINTHOOKPROC lpfnPrintHook;
|
|
LPSETUPHOOKPROC lpfnSetupHook;
|
|
LPCWSTR lpPrintTemplateName;
|
|
LPCWSTR lpSetupTemplateName;
|
|
HGLOBAL hPrintTemplate;
|
|
HGLOBAL hSetupTemplate;
|
|
} PRINTDLGW,*LPPRINTDLGW;
|
|
typedef PRINTDLGA PRINTDLG;
|
|
typedef LPPRINTDLGA LPPRINTDLG;
|
|
__attribute__((dllimport)) WINBOOL PrintDlgA(LPPRINTDLGA);
|
|
__attribute__((dllimport)) WINBOOL PrintDlgW(LPPRINTDLGW);
|
|
typedef struct IPrintDialogCallback { struct IPrintDialogCallbackVtbl *lpVtbl; } IPrintDialogCallback; typedef struct IPrintDialogCallbackVtbl IPrintDialogCallbackVtbl; struct IPrintDialogCallbackVtbl {
|
|
HRESULT ( *QueryInterface) (IPrintDialogCallback *This, const IID *const riid,LPVOID *ppvObj) ;
|
|
ULONG ( *AddRef) (IPrintDialogCallback *This) ;
|
|
ULONG ( *Release) (IPrintDialogCallback *This) ;
|
|
HRESULT ( *InitDone) (IPrintDialogCallback *This) ;
|
|
HRESULT ( *SelectionChange) (IPrintDialogCallback *This) ;
|
|
HRESULT ( *HandleMessage) (IPrintDialogCallback *This, HWND hDlg,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *pResult) ;
|
|
};
|
|
typedef struct IPrintDialogServices { struct IPrintDialogServicesVtbl *lpVtbl; } IPrintDialogServices; typedef struct IPrintDialogServicesVtbl IPrintDialogServicesVtbl; struct IPrintDialogServicesVtbl {
|
|
HRESULT ( *QueryInterface) (IPrintDialogServices *This, const IID *const riid,LPVOID *ppvObj) ;
|
|
ULONG ( *AddRef) (IPrintDialogServices *This) ;
|
|
ULONG ( *Release) (IPrintDialogServices *This) ;
|
|
HRESULT ( *GetCurrentDevMode) (IPrintDialogServices *This, LPDEVMODE pDevMode,UINT *pcbSize) ;
|
|
HRESULT ( *GetCurrentPrinterName) (IPrintDialogServices *This, LPTSTR pPrinterName,UINT *pcchSize) ;
|
|
HRESULT ( *GetCurrentPortName) (IPrintDialogServices *This, LPTSTR pPortName,UINT *pcchSize) ;
|
|
};
|
|
typedef struct tagPRINTPAGERANGE {
|
|
DWORD nFromPage;
|
|
DWORD nToPage;
|
|
} PRINTPAGERANGE,*LPPRINTPAGERANGE;
|
|
typedef struct tagPDEXA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HGLOBAL hDevMode;
|
|
HGLOBAL hDevNames;
|
|
HDC hDC;
|
|
DWORD Flags;
|
|
DWORD Flags2;
|
|
DWORD ExclusionFlags;
|
|
DWORD nPageRanges;
|
|
DWORD nMaxPageRanges;
|
|
LPPRINTPAGERANGE lpPageRanges;
|
|
DWORD nMinPage;
|
|
DWORD nMaxPage;
|
|
DWORD nCopies;
|
|
HINSTANCE hInstance;
|
|
LPCSTR lpPrintTemplateName;
|
|
LPUNKNOWN lpCallback;
|
|
DWORD nPropertyPages;
|
|
HPROPSHEETPAGE *lphPropertyPages;
|
|
DWORD nStartPage;
|
|
DWORD dwResultAction;
|
|
} PRINTDLGEXA,*LPPRINTDLGEXA;
|
|
typedef struct tagPDEXW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HGLOBAL hDevMode;
|
|
HGLOBAL hDevNames;
|
|
HDC hDC;
|
|
DWORD Flags;
|
|
DWORD Flags2;
|
|
DWORD ExclusionFlags;
|
|
DWORD nPageRanges;
|
|
DWORD nMaxPageRanges;
|
|
LPPRINTPAGERANGE lpPageRanges;
|
|
DWORD nMinPage;
|
|
DWORD nMaxPage;
|
|
DWORD nCopies;
|
|
HINSTANCE hInstance;
|
|
LPCWSTR lpPrintTemplateName;
|
|
LPUNKNOWN lpCallback;
|
|
DWORD nPropertyPages;
|
|
HPROPSHEETPAGE *lphPropertyPages;
|
|
DWORD nStartPage;
|
|
DWORD dwResultAction;
|
|
} PRINTDLGEXW,*LPPRINTDLGEXW;
|
|
typedef PRINTDLGEXA PRINTDLGEX;
|
|
typedef LPPRINTDLGEXA LPPRINTDLGEX;
|
|
__attribute__((dllimport)) HRESULT PrintDlgExA(LPPRINTDLGEXA);
|
|
__attribute__((dllimport)) HRESULT PrintDlgExW(LPPRINTDLGEXW);
|
|
typedef struct tagDEVNAMES {
|
|
WORD wDriverOffset;
|
|
WORD wDeviceOffset;
|
|
WORD wOutputOffset;
|
|
WORD wDefault;
|
|
} DEVNAMES,*LPDEVNAMES;
|
|
__attribute__((dllimport)) DWORD CommDlgExtendedError(void);
|
|
typedef UINT_PTR ( *LPPAGEPAINTHOOK)(HWND,UINT,WPARAM,LPARAM);
|
|
typedef UINT_PTR ( *LPPAGESETUPHOOK)(HWND,UINT,WPARAM,LPARAM);
|
|
typedef struct tagPSDA {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HGLOBAL hDevMode;
|
|
HGLOBAL hDevNames;
|
|
DWORD Flags;
|
|
POINT ptPaperSize;
|
|
RECT rtMinMargin;
|
|
RECT rtMargin;
|
|
HINSTANCE hInstance;
|
|
LPARAM lCustData;
|
|
LPPAGESETUPHOOK lpfnPageSetupHook;
|
|
LPPAGEPAINTHOOK lpfnPagePaintHook;
|
|
LPCSTR lpPageSetupTemplateName;
|
|
HGLOBAL hPageSetupTemplate;
|
|
} PAGESETUPDLGA,*LPPAGESETUPDLGA;
|
|
typedef struct tagPSDW {
|
|
DWORD lStructSize;
|
|
HWND hwndOwner;
|
|
HGLOBAL hDevMode;
|
|
HGLOBAL hDevNames;
|
|
DWORD Flags;
|
|
POINT ptPaperSize;
|
|
RECT rtMinMargin;
|
|
RECT rtMargin;
|
|
HINSTANCE hInstance;
|
|
LPARAM lCustData;
|
|
LPPAGESETUPHOOK lpfnPageSetupHook;
|
|
LPPAGEPAINTHOOK lpfnPagePaintHook;
|
|
LPCWSTR lpPageSetupTemplateName;
|
|
HGLOBAL hPageSetupTemplate;
|
|
} PAGESETUPDLGW,*LPPAGESETUPDLGW;
|
|
typedef PAGESETUPDLGA PAGESETUPDLG;
|
|
typedef LPPAGESETUPDLGA LPPAGESETUPDLG;
|
|
__attribute__((dllimport)) WINBOOL PageSetupDlgA(LPPAGESETUPDLGA);
|
|
__attribute__((dllimport)) WINBOOL PageSetupDlgW(LPPAGESETUPDLGW);
|
|
LPUWSTR uaw_CharUpperW(LPUWSTR String);
|
|
int uaw_lstrcmpW(PCUWSTR String1,PCUWSTR String2);
|
|
int uaw_lstrcmpiW(PCUWSTR String1,PCUWSTR String2);
|
|
int uaw_lstrlenW(LPCUWSTR String);
|
|
PUWSTR __attribute__((__cdecl__)) uaw_wcschr(PCUWSTR String,WCHAR Character);
|
|
PUWSTR __attribute__((__cdecl__)) uaw_wcscpy(PUWSTR Destination,PCUWSTR Source);
|
|
int __attribute__((__cdecl__)) uaw_wcsicmp(PCUWSTR String1,PCUWSTR String2);
|
|
size_t __attribute__((__cdecl__)) uaw_wcslen(PCUWSTR String);
|
|
PUWSTR __attribute__((__cdecl__)) uaw_wcsrchr(PCUWSTR String,WCHAR Character);
|
|
LPUWSTR ua_CharUpperW(LPUWSTR String);
|
|
int ua_lstrcmpW(LPCUWSTR String1,LPCUWSTR String2);
|
|
int ua_lstrcmpiW(LPCUWSTR String1,LPCUWSTR String2);
|
|
int ua_lstrlenW(LPCUWSTR String);
|
|
typedef WCHAR *PUWSTR_C;
|
|
PUWSTR_C ua_wcschr(PCUWSTR String,WCHAR Character);
|
|
PUWSTR_C ua_wcsrchr(PCUWSTR String,WCHAR Character);
|
|
PUWSTR ua_wcscpy(PUWSTR Destination,PCUWSTR Source);
|
|
size_t ua_wcslen(PCUWSTR String);
|
|
int ua_wcsicmp(LPCUWSTR String1,LPCUWSTR String2);
|
|
typedef struct _SERVICE_DESCRIPTIONA {
|
|
LPSTR lpDescription;
|
|
} SERVICE_DESCRIPTIONA,*LPSERVICE_DESCRIPTIONA;
|
|
typedef struct _SERVICE_DESCRIPTIONW {
|
|
LPWSTR lpDescription;
|
|
} SERVICE_DESCRIPTIONW,*LPSERVICE_DESCRIPTIONW;
|
|
typedef SERVICE_DESCRIPTIONA SERVICE_DESCRIPTION;
|
|
typedef LPSERVICE_DESCRIPTIONA LPSERVICE_DESCRIPTION;
|
|
typedef enum _SC_ACTION_TYPE {
|
|
SC_ACTION_NONE = 0,SC_ACTION_RESTART = 1,SC_ACTION_REBOOT = 2,SC_ACTION_RUN_COMMAND = 3
|
|
} SC_ACTION_TYPE;
|
|
typedef struct _SC_ACTION {
|
|
SC_ACTION_TYPE Type;
|
|
DWORD Delay;
|
|
} SC_ACTION,*LPSC_ACTION;
|
|
typedef struct _SERVICE_FAILURE_ACTIONSA {
|
|
DWORD dwResetPeriod;
|
|
LPSTR lpRebootMsg;
|
|
LPSTR lpCommand;
|
|
DWORD cActions;
|
|
SC_ACTION *lpsaActions;
|
|
} SERVICE_FAILURE_ACTIONSA,*LPSERVICE_FAILURE_ACTIONSA;
|
|
typedef struct _SERVICE_FAILURE_ACTIONSW {
|
|
DWORD dwResetPeriod;
|
|
LPWSTR lpRebootMsg;
|
|
LPWSTR lpCommand;
|
|
DWORD cActions;
|
|
SC_ACTION *lpsaActions;
|
|
} SERVICE_FAILURE_ACTIONSW,*LPSERVICE_FAILURE_ACTIONSW;
|
|
typedef SERVICE_FAILURE_ACTIONSA SERVICE_FAILURE_ACTIONS;
|
|
typedef LPSERVICE_FAILURE_ACTIONSA LPSERVICE_FAILURE_ACTIONS;
|
|
struct SC_HANDLE__ { int unused; }; typedef struct SC_HANDLE__ *SC_HANDLE;
|
|
typedef SC_HANDLE *LPSC_HANDLE;
|
|
struct SERVICE_STATUS_HANDLE__ { int unused; }; typedef struct SERVICE_STATUS_HANDLE__ *SERVICE_STATUS_HANDLE;
|
|
typedef enum _SC_STATUS_TYPE {
|
|
SC_STATUS_PROCESS_INFO = 0
|
|
} SC_STATUS_TYPE;
|
|
typedef enum _SC_ENUM_TYPE {
|
|
SC_ENUM_PROCESS_INFO = 0
|
|
} SC_ENUM_TYPE;
|
|
typedef struct _SERVICE_STATUS {
|
|
DWORD dwServiceType;
|
|
DWORD dwCurrentState;
|
|
DWORD dwControlsAccepted;
|
|
DWORD dwWin32ExitCode;
|
|
DWORD dwServiceSpecificExitCode;
|
|
DWORD dwCheckPoint;
|
|
DWORD dwWaitHint;
|
|
} SERVICE_STATUS,*LPSERVICE_STATUS;
|
|
typedef struct _SERVICE_STATUS_PROCESS {
|
|
DWORD dwServiceType;
|
|
DWORD dwCurrentState;
|
|
DWORD dwControlsAccepted;
|
|
DWORD dwWin32ExitCode;
|
|
DWORD dwServiceSpecificExitCode;
|
|
DWORD dwCheckPoint;
|
|
DWORD dwWaitHint;
|
|
DWORD dwProcessId;
|
|
DWORD dwServiceFlags;
|
|
} SERVICE_STATUS_PROCESS,*LPSERVICE_STATUS_PROCESS;
|
|
typedef struct _ENUM_SERVICE_STATUSA {
|
|
LPSTR lpServiceName;
|
|
LPSTR lpDisplayName;
|
|
SERVICE_STATUS ServiceStatus;
|
|
} ENUM_SERVICE_STATUSA,*LPENUM_SERVICE_STATUSA;
|
|
typedef struct _ENUM_SERVICE_STATUSW {
|
|
LPWSTR lpServiceName;
|
|
LPWSTR lpDisplayName;
|
|
SERVICE_STATUS ServiceStatus;
|
|
} ENUM_SERVICE_STATUSW,*LPENUM_SERVICE_STATUSW;
|
|
typedef ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS;
|
|
typedef LPENUM_SERVICE_STATUSA LPENUM_SERVICE_STATUS;
|
|
typedef struct _ENUM_SERVICE_STATUS_PROCESSA {
|
|
LPSTR lpServiceName;
|
|
LPSTR lpDisplayName;
|
|
SERVICE_STATUS_PROCESS ServiceStatusProcess;
|
|
} ENUM_SERVICE_STATUS_PROCESSA,*LPENUM_SERVICE_STATUS_PROCESSA;
|
|
typedef struct _ENUM_SERVICE_STATUS_PROCESSW {
|
|
LPWSTR lpServiceName;
|
|
LPWSTR lpDisplayName;
|
|
SERVICE_STATUS_PROCESS ServiceStatusProcess;
|
|
} ENUM_SERVICE_STATUS_PROCESSW,*LPENUM_SERVICE_STATUS_PROCESSW;
|
|
typedef ENUM_SERVICE_STATUS_PROCESSA ENUM_SERVICE_STATUS_PROCESS;
|
|
typedef LPENUM_SERVICE_STATUS_PROCESSA LPENUM_SERVICE_STATUS_PROCESS;
|
|
typedef LPVOID SC_LOCK;
|
|
typedef struct _QUERY_SERVICE_LOCK_STATUSA {
|
|
DWORD fIsLocked;
|
|
LPSTR lpLockOwner;
|
|
DWORD dwLockDuration;
|
|
} QUERY_SERVICE_LOCK_STATUSA,*LPQUERY_SERVICE_LOCK_STATUSA;
|
|
typedef struct _QUERY_SERVICE_LOCK_STATUSW {
|
|
DWORD fIsLocked;
|
|
LPWSTR lpLockOwner;
|
|
DWORD dwLockDuration;
|
|
} QUERY_SERVICE_LOCK_STATUSW,*LPQUERY_SERVICE_LOCK_STATUSW;
|
|
typedef QUERY_SERVICE_LOCK_STATUSA QUERY_SERVICE_LOCK_STATUS;
|
|
typedef LPQUERY_SERVICE_LOCK_STATUSA LPQUERY_SERVICE_LOCK_STATUS;
|
|
typedef struct _QUERY_SERVICE_CONFIGA {
|
|
DWORD dwServiceType;
|
|
DWORD dwStartType;
|
|
DWORD dwErrorControl;
|
|
LPSTR lpBinaryPathName;
|
|
LPSTR lpLoadOrderGroup;
|
|
DWORD dwTagId;
|
|
LPSTR lpDependencies;
|
|
LPSTR lpServiceStartName;
|
|
LPSTR lpDisplayName;
|
|
} QUERY_SERVICE_CONFIGA,*LPQUERY_SERVICE_CONFIGA;
|
|
typedef struct _QUERY_SERVICE_CONFIGW {
|
|
DWORD dwServiceType;
|
|
DWORD dwStartType;
|
|
DWORD dwErrorControl;
|
|
LPWSTR lpBinaryPathName;
|
|
LPWSTR lpLoadOrderGroup;
|
|
DWORD dwTagId;
|
|
LPWSTR lpDependencies;
|
|
LPWSTR lpServiceStartName;
|
|
LPWSTR lpDisplayName;
|
|
} QUERY_SERVICE_CONFIGW,*LPQUERY_SERVICE_CONFIGW;
|
|
typedef QUERY_SERVICE_CONFIGA QUERY_SERVICE_CONFIG;
|
|
typedef LPQUERY_SERVICE_CONFIGA LPQUERY_SERVICE_CONFIG;
|
|
typedef void ( *LPSERVICE_MAIN_FUNCTIONW)(DWORD dwNumServicesArgs,LPWSTR *lpServiceArgVectors);
|
|
typedef void ( *LPSERVICE_MAIN_FUNCTIONA)(DWORD dwNumServicesArgs,LPSTR *lpServiceArgVectors);
|
|
typedef struct _SERVICE_TABLE_ENTRYA {
|
|
LPSTR lpServiceName;
|
|
LPSERVICE_MAIN_FUNCTIONA lpServiceProc;
|
|
} SERVICE_TABLE_ENTRYA,*LPSERVICE_TABLE_ENTRYA;
|
|
typedef struct _SERVICE_TABLE_ENTRYW {
|
|
LPWSTR lpServiceName;
|
|
LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
|
|
} SERVICE_TABLE_ENTRYW,*LPSERVICE_TABLE_ENTRYW;
|
|
typedef SERVICE_TABLE_ENTRYA SERVICE_TABLE_ENTRY;
|
|
typedef LPSERVICE_TABLE_ENTRYA LPSERVICE_TABLE_ENTRY;
|
|
typedef void ( *LPHANDLER_FUNCTION)(DWORD dwControl);
|
|
typedef DWORD ( *LPHANDLER_FUNCTION_EX)(DWORD dwControl,DWORD dwEventType,LPVOID lpEventData,LPVOID lpContext);
|
|
__attribute__((dllimport)) WINBOOL ChangeServiceConfigA(SC_HANDLE hService,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCSTR lpBinaryPathName,LPCSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCSTR lpDependencies,LPCSTR lpServiceStartName,LPCSTR lpPassword,LPCSTR lpDisplayName);
|
|
__attribute__((dllimport)) WINBOOL ChangeServiceConfigW(SC_HANDLE hService,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCWSTR lpBinaryPathName,LPCWSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCWSTR lpDependencies,LPCWSTR lpServiceStartName,LPCWSTR lpPassword,LPCWSTR lpDisplayName);
|
|
__attribute__((dllimport)) WINBOOL ChangeServiceConfig2A(SC_HANDLE hService,DWORD dwInfoLevel,LPVOID lpInfo);
|
|
__attribute__((dllimport)) WINBOOL ChangeServiceConfig2W(SC_HANDLE hService,DWORD dwInfoLevel,LPVOID lpInfo);
|
|
__attribute__((dllimport)) WINBOOL CloseServiceHandle(SC_HANDLE hSCObject);
|
|
__attribute__((dllimport)) WINBOOL ControlService(SC_HANDLE hService,DWORD dwControl,LPSERVICE_STATUS lpServiceStatus);
|
|
__attribute__((dllimport)) SC_HANDLE CreateServiceA(SC_HANDLE hSCManager,LPCSTR lpServiceName,LPCSTR lpDisplayName,DWORD dwDesiredAccess,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCSTR lpBinaryPathName,LPCSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCSTR lpDependencies,LPCSTR lpServiceStartName,LPCSTR lpPassword);
|
|
__attribute__((dllimport)) SC_HANDLE CreateServiceW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,LPCWSTR lpDisplayName,DWORD dwDesiredAccess,DWORD dwServiceType,DWORD dwStartType,DWORD dwErrorControl,LPCWSTR lpBinaryPathName,LPCWSTR lpLoadOrderGroup,LPDWORD lpdwTagId,LPCWSTR lpDependencies,LPCWSTR lpServiceStartName,LPCWSTR lpPassword);
|
|
__attribute__((dllimport)) WINBOOL DeleteService(SC_HANDLE hService);
|
|
__attribute__((dllimport)) WINBOOL EnumDependentServicesA(SC_HANDLE hService,DWORD dwServiceState,LPENUM_SERVICE_STATUSA lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned);
|
|
__attribute__((dllimport)) WINBOOL EnumDependentServicesW(SC_HANDLE hService,DWORD dwServiceState,LPENUM_SERVICE_STATUSW lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned);
|
|
__attribute__((dllimport)) WINBOOL EnumServicesStatusA(SC_HANDLE hSCManager,DWORD dwServiceType,DWORD dwServiceState,LPENUM_SERVICE_STATUSA lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle);
|
|
__attribute__((dllimport)) WINBOOL EnumServicesStatusW(SC_HANDLE hSCManager,DWORD dwServiceType,DWORD dwServiceState,LPENUM_SERVICE_STATUSW lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle);
|
|
__attribute__((dllimport)) WINBOOL EnumServicesStatusExA(SC_HANDLE hSCManager,SC_ENUM_TYPE InfoLevel,DWORD dwServiceType,DWORD dwServiceState,LPBYTE lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle,LPCSTR pszGroupName);
|
|
__attribute__((dllimport)) WINBOOL EnumServicesStatusExW(SC_HANDLE hSCManager,SC_ENUM_TYPE InfoLevel,DWORD dwServiceType,DWORD dwServiceState,LPBYTE lpServices,DWORD cbBufSize,LPDWORD pcbBytesNeeded,LPDWORD lpServicesReturned,LPDWORD lpResumeHandle,LPCWSTR pszGroupName);
|
|
__attribute__((dllimport)) WINBOOL GetServiceKeyNameA(SC_HANDLE hSCManager,LPCSTR lpDisplayName,LPSTR lpServiceName,LPDWORD lpcchBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetServiceKeyNameW(SC_HANDLE hSCManager,LPCWSTR lpDisplayName,LPWSTR lpServiceName,LPDWORD lpcchBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetServiceDisplayNameA(SC_HANDLE hSCManager,LPCSTR lpServiceName,LPSTR lpDisplayName,LPDWORD lpcchBuffer);
|
|
__attribute__((dllimport)) WINBOOL GetServiceDisplayNameW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,LPWSTR lpDisplayName,LPDWORD lpcchBuffer);
|
|
__attribute__((dllimport)) SC_LOCK LockServiceDatabase(SC_HANDLE hSCManager);
|
|
__attribute__((dllimport)) WINBOOL NotifyBootConfigStatus(WINBOOL BootAcceptable);
|
|
__attribute__((dllimport)) SC_HANDLE OpenSCManagerA(LPCSTR lpMachineName,LPCSTR lpDatabaseName,DWORD dwDesiredAccess);
|
|
__attribute__((dllimport)) SC_HANDLE OpenSCManagerW(LPCWSTR lpMachineName,LPCWSTR lpDatabaseName,DWORD dwDesiredAccess);
|
|
__attribute__((dllimport)) SC_HANDLE OpenServiceA(SC_HANDLE hSCManager,LPCSTR lpServiceName,DWORD dwDesiredAccess);
|
|
__attribute__((dllimport)) SC_HANDLE OpenServiceW(SC_HANDLE hSCManager,LPCWSTR lpServiceName,DWORD dwDesiredAccess);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceConfigA(SC_HANDLE hService,LPQUERY_SERVICE_CONFIGA lpServiceConfig,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceConfigW(SC_HANDLE hService,LPQUERY_SERVICE_CONFIGW lpServiceConfig,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceConfig2A(SC_HANDLE hService,DWORD dwInfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceConfig2W(SC_HANDLE hService,DWORD dwInfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceLockStatusA(SC_HANDLE hSCManager,LPQUERY_SERVICE_LOCK_STATUSA lpLockStatus,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceLockStatusW(SC_HANDLE hSCManager,LPQUERY_SERVICE_LOCK_STATUSW lpLockStatus,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceObjectSecurity(SC_HANDLE hService,SECURITY_INFORMATION dwSecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceStatus(SC_HANDLE hService,LPSERVICE_STATUS lpServiceStatus);
|
|
__attribute__((dllimport)) WINBOOL QueryServiceStatusEx(SC_HANDLE hService,SC_STATUS_TYPE InfoLevel,LPBYTE lpBuffer,DWORD cbBufSize,LPDWORD pcbBytesNeeded);
|
|
__attribute__((dllimport)) SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerA(LPCSTR lpServiceName,LPHANDLER_FUNCTION lpHandlerProc);
|
|
__attribute__((dllimport)) SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerW(LPCWSTR lpServiceName,LPHANDLER_FUNCTION lpHandlerProc);
|
|
__attribute__((dllimport)) SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerExA(LPCSTR lpServiceName,LPHANDLER_FUNCTION_EX lpHandlerProc,LPVOID lpContext);
|
|
__attribute__((dllimport)) SERVICE_STATUS_HANDLE RegisterServiceCtrlHandlerExW(LPCWSTR lpServiceName,LPHANDLER_FUNCTION_EX lpHandlerProc,LPVOID lpContext);
|
|
__attribute__((dllimport)) WINBOOL SetServiceObjectSecurity(SC_HANDLE hService,SECURITY_INFORMATION dwSecurityInformation,PSECURITY_DESCRIPTOR lpSecurityDescriptor);
|
|
__attribute__((dllimport)) WINBOOL SetServiceStatus(SERVICE_STATUS_HANDLE hServiceStatus,LPSERVICE_STATUS lpServiceStatus);
|
|
__attribute__((dllimport)) WINBOOL StartServiceCtrlDispatcherA(const SERVICE_TABLE_ENTRYA *lpServiceStartTable);
|
|
__attribute__((dllimport)) WINBOOL StartServiceCtrlDispatcherW(const SERVICE_TABLE_ENTRYW *lpServiceStartTable);
|
|
__attribute__((dllimport)) WINBOOL StartServiceA(SC_HANDLE hService,DWORD dwNumServiceArgs,LPCSTR *lpServiceArgVectors);
|
|
__attribute__((dllimport)) WINBOOL StartServiceW(SC_HANDLE hService,DWORD dwNumServiceArgs,LPCWSTR *lpServiceArgVectors);
|
|
__attribute__((dllimport)) WINBOOL UnlockServiceDatabase(SC_LOCK ScLock);
|
|
typedef struct _MODEMDEVCAPS {
|
|
DWORD dwActualSize;
|
|
DWORD dwRequiredSize;
|
|
DWORD dwDevSpecificOffset;
|
|
DWORD dwDevSpecificSize;
|
|
DWORD dwModemProviderVersion;
|
|
DWORD dwModemManufacturerOffset;
|
|
DWORD dwModemManufacturerSize;
|
|
DWORD dwModemModelOffset;
|
|
DWORD dwModemModelSize;
|
|
DWORD dwModemVersionOffset;
|
|
DWORD dwModemVersionSize;
|
|
DWORD dwDialOptions;
|
|
DWORD dwCallSetupFailTimer;
|
|
DWORD dwInactivityTimeout;
|
|
DWORD dwSpeakerVolume;
|
|
DWORD dwSpeakerMode;
|
|
DWORD dwModemOptions;
|
|
DWORD dwMaxDTERate;
|
|
DWORD dwMaxDCERate;
|
|
BYTE abVariablePortion[1];
|
|
} MODEMDEVCAPS,*PMODEMDEVCAPS,*LPMODEMDEVCAPS;
|
|
typedef struct _MODEMSETTINGS {
|
|
DWORD dwActualSize;
|
|
DWORD dwRequiredSize;
|
|
DWORD dwDevSpecificOffset;
|
|
DWORD dwDevSpecificSize;
|
|
DWORD dwCallSetupFailTimer;
|
|
DWORD dwInactivityTimeout;
|
|
DWORD dwSpeakerVolume;
|
|
DWORD dwSpeakerMode;
|
|
DWORD dwPreferredModemOptions;
|
|
DWORD dwNegotiatedModemOptions;
|
|
DWORD dwNegotiatedDCERate;
|
|
BYTE abVariablePortion [1];
|
|
} MODEMSETTINGS,*PMODEMSETTINGS,*LPMODEMSETTINGS;
|
|
struct HIMC__ { int unused; }; typedef struct HIMC__ *HIMC;
|
|
struct HIMCC__ { int unused; }; typedef struct HIMCC__ *HIMCC;
|
|
typedef HKL *LPHKL;
|
|
typedef struct tagCOMPOSITIONFORM {
|
|
DWORD dwStyle;
|
|
POINT ptCurrentPos;
|
|
RECT rcArea;
|
|
} COMPOSITIONFORM,*PCOMPOSITIONFORM,*NPCOMPOSITIONFORM,*LPCOMPOSITIONFORM;
|
|
typedef struct tagCANDIDATEFORM {
|
|
DWORD dwIndex;
|
|
DWORD dwStyle;
|
|
POINT ptCurrentPos;
|
|
RECT rcArea;
|
|
} CANDIDATEFORM,*PCANDIDATEFORM,*NPCANDIDATEFORM,*LPCANDIDATEFORM;
|
|
typedef struct tagCANDIDATELIST {
|
|
DWORD dwSize;
|
|
DWORD dwStyle;
|
|
DWORD dwCount;
|
|
DWORD dwSelection;
|
|
DWORD dwPageStart;
|
|
DWORD dwPageSize;
|
|
DWORD dwOffset[1];
|
|
} CANDIDATELIST,*PCANDIDATELIST,*NPCANDIDATELIST,*LPCANDIDATELIST;
|
|
typedef struct tagREGISTERWORDA {
|
|
LPSTR lpReading;
|
|
LPSTR lpWord;
|
|
} REGISTERWORDA,*PREGISTERWORDA,*NPREGISTERWORDA,*LPREGISTERWORDA;
|
|
typedef struct tagREGISTERWORDW {
|
|
LPWSTR lpReading;
|
|
LPWSTR lpWord;
|
|
} REGISTERWORDW,*PREGISTERWORDW,*NPREGISTERWORDW,*LPREGISTERWORDW;
|
|
typedef REGISTERWORDA REGISTERWORD;
|
|
typedef PREGISTERWORDA PREGISTERWORD;
|
|
typedef NPREGISTERWORDA NPREGISTERWORD;
|
|
typedef LPREGISTERWORDA LPREGISTERWORD;
|
|
typedef struct tagRECONVERTSTRING {
|
|
DWORD dwSize;
|
|
DWORD dwVersion;
|
|
DWORD dwStrLen;
|
|
DWORD dwStrOffset;
|
|
DWORD dwCompStrLen;
|
|
DWORD dwCompStrOffset;
|
|
DWORD dwTargetStrLen;
|
|
DWORD dwTargetStrOffset;
|
|
} RECONVERTSTRING,*PRECONVERTSTRING,*NPRECONVERTSTRING,*LPRECONVERTSTRING;
|
|
typedef struct tagSTYLEBUFA {
|
|
DWORD dwStyle;
|
|
CHAR szDescription[32];
|
|
} STYLEBUFA,*PSTYLEBUFA,*NPSTYLEBUFA,*LPSTYLEBUFA;
|
|
typedef struct tagSTYLEBUFW {
|
|
DWORD dwStyle;
|
|
WCHAR szDescription[32];
|
|
} STYLEBUFW,*PSTYLEBUFW,*NPSTYLEBUFW,*LPSTYLEBUFW;
|
|
typedef STYLEBUFA STYLEBUF;
|
|
typedef PSTYLEBUFA PSTYLEBUF;
|
|
typedef NPSTYLEBUFA NPSTYLEBUF;
|
|
typedef LPSTYLEBUFA LPSTYLEBUF;
|
|
typedef struct tagIMEMENUITEMINFOA {
|
|
UINT cbSize;
|
|
UINT fType;
|
|
UINT fState;
|
|
UINT wID;
|
|
HBITMAP hbmpChecked;
|
|
HBITMAP hbmpUnchecked;
|
|
DWORD dwItemData;
|
|
CHAR szString[80];
|
|
HBITMAP hbmpItem;
|
|
} IMEMENUITEMINFOA,*PIMEMENUITEMINFOA,*NPIMEMENUITEMINFOA,*LPIMEMENUITEMINFOA;
|
|
typedef struct tagIMEMENUITEMINFOW {
|
|
UINT cbSize;
|
|
UINT fType;
|
|
UINT fState;
|
|
UINT wID;
|
|
HBITMAP hbmpChecked;
|
|
HBITMAP hbmpUnchecked;
|
|
DWORD dwItemData;
|
|
WCHAR szString[80];
|
|
HBITMAP hbmpItem;
|
|
} IMEMENUITEMINFOW,*PIMEMENUITEMINFOW,*NPIMEMENUITEMINFOW,*LPIMEMENUITEMINFOW;
|
|
typedef IMEMENUITEMINFOA IMEMENUITEMINFO;
|
|
typedef PIMEMENUITEMINFOA PIMEMENUITEMINFO;
|
|
typedef NPIMEMENUITEMINFOA NPIMEMENUITEMINFO;
|
|
typedef LPIMEMENUITEMINFOA LPIMEMENUITEMINFO;
|
|
typedef struct tagIMECHARPOSITION {
|
|
DWORD dwSize;
|
|
DWORD dwCharPos;
|
|
POINT pt;
|
|
UINT cLineHeight;
|
|
RECT rcDocument;
|
|
} IMECHARPOSITION,*PIMECHARPOSITION,*NPIMECHARPOSITION,*LPIMECHARPOSITION;
|
|
typedef WINBOOL ( *IMCENUMPROC)(HIMC,LPARAM);
|
|
HKL ImmInstallIMEA(LPCSTR lpszIMEFileName,LPCSTR lpszLayoutText);
|
|
HKL ImmInstallIMEW(LPCWSTR lpszIMEFileName,LPCWSTR lpszLayoutText);
|
|
HWND ImmGetDefaultIMEWnd(HWND);
|
|
UINT ImmGetDescriptionA(HKL,LPSTR,UINT uBufLen);
|
|
UINT ImmGetDescriptionW(HKL,LPWSTR,UINT uBufLen);
|
|
UINT ImmGetIMEFileNameA(HKL,LPSTR,UINT uBufLen);
|
|
UINT ImmGetIMEFileNameW(HKL,LPWSTR,UINT uBufLen);
|
|
DWORD ImmGetProperty(HKL,DWORD);
|
|
WINBOOL ImmIsIME(HKL);
|
|
WINBOOL ImmSimulateHotKey(HWND,DWORD);
|
|
HIMC ImmCreateContext(void);
|
|
WINBOOL ImmDestroyContext(HIMC);
|
|
HIMC ImmGetContext(HWND);
|
|
WINBOOL ImmReleaseContext(HWND,HIMC);
|
|
HIMC ImmAssociateContext(HWND,HIMC);
|
|
WINBOOL ImmAssociateContextEx(HWND,HIMC,DWORD);
|
|
LONG ImmGetCompositionStringA(HIMC,DWORD,LPVOID,DWORD);
|
|
LONG ImmGetCompositionStringW(HIMC,DWORD,LPVOID,DWORD);
|
|
WINBOOL ImmSetCompositionStringA(HIMC,DWORD dwIndex,LPVOID lpComp,DWORD,LPVOID lpRead,DWORD);
|
|
WINBOOL ImmSetCompositionStringW(HIMC,DWORD dwIndex,LPVOID lpComp,DWORD,LPVOID lpRead,DWORD);
|
|
DWORD ImmGetCandidateListCountA(HIMC,LPDWORD lpdwListCount);
|
|
DWORD ImmGetCandidateListCountW(HIMC,LPDWORD lpdwListCount);
|
|
DWORD ImmGetCandidateListA(HIMC,DWORD deIndex,LPCANDIDATELIST,DWORD dwBufLen);
|
|
DWORD ImmGetCandidateListW(HIMC,DWORD deIndex,LPCANDIDATELIST,DWORD dwBufLen);
|
|
DWORD ImmGetGuideLineA(HIMC,DWORD dwIndex,LPSTR,DWORD dwBufLen);
|
|
DWORD ImmGetGuideLineW(HIMC,DWORD dwIndex,LPWSTR,DWORD dwBufLen);
|
|
WINBOOL ImmGetConversionStatus(HIMC,LPDWORD,LPDWORD);
|
|
WINBOOL ImmSetConversionStatus(HIMC,DWORD,DWORD);
|
|
WINBOOL ImmGetOpenStatus(HIMC);
|
|
WINBOOL ImmSetOpenStatus(HIMC,WINBOOL);
|
|
WINBOOL ImmGetCompositionFontA(HIMC,LPLOGFONTA);
|
|
WINBOOL ImmGetCompositionFontW(HIMC,LPLOGFONTW);
|
|
WINBOOL ImmSetCompositionFontA(HIMC,LPLOGFONTA);
|
|
WINBOOL ImmSetCompositionFontW(HIMC,LPLOGFONTW);
|
|
typedef int ( *REGISTERWORDENUMPROCA)(LPCSTR,DWORD,LPCSTR,LPVOID);
|
|
typedef int ( *REGISTERWORDENUMPROCW)(LPCWSTR,DWORD,LPCWSTR,LPVOID);
|
|
WINBOOL ImmConfigureIMEA(HKL,HWND,DWORD,LPVOID);
|
|
WINBOOL ImmConfigureIMEW(HKL,HWND,DWORD,LPVOID);
|
|
LRESULT ImmEscapeA(HKL,HIMC,UINT,LPVOID);
|
|
LRESULT ImmEscapeW(HKL,HIMC,UINT,LPVOID);
|
|
DWORD ImmGetConversionListA(HKL,HIMC,LPCSTR,LPCANDIDATELIST,DWORD dwBufLen,UINT uFlag);
|
|
DWORD ImmGetConversionListW(HKL,HIMC,LPCWSTR,LPCANDIDATELIST,DWORD dwBufLen,UINT uFlag);
|
|
WINBOOL ImmNotifyIME(HIMC,DWORD dwAction,DWORD dwIndex,DWORD dwValue);
|
|
WINBOOL ImmGetStatusWindowPos(HIMC,LPPOINT);
|
|
WINBOOL ImmSetStatusWindowPos(HIMC,LPPOINT);
|
|
WINBOOL ImmGetCompositionWindow(HIMC,LPCOMPOSITIONFORM);
|
|
WINBOOL ImmSetCompositionWindow(HIMC,LPCOMPOSITIONFORM);
|
|
WINBOOL ImmGetCandidateWindow(HIMC,DWORD,LPCANDIDATEFORM);
|
|
WINBOOL ImmSetCandidateWindow(HIMC,LPCANDIDATEFORM);
|
|
WINBOOL ImmIsUIMessageA(HWND,UINT,WPARAM,LPARAM);
|
|
WINBOOL ImmIsUIMessageW(HWND,UINT,WPARAM,LPARAM);
|
|
UINT ImmGetVirtualKey(HWND);
|
|
WINBOOL ImmRegisterWordA(HKL,LPCSTR lpszReading,DWORD,LPCSTR lpszRegister);
|
|
WINBOOL ImmRegisterWordW(HKL,LPCWSTR lpszReading,DWORD,LPCWSTR lpszRegister);
|
|
WINBOOL ImmUnregisterWordA(HKL,LPCSTR lpszReading,DWORD,LPCSTR lpszUnregister);
|
|
WINBOOL ImmUnregisterWordW(HKL,LPCWSTR lpszReading,DWORD,LPCWSTR lpszUnregister);
|
|
UINT ImmGetRegisterWordStyleA(HKL,UINT nItem,LPSTYLEBUFA);
|
|
UINT ImmGetRegisterWordStyleW(HKL,UINT nItem,LPSTYLEBUFW);
|
|
UINT ImmEnumRegisterWordA(HKL,REGISTERWORDENUMPROCA,LPCSTR lpszReading,DWORD,LPCSTR lpszRegister,LPVOID);
|
|
UINT ImmEnumRegisterWordW(HKL,REGISTERWORDENUMPROCW,LPCWSTR lpszReading,DWORD,LPCWSTR lpszRegister,LPVOID);
|
|
WINBOOL ImmDisableIME(DWORD);
|
|
WINBOOL ImmEnumInputContext(DWORD idThread,IMCENUMPROC lpfn,LPARAM lParam);
|
|
DWORD ImmGetImeMenuItemsA(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOA,LPIMEMENUITEMINFOA,DWORD);
|
|
DWORD ImmGetImeMenuItemsW(HIMC,DWORD,DWORD,LPIMEMENUITEMINFOW,LPIMEMENUITEMINFOW,DWORD);
|
|
WINBOOL ImmDisableTextFrameService(DWORD idThread);
|
|
struct timeval
|
|
{
|
|
long tv_sec;
|
|
long tv_usec;
|
|
};
|
|
typedef unsigned char u_char;
|
|
typedef unsigned short u_short;
|
|
typedef unsigned int u_int;
|
|
|
|
typedef unsigned long u_long;
|
|
|
|
__extension__
|
|
typedef unsigned long long u_int64;
|
|
typedef struct in_addr {
|
|
union {
|
|
struct { u_char s_b1, s_b2, s_b3, s_b4; } S_un_b;
|
|
struct { u_short s_w1, s_w2; } S_un_w;
|
|
u_long S_addr;
|
|
} S_un;
|
|
} IN_ADDR, *PIN_ADDR, *LPIN_ADDR;
|
|
typedef UINT_PTR SOCKET;
|
|
typedef struct fd_set
|
|
{
|
|
u_int fd_count;
|
|
SOCKET fd_array[64];
|
|
} fd_set;
|
|
int __WSAFDIsSet(SOCKET,fd_set *);
|
|
typedef struct fd_set FD_SET;
|
|
typedef struct fd_set *PFD_SET;
|
|
typedef struct fd_set *LPFD_SET;
|
|
struct hostent {
|
|
char *h_name;
|
|
char **h_aliases;
|
|
short h_addrtype;
|
|
short h_length;
|
|
char **h_addr_list;
|
|
};
|
|
struct netent {
|
|
char *n_name;
|
|
char **n_aliases;
|
|
short n_addrtype;
|
|
u_long n_net;
|
|
};
|
|
struct servent {
|
|
char *s_name;
|
|
char **s_aliases;
|
|
char *s_proto;
|
|
short s_port;
|
|
};
|
|
struct protoent {
|
|
char *p_name;
|
|
char **p_aliases;
|
|
short p_proto;
|
|
};
|
|
struct sockproto {
|
|
u_short sp_family;
|
|
u_short sp_protocol;
|
|
};
|
|
struct linger {
|
|
u_short l_onoff;
|
|
u_short l_linger;
|
|
};
|
|
struct sockaddr {
|
|
u_short sa_family;
|
|
char sa_data[14];
|
|
};
|
|
struct sockaddr_in {
|
|
short sin_family;
|
|
u_short sin_port;
|
|
struct in_addr sin_addr;
|
|
char sin_zero[8];
|
|
};
|
|
typedef struct hostent HOSTENT;
|
|
typedef struct hostent *PHOSTENT;
|
|
typedef struct hostent *LPHOSTENT;
|
|
typedef struct servent SERVENT;
|
|
typedef struct servent *PSERVENT;
|
|
typedef struct servent *LPSERVENT;
|
|
typedef struct protoent PROTOENT;
|
|
typedef struct protoent *PPROTOENT;
|
|
typedef struct protoent *LPPROTOENT;
|
|
typedef struct sockaddr SOCKADDR;
|
|
typedef struct sockaddr *PSOCKADDR;
|
|
typedef struct sockaddr *LPSOCKADDR;
|
|
typedef struct sockaddr_in SOCKADDR_IN;
|
|
typedef struct sockaddr_in *PSOCKADDR_IN;
|
|
typedef struct sockaddr_in *LPSOCKADDR_IN;
|
|
typedef struct linger LINGER;
|
|
typedef struct linger *PLINGER;
|
|
typedef struct linger *LPLINGER;
|
|
typedef struct timeval TIMEVAL;
|
|
typedef struct timeval *PTIMEVAL;
|
|
typedef struct timeval *LPTIMEVAL;
|
|
typedef struct WSAData {
|
|
WORD wVersion;
|
|
WORD wHighVersion;
|
|
unsigned short iMaxSockets;
|
|
unsigned short iMaxUdpDg;
|
|
char *lpVendorInfo;
|
|
char szDescription[256 +1];
|
|
char szSystemStatus[128 +1];
|
|
} WSADATA, *LPWSADATA;
|
|
typedef enum _SCOPE_LEVEL {
|
|
ScopeLevelInterface = 1,
|
|
ScopeLevelLink = 2,
|
|
ScopeLevelSubnet = 3,
|
|
ScopeLevelAdmin = 4,
|
|
ScopeLevelSite = 5,
|
|
ScopeLevelOrganization = 8,
|
|
ScopeLevelGlobal = 14,
|
|
ScopeLevelCount = 16
|
|
} SCOPE_LEVEL;
|
|
typedef struct _SCOPE_ID {
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
ULONG Zone : 28;
|
|
ULONG Level : 4;
|
|
};
|
|
ULONG Value;
|
|
};
|
|
} SCOPE_ID, *PSCOPE_ID;
|
|
struct sockaddr_storage {
|
|
short ss_family;
|
|
char __ss_pad1[((8) - sizeof (short))];
|
|
__extension__ long long __ss_align;
|
|
char __ss_pad2[(128 - (sizeof (short) + ((8) - sizeof (short)) + (8)))];
|
|
};
|
|
typedef struct _OVERLAPPED *LPWSAOVERLAPPED;
|
|
typedef struct _WSABUF {
|
|
u_long len;
|
|
char *buf;
|
|
} WSABUF,*LPWSABUF;
|
|
typedef ULONG SERVICETYPE;
|
|
typedef struct _flowspec {
|
|
ULONG TokenRate;
|
|
ULONG TokenBucketSize;
|
|
ULONG PeakBandwidth;
|
|
ULONG Latency;
|
|
ULONG DelayVariation;
|
|
SERVICETYPE ServiceType;
|
|
ULONG MaxSduSize;
|
|
ULONG MinimumPolicedSize;
|
|
} FLOWSPEC,*PFLOWSPEC,*LPFLOWSPEC;
|
|
typedef struct _QOS_OBJECT_HDR {
|
|
ULONG ObjectType;
|
|
ULONG ObjectLength;
|
|
} QOS_OBJECT_HDR, *LPQOS_OBJECT_HDR;
|
|
typedef struct _QOS_SD_MODE {
|
|
QOS_OBJECT_HDR ObjectHdr;
|
|
ULONG ShapeDiscardMode;
|
|
} QOS_SD_MODE, *LPQOS_SD_MODE;
|
|
typedef struct _QOS_SHAPING_RATE {
|
|
QOS_OBJECT_HDR ObjectHdr;
|
|
ULONG ShapingRate;
|
|
} QOS_SHAPING_RATE, *LPQOS_SHAPING_RATE;
|
|
typedef struct _QualityOfService {
|
|
FLOWSPEC SendingFlowspec;
|
|
FLOWSPEC ReceivingFlowspec;
|
|
WSABUF ProviderSpecific;
|
|
} QOS,*LPQOS;
|
|
typedef unsigned int GROUP;
|
|
typedef struct _WSANETWORKEVENTS {
|
|
long lNetworkEvents;
|
|
int iErrorCode[10];
|
|
} WSANETWORKEVENTS,*LPWSANETWORKEVENTS;
|
|
typedef struct _WSAPROTOCOLCHAIN {
|
|
int ChainLen;
|
|
DWORD ChainEntries[7];
|
|
} WSAPROTOCOLCHAIN,*LPWSAPROTOCOLCHAIN;
|
|
typedef struct _WSAPROTOCOL_INFOA {
|
|
DWORD dwServiceFlags1;
|
|
DWORD dwServiceFlags2;
|
|
DWORD dwServiceFlags3;
|
|
DWORD dwServiceFlags4;
|
|
DWORD dwProviderFlags;
|
|
GUID ProviderId;
|
|
DWORD dwCatalogEntryId;
|
|
WSAPROTOCOLCHAIN ProtocolChain;
|
|
int iVersion;
|
|
int iAddressFamily;
|
|
int iMaxSockAddr;
|
|
int iMinSockAddr;
|
|
int iSocketType;
|
|
int iProtocol;
|
|
int iProtocolMaxOffset;
|
|
int iNetworkByteOrder;
|
|
int iSecurityScheme;
|
|
DWORD dwMessageSize;
|
|
DWORD dwProviderReserved;
|
|
CHAR szProtocol[255 +1];
|
|
} WSAPROTOCOL_INFOA,*LPWSAPROTOCOL_INFOA;
|
|
typedef struct _WSAPROTOCOL_INFOW {
|
|
DWORD dwServiceFlags1;
|
|
DWORD dwServiceFlags2;
|
|
DWORD dwServiceFlags3;
|
|
DWORD dwServiceFlags4;
|
|
DWORD dwProviderFlags;
|
|
GUID ProviderId;
|
|
DWORD dwCatalogEntryId;
|
|
WSAPROTOCOLCHAIN ProtocolChain;
|
|
int iVersion;
|
|
int iAddressFamily;
|
|
int iMaxSockAddr;
|
|
int iMinSockAddr;
|
|
int iSocketType;
|
|
int iProtocol;
|
|
int iProtocolMaxOffset;
|
|
int iNetworkByteOrder;
|
|
int iSecurityScheme;
|
|
DWORD dwMessageSize;
|
|
DWORD dwProviderReserved;
|
|
WCHAR szProtocol[255 +1];
|
|
} WSAPROTOCOL_INFOW,*LPWSAPROTOCOL_INFOW;
|
|
typedef WSAPROTOCOL_INFOA WSAPROTOCOL_INFO;
|
|
typedef LPWSAPROTOCOL_INFOA LPWSAPROTOCOL_INFO;
|
|
typedef int ( *LPCONDITIONPROC)(LPWSABUF lpCallerId,LPWSABUF lpCallerData,LPQOS lpSQOS,LPQOS lpGQOS,LPWSABUF lpCalleeId,LPWSABUF lpCalleeData,GROUP *g,DWORD_PTR dwCallbackData);
|
|
typedef void ( *LPWSAOVERLAPPED_COMPLETION_ROUTINE)(DWORD dwError,DWORD cbTransferred,LPWSAOVERLAPPED lpOverlapped,DWORD dwFlags);
|
|
typedef enum _WSACOMPLETIONTYPE {
|
|
NSP_NOTIFY_IMMEDIATELY = 0,
|
|
NSP_NOTIFY_HWND,
|
|
NSP_NOTIFY_EVENT,
|
|
NSP_NOTIFY_PORT,
|
|
NSP_NOTIFY_APC
|
|
} WSACOMPLETIONTYPE,*PWSACOMPLETIONTYPE,*LPWSACOMPLETIONTYPE;
|
|
typedef struct _WSACOMPLETION {
|
|
WSACOMPLETIONTYPE Type;
|
|
union {
|
|
struct {
|
|
HWND hWnd;
|
|
UINT uMsg;
|
|
WPARAM context;
|
|
} WindowMessage;
|
|
struct {
|
|
LPWSAOVERLAPPED lpOverlapped;
|
|
} Event;
|
|
struct {
|
|
LPWSAOVERLAPPED lpOverlapped;
|
|
LPWSAOVERLAPPED_COMPLETION_ROUTINE lpfnCompletionProc;
|
|
} Apc;
|
|
struct {
|
|
LPWSAOVERLAPPED lpOverlapped;
|
|
HANDLE hPort;
|
|
ULONG_PTR Key;
|
|
} Port;
|
|
} Parameters;
|
|
} WSACOMPLETION,*PWSACOMPLETION,*LPWSACOMPLETION;
|
|
typedef struct sockaddr_storage SOCKADDR_STORAGE;
|
|
typedef struct sockaddr_storage *PSOCKADDR_STORAGE;
|
|
typedef struct sockaddr_storage *LPSOCKADDR_STORAGE;
|
|
typedef u_short ADDRESS_FAMILY;
|
|
typedef struct _SOCKET_ADDRESS {
|
|
LPSOCKADDR lpSockaddr;
|
|
INT iSockaddrLength;
|
|
} SOCKET_ADDRESS,*PSOCKET_ADDRESS,*LPSOCKET_ADDRESS;
|
|
typedef struct _CSADDR_INFO {
|
|
SOCKET_ADDRESS LocalAddr;
|
|
SOCKET_ADDRESS RemoteAddr;
|
|
INT iSocketType;
|
|
INT iProtocol;
|
|
} CSADDR_INFO,*PCSADDR_INFO,*LPCSADDR_INFO;
|
|
typedef struct _SOCKET_ADDRESS_LIST {
|
|
INT iAddressCount;
|
|
SOCKET_ADDRESS Address[1];
|
|
} SOCKET_ADDRESS_LIST,*PSOCKET_ADDRESS_LIST,*LPSOCKET_ADDRESS_LIST;
|
|
typedef struct _AFPROTOCOLS {
|
|
INT iAddressFamily;
|
|
INT iProtocol;
|
|
} AFPROTOCOLS,*PAFPROTOCOLS,*LPAFPROTOCOLS;
|
|
typedef enum _WSAEcomparator {
|
|
COMP_EQUAL = 0,
|
|
COMP_NOTLESS
|
|
} WSAECOMPARATOR,*PWSAECOMPARATOR,*LPWSAECOMPARATOR;
|
|
typedef struct _WSAVersion {
|
|
DWORD dwVersion;
|
|
WSAECOMPARATOR ecHow;
|
|
} WSAVERSION,*PWSAVERSION,*LPWSAVERSION;
|
|
typedef struct _WSAQuerySetA {
|
|
DWORD dwSize;
|
|
LPSTR lpszServiceInstanceName;
|
|
LPGUID lpServiceClassId;
|
|
LPWSAVERSION lpVersion;
|
|
LPSTR lpszComment;
|
|
DWORD dwNameSpace;
|
|
LPGUID lpNSProviderId;
|
|
LPSTR lpszContext;
|
|
DWORD dwNumberOfProtocols;
|
|
LPAFPROTOCOLS lpafpProtocols;
|
|
LPSTR lpszQueryString;
|
|
DWORD dwNumberOfCsAddrs;
|
|
LPCSADDR_INFO lpcsaBuffer;
|
|
DWORD dwOutputFlags;
|
|
LPBLOB lpBlob;
|
|
} WSAQUERYSETA,*PWSAQUERYSETA,*LPWSAQUERYSETA;
|
|
typedef struct _WSAQuerySetW {
|
|
DWORD dwSize;
|
|
LPWSTR lpszServiceInstanceName;
|
|
LPGUID lpServiceClassId;
|
|
LPWSAVERSION lpVersion;
|
|
LPWSTR lpszComment;
|
|
DWORD dwNameSpace;
|
|
LPGUID lpNSProviderId;
|
|
LPWSTR lpszContext;
|
|
DWORD dwNumberOfProtocols;
|
|
LPAFPROTOCOLS lpafpProtocols;
|
|
LPWSTR lpszQueryString;
|
|
DWORD dwNumberOfCsAddrs;
|
|
LPCSADDR_INFO lpcsaBuffer;
|
|
DWORD dwOutputFlags;
|
|
LPBLOB lpBlob;
|
|
} WSAQUERYSETW,*PWSAQUERYSETW,*LPWSAQUERYSETW;
|
|
typedef WSAQUERYSETA WSAQUERYSET;
|
|
typedef PWSAQUERYSETA PWSAQUERYSET;
|
|
typedef LPWSAQUERYSETA LPWSAQUERYSET;
|
|
typedef enum _WSAESETSERVICEOP {
|
|
RNRSERVICE_REGISTER = 0,
|
|
RNRSERVICE_DEREGISTER,
|
|
RNRSERVICE_DELETE
|
|
} WSAESETSERVICEOP,*PWSAESETSERVICEOP,*LPWSAESETSERVICEOP;
|
|
typedef struct _WSANSClassInfoA {
|
|
LPSTR lpszName;
|
|
DWORD dwNameSpace;
|
|
DWORD dwValueType;
|
|
DWORD dwValueSize;
|
|
LPVOID lpValue;
|
|
} WSANSCLASSINFOA,*PWSANSCLASSINFOA,*LPWSANSCLASSINFOA;
|
|
typedef struct _WSANSClassInfoW {
|
|
LPWSTR lpszName;
|
|
DWORD dwNameSpace;
|
|
DWORD dwValueType;
|
|
DWORD dwValueSize;
|
|
LPVOID lpValue;
|
|
} WSANSCLASSINFOW,*PWSANSCLASSINFOW,*LPWSANSCLASSINFOW;
|
|
typedef WSANSCLASSINFOA WSANSCLASSINFO;
|
|
typedef PWSANSCLASSINFOA PWSANSCLASSINFO;
|
|
typedef LPWSANSCLASSINFOA LPWSANSCLASSINFO;
|
|
typedef struct _WSAServiceClassInfoA {
|
|
LPGUID lpServiceClassId;
|
|
LPSTR lpszServiceClassName;
|
|
DWORD dwCount;
|
|
LPWSANSCLASSINFOA lpClassInfos;
|
|
} WSASERVICECLASSINFOA,*PWSASERVICECLASSINFOA,*LPWSASERVICECLASSINFOA;
|
|
typedef struct _WSAServiceClassInfoW {
|
|
LPGUID lpServiceClassId;
|
|
LPWSTR lpszServiceClassName;
|
|
DWORD dwCount;
|
|
LPWSANSCLASSINFOW lpClassInfos;
|
|
} WSASERVICECLASSINFOW,*PWSASERVICECLASSINFOW,*LPWSASERVICECLASSINFOW;
|
|
typedef WSASERVICECLASSINFOA WSASERVICECLASSINFO;
|
|
typedef PWSASERVICECLASSINFOA PWSASERVICECLASSINFO;
|
|
typedef LPWSASERVICECLASSINFOA LPWSASERVICECLASSINFO;
|
|
typedef struct _WSANAMESPACE_INFOA {
|
|
GUID NSProviderId;
|
|
DWORD dwNameSpace;
|
|
WINBOOL fActive;
|
|
DWORD dwVersion;
|
|
LPSTR lpszIdentifier;
|
|
} WSANAMESPACE_INFOA,*PWSANAMESPACE_INFOA,*LPWSANAMESPACE_INFOA;
|
|
typedef struct _WSANAMESPACE_INFOW {
|
|
GUID NSProviderId;
|
|
DWORD dwNameSpace;
|
|
WINBOOL fActive;
|
|
DWORD dwVersion;
|
|
LPWSTR lpszIdentifier;
|
|
} WSANAMESPACE_INFOW,*PWSANAMESPACE_INFOW,*LPWSANAMESPACE_INFOW;
|
|
typedef WSANAMESPACE_INFOA WSANAMESPACE_INFO;
|
|
typedef PWSANAMESPACE_INFOA PWSANAMESPACE_INFO;
|
|
typedef LPWSANAMESPACE_INFOA LPWSANAMESPACE_INFO;
|
|
typedef struct _WSAMSG {
|
|
LPSOCKADDR name;
|
|
INT namelen;
|
|
LPWSABUF lpBuffers;
|
|
DWORD dwBufferCount;
|
|
WSABUF Control;
|
|
DWORD dwFlags;
|
|
} WSAMSG,*PWSAMSG,*LPWSAMSG;
|
|
__attribute__((dllimport)) SOCKET accept(SOCKET s,struct sockaddr *addr,int *addrlen);
|
|
__attribute__((dllimport)) int bind(SOCKET s,const struct sockaddr *name,int namelen);
|
|
__attribute__((dllimport)) int closesocket(SOCKET s);
|
|
__attribute__((dllimport)) int connect(SOCKET s,const struct sockaddr *name,int namelen);
|
|
__attribute__((dllimport)) int ioctlsocket(SOCKET s,long cmd,u_long *argp);
|
|
__attribute__((dllimport)) int getpeername(SOCKET s,struct sockaddr *name,int *namelen);
|
|
__attribute__((dllimport)) int getsockname(SOCKET s,struct sockaddr *name,int *namelen);
|
|
__attribute__((dllimport)) int getsockopt(SOCKET s,int level,int optname,char *optval,int *optlen);
|
|
__attribute__((dllimport)) u_long htonl(u_long hostlong);
|
|
__attribute__((dllimport)) u_short htons(u_short hostshort);
|
|
__attribute__((dllimport)) unsigned long inet_addr(const char *cp);
|
|
__attribute__((dllimport)) char * inet_ntoa(struct in_addr in);
|
|
__attribute__((dllimport)) int listen(SOCKET s,int backlog);
|
|
__attribute__((dllimport)) u_long ntohl(u_long netlong);
|
|
__attribute__((dllimport)) u_short ntohs(u_short netshort);
|
|
__attribute__((dllimport)) int recv(SOCKET s,char *buf,int len,int flags);
|
|
__attribute__((dllimport)) int recvfrom(SOCKET s,char *buf,int len,int flags,struct sockaddr *from,int *fromlen);
|
|
__attribute__((dllimport)) int select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout);
|
|
__attribute__((dllimport)) int send(SOCKET s,const char *buf,int len,int flags);
|
|
__attribute__((dllimport)) int sendto(SOCKET s,const char *buf,int len,int flags,const struct sockaddr *to,int tolen);
|
|
__attribute__((dllimport)) int setsockopt(SOCKET s,int level,int optname,const char *optval,int optlen);
|
|
__attribute__((dllimport)) int shutdown(SOCKET s,int how);
|
|
__attribute__((dllimport)) SOCKET socket(int af,int type,int protocol);
|
|
__attribute__((dllimport)) struct hostent * gethostbyaddr(const char *addr,int len,int type);
|
|
__attribute__((dllimport)) struct hostent * gethostbyname(const char *name);
|
|
__attribute__((dllimport)) int gethostname(char *name,int namelen);
|
|
__attribute__((dllimport)) struct servent * getservbyport(int port,const char *proto);
|
|
__attribute__((dllimport)) struct servent * getservbyname(const char *name,const char *proto);
|
|
__attribute__((dllimport)) struct protoent * getprotobynumber(int number);
|
|
__attribute__((dllimport)) struct protoent * getprotobyname(const char *name);
|
|
__attribute__((dllimport)) int WSAStartup(WORD wVersionRequested,LPWSADATA lpWSAData);
|
|
__attribute__((dllimport)) int WSACleanup(void);
|
|
__attribute__((dllimport)) void WSASetLastError(int iError);
|
|
__attribute__((dllimport)) int WSAGetLastError(void);
|
|
__attribute__((dllimport)) WINBOOL WSAIsBlocking(void);
|
|
__attribute__((dllimport)) int WSAUnhookBlockingHook(void);
|
|
__attribute__((dllimport)) FARPROC WSASetBlockingHook(FARPROC lpBlockFunc);
|
|
__attribute__((dllimport)) int WSACancelBlockingCall(void);
|
|
__attribute__((dllimport)) HANDLE WSAAsyncGetServByName(HWND hWnd,u_int wMsg,const char *name,const char *proto,char *buf,int buflen);
|
|
__attribute__((dllimport)) HANDLE WSAAsyncGetServByPort(HWND hWnd,u_int wMsg,int port,const char *proto,char *buf,int buflen);
|
|
__attribute__((dllimport)) HANDLE WSAAsyncGetProtoByName(HWND hWnd,u_int wMsg,const char *name,char *buf,int buflen);
|
|
__attribute__((dllimport)) HANDLE WSAAsyncGetProtoByNumber(HWND hWnd,u_int wMsg,int number,char *buf,int buflen);
|
|
__attribute__((dllimport)) HANDLE WSAAsyncGetHostByName(HWND hWnd,u_int wMsg,const char *name,char *buf,int buflen);
|
|
__attribute__((dllimport)) HANDLE WSAAsyncGetHostByAddr(HWND hWnd,u_int wMsg,const char *addr,int len,int type,char *buf,int buflen);
|
|
__attribute__((dllimport)) int WSACancelAsyncRequest(HANDLE hAsyncTaskHandle);
|
|
__attribute__((dllimport)) int WSAAsyncSelect(SOCKET s,HWND hWnd,u_int wMsg,long lEvent);
|
|
__attribute__((dllimport)) SOCKET WSAAccept(SOCKET s,struct sockaddr *addr,LPINT addrlen,LPCONDITIONPROC lpfnCondition,DWORD_PTR dwCallbackData);
|
|
__attribute__((dllimport)) WINBOOL WSACloseEvent(HANDLE hEvent);
|
|
__attribute__((dllimport)) int WSAConnect(SOCKET s,const struct sockaddr *name,int namelen,LPWSABUF lpCallerData,LPWSABUF lpCalleeData,LPQOS lpSQOS,LPQOS lpGQOS);
|
|
__attribute__((dllimport)) HANDLE WSACreateEvent(void);
|
|
__attribute__((dllimport)) int WSADuplicateSocketA(SOCKET s,DWORD dwProcessId,LPWSAPROTOCOL_INFOA lpProtocolInfo);
|
|
__attribute__((dllimport)) int WSADuplicateSocketW(SOCKET s,DWORD dwProcessId,LPWSAPROTOCOL_INFOW lpProtocolInfo);
|
|
__attribute__((dllimport)) int WSAEnumNetworkEvents(SOCKET s,HANDLE hEventObject,LPWSANETWORKEVENTS lpNetworkEvents);
|
|
__attribute__((dllimport)) int WSAEnumProtocolsA(LPINT lpiProtocols,LPWSAPROTOCOL_INFOA lpProtocolBuffer,LPDWORD lpdwBufferLength);
|
|
__attribute__((dllimport)) int WSAEnumProtocolsW(LPINT lpiProtocols,LPWSAPROTOCOL_INFOW lpProtocolBuffer,LPDWORD lpdwBufferLength);
|
|
__attribute__((dllimport)) int WSAEventSelect(SOCKET s,HANDLE hEventObject,long lNetworkEvents);
|
|
__attribute__((dllimport)) WINBOOL WSAGetOverlappedResult(SOCKET s,LPWSAOVERLAPPED lpOverlapped,LPDWORD lpcbTransfer,WINBOOL fWait,LPDWORD lpdwFlags);
|
|
__attribute__((dllimport)) WINBOOL WSAGetQOSByName(SOCKET s,LPWSABUF lpQOSName,LPQOS lpQOS);
|
|
__attribute__((dllimport)) int WSAHtonl(SOCKET s,u_long hostlong,u_long *lpnetlong);
|
|
__attribute__((dllimport)) int WSAHtons(SOCKET s,u_short hostshort,u_short *lpnetshort);
|
|
__attribute__((dllimport)) int WSAIoctl(SOCKET s,DWORD dwIoControlCode,LPVOID lpvInBuffer,DWORD cbInBuffer,LPVOID lpvOutBuffer,DWORD cbOutBuffer,LPDWORD lpcbBytesReturned,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) SOCKET WSAJoinLeaf(SOCKET s,const struct sockaddr *name,int namelen,LPWSABUF lpCallerData,LPWSABUF lpCalleeData,LPQOS lpSQOS,LPQOS lpGQOS,DWORD dwFlags);
|
|
__attribute__((dllimport)) int WSANtohl(SOCKET s,u_long netlong,u_long *lphostlong);
|
|
__attribute__((dllimport)) int WSANtohs(SOCKET s,u_short netshort,u_short *lphostshort);
|
|
__attribute__((dllimport)) int WSARecv(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) int WSARecvDisconnect(SOCKET s,LPWSABUF lpInboundDisconnectData);
|
|
__attribute__((dllimport)) int WSARecvFrom(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesRecvd,LPDWORD lpFlags,struct sockaddr *lpFrom,LPINT lpFromlen,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) WINBOOL WSAResetEvent(HANDLE hEvent);
|
|
__attribute__((dllimport)) int WSASend(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) int WSASendDisconnect(SOCKET s,LPWSABUF lpOutboundDisconnectData);
|
|
__attribute__((dllimport)) int WSASendTo(SOCKET s,LPWSABUF lpBuffers,DWORD dwBufferCount,LPDWORD lpNumberOfBytesSent,DWORD dwFlags,const struct sockaddr *lpTo,int iTolen,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
__attribute__((dllimport)) WINBOOL WSASetEvent(HANDLE hEvent);
|
|
__attribute__((dllimport)) SOCKET WSASocketA(int af,int type,int protocol,LPWSAPROTOCOL_INFOA lpProtocolInfo,GROUP g,DWORD dwFlags);
|
|
__attribute__((dllimport)) SOCKET WSASocketW(int af,int type,int protocol,LPWSAPROTOCOL_INFOW lpProtocolInfo,GROUP g,DWORD dwFlags);
|
|
__attribute__((dllimport)) DWORD WSAWaitForMultipleEvents(DWORD cEvents,const HANDLE *lphEvents,WINBOOL fWaitAll,DWORD dwTimeout,WINBOOL fAlertable);
|
|
__attribute__((dllimport)) INT WSAAddressToStringA(LPSOCKADDR lpsaAddress,DWORD dwAddressLength,LPWSAPROTOCOL_INFOA lpProtocolInfo,LPSTR lpszAddressString,LPDWORD lpdwAddressStringLength);
|
|
__attribute__((dllimport)) INT WSAAddressToStringW(LPSOCKADDR lpsaAddress,DWORD dwAddressLength,LPWSAPROTOCOL_INFOW lpProtocolInfo,LPWSTR lpszAddressString,LPDWORD lpdwAddressStringLength);
|
|
__attribute__((dllimport)) INT WSAStringToAddressA(LPSTR AddressString,INT AddressFamily,LPWSAPROTOCOL_INFOA lpProtocolInfo,LPSOCKADDR lpAddress,LPINT lpAddressLength);
|
|
__attribute__((dllimport)) INT WSAStringToAddressW(LPWSTR AddressString,INT AddressFamily,LPWSAPROTOCOL_INFOW lpProtocolInfo,LPSOCKADDR lpAddress,LPINT lpAddressLength);
|
|
__attribute__((dllimport)) INT WSALookupServiceBeginA(LPWSAQUERYSETA lpqsRestrictions,DWORD dwControlFlags,LPHANDLE lphLookup);
|
|
__attribute__((dllimport)) INT WSALookupServiceBeginW(LPWSAQUERYSETW lpqsRestrictions,DWORD dwControlFlags,LPHANDLE lphLookup);
|
|
__attribute__((dllimport)) INT WSALookupServiceNextA(HANDLE hLookup,DWORD dwControlFlags,LPDWORD lpdwBufferLength,LPWSAQUERYSETA lpqsResults);
|
|
__attribute__((dllimport)) INT WSALookupServiceNextW(HANDLE hLookup,DWORD dwControlFlags,LPDWORD lpdwBufferLength,LPWSAQUERYSETW lpqsResults);
|
|
__attribute__((dllimport)) INT WSANSPIoctl(HANDLE hLookup,DWORD dwControlCode,LPVOID lpvInBuffer,DWORD cbInBuffer,LPVOID lpvOutBuffer,DWORD cbOutBuffer,LPDWORD lpcbBytesReturned,LPWSACOMPLETION lpCompletion);
|
|
__attribute__((dllimport)) INT WSALookupServiceEnd(HANDLE hLookup);
|
|
__attribute__((dllimport)) INT WSAInstallServiceClassA(LPWSASERVICECLASSINFOA lpServiceClassInfo);
|
|
__attribute__((dllimport)) INT WSAInstallServiceClassW(LPWSASERVICECLASSINFOW lpServiceClassInfo);
|
|
__attribute__((dllimport)) INT WSARemoveServiceClass(LPGUID lpServiceClassId);
|
|
__attribute__((dllimport)) INT WSAGetServiceClassInfoA(LPGUID lpProviderId,LPGUID lpServiceClassId,LPDWORD lpdwBufSize,LPWSASERVICECLASSINFOA lpServiceClassInfo);
|
|
__attribute__((dllimport)) INT WSAGetServiceClassInfoW(LPGUID lpProviderId,LPGUID lpServiceClassId,LPDWORD lpdwBufSize,LPWSASERVICECLASSINFOW lpServiceClassInfo);
|
|
__attribute__((dllimport)) INT WSAEnumNameSpaceProvidersA(LPDWORD lpdwBufferLength,LPWSANAMESPACE_INFOA lpnspBuffer);
|
|
__attribute__((dllimport)) INT WSAEnumNameSpaceProvidersW(LPDWORD lpdwBufferLength,LPWSANAMESPACE_INFOW lpnspBuffer);
|
|
__attribute__((dllimport)) INT WSAGetServiceClassNameByClassIdA(LPGUID lpServiceClassId,LPSTR lpszServiceClassName,LPDWORD lpdwBufferLength);
|
|
__attribute__((dllimport)) INT WSAGetServiceClassNameByClassIdW(LPGUID lpServiceClassId,LPWSTR lpszServiceClassName,LPDWORD lpdwBufferLength);
|
|
__attribute__((dllimport)) INT WSASetServiceA(LPWSAQUERYSETA lpqsRegInfo,WSAESETSERVICEOP essoperation,DWORD dwControlFlags);
|
|
__attribute__((dllimport)) INT WSASetServiceW(LPWSAQUERYSETW lpqsRegInfo,WSAESETSERVICEOP essoperation,DWORD dwControlFlags);
|
|
__attribute__((dllimport)) INT WSAProviderConfigChange(LPHANDLE lpNotificationHandle,LPWSAOVERLAPPED lpOverlapped,LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
|
|
#pragma pack(push,8)
|
|
typedef LPVOID HINTERNET;
|
|
typedef HINTERNET *LPHINTERNET;
|
|
typedef WORD INTERNET_PORT;
|
|
typedef INTERNET_PORT *LPINTERNET_PORT;
|
|
typedef enum {
|
|
INTERNET_SCHEME_PARTIAL = -2,INTERNET_SCHEME_UNKNOWN = -1,INTERNET_SCHEME_DEFAULT = 0,INTERNET_SCHEME_FTP,INTERNET_SCHEME_GOPHER,
|
|
INTERNET_SCHEME_HTTP,INTERNET_SCHEME_HTTPS,INTERNET_SCHEME_FILE,INTERNET_SCHEME_NEWS,INTERNET_SCHEME_MAILTO,INTERNET_SCHEME_SOCKS,
|
|
INTERNET_SCHEME_JAVASCRIPT,INTERNET_SCHEME_VBSCRIPT,INTERNET_SCHEME_RES,INTERNET_SCHEME_FIRST = INTERNET_SCHEME_FTP,
|
|
INTERNET_SCHEME_LAST = INTERNET_SCHEME_RES
|
|
} INTERNET_SCHEME,*LPINTERNET_SCHEME;
|
|
typedef struct {
|
|
DWORD_PTR dwResult;
|
|
DWORD dwError;
|
|
} INTERNET_ASYNC_RESULT,*LPINTERNET_ASYNC_RESULT;
|
|
typedef struct {
|
|
DWORD_PTR Socket;
|
|
DWORD SourcePort;
|
|
DWORD DestPort;
|
|
DWORD Flags;
|
|
} INTERNET_DIAGNOSTIC_SOCKET_INFO,*LPINTERNET_DIAGNOSTIC_SOCKET_INFO;
|
|
typedef struct {
|
|
DWORD dwAccessType;
|
|
LPCTSTR lpszProxy;
|
|
LPCTSTR lpszProxyBypass;
|
|
} INTERNET_PROXY_INFO,*LPINTERNET_PROXY_INFO;
|
|
typedef struct {
|
|
DWORD dwOption;
|
|
union {
|
|
DWORD dwValue;
|
|
LPSTR pszValue;
|
|
FILETIME ftValue;
|
|
} Value;
|
|
} INTERNET_PER_CONN_OPTIONA,*LPINTERNET_PER_CONN_OPTIONA;
|
|
typedef struct {
|
|
DWORD dwOption;
|
|
union {
|
|
DWORD dwValue;
|
|
LPWSTR pszValue;
|
|
FILETIME ftValue;
|
|
} Value;
|
|
} INTERNET_PER_CONN_OPTIONW,*LPINTERNET_PER_CONN_OPTIONW;
|
|
typedef INTERNET_PER_CONN_OPTIONA INTERNET_PER_CONN_OPTION;
|
|
typedef LPINTERNET_PER_CONN_OPTIONA LPINTERNET_PER_CONN_OPTION;
|
|
typedef struct {
|
|
DWORD dwSize;
|
|
LPSTR pszConnection;
|
|
DWORD dwOptionCount;
|
|
DWORD dwOptionError;
|
|
LPINTERNET_PER_CONN_OPTIONA pOptions;
|
|
} INTERNET_PER_CONN_OPTION_LISTA,*LPINTERNET_PER_CONN_OPTION_LISTA;
|
|
typedef struct {
|
|
DWORD dwSize;
|
|
LPWSTR pszConnection;
|
|
DWORD dwOptionCount;
|
|
DWORD dwOptionError;
|
|
LPINTERNET_PER_CONN_OPTIONW pOptions;
|
|
} INTERNET_PER_CONN_OPTION_LISTW,*LPINTERNET_PER_CONN_OPTION_LISTW;
|
|
typedef INTERNET_PER_CONN_OPTION_LISTA INTERNET_PER_CONN_OPTION_LIST;
|
|
typedef LPINTERNET_PER_CONN_OPTION_LISTA LPINTERNET_PER_CONN_OPTION_LIST;
|
|
typedef struct {
|
|
DWORD dwMajorVersion;
|
|
DWORD dwMinorVersion;
|
|
} INTERNET_VERSION_INFO,*LPINTERNET_VERSION_INFO;
|
|
typedef struct {
|
|
DWORD dwMajorVersion;
|
|
DWORD dwMinorVersion;
|
|
} HTTP_VERSION_INFO,*LPHTTP_VERSION_INFO;
|
|
typedef struct {
|
|
DWORD dwConnectedState;
|
|
DWORD dwFlags;
|
|
} INTERNET_CONNECTED_INFO,*LPINTERNET_CONNECTED_INFO;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
LPSTR lpszScheme;
|
|
DWORD dwSchemeLength;
|
|
INTERNET_SCHEME nScheme;
|
|
LPSTR lpszHostName;
|
|
DWORD dwHostNameLength;
|
|
INTERNET_PORT nPort;
|
|
LPSTR lpszUserName;
|
|
DWORD dwUserNameLength;
|
|
LPSTR lpszPassword;
|
|
DWORD dwPasswordLength;
|
|
LPSTR lpszUrlPath;
|
|
DWORD dwUrlPathLength;
|
|
LPSTR lpszExtraInfo;
|
|
DWORD dwExtraInfoLength;
|
|
} URL_COMPONENTSA,*LPURL_COMPONENTSA;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
LPWSTR lpszScheme;
|
|
DWORD dwSchemeLength;
|
|
INTERNET_SCHEME nScheme;
|
|
LPWSTR lpszHostName;
|
|
DWORD dwHostNameLength;
|
|
INTERNET_PORT nPort;
|
|
LPWSTR lpszUserName;
|
|
DWORD dwUserNameLength;
|
|
LPWSTR lpszPassword;
|
|
DWORD dwPasswordLength;
|
|
LPWSTR lpszUrlPath;
|
|
DWORD dwUrlPathLength;
|
|
LPWSTR lpszExtraInfo;
|
|
DWORD dwExtraInfoLength;
|
|
} URL_COMPONENTSW,*LPURL_COMPONENTSW;
|
|
typedef URL_COMPONENTSA URL_COMPONENTS;
|
|
typedef LPURL_COMPONENTSA LPURL_COMPONENTS;
|
|
typedef struct {
|
|
FILETIME ftExpiry;
|
|
FILETIME ftStart;
|
|
LPTSTR lpszSubjectInfo;
|
|
LPTSTR lpszIssuerInfo;
|
|
LPTSTR lpszProtocolName;
|
|
LPTSTR lpszSignatureAlgName;
|
|
LPTSTR lpszEncryptionAlgName;
|
|
DWORD dwKeySize;
|
|
} INTERNET_CERTIFICATE_INFO,*LPINTERNET_CERTIFICATE_INFO;
|
|
typedef struct _INTERNET_BUFFERSA {
|
|
DWORD dwStructSize;
|
|
struct _INTERNET_BUFFERSA *Next;
|
|
LPCSTR lpcszHeader;
|
|
DWORD dwHeadersLength;
|
|
DWORD dwHeadersTotal;
|
|
LPVOID lpvBuffer;
|
|
DWORD dwBufferLength;
|
|
DWORD dwBufferTotal;
|
|
DWORD dwOffsetLow;
|
|
DWORD dwOffsetHigh;
|
|
} INTERNET_BUFFERSA,*LPINTERNET_BUFFERSA;
|
|
typedef struct _INTERNET_BUFFERSW {
|
|
DWORD dwStructSize;
|
|
struct _INTERNET_BUFFERSW *Next;
|
|
LPCWSTR lpcszHeader;
|
|
DWORD dwHeadersLength;
|
|
DWORD dwHeadersTotal;
|
|
LPVOID lpvBuffer;
|
|
DWORD dwBufferLength;
|
|
DWORD dwBufferTotal;
|
|
DWORD dwOffsetLow;
|
|
DWORD dwOffsetHigh;
|
|
} INTERNET_BUFFERSW,*LPINTERNET_BUFFERSW;
|
|
typedef INTERNET_BUFFERSA INTERNET_BUFFERS;
|
|
typedef LPINTERNET_BUFFERSA LPINTERNET_BUFFERS;
|
|
extern __attribute__((dllimport)) WINBOOL InternetTimeFromSystemTime(const SYSTEMTIME *pst,DWORD dwRFC,LPSTR lpszTime,DWORD cbTime);
|
|
extern __attribute__((dllimport)) WINBOOL InternetTimeFromSystemTimeA(const SYSTEMTIME *pst,DWORD dwRFC,LPSTR lpszTime,DWORD cbTime);
|
|
extern __attribute__((dllimport)) WINBOOL InternetTimeFromSystemTimeW(const SYSTEMTIME *pst,DWORD dwRFC,LPWSTR lpszTime,DWORD cbTime);
|
|
extern __attribute__((dllimport)) WINBOOL InternetTimeToSystemTime(LPCSTR lpszTime,SYSTEMTIME *pst,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetTimeToSystemTimeA(LPCSTR lpszTime,SYSTEMTIME *pst,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetTimeToSystemTimeW(LPCWSTR lpszTime,SYSTEMTIME *pst,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCrackUrlA(LPCSTR lpszUrl,DWORD dwUrlLength,DWORD dwFlags,LPURL_COMPONENTSA lpUrlComponents);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCrackUrlW(LPCWSTR lpszUrl,DWORD dwUrlLength,DWORD dwFlags,LPURL_COMPONENTSW lpUrlComponents);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCreateUrlA(LPURL_COMPONENTSA lpUrlComponents,DWORD dwFlags,LPSTR lpszUrl,LPDWORD lpdwUrlLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCreateUrlW(LPURL_COMPONENTSW lpUrlComponents,DWORD dwFlags,LPWSTR lpszUrl,LPDWORD lpdwUrlLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCanonicalizeUrlA(LPCSTR lpszUrl,LPSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCanonicalizeUrlW(LPCWSTR lpszUrl,LPWSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCombineUrlA(LPCSTR lpszBaseUrl,LPCSTR lpszRelativeUrl,LPSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCombineUrlW(LPCWSTR lpszBaseUrl,LPCWSTR lpszRelativeUrl,LPWSTR lpszBuffer,LPDWORD lpdwBufferLength,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) HINTERNET InternetOpenA(LPCSTR lpszAgent,DWORD dwAccessType,LPCSTR lpszProxy,LPCSTR lpszProxyBypass,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) HINTERNET InternetOpenW(LPCWSTR lpszAgent,DWORD dwAccessType,LPCWSTR lpszProxy,LPCWSTR lpszProxyBypass,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCloseHandle(HINTERNET hInternet);
|
|
extern __attribute__((dllimport)) HINTERNET InternetConnectA(HINTERNET hInternet,LPCSTR lpszServerName,INTERNET_PORT nServerPort,LPCSTR lpszUserName,LPCSTR lpszPassword,DWORD dwService,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET InternetConnectW(HINTERNET hInternet,LPCWSTR lpszServerName,INTERNET_PORT nServerPort,LPCWSTR lpszUserName,LPCWSTR lpszPassword,DWORD dwService,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET InternetOpenUrlA(HINTERNET hInternet,LPCSTR lpszUrl,LPCSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET InternetOpenUrlW(HINTERNET hInternet,LPCWSTR lpszUrl,LPCWSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL InternetReadFile(HINTERNET hFile,LPVOID lpBuffer,DWORD dwNumberOfBytesToRead,LPDWORD lpdwNumberOfBytesRead);
|
|
extern __attribute__((dllimport)) WINBOOL InternetReadFileExA(HINTERNET hFile,LPINTERNET_BUFFERSA lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL InternetReadFileExW(HINTERNET hFile,LPINTERNET_BUFFERSW lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) DWORD InternetSetFilePointer(HINTERNET hFile,LONG lDistanceToMove,PVOID pReserved,DWORD dwMoveMethod,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL InternetWriteFile(HINTERNET hFile,LPCVOID lpBuffer,DWORD dwNumberOfBytesToWrite,LPDWORD lpdwNumberOfBytesWritten);
|
|
extern __attribute__((dllimport)) WINBOOL InternetQueryDataAvailable(HINTERNET hFile,LPDWORD lpdwNumberOfBytesAvailable,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL InternetFindNextFileA(HINTERNET hFind,LPVOID lpvFindData);
|
|
extern __attribute__((dllimport)) WINBOOL InternetFindNextFileW(HINTERNET hFind,LPVOID lpvFindData);
|
|
extern __attribute__((dllimport)) WINBOOL InternetQueryOptionA(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,LPDWORD lpdwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetQueryOptionW(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,LPDWORD lpdwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetOptionA(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetOptionW(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetOptionExA(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetOptionExW(HINTERNET hInternet,DWORD dwOption,LPVOID lpBuffer,DWORD dwBufferLength,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetLockRequestFile(HINTERNET hInternet,HANDLE *lphLockRequestInfo);
|
|
extern __attribute__((dllimport)) WINBOOL InternetUnlockRequestFile(HANDLE hLockRequestInfo);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetLastResponseInfoA(LPDWORD lpdwError,LPSTR lpszBuffer,LPDWORD lpdwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetLastResponseInfoW(LPDWORD lpdwError,LPWSTR lpszBuffer,LPDWORD lpdwBufferLength);
|
|
typedef void ( *INTERNET_STATUS_CALLBACK)(HINTERNET hInternet,DWORD_PTR dwContext,DWORD dwInternetStatus,LPVOID lpvStatusInformation,DWORD dwStatusInformationLength);
|
|
typedef INTERNET_STATUS_CALLBACK *LPINTERNET_STATUS_CALLBACK;
|
|
extern __attribute__((dllimport)) INTERNET_STATUS_CALLBACK InternetSetStatusCallback(HINTERNET hInternet,INTERNET_STATUS_CALLBACK lpfnInternetCallback);
|
|
extern __attribute__((dllimport)) INTERNET_STATUS_CALLBACK InternetSetStatusCallbackA(HINTERNET hInternet,INTERNET_STATUS_CALLBACK lpfnInternetCallback);
|
|
extern __attribute__((dllimport)) INTERNET_STATUS_CALLBACK InternetSetStatusCallbackW(HINTERNET hInternet,INTERNET_STATUS_CALLBACK lpfnInternetCallback);
|
|
typedef enum {
|
|
COOKIE_STATE_UNKNOWN = 0x0,COOKIE_STATE_ACCEPT = 0x1,COOKIE_STATE_PROMPT = 0x2,COOKIE_STATE_LEASH = 0x3,COOKIE_STATE_DOWNGRADE = 0x4,
|
|
COOKIE_STATE_REJECT = 0x5,COOKIE_STATE_MAX = COOKIE_STATE_REJECT
|
|
} InternetCookieState;
|
|
typedef struct {
|
|
int cSession;
|
|
int cPersistent;
|
|
int cAccepted;
|
|
int cLeashed;
|
|
int cDowngraded;
|
|
int cBlocked;
|
|
const char *pszLocation;
|
|
} IncomingCookieState;
|
|
typedef struct {
|
|
int cSent;
|
|
int cSuppressed;
|
|
const char *pszLocation;
|
|
} OutgoingCookieState;
|
|
typedef struct {
|
|
WINBOOL fAccepted;
|
|
WINBOOL fLeashed;
|
|
WINBOOL fDowngraded;
|
|
WINBOOL fRejected;
|
|
} InternetCookieHistory;
|
|
typedef struct {
|
|
DWORD dwCookieState;
|
|
WINBOOL fAllowSession;
|
|
} CookieDecision;
|
|
extern __attribute__((dllimport)) HINTERNET FtpFindFirstFileA(HINTERNET hConnect,LPCSTR lpszSearchFile,LPWIN32_FIND_DATAA lpFindFileData,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET FtpFindFirstFileW(HINTERNET hConnect,LPCWSTR lpszSearchFile,LPWIN32_FIND_DATAW lpFindFileData,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpGetFileA(HINTERNET hConnect,LPCSTR lpszRemoteFile,LPCSTR lpszNewFile,WINBOOL fFailIfExists,DWORD dwFlagsAndAttributes,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpGetFileW(HINTERNET hConnect,LPCWSTR lpszRemoteFile,LPCWSTR lpszNewFile,WINBOOL fFailIfExists,DWORD dwFlagsAndAttributes,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpPutFileA(HINTERNET hConnect,LPCSTR lpszLocalFile,LPCSTR lpszNewRemoteFile,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpPutFileW(HINTERNET hConnect,LPCWSTR lpszLocalFile,LPCWSTR lpszNewRemoteFile,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpGetFileEx(HINTERNET hFtpSession,LPCSTR lpszRemoteFile,LPCWSTR lpszNewFile,WINBOOL fFailIfExists,DWORD dwFlagsAndAttributes,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpPutFileEx(HINTERNET hFtpSession,LPCWSTR lpszLocalFile,LPCSTR lpszNewRemoteFile,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpDeleteFileA(HINTERNET hConnect,LPCSTR lpszFileName);
|
|
extern __attribute__((dllimport)) WINBOOL FtpDeleteFileW(HINTERNET hConnect,LPCWSTR lpszFileName);
|
|
extern __attribute__((dllimport)) WINBOOL FtpRenameFileA(HINTERNET hConnect,LPCSTR lpszExisting,LPCSTR lpszNew);
|
|
extern __attribute__((dllimport)) WINBOOL FtpRenameFileW(HINTERNET hConnect,LPCWSTR lpszExisting,LPCWSTR lpszNew);
|
|
extern __attribute__((dllimport)) HINTERNET FtpOpenFileA(HINTERNET hConnect,LPCSTR lpszFileName,DWORD dwAccess,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET FtpOpenFileW(HINTERNET hConnect,LPCWSTR lpszFileName,DWORD dwAccess,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL FtpCreateDirectoryA(HINTERNET hConnect,LPCSTR lpszDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpCreateDirectoryW(HINTERNET hConnect,LPCWSTR lpszDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpRemoveDirectoryA(HINTERNET hConnect,LPCSTR lpszDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpRemoveDirectoryW(HINTERNET hConnect,LPCWSTR lpszDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpSetCurrentDirectoryA(HINTERNET hConnect,LPCSTR lpszDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpSetCurrentDirectoryW(HINTERNET hConnect,LPCWSTR lpszDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpGetCurrentDirectoryA(HINTERNET hConnect,LPSTR lpszCurrentDirectory,LPDWORD lpdwCurrentDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpGetCurrentDirectoryW(HINTERNET hConnect,LPWSTR lpszCurrentDirectory,LPDWORD lpdwCurrentDirectory);
|
|
extern __attribute__((dllimport)) WINBOOL FtpCommandA(HINTERNET hConnect,WINBOOL fExpectResponse,DWORD dwFlags,LPCSTR lpszCommand,DWORD_PTR dwContext,HINTERNET *phFtpCommand);
|
|
extern __attribute__((dllimport)) WINBOOL FtpCommandW(HINTERNET hConnect,WINBOOL fExpectResponse,DWORD dwFlags,LPCWSTR lpszCommand,DWORD_PTR dwContext,HINTERNET *phFtpCommand);
|
|
extern __attribute__((dllimport)) DWORD FtpGetFileSize(HINTERNET hFile,LPDWORD lpdwFileSizeHigh);
|
|
typedef struct {
|
|
CHAR DisplayString[128 + 1];
|
|
DWORD GopherType;
|
|
DWORD SizeLow;
|
|
DWORD SizeHigh;
|
|
FILETIME LastModificationTime;
|
|
CHAR Locator[(1 + 128 + 1 + 256 + 1 + 256 + 1 + 5 + 1 + 1 + 2) + 1];
|
|
} GOPHER_FIND_DATAA,*LPGOPHER_FIND_DATAA;
|
|
typedef struct {
|
|
WCHAR DisplayString[128 + 1];
|
|
DWORD GopherType;
|
|
DWORD SizeLow;
|
|
DWORD SizeHigh;
|
|
FILETIME LastModificationTime;
|
|
WCHAR Locator[(1 + 128 + 1 + 256 + 1 + 256 + 1 + 5 + 1 + 1 + 2) + 1];
|
|
} GOPHER_FIND_DATAW,*LPGOPHER_FIND_DATAW;
|
|
typedef GOPHER_FIND_DATAA GOPHER_FIND_DATA;
|
|
typedef LPGOPHER_FIND_DATAA LPGOPHER_FIND_DATA;
|
|
typedef struct {
|
|
LPCTSTR Comment;
|
|
LPCTSTR EmailAddress;
|
|
} GOPHER_ADMIN_ATTRIBUTE_TYPE,*LPGOPHER_ADMIN_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
FILETIME DateAndTime;
|
|
} GOPHER_MOD_DATE_ATTRIBUTE_TYPE,*LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
DWORD Ttl;
|
|
} GOPHER_TTL_ATTRIBUTE_TYPE,*LPGOPHER_TTL_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
INT Score;
|
|
} GOPHER_SCORE_ATTRIBUTE_TYPE,*LPGOPHER_SCORE_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
INT LowerBound;
|
|
INT UpperBound;
|
|
} GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE,*LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR Site;
|
|
} GOPHER_SITE_ATTRIBUTE_TYPE,*LPGOPHER_SITE_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR Organization;
|
|
} GOPHER_ORGANIZATION_ATTRIBUTE_TYPE,*LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR Location;
|
|
} GOPHER_LOCATION_ATTRIBUTE_TYPE,*LPGOPHER_LOCATION_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
INT DegreesNorth;
|
|
INT MinutesNorth;
|
|
INT SecondsNorth;
|
|
INT DegreesEast;
|
|
INT MinutesEast;
|
|
INT SecondsEast;
|
|
} GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE,*LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
INT Zone;
|
|
} GOPHER_TIMEZONE_ATTRIBUTE_TYPE,*LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR Provider;
|
|
} GOPHER_PROVIDER_ATTRIBUTE_TYPE,*LPGOPHER_PROVIDER_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR Version;
|
|
} GOPHER_VERSION_ATTRIBUTE_TYPE,*LPGOPHER_VERSION_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR ShortAbstract;
|
|
LPCTSTR AbstractFile;
|
|
} GOPHER_ABSTRACT_ATTRIBUTE_TYPE,*LPGOPHER_ABSTRACT_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR ContentType;
|
|
LPCTSTR Language;
|
|
DWORD Size;
|
|
} GOPHER_VIEW_ATTRIBUTE_TYPE,*LPGOPHER_VIEW_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
WINBOOL TreeWalk;
|
|
} GOPHER_VERONICA_ATTRIBUTE_TYPE,*LPGOPHER_VERONICA_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR QuestionType;
|
|
LPCTSTR QuestionText;
|
|
} GOPHER_ASK_ATTRIBUTE_TYPE,*LPGOPHER_ASK_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
LPCTSTR Text;
|
|
} GOPHER_UNKNOWN_ATTRIBUTE_TYPE,*LPGOPHER_UNKNOWN_ATTRIBUTE_TYPE;
|
|
typedef struct {
|
|
DWORD CategoryId;
|
|
DWORD AttributeId;
|
|
union {
|
|
GOPHER_ADMIN_ATTRIBUTE_TYPE Admin;
|
|
GOPHER_MOD_DATE_ATTRIBUTE_TYPE ModDate;
|
|
GOPHER_TTL_ATTRIBUTE_TYPE Ttl;
|
|
GOPHER_SCORE_ATTRIBUTE_TYPE Score;
|
|
GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE ScoreRange;
|
|
GOPHER_SITE_ATTRIBUTE_TYPE Site;
|
|
GOPHER_ORGANIZATION_ATTRIBUTE_TYPE Organization;
|
|
GOPHER_LOCATION_ATTRIBUTE_TYPE Location;
|
|
GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE GeographicalLocation;
|
|
GOPHER_TIMEZONE_ATTRIBUTE_TYPE TimeZone;
|
|
GOPHER_PROVIDER_ATTRIBUTE_TYPE Provider;
|
|
GOPHER_VERSION_ATTRIBUTE_TYPE Version;
|
|
GOPHER_ABSTRACT_ATTRIBUTE_TYPE Abstract;
|
|
GOPHER_VIEW_ATTRIBUTE_TYPE View;
|
|
GOPHER_VERONICA_ATTRIBUTE_TYPE Veronica;
|
|
GOPHER_ASK_ATTRIBUTE_TYPE Ask;
|
|
GOPHER_UNKNOWN_ATTRIBUTE_TYPE Unknown;
|
|
} AttributeType;
|
|
} GOPHER_ATTRIBUTE_TYPE,*LPGOPHER_ATTRIBUTE_TYPE;
|
|
extern __attribute__((dllimport)) WINBOOL GopherCreateLocatorA(LPCSTR lpszHost,INTERNET_PORT nServerPort,LPCSTR lpszDisplayString,LPCSTR lpszSelectorString,DWORD dwGopherType,LPSTR lpszLocator,LPDWORD lpdwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL GopherCreateLocatorW(LPCWSTR lpszHost,INTERNET_PORT nServerPort,LPCWSTR lpszDisplayString,LPCWSTR lpszSelectorString,DWORD dwGopherType,LPWSTR lpszLocator,LPDWORD lpdwBufferLength);
|
|
extern __attribute__((dllimport)) WINBOOL GopherGetLocatorTypeA(LPCSTR lpszLocator,LPDWORD lpdwGopherType);
|
|
extern __attribute__((dllimport)) WINBOOL GopherGetLocatorTypeW(LPCWSTR lpszLocator,LPDWORD lpdwGopherType);
|
|
extern __attribute__((dllimport)) HINTERNET GopherFindFirstFileA(HINTERNET hConnect,LPCSTR lpszLocator,LPCSTR lpszSearchString,LPGOPHER_FIND_DATAA lpFindData,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET GopherFindFirstFileW(HINTERNET hConnect,LPCWSTR lpszLocator,LPCWSTR lpszSearchString,LPGOPHER_FIND_DATAW lpFindData,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET GopherOpenFileA(HINTERNET hConnect,LPCSTR lpszLocator,LPCSTR lpszView,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET GopherOpenFileW(HINTERNET hConnect,LPCWSTR lpszLocator,LPCWSTR lpszView,DWORD dwFlags,DWORD_PTR dwContext);
|
|
typedef WINBOOL ( *GOPHER_ATTRIBUTE_ENUMERATOR)(LPGOPHER_ATTRIBUTE_TYPE lpAttributeInfo,DWORD dwError);
|
|
extern __attribute__((dllimport)) WINBOOL GopherGetAttributeA(HINTERNET hConnect,LPCSTR lpszLocator,LPCSTR lpszAttributeName,LPBYTE lpBuffer,DWORD dwBufferLength,LPDWORD lpdwCharactersReturned,GOPHER_ATTRIBUTE_ENUMERATOR lpfnEnumerator,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL GopherGetAttributeW(HINTERNET hConnect,LPCWSTR lpszLocator,LPCWSTR lpszAttributeName,LPBYTE lpBuffer,DWORD dwBufferLength,LPDWORD lpdwCharactersReturned,GOPHER_ATTRIBUTE_ENUMERATOR lpfnEnumerator,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET HttpOpenRequestA(HINTERNET hConnect,LPCSTR lpszVerb,LPCSTR lpszObjectName,LPCSTR lpszVersion,LPCSTR lpszReferrer,LPCSTR *lplpszAcceptTypes,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) HINTERNET HttpOpenRequestW(HINTERNET hConnect,LPCWSTR lpszVerb,LPCWSTR lpszObjectName,LPCWSTR lpszVersion,LPCWSTR lpszReferrer,LPCWSTR *lplpszAcceptTypes,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL HttpAddRequestHeadersA(HINTERNET hRequest,LPCSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwModifiers);
|
|
extern __attribute__((dllimport)) WINBOOL HttpAddRequestHeadersW(HINTERNET hRequest,LPCWSTR lpszHeaders,DWORD dwHeadersLength,DWORD dwModifiers);
|
|
extern __attribute__((dllimport)) WINBOOL HttpSendRequestA(HINTERNET hRequest,LPCSTR lpszHeaders,DWORD dwHeadersLength,LPVOID lpOptional,DWORD dwOptionalLength);
|
|
extern __attribute__((dllimport)) WINBOOL HttpSendRequestW(HINTERNET hRequest,LPCWSTR lpszHeaders,DWORD dwHeadersLength,LPVOID lpOptional,DWORD dwOptionalLength);
|
|
extern __attribute__((dllimport)) WINBOOL HttpSendRequestExA(HINTERNET hRequest,LPINTERNET_BUFFERSA lpBuffersIn,LPINTERNET_BUFFERSA lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL HttpSendRequestExW(HINTERNET hRequest,LPINTERNET_BUFFERSW lpBuffersIn,LPINTERNET_BUFFERSW lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL HttpEndRequestA(HINTERNET hRequest,LPINTERNET_BUFFERSA lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL HttpEndRequestW(HINTERNET hRequest,LPINTERNET_BUFFERSW lpBuffersOut,DWORD dwFlags,DWORD_PTR dwContext);
|
|
extern __attribute__((dllimport)) WINBOOL HttpQueryInfoA(HINTERNET hRequest,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpdwBufferLength,LPDWORD lpdwIndex);
|
|
extern __attribute__((dllimport)) WINBOOL HttpQueryInfoW(HINTERNET hRequest,DWORD dwInfoLevel,LPVOID lpBuffer,LPDWORD lpdwBufferLength,LPDWORD lpdwIndex);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetCookieA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPCSTR lpszCookieData);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetCookieW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPCWSTR lpszCookieData);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetCookieA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPSTR lpszCookieData,LPDWORD lpdwSize);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetCookieW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPWSTR lpszCookieData,LPDWORD lpdwSize);
|
|
extern __attribute__((dllimport)) DWORD InternetSetCookieExA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPCSTR lpszCookieData,DWORD dwFlags,DWORD_PTR dwReserved);
|
|
extern __attribute__((dllimport)) DWORD InternetSetCookieExW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPCWSTR lpszCookieData,DWORD dwFlags,DWORD_PTR dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetCookieExA(LPCSTR lpszUrl,LPCSTR lpszCookieName,LPSTR lpszCookieData,LPDWORD lpdwSize,DWORD dwFlags,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetCookieExW(LPCWSTR lpszUrl,LPCWSTR lpszCookieName,LPWSTR lpszCookieData,LPDWORD lpdwSize,DWORD dwFlags,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) DWORD InternetAttemptConnect(DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCheckConnectionA(LPCSTR lpszUrl,DWORD dwFlags,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetCheckConnectionW(LPCWSTR lpszUrl,DWORD dwFlags,DWORD dwReserved);
|
|
DWORD InternetAuthNotifyCallback(DWORD_PTR dwContext,DWORD dwReturn,LPVOID lpReserved);
|
|
typedef DWORD ( *PFN_AUTH_NOTIFY) (DWORD_PTR,DWORD,LPVOID);
|
|
typedef struct {
|
|
DWORD cbStruct;
|
|
DWORD dwOptions;
|
|
PFN_AUTH_NOTIFY pfnNotify;
|
|
DWORD_PTR dwContext;
|
|
} INTERNET_AUTH_NOTIFY_DATA;
|
|
extern __attribute__((dllimport)) DWORD InternetConfirmZoneCrossing(HWND hWnd,LPSTR szUrlPrev,LPSTR szUrlNew,WINBOOL bPost);
|
|
extern __attribute__((dllimport)) WINBOOL ResumeSuspendedDownload(HINTERNET hRequest,DWORD dwResultCode);
|
|
extern __attribute__((dllimport)) DWORD InternetErrorDlg(HWND hWnd,HINTERNET hRequest,DWORD dwError,DWORD dwFlags,LPVOID *lppvData);
|
|
extern __attribute__((dllimport)) DWORD InternetConfirmZoneCrossingA(HWND hWnd,LPSTR szUrlPrev,LPSTR szUrlNew,WINBOOL bPost);
|
|
extern __attribute__((dllimport)) DWORD InternetConfirmZoneCrossingW(HWND hWnd,LPWSTR szUrlPrev,LPWSTR szUrlNew,WINBOOL bPost);
|
|
typedef struct _INTERNET_CACHE_ENTRY_INFOA {
|
|
DWORD dwStructSize;
|
|
LPSTR lpszSourceUrlName;
|
|
LPSTR lpszLocalFileName;
|
|
DWORD CacheEntryType;
|
|
DWORD dwUseCount;
|
|
DWORD dwHitRate;
|
|
DWORD dwSizeLow;
|
|
DWORD dwSizeHigh;
|
|
FILETIME LastModifiedTime;
|
|
FILETIME ExpireTime;
|
|
FILETIME LastAccessTime;
|
|
FILETIME LastSyncTime;
|
|
LPSTR lpHeaderInfo;
|
|
DWORD dwHeaderInfoSize;
|
|
LPSTR lpszFileExtension;
|
|
__extension__ union {
|
|
DWORD dwReserved;
|
|
DWORD dwExemptDelta;
|
|
};
|
|
} INTERNET_CACHE_ENTRY_INFOA,*LPINTERNET_CACHE_ENTRY_INFOA;
|
|
typedef struct _INTERNET_CACHE_ENTRY_INFOW {
|
|
DWORD dwStructSize;
|
|
LPWSTR lpszSourceUrlName;
|
|
LPWSTR lpszLocalFileName;
|
|
DWORD CacheEntryType;
|
|
DWORD dwUseCount;
|
|
DWORD dwHitRate;
|
|
DWORD dwSizeLow;
|
|
DWORD dwSizeHigh;
|
|
FILETIME LastModifiedTime;
|
|
FILETIME ExpireTime;
|
|
FILETIME LastAccessTime;
|
|
FILETIME LastSyncTime;
|
|
LPWSTR lpHeaderInfo;
|
|
DWORD dwHeaderInfoSize;
|
|
LPWSTR lpszFileExtension;
|
|
__extension__ union {
|
|
DWORD dwReserved;
|
|
DWORD dwExemptDelta;
|
|
};
|
|
} INTERNET_CACHE_ENTRY_INFOW,*LPINTERNET_CACHE_ENTRY_INFOW;
|
|
typedef INTERNET_CACHE_ENTRY_INFOA INTERNET_CACHE_ENTRY_INFO;
|
|
typedef LPINTERNET_CACHE_ENTRY_INFOA LPINTERNET_CACHE_ENTRY_INFO;
|
|
typedef struct _INTERNET_CACHE_TIMESTAMPS {
|
|
FILETIME ftExpires;
|
|
FILETIME ftLastModified;
|
|
} INTERNET_CACHE_TIMESTAMPS,*LPINTERNET_CACHE_TIMESTAMPS;
|
|
typedef LONGLONG GROUPID;
|
|
typedef struct _INTERNET_CACHE_GROUP_INFOA {
|
|
DWORD dwGroupSize;
|
|
DWORD dwGroupFlags;
|
|
DWORD dwGroupType;
|
|
DWORD dwDiskUsage;
|
|
DWORD dwDiskQuota;
|
|
DWORD dwOwnerStorage[4];
|
|
CHAR szGroupName[120];
|
|
} INTERNET_CACHE_GROUP_INFOA,*LPINTERNET_CACHE_GROUP_INFOA;
|
|
typedef struct _INTERNET_CACHE_GROUP_INFOW {
|
|
DWORD dwGroupSize;
|
|
DWORD dwGroupFlags;
|
|
DWORD dwGroupType;
|
|
DWORD dwDiskUsage;
|
|
DWORD dwDiskQuota;
|
|
DWORD dwOwnerStorage[4];
|
|
WCHAR szGroupName[120];
|
|
} INTERNET_CACHE_GROUP_INFOW,*LPINTERNET_CACHE_GROUP_INFOW;
|
|
typedef INTERNET_CACHE_GROUP_INFOA INTERNET_CACHE_GROUP_INFO;
|
|
typedef LPINTERNET_CACHE_GROUP_INFOA LPINTERNET_CACHE_GROUP_INFO;
|
|
extern __attribute__((dllimport)) WINBOOL CreateUrlCacheEntryA(LPCSTR lpszUrlName,DWORD dwExpectedFileSize,LPCSTR lpszFileExtension,LPSTR lpszFileName,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL CreateUrlCacheEntryW(LPCWSTR lpszUrlName,DWORD dwExpectedFileSize,LPCWSTR lpszFileExtension,LPWSTR lpszFileName,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL CommitUrlCacheEntryA(LPCSTR lpszUrlName,LPCSTR lpszLocalFileName,FILETIME ExpireTime,FILETIME LastModifiedTime,DWORD CacheEntryType,LPBYTE lpHeaderInfo,DWORD dwHeaderSize,LPCSTR lpszFileExtension,LPCSTR lpszOriginalUrl);
|
|
extern __attribute__((dllimport)) WINBOOL CommitUrlCacheEntryW(LPCWSTR lpszUrlName,LPCWSTR lpszLocalFileName,FILETIME ExpireTime,FILETIME LastModifiedTime,DWORD CacheEntryType,LPWSTR lpszHeaderInfo,DWORD dwHeaders,LPCWSTR lpszFileExtension,LPCWSTR lpszOriginalUrl);
|
|
extern __attribute__((dllimport)) WINBOOL RetrieveUrlCacheEntryFileA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL RetrieveUrlCacheEntryFileW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL UnlockUrlCacheEntryFileA(LPCSTR lpszUrlName,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL UnlockUrlCacheEntryFileW(LPCWSTR lpszUrlName,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) HANDLE RetrieveUrlCacheEntryStreamA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,WINBOOL fRandomRead,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) HANDLE RetrieveUrlCacheEntryStreamW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,WINBOOL fRandomRead,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL ReadUrlCacheEntryStream(HANDLE hUrlCacheStream,DWORD dwLocation,LPVOID lpBuffer,LPDWORD lpdwLen,DWORD Reserved);
|
|
extern __attribute__((dllimport)) WINBOOL UnlockUrlCacheEntryStream(HANDLE hUrlCacheStream,DWORD Reserved);
|
|
extern __attribute__((dllimport)) WINBOOL GetUrlCacheEntryInfoA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
|
|
extern __attribute__((dllimport)) WINBOOL GetUrlCacheEntryInfoW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
|
|
extern __attribute__((dllimport)) HANDLE FindFirstUrlCacheGroup(DWORD dwFlags,DWORD dwFilter,LPVOID lpSearchCondition,DWORD dwSearchCondition,GROUPID *lpGroupId,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL FindNextUrlCacheGroup(HANDLE hFind,GROUPID *lpGroupId,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL GetUrlCacheGroupAttributeA(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOA lpGroupInfo,LPDWORD lpdwGroupInfo,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL GetUrlCacheGroupAttributeW(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOW lpGroupInfo,LPDWORD lpdwGroupInfo,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheGroupAttributeA(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOA lpGroupInfo,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheGroupAttributeW(GROUPID gid,DWORD dwFlags,DWORD dwAttributes,LPINTERNET_CACHE_GROUP_INFOW lpGroupInfo,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) GROUPID CreateUrlCacheGroup(DWORD dwFlags,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL DeleteUrlCacheGroup(GROUPID GroupId,DWORD dwFlags,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL GetUrlCacheEntryInfoExA(LPCSTR lpszUrl,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,LPSTR lpszRedirectUrl,LPDWORD lpcbRedirectUrl,LPVOID lpReserved,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL GetUrlCacheEntryInfoExW(LPCWSTR lpszUrl,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,LPDWORD lpcbCacheEntryInfo,LPWSTR lpszRedirectUrl,LPDWORD lpcbRedirectUrl,LPVOID lpReserved,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheEntryGroup(LPCSTR lpszUrlName,DWORD dwFlags,GROUPID GroupId,LPBYTE pbGroupAttributes,DWORD cbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL DeleteUrlCacheEntry(LPCSTR lpszUrlName);
|
|
extern __attribute__((dllimport)) DWORD InternetDial(HWND hwndParent,LPSTR lpszConnectoid,DWORD dwFlags,LPDWORD lpdwConnection,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGoOnline(LPSTR lpszURL,HWND hwndParent,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheEntryInfoA(LPCSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,DWORD dwFieldControl);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheEntryInfoW(LPCWSTR lpszUrlName,LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,DWORD dwFieldControl);
|
|
extern __attribute__((dllimport)) GROUPID CreateUrlCacheGroup(DWORD dwFlags,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL DeleteUrlCacheGroup(GROUPID GroupId,DWORD dwFlags,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheEntryGroupA(LPCSTR lpszUrlName,DWORD dwFlags,GROUPID GroupId,LPBYTE pbGroupAttributes,DWORD cbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL SetUrlCacheEntryGroupW(LPCWSTR lpszUrlName,DWORD dwFlags,GROUPID GroupId,LPBYTE pbGroupAttributes,DWORD cbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) HANDLE FindFirstUrlCacheEntryExA(LPCSTR lpszUrlSearchPattern,DWORD dwFlags,DWORD dwFilter,GROUPID GroupId,LPINTERNET_CACHE_ENTRY_INFOA lpFirstCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) HANDLE FindFirstUrlCacheEntryExW(LPCWSTR lpszUrlSearchPattern,DWORD dwFlags,DWORD dwFilter,GROUPID GroupId,LPINTERNET_CACHE_ENTRY_INFOW lpFirstCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL FindNextUrlCacheEntryExA(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOA lpNextCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) WINBOOL FindNextUrlCacheEntryExW(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOW lpNextCacheEntryInfo,LPDWORD lpcbEntryInfo,LPVOID lpGroupAttributes,LPDWORD lpcbGroupAttributes,LPVOID lpReserved);
|
|
extern __attribute__((dllimport)) HANDLE FindFirstUrlCacheEntryA(LPCSTR lpszUrlSearchPattern,LPINTERNET_CACHE_ENTRY_INFOA lpFirstCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
|
|
extern __attribute__((dllimport)) HANDLE FindFirstUrlCacheEntryW(LPCWSTR lpszUrlSearchPattern,LPINTERNET_CACHE_ENTRY_INFOW lpFirstCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
|
|
extern __attribute__((dllimport)) WINBOOL FindNextUrlCacheEntryA(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOA lpNextCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
|
|
extern __attribute__((dllimport)) WINBOOL FindNextUrlCacheEntryW(HANDLE hEnumHandle,LPINTERNET_CACHE_ENTRY_INFOW lpNextCacheEntryInfo,LPDWORD lpcbCacheEntryInfo);
|
|
extern __attribute__((dllimport)) WINBOOL FindCloseUrlCache(HANDLE hEnumHandle);
|
|
extern __attribute__((dllimport)) WINBOOL DeleteUrlCacheEntryA(LPCSTR lpszUrlName);
|
|
extern __attribute__((dllimport)) WINBOOL DeleteUrlCacheEntryW(LPCWSTR lpszUrlName);
|
|
extern __attribute__((dllimport)) DWORD InternetDialA(HWND hwndParent,LPSTR lpszConnectoid,DWORD dwFlags,DWORD_PTR *lpdwConnection,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) DWORD InternetDialW(HWND hwndParent,LPWSTR lpszConnectoid,DWORD dwFlags,DWORD_PTR *lpdwConnection,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) DWORD InternetHangUp(DWORD_PTR dwConnection,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGoOnlineA(LPSTR lpszURL,HWND hwndParent,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGoOnlineW(LPWSTR lpszURL,HWND hwndParent,DWORD dwFlags);
|
|
extern __attribute__((dllimport)) WINBOOL InternetAutodial(DWORD dwFlags,HWND hwndParent);
|
|
extern __attribute__((dllimport)) WINBOOL InternetAutodialHangup(DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetConnectedState(LPDWORD lpdwFlags,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetConnectedStateExA(LPDWORD lpdwFlags,LPSTR lpszConnectionName,DWORD dwBufLen,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetConnectedStateExW(LPDWORD lpdwFlags,LPWSTR lpszConnectionName,DWORD dwBufLen,DWORD dwReserved);
|
|
struct AutoProxyHelperFunctions;
|
|
typedef struct AutoProxyHelperVtbl {
|
|
WINBOOL ( *IsResolvable)(LPSTR lpszHost);
|
|
DWORD ( *GetIPAddress)(LPSTR lpszIPAddress,LPDWORD lpdwIPAddressSize);
|
|
DWORD ( *ResolveHostName)(LPSTR lpszHostName,LPSTR lpszIPAddress,LPDWORD lpdwIPAddressSize);
|
|
WINBOOL ( *IsInNet)(LPSTR lpszIPAddress,LPSTR lpszDest,LPSTR lpszMask);
|
|
} AutoProxyHelperVtbl;
|
|
typedef struct {
|
|
DWORD dwStructSize;
|
|
LPSTR lpszScriptBuffer;
|
|
DWORD dwScriptBufferSize;
|
|
} AUTO_PROXY_SCRIPT_BUFFER,*LPAUTO_PROXY_SCRIPT_BUFFER;
|
|
typedef struct AutoProxyHelperFunctions {
|
|
const struct AutoProxyHelperVtbl *lpVtbl;
|
|
} AutoProxyHelperFunctions;
|
|
typedef WINBOOL ( *pfnInternetInitializeAutoProxyDll)(DWORD dwVersion,LPSTR lpszDownloadedTempFile,LPSTR lpszMime,AutoProxyHelperFunctions *lpAutoProxyCallbacks,LPAUTO_PROXY_SCRIPT_BUFFER lpAutoProxyScriptBuffer);
|
|
typedef WINBOOL ( *pfnInternetDeInitializeAutoProxyDll)(LPSTR lpszMime,DWORD dwReserved);
|
|
typedef WINBOOL ( *pfnInternetGetProxyInfo)(LPCSTR lpszUrl,DWORD dwUrlLength,LPSTR lpszUrlHostName,DWORD dwUrlHostNameLength,LPSTR *lplpszProxyHostName,LPDWORD lpdwProxyHostNameLength);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetConnectedStateEx(LPDWORD lpdwFlags,LPSTR lpszConnectionName,DWORD dwNameLen,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetInitializeAutoProxyDll(DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetDeInitializeAutoProxyDll(LPSTR lpszMime,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetProxyInfo(LPCSTR lpszUrl,DWORD dwUrlLength,LPSTR lpszUrlHostName,DWORD dwUrlHostNameLength,LPSTR *lplpszProxyHostName,LPDWORD lpdwProxyHostNameLength);
|
|
extern __attribute__((dllimport)) WINBOOL DetectAutoProxyUrl(LPSTR lpszAutoProxyUrl,DWORD dwAutoProxyUrlLength,DWORD dwDetectFlags);
|
|
extern __attribute__((dllimport)) WINBOOL CreateMD5SSOHash(PWSTR pszChallengeInfo,PWSTR pwszRealm,PWSTR pwszTarget,PBYTE pbHexHash);
|
|
typedef DWORD ( *PFN_DIAL_HANDLER) (HWND,LPCSTR,DWORD,LPDWORD);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetDialState(LPCSTR lpszConnectoid,DWORD dwState,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetDialStateA(LPCSTR lpszConnectoid,DWORD dwState,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetDialStateW(LPCWSTR lpszConnectoid,DWORD dwState,DWORD dwReserved);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetPerSiteCookieDecisionA(LPCSTR pchHostName,DWORD dwDecision);
|
|
extern __attribute__((dllimport)) WINBOOL InternetSetPerSiteCookieDecisionW(LPCWSTR pchHostName,DWORD dwDecision);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetPerSiteCookieDecisionA(LPCSTR pchHostName,unsigned long *pResult);
|
|
extern __attribute__((dllimport)) WINBOOL InternetGetPerSiteCookieDecisionW(LPCWSTR pchHostName,unsigned long *pResult);
|
|
extern __attribute__((dllimport)) WINBOOL InternetClearAllPerSiteCookieDecisions();
|
|
extern __attribute__((dllimport)) WINBOOL InternetEnumPerSiteCookieDecisionA(LPSTR pszSiteName,unsigned long *pcSiteNameSize,unsigned long *pdwDecision,unsigned long dwIndex);
|
|
extern __attribute__((dllimport)) WINBOOL InternetEnumPerSiteCookieDecisionW(LPWSTR pszSiteName,unsigned long *pcSiteNameSize,unsigned long *pdwDecision,unsigned long dwIndex);
|
|
extern __attribute__((dllimport)) DWORD PrivacySetZonePreferenceW(DWORD dwZone,DWORD dwType,DWORD dwTemplate,LPCWSTR pszPreference);
|
|
extern __attribute__((dllimport)) DWORD PrivacyGetZonePreferenceW(DWORD dwZone,DWORD dwType,LPDWORD pdwTemplate,LPWSTR pszBuffer,LPDWORD pdwBufferLength);
|
|
#pragma pack(pop)
|
|
HANDLE CreateToolhelp32Snapshot(DWORD dwFlags,DWORD th32ProcessID);
|
|
typedef struct tagHEAPLIST32 {
|
|
SIZE_T dwSize;
|
|
DWORD th32ProcessID;
|
|
ULONG_PTR th32HeapID;
|
|
DWORD dwFlags;
|
|
} HEAPLIST32;
|
|
typedef HEAPLIST32 *PHEAPLIST32;
|
|
typedef HEAPLIST32 *LPHEAPLIST32;
|
|
WINBOOL Heap32ListFirst(HANDLE hSnapshot,LPHEAPLIST32 lphl);
|
|
WINBOOL Heap32ListNext(HANDLE hSnapshot,LPHEAPLIST32 lphl);
|
|
typedef struct tagHEAPENTRY32 {
|
|
SIZE_T dwSize;
|
|
HANDLE hHandle;
|
|
ULONG_PTR dwAddress;
|
|
SIZE_T dwBlockSize;
|
|
DWORD dwFlags;
|
|
DWORD dwLockCount;
|
|
DWORD dwResvd;
|
|
DWORD th32ProcessID;
|
|
ULONG_PTR th32HeapID;
|
|
} HEAPENTRY32;
|
|
typedef HEAPENTRY32 *PHEAPENTRY32;
|
|
typedef HEAPENTRY32 *LPHEAPENTRY32;
|
|
WINBOOL Heap32First(LPHEAPENTRY32 lphe,DWORD th32ProcessID,ULONG_PTR th32HeapID);
|
|
WINBOOL Heap32Next(LPHEAPENTRY32 lphe);
|
|
WINBOOL Toolhelp32ReadProcessMemory(DWORD th32ProcessID,LPCVOID lpBaseAddress,LPVOID lpBuffer,SIZE_T cbRead,SIZE_T *lpNumberOfBytesRead);
|
|
typedef struct tagPROCESSENTRY32W {
|
|
DWORD dwSize;
|
|
DWORD cntUsage;
|
|
DWORD th32ProcessID;
|
|
ULONG_PTR th32DefaultHeapID;
|
|
DWORD th32ModuleID;
|
|
DWORD cntThreads;
|
|
DWORD th32ParentProcessID;
|
|
LONG pcPriClassBase;
|
|
DWORD dwFlags;
|
|
WCHAR szExeFile[260];
|
|
} PROCESSENTRY32W;
|
|
typedef PROCESSENTRY32W *PPROCESSENTRY32W;
|
|
typedef PROCESSENTRY32W *LPPROCESSENTRY32W;
|
|
WINBOOL Process32FirstW(HANDLE hSnapshot,LPPROCESSENTRY32W lppe);
|
|
WINBOOL Process32NextW(HANDLE hSnapshot,LPPROCESSENTRY32W lppe);
|
|
typedef struct tagPROCESSENTRY32 {
|
|
DWORD dwSize;
|
|
DWORD cntUsage;
|
|
DWORD th32ProcessID;
|
|
ULONG_PTR th32DefaultHeapID;
|
|
DWORD th32ModuleID;
|
|
DWORD cntThreads;
|
|
DWORD th32ParentProcessID;
|
|
LONG pcPriClassBase;
|
|
DWORD dwFlags;
|
|
CHAR szExeFile[260];
|
|
} PROCESSENTRY32;
|
|
typedef PROCESSENTRY32 *PPROCESSENTRY32;
|
|
typedef PROCESSENTRY32 *LPPROCESSENTRY32;
|
|
WINBOOL Process32First(HANDLE hSnapshot,LPPROCESSENTRY32 lppe);
|
|
WINBOOL Process32Next(HANDLE hSnapshot,LPPROCESSENTRY32 lppe);
|
|
typedef struct tagTHREADENTRY32 {
|
|
DWORD dwSize;
|
|
DWORD cntUsage;
|
|
DWORD th32ThreadID;
|
|
DWORD th32OwnerProcessID;
|
|
LONG tpBasePri;
|
|
LONG tpDeltaPri;
|
|
DWORD dwFlags;
|
|
} THREADENTRY32;
|
|
typedef THREADENTRY32 *PTHREADENTRY32;
|
|
typedef THREADENTRY32 *LPTHREADENTRY32;
|
|
WINBOOL Thread32First(HANDLE hSnapshot,LPTHREADENTRY32 lpte);
|
|
WINBOOL Thread32Next(HANDLE hSnapshot,LPTHREADENTRY32 lpte);
|
|
typedef struct tagMODULEENTRY32W {
|
|
DWORD dwSize;
|
|
DWORD th32ModuleID;
|
|
DWORD th32ProcessID;
|
|
DWORD GlblcntUsage;
|
|
DWORD ProccntUsage;
|
|
BYTE *modBaseAddr;
|
|
DWORD modBaseSize;
|
|
HMODULE hModule;
|
|
WCHAR szModule[255 + 1];
|
|
WCHAR szExePath[260];
|
|
} MODULEENTRY32W;
|
|
typedef MODULEENTRY32W *PMODULEENTRY32W;
|
|
typedef MODULEENTRY32W *LPMODULEENTRY32W;
|
|
WINBOOL Module32FirstW(HANDLE hSnapshot,LPMODULEENTRY32W lpme);
|
|
WINBOOL Module32NextW(HANDLE hSnapshot,LPMODULEENTRY32W lpme);
|
|
typedef struct tagMODULEENTRY32 {
|
|
DWORD dwSize;
|
|
DWORD th32ModuleID;
|
|
DWORD th32ProcessID;
|
|
DWORD GlblcntUsage;
|
|
DWORD ProccntUsage;
|
|
BYTE *modBaseAddr;
|
|
DWORD modBaseSize;
|
|
HMODULE hModule;
|
|
char szModule[255 + 1];
|
|
char szExePath[260];
|
|
} MODULEENTRY32;
|
|
typedef MODULEENTRY32 *PMODULEENTRY32;
|
|
typedef MODULEENTRY32 *LPMODULEENTRY32;
|
|
WINBOOL Module32First(HANDLE hSnapshot,LPMODULEENTRY32 lpme);
|
|
WINBOOL Module32Next(HANDLE hSnapshot,LPMODULEENTRY32 lpme);
|
|
WINBOOL EnumProcesses(DWORD *lpidProcess,DWORD cb,DWORD *cbNeeded);
|
|
WINBOOL EnumProcessModules(HANDLE hProcess,HMODULE *lphModule,DWORD cb,LPDWORD lpcbNeeded);
|
|
DWORD GetModuleBaseNameA(HANDLE hProcess,HMODULE hModule,LPSTR lpBaseName,DWORD nSize);
|
|
DWORD GetModuleBaseNameW(HANDLE hProcess,HMODULE hModule,LPWSTR lpBaseName,DWORD nSize);
|
|
DWORD GetModuleFileNameExA(HANDLE hProcess,HMODULE hModule,LPSTR lpFilename,DWORD nSize);
|
|
DWORD GetModuleFileNameExW(HANDLE hProcess,HMODULE hModule,LPWSTR lpFilename,DWORD nSize);
|
|
typedef struct _MODULEINFO {
|
|
LPVOID lpBaseOfDll;
|
|
DWORD SizeOfImage;
|
|
LPVOID EntryPoint;
|
|
} MODULEINFO,*LPMODULEINFO;
|
|
WINBOOL GetModuleInformation(HANDLE hProcess,HMODULE hModule,LPMODULEINFO lpmodinfo,DWORD cb);
|
|
WINBOOL EmptyWorkingSet(HANDLE hProcess);
|
|
WINBOOL QueryWorkingSet(HANDLE hProcess,PVOID pv,DWORD cb);
|
|
WINBOOL QueryWorkingSetEx(HANDLE hProcess,PVOID pv,DWORD cb);
|
|
WINBOOL InitializeProcessForWsWatch(HANDLE hProcess);
|
|
typedef struct _PSAPI_WS_WATCH_INFORMATION {
|
|
LPVOID FaultingPc;
|
|
LPVOID FaultingVa;
|
|
} PSAPI_WS_WATCH_INFORMATION,*PPSAPI_WS_WATCH_INFORMATION;
|
|
WINBOOL GetWsChanges(HANDLE hProcess,PPSAPI_WS_WATCH_INFORMATION lpWatchInfo,DWORD cb);
|
|
DWORD GetMappedFileNameW(HANDLE hProcess,LPVOID lpv,LPWSTR lpFilename,DWORD nSize);
|
|
DWORD GetMappedFileNameA(HANDLE hProcess,LPVOID lpv,LPSTR lpFilename,DWORD nSize);
|
|
WINBOOL EnumDeviceDrivers(LPVOID *lpImageBase,DWORD cb,LPDWORD lpcbNeeded);
|
|
DWORD GetDeviceDriverBaseNameA(LPVOID ImageBase,LPSTR lpBaseName,DWORD nSize);
|
|
DWORD GetDeviceDriverBaseNameW(LPVOID ImageBase,LPWSTR lpBaseName,DWORD nSize);
|
|
DWORD GetDeviceDriverFileNameA(LPVOID ImageBase,LPSTR lpFilename,DWORD nSize);
|
|
DWORD GetDeviceDriverFileNameW(LPVOID ImageBase,LPWSTR lpFilename,DWORD nSize);
|
|
typedef struct _PROCESS_MEMORY_COUNTERS {
|
|
DWORD cb;
|
|
DWORD PageFaultCount;
|
|
SIZE_T PeakWorkingSetSize;
|
|
SIZE_T WorkingSetSize;
|
|
SIZE_T QuotaPeakPagedPoolUsage;
|
|
SIZE_T QuotaPagedPoolUsage;
|
|
SIZE_T QuotaPeakNonPagedPoolUsage;
|
|
SIZE_T QuotaNonPagedPoolUsage;
|
|
SIZE_T PagefileUsage;
|
|
SIZE_T PeakPagefileUsage;
|
|
} PROCESS_MEMORY_COUNTERS;
|
|
typedef PROCESS_MEMORY_COUNTERS *PPROCESS_MEMORY_COUNTERS;
|
|
typedef struct _PROCESS_MEMORY_COUNTERS_EX {
|
|
DWORD cb;
|
|
DWORD PageFaultCount;
|
|
SIZE_T PeakWorkingSetSize;
|
|
SIZE_T WorkingSetSize;
|
|
SIZE_T QuotaPeakPagedPoolUsage;
|
|
SIZE_T QuotaPagedPoolUsage;
|
|
SIZE_T QuotaPeakNonPagedPoolUsage;
|
|
SIZE_T QuotaNonPagedPoolUsage;
|
|
SIZE_T PagefileUsage;
|
|
SIZE_T PeakPagefileUsage;
|
|
SIZE_T PrivateUsage;
|
|
} PROCESS_MEMORY_COUNTERS_EX;
|
|
typedef PROCESS_MEMORY_COUNTERS_EX *PPROCESS_MEMORY_COUNTERS_EX;
|
|
WINBOOL GetProcessMemoryInfo(HANDLE Process,PPROCESS_MEMORY_COUNTERS ppsmemCounters,DWORD cb);
|
|
typedef struct _PERFORMANCE_INFORMATION {
|
|
DWORD cb;
|
|
SIZE_T CommitTotal;
|
|
SIZE_T CommitLimit;
|
|
SIZE_T CommitPeak;
|
|
SIZE_T PhysicalTotal;
|
|
SIZE_T PhysicalAvailable;
|
|
SIZE_T SystemCache;
|
|
SIZE_T KernelTotal;
|
|
SIZE_T KernelPaged;
|
|
SIZE_T KernelNonpaged;
|
|
SIZE_T PageSize;
|
|
DWORD HandleCount;
|
|
DWORD ProcessCount;
|
|
DWORD ThreadCount;
|
|
} PERFORMANCE_INFORMATION,*PPERFORMANCE_INFORMATION,PERFORMACE_INFORMATION,*PPERFORMACE_INFORMATION;
|
|
WINBOOL GetPerformanceInfo (PPERFORMACE_INFORMATION pPerformanceInformation,DWORD cb);
|
|
typedef struct _ENUM_PAGE_FILE_INFORMATION {
|
|
DWORD cb;
|
|
DWORD Reserved;
|
|
SIZE_T TotalSize;
|
|
SIZE_T TotalInUse;
|
|
SIZE_T PeakUsage;
|
|
} ENUM_PAGE_FILE_INFORMATION,*PENUM_PAGE_FILE_INFORMATION;
|
|
typedef WINBOOL (*PENUM_PAGE_FILE_CALLBACKW) (LPVOID pContext,PENUM_PAGE_FILE_INFORMATION pPageFileInfo,LPCWSTR lpFilename);
|
|
typedef WINBOOL (*PENUM_PAGE_FILE_CALLBACKA) (LPVOID pContext,PENUM_PAGE_FILE_INFORMATION pPageFileInfo,LPCSTR lpFilename);
|
|
WINBOOL EnumPageFilesW (PENUM_PAGE_FILE_CALLBACKW pCallBackRoutine,LPVOID pContext);
|
|
WINBOOL EnumPageFilesA (PENUM_PAGE_FILE_CALLBACKA pCallBackRoutine,LPVOID pContext);
|
|
DWORD GetProcessImageFileNameA(HANDLE hProcess,LPSTR lpImageFileName,DWORD nSize);
|
|
DWORD GetProcessImageFileNameW(HANDLE hProcess,LPWSTR lpImageFileName,DWORD nSize);
|
|
typedef struct _PSAPI_WS_WATCH_INFORMATION_EX {
|
|
PSAPI_WS_WATCH_INFORMATION BasicInfo;
|
|
ULONG_PTR FaultingThreadId;
|
|
ULONG_PTR Flags;
|
|
} PSAPI_WS_WATCH_INFORMATION_EX, *PPSAPI_WS_WATCH_INFORMATION_EX;
|
|
WINBOOL GetWsChangesEx(
|
|
HANDLE hProcess,
|
|
PPSAPI_WS_WATCH_INFORMATION_EX lpWatchInfoEx,
|
|
DWORD cb
|
|
);
|
|
WINBOOL EnumProcessModulesEx(
|
|
HANDLE hProcess,
|
|
HMODULE *lphModule,
|
|
DWORD cb,
|
|
LPDWORD lpcbNeeded,
|
|
DWORD dwFilterFlag
|
|
);
|
|
typedef union _PSAPI_WORKING_SET_BLOCK {
|
|
ULONG_PTR Flags;
|
|
__extension__ struct {
|
|
ULONG_PTR Protection :5;
|
|
ULONG_PTR ShareCount :3;
|
|
ULONG_PTR Shared :1;
|
|
ULONG_PTR Reserved :3;
|
|
ULONG_PTR VirtualPage :52;
|
|
} ;
|
|
} PSAPI_WORKING_SET_BLOCK, *PPSAPI_WORKING_SET_BLOCK;
|
|
typedef struct _PSAPI_WORKING_SET_INFORMATION {
|
|
ULONG_PTR NumberOfEntries;
|
|
PSAPI_WORKING_SET_BLOCK WorkingSetInfo[1];
|
|
} PSAPI_WORKING_SET_INFORMATION, *PPSAPI_WORKING_SET_INFORMATION;
|
|
typedef union _PSAPI_WORKING_SET_EX_BLOCK {
|
|
ULONG_PTR Flags;
|
|
__extension__ struct {
|
|
ULONG_PTR Valid :1;
|
|
ULONG_PTR ShareCount :3;
|
|
ULONG_PTR Win32Protection :11;
|
|
ULONG_PTR Shared :1;
|
|
ULONG_PTR Node :6;
|
|
ULONG_PTR Locked :1;
|
|
ULONG_PTR LargePage :1;
|
|
} ;
|
|
} PSAPI_WORKING_SET_EX_BLOCK, *PPSAPI_WORKING_SET_EX_BLOCK;
|
|
typedef struct _PSAPI_WORKING_SET_EX_INFORMATION {
|
|
PVOID VirtualAddress;
|
|
PSAPI_WORKING_SET_EX_BLOCK VirtualAttributes;
|
|
} PSAPI_WORKING_SET_EX_INFORMATION, *PPSAPI_WORKING_SET_EX_INFORMATION;
|
|
typedef struct in6_addr {
|
|
union {
|
|
u_char Byte[16];
|
|
u_short Word[8];
|
|
} u;
|
|
} IN6_ADDR, *PIN6_ADDR, *LPIN6_ADDR;
|
|
typedef struct IEnumConnections IEnumConnections;
|
|
typedef struct IConnectionPoint IConnectionPoint;
|
|
typedef struct IEnumConnectionPoints IEnumConnectionPoints;
|
|
typedef struct IConnectionPointContainer IConnectionPointContainer;
|
|
typedef struct IClassFactory2 IClassFactory2;
|
|
typedef struct IProvideClassInfo IProvideClassInfo;
|
|
typedef struct IProvideClassInfo2 IProvideClassInfo2;
|
|
typedef struct IProvideMultipleClassInfo IProvideMultipleClassInfo;
|
|
typedef struct IOleControl IOleControl;
|
|
typedef struct IOleControlSite IOleControlSite;
|
|
typedef struct IPropertyPage IPropertyPage;
|
|
typedef struct IPropertyPage2 IPropertyPage2;
|
|
typedef struct IPropertyPageSite IPropertyPageSite;
|
|
typedef struct IPropertyNotifySink IPropertyNotifySink;
|
|
typedef struct ISpecifyPropertyPages ISpecifyPropertyPages;
|
|
typedef struct IPersistMemory IPersistMemory;
|
|
typedef struct IPersistStreamInit IPersistStreamInit;
|
|
typedef struct IPersistPropertyBag IPersistPropertyBag;
|
|
typedef struct ISimpleFrameSite ISimpleFrameSite;
|
|
typedef struct IFont IFont;
|
|
typedef struct IPicture IPicture;
|
|
typedef struct IPicture2 IPicture2;
|
|
typedef struct IFontEventsDisp IFontEventsDisp;
|
|
typedef struct IFontDisp IFontDisp;
|
|
typedef struct IPictureDisp IPictureDisp;
|
|
typedef struct IOleInPlaceObjectWindowless IOleInPlaceObjectWindowless;
|
|
typedef struct IOleInPlaceSiteEx IOleInPlaceSiteEx;
|
|
typedef struct IOleInPlaceSiteWindowless IOleInPlaceSiteWindowless;
|
|
typedef struct IViewObjectEx IViewObjectEx;
|
|
typedef struct IOleUndoUnit IOleUndoUnit;
|
|
typedef struct IOleParentUndoUnit IOleParentUndoUnit;
|
|
typedef struct IEnumOleUndoUnits IEnumOleUndoUnits;
|
|
typedef struct IOleUndoManager IOleUndoManager;
|
|
typedef struct IPointerInactive IPointerInactive;
|
|
typedef struct IObjectWithSite IObjectWithSite;
|
|
typedef struct IPerPropertyBrowsing IPerPropertyBrowsing;
|
|
typedef struct IPropertyBag2 IPropertyBag2;
|
|
typedef struct IPersistPropertyBag2 IPersistPropertyBag2;
|
|
typedef struct IAdviseSinkEx IAdviseSinkEx;
|
|
typedef struct IQuickActivate IQuickActivate;
|
|
extern RPC_IF_HANDLE IOleControlTypes_v1_0_c_ifspec;
|
|
extern RPC_IF_HANDLE IOleControlTypes_v1_0_s_ifspec;
|
|
typedef enum tagUASFLAGS {
|
|
UAS_NORMAL = 0x0,
|
|
UAS_BLOCKED = 0x1,
|
|
UAS_NOPARENTENABLE = 0x2,
|
|
UAS_MASK = 0x3
|
|
} UASFLAGS;
|
|
typedef enum tagREADYSTATE {
|
|
READYSTATE_UNINITIALIZED = 0,
|
|
READYSTATE_LOADING = 1,
|
|
READYSTATE_LOADED = 2,
|
|
READYSTATE_INTERACTIVE = 3,
|
|
READYSTATE_COMPLETE = 4
|
|
} READYSTATE;
|
|
typedef IEnumConnections *PENUMCONNECTIONS;
|
|
typedef IEnumConnections *LPENUMCONNECTIONS;
|
|
typedef struct tagCONNECTDATA {
|
|
IUnknown *pUnk;
|
|
DWORD dwCookie;
|
|
} CONNECTDATA;
|
|
typedef struct tagCONNECTDATA *PCONNECTDATA;
|
|
typedef struct tagCONNECTDATA *LPCONNECTDATA;
|
|
extern const GUID IID_IEnumConnections;
|
|
typedef struct IEnumConnectionsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumConnections *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumConnections *This);
|
|
ULONG ( *Release)(
|
|
IEnumConnections *This);
|
|
HRESULT ( *Next)(
|
|
IEnumConnections *This,
|
|
ULONG cConnections,
|
|
LPCONNECTDATA rgcd,
|
|
ULONG *pcFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumConnections *This,
|
|
ULONG cConnections);
|
|
HRESULT ( *Reset)(
|
|
IEnumConnections *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumConnections *This,
|
|
IEnumConnections **ppEnum);
|
|
|
|
} IEnumConnectionsVtbl;
|
|
struct IEnumConnections {
|
|
IEnumConnectionsVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumConnections_RemoteNext_Proxy(
|
|
IEnumConnections* This,
|
|
ULONG cConnections,
|
|
LPCONNECTDATA rgcd,
|
|
ULONG *pcFetched);
|
|
void IEnumConnections_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumConnections_Next_Proxy(
|
|
IEnumConnections* This,
|
|
ULONG cConnections,
|
|
LPCONNECTDATA rgcd,
|
|
ULONG *pcFetched);
|
|
HRESULT IEnumConnections_Next_Stub(
|
|
IEnumConnections* This,
|
|
ULONG cConnections,
|
|
LPCONNECTDATA rgcd,
|
|
ULONG *pcFetched);
|
|
typedef IConnectionPoint *PCONNECTIONPOINT;
|
|
typedef IConnectionPoint *LPCONNECTIONPOINT;
|
|
extern const GUID IID_IConnectionPoint;
|
|
typedef struct IConnectionPointVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IConnectionPoint *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IConnectionPoint *This);
|
|
ULONG ( *Release)(
|
|
IConnectionPoint *This);
|
|
HRESULT ( *GetConnectionInterface)(
|
|
IConnectionPoint *This,
|
|
IID *pIID);
|
|
HRESULT ( *GetConnectionPointContainer)(
|
|
IConnectionPoint *This,
|
|
IConnectionPointContainer **ppCPC);
|
|
HRESULT ( *Advise)(
|
|
IConnectionPoint *This,
|
|
IUnknown *pUnkSink,
|
|
DWORD *pdwCookie);
|
|
HRESULT ( *Unadvise)(
|
|
IConnectionPoint *This,
|
|
DWORD dwCookie);
|
|
HRESULT ( *EnumConnections)(
|
|
IConnectionPoint *This,
|
|
IEnumConnections **ppEnum);
|
|
|
|
} IConnectionPointVtbl;
|
|
struct IConnectionPoint {
|
|
IConnectionPointVtbl* lpVtbl;
|
|
};
|
|
typedef IEnumConnectionPoints *PENUMCONNECTIONPOINTS;
|
|
typedef IEnumConnectionPoints *LPENUMCONNECTIONPOINTS;
|
|
extern const GUID IID_IEnumConnectionPoints;
|
|
typedef struct IEnumConnectionPointsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumConnectionPoints *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumConnectionPoints *This);
|
|
ULONG ( *Release)(
|
|
IEnumConnectionPoints *This);
|
|
HRESULT ( *Next)(
|
|
IEnumConnectionPoints *This,
|
|
ULONG cConnections,
|
|
LPCONNECTIONPOINT *ppCP,
|
|
ULONG *pcFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumConnectionPoints *This,
|
|
ULONG cConnections);
|
|
HRESULT ( *Reset)(
|
|
IEnumConnectionPoints *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumConnectionPoints *This,
|
|
IEnumConnectionPoints **ppEnum);
|
|
|
|
} IEnumConnectionPointsVtbl;
|
|
struct IEnumConnectionPoints {
|
|
IEnumConnectionPointsVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumConnectionPoints_RemoteNext_Proxy(
|
|
IEnumConnectionPoints* This,
|
|
ULONG cConnections,
|
|
LPCONNECTIONPOINT *ppCP,
|
|
ULONG *pcFetched);
|
|
void IEnumConnectionPoints_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumConnectionPoints_Next_Proxy(
|
|
IEnumConnectionPoints* This,
|
|
ULONG cConnections,
|
|
LPCONNECTIONPOINT *ppCP,
|
|
ULONG *pcFetched);
|
|
HRESULT IEnumConnectionPoints_Next_Stub(
|
|
IEnumConnectionPoints* This,
|
|
ULONG cConnections,
|
|
LPCONNECTIONPOINT *ppCP,
|
|
ULONG *pcFetched);
|
|
typedef IConnectionPointContainer *PCONNECTIONPOINTCONTAINER;
|
|
typedef IConnectionPointContainer *LPCONNECTIONPOINTCONTAINER;
|
|
extern const GUID IID_IConnectionPointContainer;
|
|
typedef struct IConnectionPointContainerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IConnectionPointContainer *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IConnectionPointContainer *This);
|
|
ULONG ( *Release)(
|
|
IConnectionPointContainer *This);
|
|
HRESULT ( *EnumConnectionPoints)(
|
|
IConnectionPointContainer *This,
|
|
IEnumConnectionPoints **ppEnum);
|
|
HRESULT ( *FindConnectionPoint)(
|
|
IConnectionPointContainer *This,
|
|
const IID *const riid,
|
|
IConnectionPoint **ppCP);
|
|
|
|
} IConnectionPointContainerVtbl;
|
|
struct IConnectionPointContainer {
|
|
IConnectionPointContainerVtbl* lpVtbl;
|
|
};
|
|
typedef IClassFactory2 *LPCLASSFACTORY2;
|
|
typedef struct tagLICINFO {
|
|
LONG cbLicInfo;
|
|
WINBOOL fRuntimeKeyAvail;
|
|
WINBOOL fLicVerified;
|
|
} LICINFO;
|
|
typedef struct tagLICINFO *LPLICINFO;
|
|
extern const GUID IID_IClassFactory2;
|
|
typedef struct IClassFactory2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IClassFactory2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IClassFactory2 *This);
|
|
ULONG ( *Release)(
|
|
IClassFactory2 *This);
|
|
HRESULT ( *CreateInstance)(
|
|
IClassFactory2 *This,
|
|
IUnknown *pUnkOuter,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
HRESULT ( *LockServer)(
|
|
IClassFactory2 *This,
|
|
WINBOOL fLock);
|
|
HRESULT ( *GetLicInfo)(
|
|
IClassFactory2 *This,
|
|
LICINFO *pLicInfo);
|
|
HRESULT ( *RequestLicKey)(
|
|
IClassFactory2 *This,
|
|
DWORD dwReserved,
|
|
BSTR *pBstrKey);
|
|
HRESULT ( *CreateInstanceLic)(
|
|
IClassFactory2 *This,
|
|
IUnknown *pUnkOuter,
|
|
IUnknown *pUnkReserved,
|
|
const IID *const riid,
|
|
BSTR bstrKey,
|
|
PVOID *ppvObj);
|
|
|
|
} IClassFactory2Vtbl;
|
|
struct IClassFactory2 {
|
|
IClassFactory2Vtbl* lpVtbl;
|
|
};
|
|
HRESULT IClassFactory2_RemoteCreateInstanceLic_Proxy(
|
|
IClassFactory2* This,
|
|
const IID *const riid,
|
|
BSTR bstrKey,
|
|
IUnknown **ppvObj);
|
|
void IClassFactory2_RemoteCreateInstanceLic_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IClassFactory2_CreateInstanceLic_Proxy(
|
|
IClassFactory2* This,
|
|
IUnknown *pUnkOuter,
|
|
IUnknown *pUnkReserved,
|
|
const IID *const riid,
|
|
BSTR bstrKey,
|
|
PVOID *ppvObj);
|
|
HRESULT IClassFactory2_CreateInstanceLic_Stub(
|
|
IClassFactory2* This,
|
|
const IID *const riid,
|
|
BSTR bstrKey,
|
|
IUnknown **ppvObj);
|
|
typedef IProvideClassInfo *LPPROVIDECLASSINFO;
|
|
extern const GUID IID_IProvideClassInfo;
|
|
typedef struct IProvideClassInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IProvideClassInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IProvideClassInfo *This);
|
|
ULONG ( *Release)(
|
|
IProvideClassInfo *This);
|
|
HRESULT ( *GetClassInfoA)(
|
|
IProvideClassInfo *This,
|
|
ITypeInfo **ppTI);
|
|
|
|
} IProvideClassInfoVtbl;
|
|
struct IProvideClassInfo {
|
|
IProvideClassInfoVtbl* lpVtbl;
|
|
};
|
|
typedef IProvideClassInfo2 *LPPROVIDECLASSINFO2;
|
|
typedef enum tagGUIDKIND {
|
|
GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1
|
|
} GUIDKIND;
|
|
extern const GUID IID_IProvideClassInfo2;
|
|
typedef struct IProvideClassInfo2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IProvideClassInfo2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IProvideClassInfo2 *This);
|
|
ULONG ( *Release)(
|
|
IProvideClassInfo2 *This);
|
|
HRESULT ( *GetClassInfoA)(
|
|
IProvideClassInfo2 *This,
|
|
ITypeInfo **ppTI);
|
|
HRESULT ( *GetGUID)(
|
|
IProvideClassInfo2 *This,
|
|
DWORD dwGuidKind,
|
|
GUID *pGUID);
|
|
|
|
} IProvideClassInfo2Vtbl;
|
|
struct IProvideClassInfo2 {
|
|
IProvideClassInfo2Vtbl* lpVtbl;
|
|
};
|
|
typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO;
|
|
extern const GUID IID_IProvideMultipleClassInfo;
|
|
typedef struct IProvideMultipleClassInfoVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IProvideMultipleClassInfo *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IProvideMultipleClassInfo *This);
|
|
ULONG ( *Release)(
|
|
IProvideMultipleClassInfo *This);
|
|
HRESULT ( *GetClassInfoA)(
|
|
IProvideMultipleClassInfo *This,
|
|
ITypeInfo **ppTI);
|
|
HRESULT ( *GetGUID)(
|
|
IProvideMultipleClassInfo *This,
|
|
DWORD dwGuidKind,
|
|
GUID *pGUID);
|
|
HRESULT ( *GetMultiTypeInfoCount)(
|
|
IProvideMultipleClassInfo *This,
|
|
ULONG *pcti);
|
|
HRESULT ( *GetInfoOfIndex)(
|
|
IProvideMultipleClassInfo *This,
|
|
ULONG iti,
|
|
DWORD dwFlags,
|
|
ITypeInfo **pptiCoClass,
|
|
DWORD *pdwTIFlags,
|
|
ULONG *pcdispidReserved,
|
|
IID *piidPrimary,
|
|
IID *piidSource);
|
|
|
|
} IProvideMultipleClassInfoVtbl;
|
|
struct IProvideMultipleClassInfo {
|
|
IProvideMultipleClassInfoVtbl* lpVtbl;
|
|
};
|
|
typedef IOleControl *LPOLECONTROL;
|
|
typedef struct tagCONTROLINFO {
|
|
ULONG cb;
|
|
HACCEL hAccel;
|
|
USHORT cAccel;
|
|
DWORD dwFlags;
|
|
} CONTROLINFO;
|
|
typedef struct tagCONTROLINFO *LPCONTROLINFO;
|
|
typedef enum tagCTRLINFO {
|
|
CTRLINFO_EATS_RETURN = 1,
|
|
CTRLINFO_EATS_ESCAPE = 2
|
|
} CTRLINFO;
|
|
extern const GUID IID_IOleControl;
|
|
typedef struct IOleControlVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleControl *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleControl *This);
|
|
ULONG ( *Release)(
|
|
IOleControl *This);
|
|
HRESULT ( *GetControlInfo)(
|
|
IOleControl *This,
|
|
CONTROLINFO *pCI);
|
|
HRESULT ( *OnMnemonic)(
|
|
IOleControl *This,
|
|
MSG *pMsg);
|
|
HRESULT ( *OnAmbientPropertyChange)(
|
|
IOleControl *This,
|
|
DISPID dispID);
|
|
HRESULT ( *FreezeEvents)(
|
|
IOleControl *This,
|
|
WINBOOL bFreeze);
|
|
|
|
} IOleControlVtbl;
|
|
struct IOleControl {
|
|
IOleControlVtbl* lpVtbl;
|
|
};
|
|
typedef IOleControlSite *LPOLECONTROLSITE;
|
|
typedef struct tagPOINTF {
|
|
FLOAT x;
|
|
FLOAT y;
|
|
} POINTF;
|
|
typedef struct tagPOINTF *LPPOINTF;
|
|
typedef enum tagXFORMCOORDS {
|
|
XFORMCOORDS_POSITION = 0x1,
|
|
XFORMCOORDS_SIZE = 0x2,
|
|
XFORMCOORDS_HIMETRICTOCONTAINER = 0x4,
|
|
XFORMCOORDS_CONTAINERTOHIMETRIC = 0x8,
|
|
XFORMCOORDS_EVENTCOMPAT = 0x10
|
|
} XFORMCOORDS;
|
|
extern const GUID IID_IOleControlSite;
|
|
typedef struct IOleControlSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleControlSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleControlSite *This);
|
|
ULONG ( *Release)(
|
|
IOleControlSite *This);
|
|
HRESULT ( *OnControlInfoChanged)(
|
|
IOleControlSite *This);
|
|
HRESULT ( *LockInPlaceActive)(
|
|
IOleControlSite *This,
|
|
WINBOOL fLock);
|
|
HRESULT ( *GetExtendedControl)(
|
|
IOleControlSite *This,
|
|
IDispatch **ppDisp);
|
|
HRESULT ( *TransformCoords)(
|
|
IOleControlSite *This,
|
|
POINTL *pPtlHimetric,
|
|
POINTF *pPtfContainer,
|
|
DWORD dwFlags);
|
|
HRESULT ( *TranslateAcceleratorA)(
|
|
IOleControlSite *This,
|
|
MSG *pMsg,
|
|
DWORD grfModifiers);
|
|
HRESULT ( *OnFocus)(
|
|
IOleControlSite *This,
|
|
WINBOOL fGotFocus);
|
|
HRESULT ( *ShowPropertyFrame)(
|
|
IOleControlSite *This);
|
|
|
|
} IOleControlSiteVtbl;
|
|
struct IOleControlSite {
|
|
IOleControlSiteVtbl* lpVtbl;
|
|
};
|
|
typedef IPropertyPage *LPPROPERTYPAGE;
|
|
typedef struct tagPROPPAGEINFO {
|
|
ULONG cb;
|
|
LPOLESTR pszTitle;
|
|
SIZE size;
|
|
LPOLESTR pszDocString;
|
|
LPOLESTR pszHelpFile;
|
|
DWORD dwHelpContext;
|
|
} PROPPAGEINFO;
|
|
typedef struct tagPROPPAGEINFO *LPPROPPAGEINFO;
|
|
extern const GUID IID_IPropertyPage;
|
|
typedef struct IPropertyPageVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyPage *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyPage *This);
|
|
ULONG ( *Release)(
|
|
IPropertyPage *This);
|
|
HRESULT ( *SetPageSite)(
|
|
IPropertyPage *This,
|
|
IPropertyPageSite *pPageSite);
|
|
HRESULT ( *Activate)(
|
|
IPropertyPage *This,
|
|
HWND hWndParent,
|
|
LPCRECT pRect,
|
|
WINBOOL bModal);
|
|
HRESULT ( *Deactivate)(
|
|
IPropertyPage *This);
|
|
HRESULT ( *GetPageInfo)(
|
|
IPropertyPage *This,
|
|
PROPPAGEINFO *pPageInfo);
|
|
HRESULT ( *SetObjects)(
|
|
IPropertyPage *This,
|
|
ULONG cObjects,
|
|
IUnknown **ppUnk);
|
|
HRESULT ( *Show)(
|
|
IPropertyPage *This,
|
|
UINT nCmdShow);
|
|
HRESULT ( *Move)(
|
|
IPropertyPage *This,
|
|
LPCRECT pRect);
|
|
HRESULT ( *IsPageDirty)(
|
|
IPropertyPage *This);
|
|
HRESULT ( *Apply)(
|
|
IPropertyPage *This);
|
|
HRESULT ( *Help)(
|
|
IPropertyPage *This,
|
|
LPCOLESTR pszHelpDir);
|
|
HRESULT ( *TranslateAcceleratorA)(
|
|
IPropertyPage *This,
|
|
MSG *pMsg);
|
|
|
|
} IPropertyPageVtbl;
|
|
struct IPropertyPage {
|
|
IPropertyPageVtbl* lpVtbl;
|
|
};
|
|
typedef IPropertyPage2 *LPPROPERTYPAGE2;
|
|
extern const GUID IID_IPropertyPage2;
|
|
typedef struct IPropertyPage2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyPage2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyPage2 *This);
|
|
ULONG ( *Release)(
|
|
IPropertyPage2 *This);
|
|
HRESULT ( *SetPageSite)(
|
|
IPropertyPage2 *This,
|
|
IPropertyPageSite *pPageSite);
|
|
HRESULT ( *Activate)(
|
|
IPropertyPage2 *This,
|
|
HWND hWndParent,
|
|
LPCRECT pRect,
|
|
WINBOOL bModal);
|
|
HRESULT ( *Deactivate)(
|
|
IPropertyPage2 *This);
|
|
HRESULT ( *GetPageInfo)(
|
|
IPropertyPage2 *This,
|
|
PROPPAGEINFO *pPageInfo);
|
|
HRESULT ( *SetObjects)(
|
|
IPropertyPage2 *This,
|
|
ULONG cObjects,
|
|
IUnknown **ppUnk);
|
|
HRESULT ( *Show)(
|
|
IPropertyPage2 *This,
|
|
UINT nCmdShow);
|
|
HRESULT ( *Move)(
|
|
IPropertyPage2 *This,
|
|
LPCRECT pRect);
|
|
HRESULT ( *IsPageDirty)(
|
|
IPropertyPage2 *This);
|
|
HRESULT ( *Apply)(
|
|
IPropertyPage2 *This);
|
|
HRESULT ( *Help)(
|
|
IPropertyPage2 *This,
|
|
LPCOLESTR pszHelpDir);
|
|
HRESULT ( *TranslateAcceleratorA)(
|
|
IPropertyPage2 *This,
|
|
MSG *pMsg);
|
|
HRESULT ( *EditProperty)(
|
|
IPropertyPage2 *This,
|
|
DISPID dispID);
|
|
|
|
} IPropertyPage2Vtbl;
|
|
struct IPropertyPage2 {
|
|
IPropertyPage2Vtbl* lpVtbl;
|
|
};
|
|
typedef IPropertyPageSite *LPPROPERTYPAGESITE;
|
|
typedef enum tagPROPPAGESTATUS {
|
|
PROPPAGESTATUS_DIRTY = 0x1,
|
|
PROPPAGESTATUS_VALIDATE = 0x2,
|
|
PROPPAGESTATUS_CLEAN = 0x4
|
|
} PROPPAGESTATUS;
|
|
extern const GUID IID_IPropertyPageSite;
|
|
typedef struct IPropertyPageSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyPageSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyPageSite *This);
|
|
ULONG ( *Release)(
|
|
IPropertyPageSite *This);
|
|
HRESULT ( *OnStatusChange)(
|
|
IPropertyPageSite *This,
|
|
DWORD dwFlags);
|
|
HRESULT ( *GetLocaleID)(
|
|
IPropertyPageSite *This,
|
|
LCID *pLocaleID);
|
|
HRESULT ( *GetPageContainer)(
|
|
IPropertyPageSite *This,
|
|
IUnknown **ppUnk);
|
|
HRESULT ( *TranslateAcceleratorA)(
|
|
IPropertyPageSite *This,
|
|
MSG *pMsg);
|
|
|
|
} IPropertyPageSiteVtbl;
|
|
struct IPropertyPageSite {
|
|
IPropertyPageSiteVtbl* lpVtbl;
|
|
};
|
|
typedef IPropertyNotifySink *LPPROPERTYNOTIFYSINK;
|
|
extern const GUID IID_IPropertyNotifySink;
|
|
typedef struct IPropertyNotifySinkVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyNotifySink *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyNotifySink *This);
|
|
ULONG ( *Release)(
|
|
IPropertyNotifySink *This);
|
|
HRESULT ( *OnChanged)(
|
|
IPropertyNotifySink *This,
|
|
DISPID dispID);
|
|
HRESULT ( *OnRequestEdit)(
|
|
IPropertyNotifySink *This,
|
|
DISPID dispID);
|
|
|
|
} IPropertyNotifySinkVtbl;
|
|
struct IPropertyNotifySink {
|
|
IPropertyNotifySinkVtbl* lpVtbl;
|
|
};
|
|
typedef ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES;
|
|
typedef struct tagCAUUID {
|
|
ULONG cElems;
|
|
GUID *pElems;
|
|
} CAUUID;
|
|
typedef struct tagCAUUID *LPCAUUID;
|
|
extern const GUID IID_ISpecifyPropertyPages;
|
|
typedef struct ISpecifyPropertyPagesVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISpecifyPropertyPages *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISpecifyPropertyPages *This);
|
|
ULONG ( *Release)(
|
|
ISpecifyPropertyPages *This);
|
|
HRESULT ( *GetPages)(
|
|
ISpecifyPropertyPages *This,
|
|
CAUUID *pPages);
|
|
|
|
} ISpecifyPropertyPagesVtbl;
|
|
struct ISpecifyPropertyPages {
|
|
ISpecifyPropertyPagesVtbl* lpVtbl;
|
|
};
|
|
typedef IPersistMemory *LPPERSISTMEMORY;
|
|
extern const GUID IID_IPersistMemory;
|
|
typedef struct IPersistMemoryVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistMemory *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistMemory *This);
|
|
ULONG ( *Release)(
|
|
IPersistMemory *This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistMemory *This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistMemory *This);
|
|
HRESULT ( *Load)(
|
|
IPersistMemory *This,
|
|
LPVOID pMem,
|
|
ULONG cbSize);
|
|
HRESULT ( *Save)(
|
|
IPersistMemory *This,
|
|
LPVOID pMem,
|
|
WINBOOL fClearDirty,
|
|
ULONG cbSize);
|
|
HRESULT ( *GetSizeMax)(
|
|
IPersistMemory *This,
|
|
ULONG *pCbSize);
|
|
HRESULT ( *InitNew)(
|
|
IPersistMemory *This);
|
|
|
|
} IPersistMemoryVtbl;
|
|
struct IPersistMemory {
|
|
IPersistMemoryVtbl* lpVtbl;
|
|
};
|
|
HRESULT IPersistMemory_RemoteLoad_Proxy(
|
|
IPersistMemory* This,
|
|
BYTE *pMem,
|
|
ULONG cbSize);
|
|
void IPersistMemory_RemoteLoad_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistMemory_RemoteSave_Proxy(
|
|
IPersistMemory* This,
|
|
BYTE *pMem,
|
|
WINBOOL fClearDirty,
|
|
ULONG cbSize);
|
|
void IPersistMemory_RemoteSave_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IPersistMemory_Load_Proxy(
|
|
IPersistMemory* This,
|
|
LPVOID pMem,
|
|
ULONG cbSize);
|
|
HRESULT IPersistMemory_Load_Stub(
|
|
IPersistMemory* This,
|
|
BYTE *pMem,
|
|
ULONG cbSize);
|
|
HRESULT IPersistMemory_Save_Proxy(
|
|
IPersistMemory* This,
|
|
LPVOID pMem,
|
|
WINBOOL fClearDirty,
|
|
ULONG cbSize);
|
|
HRESULT IPersistMemory_Save_Stub(
|
|
IPersistMemory* This,
|
|
BYTE *pMem,
|
|
WINBOOL fClearDirty,
|
|
ULONG cbSize);
|
|
typedef IPersistStreamInit *LPPERSISTSTREAMINIT;
|
|
extern const GUID IID_IPersistStreamInit;
|
|
typedef struct IPersistStreamInitVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistStreamInit *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistStreamInit *This);
|
|
ULONG ( *Release)(
|
|
IPersistStreamInit *This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistStreamInit *This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistStreamInit *This);
|
|
HRESULT ( *Load)(
|
|
IPersistStreamInit *This,
|
|
LPSTREAM pStm);
|
|
HRESULT ( *Save)(
|
|
IPersistStreamInit *This,
|
|
LPSTREAM pStm,
|
|
WINBOOL fClearDirty);
|
|
HRESULT ( *GetSizeMax)(
|
|
IPersistStreamInit *This,
|
|
ULARGE_INTEGER *pCbSize);
|
|
HRESULT ( *InitNew)(
|
|
IPersistStreamInit *This);
|
|
|
|
} IPersistStreamInitVtbl;
|
|
struct IPersistStreamInit {
|
|
IPersistStreamInitVtbl* lpVtbl;
|
|
};
|
|
typedef IPersistPropertyBag *LPPERSISTPROPERTYBAG;
|
|
extern const GUID IID_IPersistPropertyBag;
|
|
typedef struct IPersistPropertyBagVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistPropertyBag *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistPropertyBag *This);
|
|
ULONG ( *Release)(
|
|
IPersistPropertyBag *This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistPropertyBag *This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *InitNew)(
|
|
IPersistPropertyBag *This);
|
|
HRESULT ( *Load)(
|
|
IPersistPropertyBag *This,
|
|
IPropertyBag *pPropBag,
|
|
IErrorLog *pErrorLog);
|
|
HRESULT ( *Save)(
|
|
IPersistPropertyBag *This,
|
|
IPropertyBag *pPropBag,
|
|
WINBOOL fClearDirty,
|
|
WINBOOL fSaveAllProperties);
|
|
|
|
} IPersistPropertyBagVtbl;
|
|
struct IPersistPropertyBag {
|
|
IPersistPropertyBagVtbl* lpVtbl;
|
|
};
|
|
typedef ISimpleFrameSite *LPSIMPLEFRAMESITE;
|
|
extern const GUID IID_ISimpleFrameSite;
|
|
typedef struct ISimpleFrameSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
ISimpleFrameSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
ISimpleFrameSite *This);
|
|
ULONG ( *Release)(
|
|
ISimpleFrameSite *This);
|
|
HRESULT ( *PreMessageFilter)(
|
|
ISimpleFrameSite *This,
|
|
HWND hWnd,
|
|
UINT msg,
|
|
WPARAM wp,
|
|
LPARAM lp,
|
|
LRESULT *plResult,
|
|
DWORD *pdwCookie);
|
|
HRESULT ( *PostMessageFilter)(
|
|
ISimpleFrameSite *This,
|
|
HWND hWnd,
|
|
UINT msg,
|
|
WPARAM wp,
|
|
LPARAM lp,
|
|
LRESULT *plResult,
|
|
DWORD dwCookie);
|
|
|
|
} ISimpleFrameSiteVtbl;
|
|
struct ISimpleFrameSite {
|
|
ISimpleFrameSiteVtbl* lpVtbl;
|
|
};
|
|
typedef IFont *LPFONT;
|
|
typedef TEXTMETRICW TEXTMETRICOLE;
|
|
typedef TEXTMETRICOLE *LPTEXTMETRICOLE;
|
|
extern const GUID IID_IFont;
|
|
typedef struct IFontVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IFont *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IFont *This);
|
|
ULONG ( *Release)(
|
|
IFont *This);
|
|
HRESULT ( *get_Name)(
|
|
IFont *This,
|
|
BSTR *pName);
|
|
HRESULT ( *put_Name)(
|
|
IFont *This,
|
|
BSTR name);
|
|
HRESULT ( *get_Size)(
|
|
IFont *This,
|
|
CY *pSize);
|
|
HRESULT ( *put_Size)(
|
|
IFont *This,
|
|
CY size);
|
|
HRESULT ( *get_Bold)(
|
|
IFont *This,
|
|
WINBOOL *pBold);
|
|
HRESULT ( *put_Bold)(
|
|
IFont *This,
|
|
WINBOOL bold);
|
|
HRESULT ( *get_Italic)(
|
|
IFont *This,
|
|
WINBOOL *pItalic);
|
|
HRESULT ( *put_Italic)(
|
|
IFont *This,
|
|
WINBOOL italic);
|
|
HRESULT ( *get_Underline)(
|
|
IFont *This,
|
|
WINBOOL *pUnderline);
|
|
HRESULT ( *put_Underline)(
|
|
IFont *This,
|
|
WINBOOL underline);
|
|
HRESULT ( *get_Strikethrough)(
|
|
IFont *This,
|
|
WINBOOL *pStrikethrough);
|
|
HRESULT ( *put_Strikethrough)(
|
|
IFont *This,
|
|
WINBOOL strikethrough);
|
|
HRESULT ( *get_Weight)(
|
|
IFont *This,
|
|
SHORT *pWeight);
|
|
HRESULT ( *put_Weight)(
|
|
IFont *This,
|
|
SHORT weight);
|
|
HRESULT ( *get_Charset)(
|
|
IFont *This,
|
|
SHORT *pCharset);
|
|
HRESULT ( *put_Charset)(
|
|
IFont *This,
|
|
SHORT charset);
|
|
HRESULT ( *get_hFont)(
|
|
IFont *This,
|
|
HFONT *phFont);
|
|
HRESULT ( *Clone)(
|
|
IFont *This,
|
|
IFont **ppFont);
|
|
HRESULT ( *IsEqual)(
|
|
IFont *This,
|
|
IFont *pFontOther);
|
|
HRESULT ( *SetRatio)(
|
|
IFont *This,
|
|
LONG cyLogical,
|
|
LONG cyHimetric);
|
|
HRESULT ( *QueryTextMetrics)(
|
|
IFont *This,
|
|
TEXTMETRICOLE *pTM);
|
|
HRESULT ( *AddRefHfont)(
|
|
IFont *This,
|
|
HFONT hFont);
|
|
HRESULT ( *ReleaseHfont)(
|
|
IFont *This,
|
|
HFONT hFont);
|
|
HRESULT ( *SetHdc)(
|
|
IFont *This,
|
|
HDC hDC);
|
|
|
|
} IFontVtbl;
|
|
struct IFont {
|
|
IFontVtbl* lpVtbl;
|
|
};
|
|
typedef IPicture *LPPICTURE;
|
|
typedef enum tagPictureAttributes {
|
|
PICTURE_SCALABLE = 0x1,
|
|
PICTURE_TRANSPARENT = 0x2
|
|
} PICTUREATTRIBUTES;
|
|
typedef UINT OLE_HANDLE;
|
|
typedef LONG OLE_XPOS_HIMETRIC;
|
|
typedef LONG OLE_YPOS_HIMETRIC;
|
|
typedef LONG OLE_XSIZE_HIMETRIC;
|
|
typedef LONG OLE_YSIZE_HIMETRIC;
|
|
extern const GUID IID_IPicture;
|
|
typedef struct IPictureVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPicture *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPicture *This);
|
|
ULONG ( *Release)(
|
|
IPicture *This);
|
|
HRESULT ( *get_Handle)(
|
|
IPicture *This,
|
|
OLE_HANDLE *pHandle);
|
|
HRESULT ( *get_hPal)(
|
|
IPicture *This,
|
|
OLE_HANDLE *phPal);
|
|
HRESULT ( *get_Type)(
|
|
IPicture *This,
|
|
SHORT *pType);
|
|
HRESULT ( *get_Width)(
|
|
IPicture *This,
|
|
OLE_XSIZE_HIMETRIC *pWidth);
|
|
HRESULT ( *get_Height)(
|
|
IPicture *This,
|
|
OLE_YSIZE_HIMETRIC *pHeight);
|
|
HRESULT ( *Render)(
|
|
IPicture *This,
|
|
HDC hDC,
|
|
LONG x,
|
|
LONG y,
|
|
LONG cx,
|
|
LONG cy,
|
|
OLE_XPOS_HIMETRIC xSrc,
|
|
OLE_YPOS_HIMETRIC ySrc,
|
|
OLE_XSIZE_HIMETRIC cxSrc,
|
|
OLE_YSIZE_HIMETRIC cySrc,
|
|
LPCRECT pRcWBounds);
|
|
HRESULT ( *set_hPal)(
|
|
IPicture *This,
|
|
OLE_HANDLE hPal);
|
|
HRESULT ( *get_CurDC)(
|
|
IPicture *This,
|
|
HDC *phDC);
|
|
HRESULT ( *SelectPicture)(
|
|
IPicture *This,
|
|
HDC hDCIn,
|
|
HDC *phDCOut,
|
|
OLE_HANDLE *phBmpOut);
|
|
HRESULT ( *get_KeepOriginalFormat)(
|
|
IPicture *This,
|
|
WINBOOL *pKeep);
|
|
HRESULT ( *put_KeepOriginalFormat)(
|
|
IPicture *This,
|
|
WINBOOL keep);
|
|
HRESULT ( *PictureChanged)(
|
|
IPicture *This);
|
|
HRESULT ( *SaveAsFile)(
|
|
IPicture *This,
|
|
LPSTREAM pStream,
|
|
WINBOOL fSaveMemCopy,
|
|
LONG *pCbSize);
|
|
HRESULT ( *get_Attributes)(
|
|
IPicture *This,
|
|
DWORD *pDwAttr);
|
|
|
|
} IPictureVtbl;
|
|
struct IPicture {
|
|
IPictureVtbl* lpVtbl;
|
|
};
|
|
typedef IPicture2 *LPPICTURE2;
|
|
typedef UINT_PTR HHANDLE;
|
|
extern const GUID IID_IPicture2;
|
|
typedef struct IPicture2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPicture2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPicture2 *This);
|
|
ULONG ( *Release)(
|
|
IPicture2 *This);
|
|
HRESULT ( *get_Handle)(
|
|
IPicture2 *This,
|
|
HHANDLE *pHandle);
|
|
HRESULT ( *get_hPal)(
|
|
IPicture2 *This,
|
|
HHANDLE *phPal);
|
|
HRESULT ( *get_Type)(
|
|
IPicture2 *This,
|
|
SHORT *pType);
|
|
HRESULT ( *get_Width)(
|
|
IPicture2 *This,
|
|
OLE_XSIZE_HIMETRIC *pWidth);
|
|
HRESULT ( *get_Height)(
|
|
IPicture2 *This,
|
|
OLE_YSIZE_HIMETRIC *pHeight);
|
|
HRESULT ( *Render)(
|
|
IPicture2 *This,
|
|
HDC hDC,
|
|
LONG x,
|
|
LONG y,
|
|
LONG cx,
|
|
LONG cy,
|
|
OLE_XPOS_HIMETRIC xSrc,
|
|
OLE_YPOS_HIMETRIC ySrc,
|
|
OLE_XSIZE_HIMETRIC cxSrc,
|
|
OLE_YSIZE_HIMETRIC cySrc,
|
|
LPCRECT pRcWBounds);
|
|
HRESULT ( *set_hPal)(
|
|
IPicture2 *This,
|
|
HHANDLE hPal);
|
|
HRESULT ( *get_CurDC)(
|
|
IPicture2 *This,
|
|
HDC *phDC);
|
|
HRESULT ( *SelectPicture)(
|
|
IPicture2 *This,
|
|
HDC hDCIn,
|
|
HDC *phDCOut,
|
|
HHANDLE *phBmpOut);
|
|
HRESULT ( *get_KeepOriginalFormat)(
|
|
IPicture2 *This,
|
|
WINBOOL *pKeep);
|
|
HRESULT ( *put_KeepOriginalFormat)(
|
|
IPicture2 *This,
|
|
WINBOOL keep);
|
|
HRESULT ( *PictureChanged)(
|
|
IPicture2 *This);
|
|
HRESULT ( *SaveAsFile)(
|
|
IPicture2 *This,
|
|
LPSTREAM pStream,
|
|
WINBOOL fSaveMemCopy,
|
|
LONG *pCbSize);
|
|
HRESULT ( *get_Attributes)(
|
|
IPicture2 *This,
|
|
DWORD *pDwAttr);
|
|
|
|
} IPicture2Vtbl;
|
|
struct IPicture2 {
|
|
IPicture2Vtbl* lpVtbl;
|
|
};
|
|
typedef IFontEventsDisp *LPFONTEVENTS;
|
|
extern const GUID IID_IFontEventsDisp;
|
|
typedef struct IFontEventsDispVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IFontEventsDisp *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IFontEventsDisp *This);
|
|
ULONG ( *Release)(
|
|
IFontEventsDisp *This);
|
|
HRESULT ( *GetTypeInfoCount)(
|
|
IFontEventsDisp *This,
|
|
UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(
|
|
IFontEventsDisp *This,
|
|
UINT iTInfo,
|
|
LCID lcid,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(
|
|
IFontEventsDisp *This,
|
|
const IID *const riid,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
LCID lcid,
|
|
DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(
|
|
IFontEventsDisp *This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
|
|
} IFontEventsDispVtbl;
|
|
struct IFontEventsDisp {
|
|
IFontEventsDispVtbl* lpVtbl;
|
|
};
|
|
typedef IFontDisp *LPFONTDISP;
|
|
extern const GUID IID_IFontDisp;
|
|
typedef struct IFontDispVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IFontDisp *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IFontDisp *This);
|
|
ULONG ( *Release)(
|
|
IFontDisp *This);
|
|
HRESULT ( *GetTypeInfoCount)(
|
|
IFontDisp *This,
|
|
UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(
|
|
IFontDisp *This,
|
|
UINT iTInfo,
|
|
LCID lcid,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(
|
|
IFontDisp *This,
|
|
const IID *const riid,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
LCID lcid,
|
|
DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(
|
|
IFontDisp *This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
|
|
} IFontDispVtbl;
|
|
struct IFontDisp {
|
|
IFontDispVtbl* lpVtbl;
|
|
};
|
|
typedef IPictureDisp *LPPICTUREDISP;
|
|
extern const GUID IID_IPictureDisp;
|
|
typedef struct IPictureDispVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPictureDisp *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPictureDisp *This);
|
|
ULONG ( *Release)(
|
|
IPictureDisp *This);
|
|
HRESULT ( *GetTypeInfoCount)(
|
|
IPictureDisp *This,
|
|
UINT *pctinfo);
|
|
HRESULT ( *GetTypeInfo)(
|
|
IPictureDisp *This,
|
|
UINT iTInfo,
|
|
LCID lcid,
|
|
ITypeInfo **ppTInfo);
|
|
HRESULT ( *GetIDsOfNames)(
|
|
IPictureDisp *This,
|
|
const IID *const riid,
|
|
LPOLESTR *rgszNames,
|
|
UINT cNames,
|
|
LCID lcid,
|
|
DISPID *rgDispId);
|
|
HRESULT ( *Invoke)(
|
|
IPictureDisp *This,
|
|
DISPID dispIdMember,
|
|
const IID *const riid,
|
|
LCID lcid,
|
|
WORD wFlags,
|
|
DISPPARAMS *pDispParams,
|
|
VARIANT *pVarResult,
|
|
EXCEPINFO *pExcepInfo,
|
|
UINT *puArgErr);
|
|
|
|
} IPictureDispVtbl;
|
|
struct IPictureDisp {
|
|
IPictureDispVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceObjectWindowless *LPOLEINPLACEOBJECTWINDOWLESS;
|
|
extern const GUID IID_IOleInPlaceObjectWindowless;
|
|
typedef struct IOleInPlaceObjectWindowlessVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceObjectWindowless *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceObjectWindowless *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceObjectWindowless *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceObjectWindowless *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceObjectWindowless *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *InPlaceDeactivate)(
|
|
IOleInPlaceObjectWindowless *This);
|
|
HRESULT ( *UIDeactivate)(
|
|
IOleInPlaceObjectWindowless *This);
|
|
HRESULT ( *SetObjectRects)(
|
|
IOleInPlaceObjectWindowless *This,
|
|
LPCRECT lprcPosRect,
|
|
LPCRECT lprcClipRect);
|
|
HRESULT ( *ReactivateAndUndo)(
|
|
IOleInPlaceObjectWindowless *This);
|
|
HRESULT ( *OnWindowMessage)(
|
|
IOleInPlaceObjectWindowless *This,
|
|
UINT msg,
|
|
WPARAM wParam,
|
|
LPARAM lParam,
|
|
LRESULT *plResult);
|
|
HRESULT ( *GetDropTarget)(
|
|
IOleInPlaceObjectWindowless *This,
|
|
IDropTarget **ppDropTarget);
|
|
|
|
} IOleInPlaceObjectWindowlessVtbl;
|
|
struct IOleInPlaceObjectWindowless {
|
|
IOleInPlaceObjectWindowlessVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceSiteEx *LPOLEINPLACESITEEX;
|
|
typedef enum tagACTIVATEFLAGS {
|
|
ACTIVATE_WINDOWLESS = 1
|
|
} ACTIVATEFLAGS;
|
|
extern const GUID IID_IOleInPlaceSiteEx;
|
|
typedef struct IOleInPlaceSiteExVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceSiteEx *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceSiteEx *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceSiteEx *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceSiteEx *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *CanInPlaceActivate)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *OnInPlaceActivate)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *OnUIActivate)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *GetWindowContext)(
|
|
IOleInPlaceSiteEx *This,
|
|
IOleInPlaceFrame **ppFrame,
|
|
IOleInPlaceUIWindow **ppDoc,
|
|
LPRECT lprcPosRect,
|
|
LPRECT lprcClipRect,
|
|
LPOLEINPLACEFRAMEINFO lpFrameInfo);
|
|
HRESULT ( *Scroll)(
|
|
IOleInPlaceSiteEx *This,
|
|
SIZE scrollExtant);
|
|
HRESULT ( *OnUIDeactivate)(
|
|
IOleInPlaceSiteEx *This,
|
|
WINBOOL fUndoable);
|
|
HRESULT ( *OnInPlaceDeactivate)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *DiscardUndoState)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *DeactivateAndUndo)(
|
|
IOleInPlaceSiteEx *This);
|
|
HRESULT ( *OnPosRectChange)(
|
|
IOleInPlaceSiteEx *This,
|
|
LPCRECT lprcPosRect);
|
|
HRESULT ( *OnInPlaceActivateEx)(
|
|
IOleInPlaceSiteEx *This,
|
|
WINBOOL *pfNoRedraw,
|
|
DWORD dwFlags);
|
|
HRESULT ( *OnInPlaceDeactivateEx)(
|
|
IOleInPlaceSiteEx *This,
|
|
WINBOOL fNoRedraw);
|
|
HRESULT ( *RequestUIActivate)(
|
|
IOleInPlaceSiteEx *This);
|
|
|
|
} IOleInPlaceSiteExVtbl;
|
|
struct IOleInPlaceSiteEx {
|
|
IOleInPlaceSiteExVtbl* lpVtbl;
|
|
};
|
|
typedef IOleInPlaceSiteWindowless *LPOLEINPLACESITEWINDOWLESS;
|
|
typedef enum tagOLEDCFLAGS {
|
|
OLEDC_NODRAW = 0x1,
|
|
OLEDC_PAINTBKGND = 0x2,
|
|
OLEDC_OFFSCREEN = 0x4
|
|
} OLEDCFLAGS;
|
|
extern const GUID IID_IOleInPlaceSiteWindowless;
|
|
typedef struct IOleInPlaceSiteWindowlessVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
ULONG ( *Release)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *GetWindow)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
HWND *phwnd);
|
|
HRESULT ( *ContextSensitiveHelp)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
WINBOOL fEnterMode);
|
|
HRESULT ( *CanInPlaceActivate)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *OnInPlaceActivate)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *OnUIActivate)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *GetWindowContext)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
IOleInPlaceFrame **ppFrame,
|
|
IOleInPlaceUIWindow **ppDoc,
|
|
LPRECT lprcPosRect,
|
|
LPRECT lprcClipRect,
|
|
LPOLEINPLACEFRAMEINFO lpFrameInfo);
|
|
HRESULT ( *Scroll)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
SIZE scrollExtant);
|
|
HRESULT ( *OnUIDeactivate)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
WINBOOL fUndoable);
|
|
HRESULT ( *OnInPlaceDeactivate)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *DiscardUndoState)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *DeactivateAndUndo)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *OnPosRectChange)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
LPCRECT lprcPosRect);
|
|
HRESULT ( *OnInPlaceActivateEx)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
WINBOOL *pfNoRedraw,
|
|
DWORD dwFlags);
|
|
HRESULT ( *OnInPlaceDeactivateEx)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
WINBOOL fNoRedraw);
|
|
HRESULT ( *RequestUIActivate)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *CanWindowlessActivate)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *GetCapture)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *SetCapture)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
WINBOOL fCapture);
|
|
HRESULT ( *GetFocus)(
|
|
IOleInPlaceSiteWindowless *This);
|
|
HRESULT ( *SetFocus)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
WINBOOL fFocus);
|
|
HRESULT ( *GetDC)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
LPCRECT pRect,
|
|
DWORD grfFlags,
|
|
HDC *phDC);
|
|
HRESULT ( *ReleaseDC)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
HDC hDC);
|
|
HRESULT ( *InvalidateRect)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
LPCRECT pRect,
|
|
WINBOOL fErase);
|
|
HRESULT ( *InvalidateRgn)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
HRGN hRGN,
|
|
WINBOOL fErase);
|
|
HRESULT ( *ScrollRect)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
INT dx,
|
|
INT dy,
|
|
LPCRECT pRectScroll,
|
|
LPCRECT pRectClip);
|
|
HRESULT ( *AdjustRect)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
LPRECT prc);
|
|
HRESULT ( *OnDefWindowMessage)(
|
|
IOleInPlaceSiteWindowless *This,
|
|
UINT msg,
|
|
WPARAM wParam,
|
|
LPARAM lParam,
|
|
LRESULT *plResult);
|
|
|
|
} IOleInPlaceSiteWindowlessVtbl;
|
|
struct IOleInPlaceSiteWindowless {
|
|
IOleInPlaceSiteWindowlessVtbl* lpVtbl;
|
|
};
|
|
typedef IViewObjectEx *LPVIEWOBJECTEX;
|
|
typedef enum tagVIEWSTATUS {
|
|
VIEWSTATUS_OPAQUE = 1,
|
|
VIEWSTATUS_SOLIDBKGND = 2,
|
|
VIEWSTATUS_DVASPECTOPAQUE = 4,
|
|
VIEWSTATUS_DVASPECTTRANSPARENT = 8,
|
|
VIEWSTATUS_SURFACE = 16,
|
|
VIEWSTATUS_3DSURFACE = 32
|
|
} VIEWSTATUS;
|
|
typedef enum tagHITRESULT {
|
|
HITRESULT_OUTSIDE = 0,
|
|
HITRESULT_TRANSPARENT = 1,
|
|
HITRESULT_CLOSE = 2,
|
|
HITRESULT_HIT = 3
|
|
} HITRESULT;
|
|
typedef enum tagDVASPECT2 {
|
|
DVASPECT_OPAQUE = 16,
|
|
DVASPECT_TRANSPARENT = 32
|
|
} DVASPECT2;
|
|
typedef struct tagExtentInfo {
|
|
ULONG cb;
|
|
DWORD dwExtentMode;
|
|
SIZEL sizelProposed;
|
|
} DVEXTENTINFO;
|
|
typedef enum tagExtentMode {
|
|
DVEXTENT_CONTENT = 0,
|
|
DVEXTENT_INTEGRAL = 1
|
|
} DVEXTENTMODE;
|
|
typedef enum tagAspectInfoFlag {
|
|
DVASPECTINFOFLAG_CANOPTIMIZE = 1
|
|
} DVASPECTINFOFLAG;
|
|
typedef struct tagAspectInfo {
|
|
ULONG cb;
|
|
DWORD dwFlags;
|
|
} DVASPECTINFO;
|
|
extern const GUID IID_IViewObjectEx;
|
|
typedef struct IViewObjectExVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IViewObjectEx *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IViewObjectEx *This);
|
|
ULONG ( *Release)(
|
|
IViewObjectEx *This);
|
|
HRESULT ( *Draw)(
|
|
IViewObjectEx *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hdcTargetDev,
|
|
HDC hdcDraw,
|
|
LPCRECTL lprcBounds,
|
|
LPCRECTL lprcWBounds,
|
|
WINBOOL ( *pfnContinue)(ULONG_PTR dwContinue),
|
|
ULONG_PTR dwContinue);
|
|
HRESULT ( *GetColorSet)(
|
|
IViewObjectEx *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hicTargetDev,
|
|
LOGPALETTE **ppColorSet);
|
|
HRESULT ( *Freeze)(
|
|
IViewObjectEx *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
void *pvAspect,
|
|
DWORD *pdwFreeze);
|
|
HRESULT ( *Unfreeze)(
|
|
IViewObjectEx *This,
|
|
DWORD dwFreeze);
|
|
HRESULT ( *SetAdvise)(
|
|
IViewObjectEx *This,
|
|
DWORD aspects,
|
|
DWORD advf,
|
|
IAdviseSink *pAdvSink);
|
|
HRESULT ( *GetAdvise)(
|
|
IViewObjectEx *This,
|
|
DWORD *pAspects,
|
|
DWORD *pAdvf,
|
|
IAdviseSink **ppAdvSink);
|
|
HRESULT ( *GetExtent)(
|
|
IViewObjectEx *This,
|
|
DWORD dwDrawAspect,
|
|
LONG lindex,
|
|
DVTARGETDEVICE *ptd,
|
|
LPSIZEL lpsizel);
|
|
HRESULT ( *GetRect)(
|
|
IViewObjectEx *This,
|
|
DWORD dwAspect,
|
|
LPRECTL pRect);
|
|
HRESULT ( *GetViewStatus)(
|
|
IViewObjectEx *This,
|
|
DWORD *pdwStatus);
|
|
HRESULT ( *QueryHitPoint)(
|
|
IViewObjectEx *This,
|
|
DWORD dwAspect,
|
|
LPCRECT pRectBounds,
|
|
POINT ptlLoc,
|
|
LONG lCloseHint,
|
|
DWORD *pHitResult);
|
|
HRESULT ( *QueryHitRect)(
|
|
IViewObjectEx *This,
|
|
DWORD dwAspect,
|
|
LPCRECT pRectBounds,
|
|
LPCRECT pRectLoc,
|
|
LONG lCloseHint,
|
|
DWORD *pHitResult);
|
|
HRESULT ( *GetNaturalExtent)(
|
|
IViewObjectEx *This,
|
|
DWORD dwAspect,
|
|
LONG lindex,
|
|
DVTARGETDEVICE *ptd,
|
|
HDC hicTargetDev,
|
|
DVEXTENTINFO *pExtentInfo,
|
|
LPSIZEL pSizel);
|
|
|
|
} IViewObjectExVtbl;
|
|
struct IViewObjectEx {
|
|
IViewObjectExVtbl* lpVtbl;
|
|
};
|
|
typedef IOleUndoUnit *LPOLEUNDOUNIT;
|
|
extern const GUID IID_IOleUndoUnit;
|
|
typedef struct IOleUndoUnitVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleUndoUnit *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleUndoUnit *This);
|
|
ULONG ( *Release)(
|
|
IOleUndoUnit *This);
|
|
HRESULT ( *Do)(
|
|
IOleUndoUnit *This,
|
|
IOleUndoManager *pUndoManager);
|
|
HRESULT ( *GetDescription)(
|
|
IOleUndoUnit *This,
|
|
BSTR *pBstr);
|
|
HRESULT ( *GetUnitType)(
|
|
IOleUndoUnit *This,
|
|
CLSID *pClsid,
|
|
LONG *plID);
|
|
HRESULT ( *OnNextAdd)(
|
|
IOleUndoUnit *This);
|
|
|
|
} IOleUndoUnitVtbl;
|
|
struct IOleUndoUnit {
|
|
IOleUndoUnitVtbl* lpVtbl;
|
|
};
|
|
typedef IOleParentUndoUnit *LPOLEPARENTUNDOUNIT;
|
|
extern const GUID IID_IOleParentUndoUnit;
|
|
typedef struct IOleParentUndoUnitVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleParentUndoUnit *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleParentUndoUnit *This);
|
|
ULONG ( *Release)(
|
|
IOleParentUndoUnit *This);
|
|
HRESULT ( *Do)(
|
|
IOleParentUndoUnit *This,
|
|
IOleUndoManager *pUndoManager);
|
|
HRESULT ( *GetDescription)(
|
|
IOleParentUndoUnit *This,
|
|
BSTR *pBstr);
|
|
HRESULT ( *GetUnitType)(
|
|
IOleParentUndoUnit *This,
|
|
CLSID *pClsid,
|
|
LONG *plID);
|
|
HRESULT ( *OnNextAdd)(
|
|
IOleParentUndoUnit *This);
|
|
HRESULT ( *Open)(
|
|
IOleParentUndoUnit *This,
|
|
IOleParentUndoUnit *pPUU);
|
|
HRESULT ( *Close)(
|
|
IOleParentUndoUnit *This,
|
|
IOleParentUndoUnit *pPUU,
|
|
WINBOOL fCommit);
|
|
HRESULT ( *Add)(
|
|
IOleParentUndoUnit *This,
|
|
IOleUndoUnit *pUU);
|
|
HRESULT ( *FindUnit)(
|
|
IOleParentUndoUnit *This,
|
|
IOleUndoUnit *pUU);
|
|
HRESULT ( *GetParentState)(
|
|
IOleParentUndoUnit *This,
|
|
DWORD *pdwState);
|
|
|
|
} IOleParentUndoUnitVtbl;
|
|
struct IOleParentUndoUnit {
|
|
IOleParentUndoUnitVtbl* lpVtbl;
|
|
};
|
|
typedef IEnumOleUndoUnits *LPENUMOLEUNDOUNITS;
|
|
extern const GUID IID_IEnumOleUndoUnits;
|
|
typedef struct IEnumOleUndoUnitsVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IEnumOleUndoUnits *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IEnumOleUndoUnits *This);
|
|
ULONG ( *Release)(
|
|
IEnumOleUndoUnits *This);
|
|
HRESULT ( *Next)(
|
|
IEnumOleUndoUnits *This,
|
|
ULONG cElt,
|
|
IOleUndoUnit **rgElt,
|
|
ULONG *pcEltFetched);
|
|
HRESULT ( *Skip)(
|
|
IEnumOleUndoUnits *This,
|
|
ULONG cElt);
|
|
HRESULT ( *Reset)(
|
|
IEnumOleUndoUnits *This);
|
|
HRESULT ( *Clone)(
|
|
IEnumOleUndoUnits *This,
|
|
IEnumOleUndoUnits **ppEnum);
|
|
|
|
} IEnumOleUndoUnitsVtbl;
|
|
struct IEnumOleUndoUnits {
|
|
IEnumOleUndoUnitsVtbl* lpVtbl;
|
|
};
|
|
HRESULT IEnumOleUndoUnits_RemoteNext_Proxy(
|
|
IEnumOleUndoUnits* This,
|
|
ULONG cElt,
|
|
IOleUndoUnit **rgElt,
|
|
ULONG *pcEltFetched);
|
|
void IEnumOleUndoUnits_RemoteNext_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IEnumOleUndoUnits_Next_Proxy(
|
|
IEnumOleUndoUnits* This,
|
|
ULONG cElt,
|
|
IOleUndoUnit **rgElt,
|
|
ULONG *pcEltFetched);
|
|
HRESULT IEnumOleUndoUnits_Next_Stub(
|
|
IEnumOleUndoUnits* This,
|
|
ULONG cElt,
|
|
IOleUndoUnit **rgElt,
|
|
ULONG *pcEltFetched);
|
|
typedef IOleUndoManager *LPOLEUNDOMANAGER;
|
|
extern const GUID IID_IOleUndoManager;
|
|
typedef struct IOleUndoManagerVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IOleUndoManager *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IOleUndoManager *This);
|
|
ULONG ( *Release)(
|
|
IOleUndoManager *This);
|
|
HRESULT ( *Open)(
|
|
IOleUndoManager *This,
|
|
IOleParentUndoUnit *pPUU);
|
|
HRESULT ( *Close)(
|
|
IOleUndoManager *This,
|
|
IOleParentUndoUnit *pPUU,
|
|
WINBOOL fCommit);
|
|
HRESULT ( *Add)(
|
|
IOleUndoManager *This,
|
|
IOleUndoUnit *pUU);
|
|
HRESULT ( *GetOpenParentState)(
|
|
IOleUndoManager *This,
|
|
DWORD *pdwState);
|
|
HRESULT ( *DiscardFrom)(
|
|
IOleUndoManager *This,
|
|
IOleUndoUnit *pUU);
|
|
HRESULT ( *UndoTo)(
|
|
IOleUndoManager *This,
|
|
IOleUndoUnit *pUU);
|
|
HRESULT ( *RedoTo)(
|
|
IOleUndoManager *This,
|
|
IOleUndoUnit *pUU);
|
|
HRESULT ( *EnumUndoable)(
|
|
IOleUndoManager *This,
|
|
IEnumOleUndoUnits **ppEnum);
|
|
HRESULT ( *EnumRedoable)(
|
|
IOleUndoManager *This,
|
|
IEnumOleUndoUnits **ppEnum);
|
|
HRESULT ( *GetLastUndoDescription)(
|
|
IOleUndoManager *This,
|
|
BSTR *pBstr);
|
|
HRESULT ( *GetLastRedoDescription)(
|
|
IOleUndoManager *This,
|
|
BSTR *pBstr);
|
|
HRESULT ( *Enable)(
|
|
IOleUndoManager *This,
|
|
WINBOOL fEnable);
|
|
|
|
} IOleUndoManagerVtbl;
|
|
struct IOleUndoManager {
|
|
IOleUndoManagerVtbl* lpVtbl;
|
|
};
|
|
typedef IPointerInactive *LPPOINTERINACTIVE;
|
|
typedef enum tagPOINTERINACTIVE {
|
|
POINTERINACTIVE_ACTIVATEONENTRY = 1,
|
|
POINTERINACTIVE_DEACTIVATEONLEAVE = 2,
|
|
POINTERINACTIVE_ACTIVATEONDRAG = 4
|
|
} POINTERINACTIVE;
|
|
extern const GUID IID_IPointerInactive;
|
|
typedef struct IPointerInactiveVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPointerInactive *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPointerInactive *This);
|
|
ULONG ( *Release)(
|
|
IPointerInactive *This);
|
|
HRESULT ( *GetActivationPolicy)(
|
|
IPointerInactive *This,
|
|
DWORD *pdwPolicy);
|
|
HRESULT ( *OnInactiveMouseMove)(
|
|
IPointerInactive *This,
|
|
LPCRECT pRectBounds,
|
|
LONG x,
|
|
LONG y,
|
|
DWORD grfKeyState);
|
|
HRESULT ( *OnInactiveSetCursor)(
|
|
IPointerInactive *This,
|
|
LPCRECT pRectBounds,
|
|
LONG x,
|
|
LONG y,
|
|
DWORD dwMouseMsg,
|
|
WINBOOL fSetAlways);
|
|
|
|
} IPointerInactiveVtbl;
|
|
struct IPointerInactive {
|
|
IPointerInactiveVtbl* lpVtbl;
|
|
};
|
|
typedef IObjectWithSite *LPOBJECTWITHSITE;
|
|
extern const GUID IID_IObjectWithSite;
|
|
typedef struct IObjectWithSiteVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IObjectWithSite *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IObjectWithSite *This);
|
|
ULONG ( *Release)(
|
|
IObjectWithSite *This);
|
|
HRESULT ( *SetSite)(
|
|
IObjectWithSite *This,
|
|
IUnknown *pUnkSite);
|
|
HRESULT ( *GetSite)(
|
|
IObjectWithSite *This,
|
|
const IID *const riid,
|
|
void **ppvSite);
|
|
|
|
} IObjectWithSiteVtbl;
|
|
struct IObjectWithSite {
|
|
IObjectWithSiteVtbl* lpVtbl;
|
|
};
|
|
typedef IPerPropertyBrowsing *LPPERPROPERTYBROWSING;
|
|
typedef struct tagCALPOLESTR {
|
|
ULONG cElems;
|
|
LPOLESTR *pElems;
|
|
} CALPOLESTR;
|
|
typedef struct tagCALPOLESTR *LPCALPOLESTR;
|
|
typedef struct tagCADWORD {
|
|
ULONG cElems;
|
|
DWORD *pElems;
|
|
} CADWORD;
|
|
typedef struct tagCADWORD *LPCADWORD;
|
|
extern const GUID IID_IPerPropertyBrowsing;
|
|
typedef struct IPerPropertyBrowsingVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPerPropertyBrowsing *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPerPropertyBrowsing *This);
|
|
ULONG ( *Release)(
|
|
IPerPropertyBrowsing *This);
|
|
HRESULT ( *GetDisplayString)(
|
|
IPerPropertyBrowsing *This,
|
|
DISPID dispID,
|
|
BSTR *pBstr);
|
|
HRESULT ( *MapPropertyToPage)(
|
|
IPerPropertyBrowsing *This,
|
|
DISPID dispID,
|
|
CLSID *pClsid);
|
|
HRESULT ( *GetPredefinedStrings)(
|
|
IPerPropertyBrowsing *This,
|
|
DISPID dispID,
|
|
CALPOLESTR *pCaStringsOut,
|
|
CADWORD *pCaCookiesOut);
|
|
HRESULT ( *GetPredefinedValue)(
|
|
IPerPropertyBrowsing *This,
|
|
DISPID dispID,
|
|
DWORD dwCookie,
|
|
VARIANT *pVarOut);
|
|
|
|
} IPerPropertyBrowsingVtbl;
|
|
struct IPerPropertyBrowsing {
|
|
IPerPropertyBrowsingVtbl* lpVtbl;
|
|
};
|
|
typedef IPropertyBag2 *LPPROPERTYBAG2;
|
|
typedef enum tagPROPBAG2_TYPE {
|
|
PROPBAG2_TYPE_UNDEFINED = 0,
|
|
PROPBAG2_TYPE_DATA = 1,
|
|
PROPBAG2_TYPE_URL = 2,
|
|
PROPBAG2_TYPE_OBJECT = 3,
|
|
PROPBAG2_TYPE_STREAM = 4,
|
|
PROPBAG2_TYPE_STORAGE = 5,
|
|
PROPBAG2_TYPE_MONIKER = 6
|
|
} PROPBAG2_TYPE;
|
|
typedef struct tagPROPBAG2 {
|
|
DWORD dwType;
|
|
VARTYPE vt;
|
|
CLIPFORMAT cfType;
|
|
DWORD dwHint;
|
|
LPOLESTR pstrName;
|
|
CLSID clsid;
|
|
} PROPBAG2;
|
|
extern const GUID IID_IPropertyBag2;
|
|
typedef struct IPropertyBag2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPropertyBag2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPropertyBag2 *This);
|
|
ULONG ( *Release)(
|
|
IPropertyBag2 *This);
|
|
HRESULT ( *Read)(
|
|
IPropertyBag2 *This,
|
|
ULONG cProperties,
|
|
PROPBAG2 *pPropBag,
|
|
IErrorLog *pErrLog,
|
|
VARIANT *pvarValue,
|
|
HRESULT *phrError);
|
|
HRESULT ( *Write)(
|
|
IPropertyBag2 *This,
|
|
ULONG cProperties,
|
|
PROPBAG2 *pPropBag,
|
|
VARIANT *pvarValue);
|
|
HRESULT ( *CountProperties)(
|
|
IPropertyBag2 *This,
|
|
ULONG *pcProperties);
|
|
HRESULT ( *GetPropertyInfo)(
|
|
IPropertyBag2 *This,
|
|
ULONG iProperty,
|
|
ULONG cProperties,
|
|
PROPBAG2 *pPropBag,
|
|
ULONG *pcProperties);
|
|
HRESULT ( *LoadObject)(
|
|
IPropertyBag2 *This,
|
|
LPCOLESTR pstrName,
|
|
DWORD dwHint,
|
|
IUnknown *pUnkObject,
|
|
IErrorLog *pErrLog);
|
|
|
|
} IPropertyBag2Vtbl;
|
|
struct IPropertyBag2 {
|
|
IPropertyBag2Vtbl* lpVtbl;
|
|
};
|
|
typedef IPersistPropertyBag2 *LPPERSISTPROPERTYBAG2;
|
|
extern const GUID IID_IPersistPropertyBag2;
|
|
typedef struct IPersistPropertyBag2Vtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IPersistPropertyBag2 *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IPersistPropertyBag2 *This);
|
|
ULONG ( *Release)(
|
|
IPersistPropertyBag2 *This);
|
|
HRESULT ( *GetClassID)(
|
|
IPersistPropertyBag2 *This,
|
|
CLSID *pClassID);
|
|
HRESULT ( *InitNew)(
|
|
IPersistPropertyBag2 *This);
|
|
HRESULT ( *Load)(
|
|
IPersistPropertyBag2 *This,
|
|
IPropertyBag2 *pPropBag,
|
|
IErrorLog *pErrLog);
|
|
HRESULT ( *Save)(
|
|
IPersistPropertyBag2 *This,
|
|
IPropertyBag2 *pPropBag,
|
|
WINBOOL fClearDirty,
|
|
WINBOOL fSaveAllProperties);
|
|
HRESULT ( *IsDirty)(
|
|
IPersistPropertyBag2 *This);
|
|
|
|
} IPersistPropertyBag2Vtbl;
|
|
struct IPersistPropertyBag2 {
|
|
IPersistPropertyBag2Vtbl* lpVtbl;
|
|
};
|
|
typedef IAdviseSinkEx *LPADVISESINKEX;
|
|
extern const GUID IID_IAdviseSinkEx;
|
|
typedef struct IAdviseSinkExVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IAdviseSinkEx *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IAdviseSinkEx *This);
|
|
ULONG ( *Release)(
|
|
IAdviseSinkEx *This);
|
|
void ( *OnDataChange)(
|
|
IAdviseSinkEx *This,
|
|
FORMATETC *pFormatetc,
|
|
STGMEDIUM *pStgmed);
|
|
void ( *OnViewChange)(
|
|
IAdviseSinkEx *This,
|
|
DWORD dwAspect,
|
|
LONG lindex);
|
|
void ( *OnRename)(
|
|
IAdviseSinkEx *This,
|
|
IMoniker *pmk);
|
|
void ( *OnSave)(
|
|
IAdviseSinkEx *This);
|
|
void ( *OnClose)(
|
|
IAdviseSinkEx *This);
|
|
void ( *OnViewStatusChange)(
|
|
IAdviseSinkEx *This,
|
|
DWORD dwViewStatus);
|
|
|
|
} IAdviseSinkExVtbl;
|
|
struct IAdviseSinkEx {
|
|
IAdviseSinkExVtbl* lpVtbl;
|
|
};
|
|
HRESULT IAdviseSinkEx_RemoteOnViewStatusChange_Proxy(
|
|
IAdviseSinkEx* This,
|
|
DWORD dwViewStatus);
|
|
void IAdviseSinkEx_RemoteOnViewStatusChange_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
void IAdviseSinkEx_OnViewStatusChange_Proxy(
|
|
IAdviseSinkEx* This,
|
|
DWORD dwViewStatus);
|
|
HRESULT IAdviseSinkEx_OnViewStatusChange_Stub(
|
|
IAdviseSinkEx* This,
|
|
DWORD dwViewStatus);
|
|
typedef IQuickActivate *LPQUICKACTIVATE;
|
|
typedef enum tagQACONTAINERFLAGS {
|
|
QACONTAINER_SHOWHATCHING = 0x1,
|
|
QACONTAINER_SHOWGRABHANDLES = 0x2,
|
|
QACONTAINER_USERMODE = 0x4,
|
|
QACONTAINER_DISPLAYASDEFAULT = 0x8,
|
|
QACONTAINER_UIDEAD = 0x10,
|
|
QACONTAINER_AUTOCLIP = 0x20,
|
|
QACONTAINER_MESSAGEREFLECT = 0x40,
|
|
QACONTAINER_SUPPORTSMNEMONICS = 0x80
|
|
} QACONTAINERFLAGS;
|
|
typedef DWORD OLE_COLOR;
|
|
typedef struct tagQACONTAINER {
|
|
ULONG cbSize;
|
|
IOleClientSite *pClientSite;
|
|
IAdviseSinkEx *pAdviseSink;
|
|
IPropertyNotifySink *pPropertyNotifySink;
|
|
IUnknown *pUnkEventSink;
|
|
DWORD dwAmbientFlags;
|
|
OLE_COLOR colorFore;
|
|
OLE_COLOR colorBack;
|
|
IFont *pFont;
|
|
IOleUndoManager *pUndoMgr;
|
|
DWORD dwAppearance;
|
|
LONG lcid;
|
|
HPALETTE hpal;
|
|
IBindHost *pBindHost;
|
|
IOleControlSite *pOleControlSite;
|
|
IServiceProvider *pServiceProvider;
|
|
} QACONTAINER;
|
|
typedef struct tagQACONTROL {
|
|
ULONG cbSize;
|
|
DWORD dwMiscStatus;
|
|
DWORD dwViewStatus;
|
|
DWORD dwEventCookie;
|
|
DWORD dwPropNotifyCookie;
|
|
DWORD dwPointerActivationPolicy;
|
|
} QACONTROL;
|
|
extern const GUID IID_IQuickActivate;
|
|
typedef struct IQuickActivateVtbl {
|
|
|
|
HRESULT ( *QueryInterface)(
|
|
IQuickActivate *This,
|
|
const IID *const riid,
|
|
void **ppvObject);
|
|
ULONG ( *AddRef)(
|
|
IQuickActivate *This);
|
|
ULONG ( *Release)(
|
|
IQuickActivate *This);
|
|
HRESULT ( *QuickActivate)(
|
|
IQuickActivate *This,
|
|
QACONTAINER *pQaContainer,
|
|
QACONTROL *pQaControl);
|
|
HRESULT ( *SetContentExtent)(
|
|
IQuickActivate *This,
|
|
LPSIZEL pSizel);
|
|
HRESULT ( *GetContentExtent)(
|
|
IQuickActivate *This,
|
|
LPSIZEL pSizel);
|
|
|
|
} IQuickActivateVtbl;
|
|
struct IQuickActivate {
|
|
IQuickActivateVtbl* lpVtbl;
|
|
};
|
|
HRESULT IQuickActivate_RemoteQuickActivate_Proxy(
|
|
IQuickActivate* This,
|
|
QACONTAINER *pQaContainer,
|
|
QACONTROL *pQaControl);
|
|
void IQuickActivate_RemoteQuickActivate_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT IQuickActivate_QuickActivate_Proxy(
|
|
IQuickActivate* This,
|
|
QACONTAINER *pQaContainer,
|
|
QACONTROL *pQaControl);
|
|
HRESULT IQuickActivate_QuickActivate_Stub(
|
|
IQuickActivate* This,
|
|
QACONTAINER *pQaContainer,
|
|
QACONTROL *pQaControl);
|
|
ULONG BSTR_UserSize (ULONG *, ULONG, BSTR *);
|
|
unsigned char * BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
|
|
unsigned char * BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
|
|
void BSTR_UserFree (ULONG *, BSTR *);
|
|
ULONG HACCEL_UserSize (ULONG *, ULONG, HACCEL *);
|
|
unsigned char * HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *);
|
|
unsigned char * HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *);
|
|
void HACCEL_UserFree (ULONG *, HACCEL *);
|
|
ULONG HWND_UserSize (ULONG *, ULONG, HWND *);
|
|
unsigned char * HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
|
|
unsigned char * HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
|
|
void HWND_UserFree (ULONG *, HWND *);
|
|
ULONG HFONT_UserSize (ULONG *, ULONG, HFONT *);
|
|
unsigned char * HFONT_UserMarshal (ULONG *, unsigned char *, HFONT *);
|
|
unsigned char * HFONT_UserUnmarshal(ULONG *, unsigned char *, HFONT *);
|
|
void HFONT_UserFree (ULONG *, HFONT *);
|
|
ULONG HDC_UserSize (ULONG *, ULONG, HDC *);
|
|
unsigned char * HDC_UserMarshal (ULONG *, unsigned char *, HDC *);
|
|
unsigned char * HDC_UserUnmarshal(ULONG *, unsigned char *, HDC *);
|
|
void HDC_UserFree (ULONG *, HDC *);
|
|
ULONG HRGN_UserSize (ULONG *, ULONG, HRGN *);
|
|
unsigned char * HRGN_UserMarshal (ULONG *, unsigned char *, HRGN *);
|
|
unsigned char * HRGN_UserUnmarshal(ULONG *, unsigned char *, HRGN *);
|
|
void HRGN_UserFree (ULONG *, HRGN *);
|
|
ULONG VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
|
|
unsigned char * VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
|
|
unsigned char * VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
|
|
void VARIANT_UserFree (ULONG *, VARIANT *);
|
|
ULONG CLIPFORMAT_UserSize (ULONG *, ULONG, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserMarshal (ULONG *, unsigned char *, CLIPFORMAT *);
|
|
unsigned char * CLIPFORMAT_UserUnmarshal(ULONG *, unsigned char *, CLIPFORMAT *);
|
|
void CLIPFORMAT_UserFree (ULONG *, CLIPFORMAT *);
|
|
ULONG HPALETTE_UserSize (ULONG *, ULONG, HPALETTE *);
|
|
unsigned char * HPALETTE_UserMarshal (ULONG *, unsigned char *, HPALETTE *);
|
|
unsigned char * HPALETTE_UserUnmarshal(ULONG *, unsigned char *, HPALETTE *);
|
|
void HPALETTE_UserFree (ULONG *, HPALETTE *);
|
|
extern RPC_IF_HANDLE INapTypes_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE INapTypes_v0_0_s_ifspec;
|
|
typedef enum tagIsolationState {
|
|
isolationStateNotRestricted = 1,
|
|
isolationStateInProbation = 2,
|
|
isolationStateRestrictedAccess = 3
|
|
} IsolationState;
|
|
typedef enum tagExtendedIsolationState {
|
|
extendedIsolationStateNoData = 0x0,
|
|
extendedIsolationStateTransition = 0x1,
|
|
extendedIsolationStateInfected = 0x2,
|
|
extendedIsolationStateUnknown = 0x3
|
|
} ExtendedIsolationState;
|
|
typedef enum tagNapTracingLevel {
|
|
tracingLevelUndefined = 0,
|
|
tracingLevelBasic = 1,
|
|
tracingLevelAdvanced = 2,
|
|
tracingLevelDebug = 3
|
|
} NapTracingLevel;
|
|
typedef enum tagFailureCategory {
|
|
failureCategoryNone = 0,
|
|
failureCategoryOther = 1,
|
|
failureCategoryClientComponent = 2,
|
|
failureCategoryClientCommunication = 3,
|
|
failureCategoryServerComponent = 4,
|
|
failureCategoryServerCommunication = 5
|
|
} FailureCategory;
|
|
typedef enum tagFixupState {
|
|
fixupStateSuccess = 0,
|
|
fixupStateInProgress = 1,
|
|
fixupStateCouldNotUpdate = 2
|
|
} FixupState;
|
|
typedef enum tagNapNotifyType {
|
|
napNotifyTypeUnknown = 0,
|
|
napNotifyTypeServiceState = 1,
|
|
napNotifyTypeQuarState = 2
|
|
} NapNotifyType;
|
|
typedef enum tagRemoteConfigurationType {
|
|
remoteConfigTypeMachine = 1,
|
|
remoteConfigTypeConfigBlob = 2
|
|
} RemoteConfigurationType;
|
|
typedef FILETIME ProbationTime;
|
|
typedef UINT32 MessageId;
|
|
typedef UINT32 NapComponentId;
|
|
typedef NapComponentId SystemHealthEntityId;
|
|
typedef NapComponentId EnforcementEntityId;
|
|
typedef struct tagCountedString {
|
|
UINT16 length;
|
|
WCHAR *string;
|
|
} CountedString;
|
|
typedef CountedString StringCorrelationId;
|
|
typedef struct tagIsolationInfo {
|
|
IsolationState isolationState;
|
|
ProbationTime probEndTime;
|
|
CountedString failureUrl;
|
|
} IsolationInfo;
|
|
typedef struct tagIsolationInfoEx {
|
|
IsolationState isolationState;
|
|
ExtendedIsolationState extendedIsolationState;
|
|
ProbationTime probEndTime;
|
|
CountedString failureUrl;
|
|
} IsolationInfoEx;
|
|
typedef struct tagFailureCategoryMapping {
|
|
WINBOOL mappingCompliance[5];
|
|
} FailureCategoryMapping;
|
|
typedef UINT16 SystemHealthEntityCount;
|
|
typedef UINT16 EnforcementEntityCount;
|
|
typedef struct tagCorrelationId {
|
|
GUID connId;
|
|
FILETIME timeStamp;
|
|
} CorrelationId;
|
|
typedef GUID ConnectionId;
|
|
typedef UINT8 Percentage;
|
|
typedef struct tagResultCodes {
|
|
UINT16 count;
|
|
HRESULT *results;
|
|
} ResultCodes;
|
|
typedef struct tagIpv4Address {
|
|
BYTE addr[4];
|
|
} Ipv4Address;
|
|
typedef struct tagIpv6Address {
|
|
BYTE addr[16];
|
|
} Ipv6Address;
|
|
typedef struct tagFixupInfo {
|
|
FixupState state;
|
|
Percentage percentage;
|
|
ResultCodes resultCodes;
|
|
MessageId fixupMsgId;
|
|
} FixupInfo;
|
|
typedef struct tagSystemHealthAgentState {
|
|
SystemHealthEntityId id;
|
|
ResultCodes shaResultCodes;
|
|
FailureCategory failureCategory;
|
|
FixupInfo fixupInfo;
|
|
} SystemHealthAgentState;
|
|
typedef struct tagSoHAttribute {
|
|
UINT16 type;
|
|
UINT16 size;
|
|
BYTE *value;
|
|
} SoHAttribute;
|
|
typedef struct tagSoH {
|
|
UINT16 count;
|
|
SoHAttribute *attributes;
|
|
} SoH;
|
|
typedef struct tagSoH SoHRequest;
|
|
typedef struct tagSoH SoHResponse;
|
|
typedef struct tagNetworkSoH {
|
|
UINT16 size;
|
|
BYTE *data;
|
|
} NetworkSoH;
|
|
typedef struct tagNetworkSoH NetworkSoHRequest;
|
|
typedef struct tagNetworkSoH NetworkSoHResponse;
|
|
typedef struct tagPrivateData {
|
|
UINT16 size;
|
|
BYTE *data;
|
|
} PrivateData;
|
|
typedef struct tagNapComponentRegistrationInfo {
|
|
NapComponentId id;
|
|
CountedString friendlyName;
|
|
CountedString description;
|
|
CountedString version;
|
|
CountedString vendorName;
|
|
CLSID infoClsid;
|
|
CLSID configClsid;
|
|
FILETIME registrationDate;
|
|
UINT32 componentType;
|
|
} NapComponentRegistrationInfo;
|
|
typedef struct in_addr RASIPV4ADDR;
|
|
typedef struct in6_addr RASIPV6ADDR;
|
|
#pragma pack(push,4)
|
|
struct HRASCONN__ { int unused; }; typedef struct HRASCONN__ *HRASCONN;
|
|
struct tagRASCONNW {
|
|
DWORD dwSize;
|
|
HRASCONN hrasconn;
|
|
WCHAR szEntryName[256 + 1 ];
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
WCHAR szPhonebook [260 ];
|
|
DWORD dwSubEntry;
|
|
GUID guidEntry;
|
|
DWORD dwFlags;
|
|
LUID luid;
|
|
};
|
|
struct tagRASCONNA {
|
|
DWORD dwSize;
|
|
HRASCONN hrasconn;
|
|
CHAR szEntryName[256 + 1 ];
|
|
CHAR szDeviceType[16 + 1 ];
|
|
CHAR szDeviceName[128 + 1 ];
|
|
CHAR szPhonebook [260 ];
|
|
DWORD dwSubEntry;
|
|
GUID guidEntry;
|
|
DWORD dwFlags;
|
|
LUID luid;
|
|
};
|
|
enum tagRASCONNSTATE {
|
|
RASCS_OpenPort = 0,RASCS_PortOpened,RASCS_ConnectDevice,RASCS_DeviceConnected,RASCS_AllDevicesConnected,RASCS_Authenticate,
|
|
RASCS_AuthNotify,RASCS_AuthRetry,RASCS_AuthCallback,RASCS_AuthChangePassword,RASCS_AuthProject,RASCS_AuthLinkSpeed,
|
|
RASCS_AuthAck,RASCS_ReAuthenticate,RASCS_Authenticated,RASCS_PrepareForCallback,RASCS_WaitForModemReset,RASCS_WaitForCallback,RASCS_Projected,
|
|
RASCS_StartAuthentication,RASCS_CallbackComplete,RASCS_LogonNetwork,RASCS_SubEntryConnected,
|
|
RASCS_SubEntryDisconnected,RASCS_Interactive = 0x1000,RASCS_RetryAuthentication,RASCS_CallbackSetByCaller,RASCS_PasswordExpired,
|
|
RASCS_InvokeEapUI,RASCS_Connected = 0x2000,RASCS_Disconnected
|
|
};
|
|
struct tagRASCONNSTATUSW {
|
|
DWORD dwSize;
|
|
enum tagRASCONNSTATE rasconnstate;
|
|
DWORD dwError;
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
WCHAR szPhoneNumber[128 + 1 ];
|
|
};
|
|
struct tagRASCONNSTATUSA {
|
|
DWORD dwSize;
|
|
enum tagRASCONNSTATE rasconnstate;
|
|
DWORD dwError;
|
|
CHAR szDeviceType[16 + 1 ];
|
|
CHAR szDeviceName[128 + 1 ];
|
|
CHAR szPhoneNumber[128 + 1 ];
|
|
};
|
|
struct tagRASDIALPARAMSW {
|
|
DWORD dwSize;
|
|
WCHAR szEntryName[256 + 1 ];
|
|
WCHAR szPhoneNumber[128 + 1 ];
|
|
WCHAR szCallbackNumber[128 + 1 ];
|
|
WCHAR szUserName[256 + 1 ];
|
|
WCHAR szPassword[256 + 1 ];
|
|
WCHAR szDomain[15 + 1 ];
|
|
DWORD dwSubEntry;
|
|
ULONG_PTR dwCallbackId;
|
|
};
|
|
struct tagRASDIALPARAMSA {
|
|
DWORD dwSize;
|
|
CHAR szEntryName[256 + 1 ];
|
|
CHAR szPhoneNumber[128 + 1 ];
|
|
CHAR szCallbackNumber[128 + 1 ];
|
|
CHAR szUserName[256 + 1 ];
|
|
CHAR szPassword[256 + 1 ];
|
|
CHAR szDomain[15 + 1 ];
|
|
DWORD dwSubEntry;
|
|
ULONG_PTR dwCallbackId;
|
|
};
|
|
struct tagRASEAPINFO {
|
|
DWORD dwSizeofEapInfo;
|
|
BYTE *pbEapInfo;
|
|
};
|
|
struct tagRASDIALEXTENSIONS {
|
|
DWORD dwSize;
|
|
DWORD dwfOptions;
|
|
HWND hwndParent;
|
|
ULONG_PTR reserved;
|
|
ULONG_PTR reserved1;
|
|
struct tagRASEAPINFO RasEapInfo;
|
|
};
|
|
struct tagRASENTRYNAMEW {
|
|
DWORD dwSize;
|
|
WCHAR szEntryName[256 + 1 ];
|
|
DWORD dwFlags;
|
|
WCHAR szPhonebookPath[260 + 1];
|
|
};
|
|
struct tagRASENTRYNAMEA {
|
|
DWORD dwSize;
|
|
CHAR szEntryName[256 + 1 ];
|
|
DWORD dwFlags;
|
|
CHAR szPhonebookPath[260 + 1];
|
|
};
|
|
enum tagRASPROJECTION {
|
|
RASP_Amb = 0x10000,RASP_PppNbf = 0x803F,RASP_PppIpx = 0x802B,RASP_PppIp = 0x8021,
|
|
RASP_PppCcp = 0x80FD,RASP_PppLcp = 0xC021,RASP_Slip = 0x20000
|
|
};
|
|
struct tagRASAMBW {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
WCHAR szNetBiosError[16 + 1 ];
|
|
BYTE bLana;
|
|
};
|
|
struct tagRASAMBA {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
CHAR szNetBiosError[16 + 1 ];
|
|
BYTE bLana;
|
|
};
|
|
struct tagRASPPPNBFW {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
DWORD dwNetBiosError;
|
|
WCHAR szNetBiosError[16 + 1 ];
|
|
WCHAR szWorkstationName[16 + 1 ];
|
|
BYTE bLana;
|
|
};
|
|
struct tagRASPPPNBFA {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
DWORD dwNetBiosError;
|
|
CHAR szNetBiosError[16 + 1 ];
|
|
CHAR szWorkstationName[16 + 1 ];
|
|
BYTE bLana;
|
|
};
|
|
struct tagRASIPXW {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
WCHAR szIpxAddress[21 + 1 ];
|
|
};
|
|
struct tagRASPPPIPXA {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
CHAR szIpxAddress[21 + 1 ];
|
|
};
|
|
struct tagRASPPPIPW {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
WCHAR szIpAddress[15 + 1 ];
|
|
WCHAR szServerIpAddress[15 + 1 ];
|
|
DWORD dwOptions;
|
|
DWORD dwServerOptions;
|
|
};
|
|
struct tagRASPPPIPA {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
CHAR szIpAddress[15 + 1 ];
|
|
CHAR szServerIpAddress[15 + 1 ];
|
|
DWORD dwOptions;
|
|
DWORD dwServerOptions;
|
|
};
|
|
struct tagRASPPPLCPW {
|
|
DWORD dwSize;
|
|
WINBOOL fBundled;
|
|
DWORD dwError;
|
|
DWORD dwAuthenticationProtocol;
|
|
DWORD dwAuthenticationData;
|
|
DWORD dwEapTypeId;
|
|
DWORD dwServerAuthenticationProtocol;
|
|
DWORD dwServerAuthenticationData;
|
|
DWORD dwServerEapTypeId;
|
|
WINBOOL fMultilink;
|
|
DWORD dwTerminateReason;
|
|
DWORD dwServerTerminateReason;
|
|
WCHAR szReplyMessage[1024];
|
|
DWORD dwOptions;
|
|
DWORD dwServerOptions;
|
|
};
|
|
struct tagRASPPPLCPA {
|
|
DWORD dwSize;
|
|
WINBOOL fBundled;
|
|
DWORD dwError;
|
|
DWORD dwAuthenticationProtocol;
|
|
DWORD dwAuthenticationData;
|
|
DWORD dwEapTypeId;
|
|
DWORD dwServerAuthenticationProtocol;
|
|
DWORD dwServerAuthenticationData;
|
|
DWORD dwServerEapTypeId;
|
|
WINBOOL fMultilink;
|
|
DWORD dwTerminateReason;
|
|
DWORD dwServerTerminateReason;
|
|
CHAR szReplyMessage[1024];
|
|
DWORD dwOptions;
|
|
DWORD dwServerOptions;
|
|
};
|
|
struct tagRASSLIPW {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
WCHAR szIpAddress[15 + 1 ];
|
|
};
|
|
struct tagRASSLIPA {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
CHAR szIpAddress[15 + 1 ];
|
|
};
|
|
struct tagRASPPPCCP {
|
|
DWORD dwSize;
|
|
DWORD dwError;
|
|
DWORD dwCompressionAlgorithm;
|
|
DWORD dwOptions;
|
|
DWORD dwServerCompressionAlgorithm;
|
|
DWORD dwServerOptions;
|
|
};
|
|
typedef void ( *RASDIALFUNC)(UINT,enum tagRASCONNSTATE,DWORD);
|
|
typedef void ( *RASDIALFUNC1)(HRASCONN,UINT,enum tagRASCONNSTATE,DWORD,DWORD);
|
|
typedef DWORD ( *RASDIALFUNC2)(ULONG_PTR,DWORD,HRASCONN,UINT,enum tagRASCONNSTATE,DWORD,DWORD);
|
|
struct tagRASDEVINFOW {
|
|
DWORD dwSize;
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
};
|
|
struct tagRASDEVINFOA {
|
|
DWORD dwSize;
|
|
CHAR szDeviceType[16 + 1 ];
|
|
CHAR szDeviceName[128 + 1 ];
|
|
};
|
|
struct RASCTRYINFO {
|
|
DWORD dwSize;
|
|
DWORD dwCountryID;
|
|
DWORD dwNextCountryID;
|
|
DWORD dwCountryCode;
|
|
DWORD dwCountryNameOffset;
|
|
};
|
|
struct RASIPADDR {
|
|
BYTE a;
|
|
BYTE b;
|
|
BYTE c;
|
|
BYTE d;
|
|
};
|
|
struct tagRASENTRYA {
|
|
DWORD dwSize;
|
|
DWORD dwfOptions;
|
|
DWORD dwCountryID;
|
|
DWORD dwCountryCode;
|
|
CHAR szAreaCode[10 + 1 ];
|
|
CHAR szLocalPhoneNumber[128 + 1 ];
|
|
DWORD dwAlternateOffset;
|
|
struct RASIPADDR ipaddr;
|
|
struct RASIPADDR ipaddrDns;
|
|
struct RASIPADDR ipaddrDnsAlt;
|
|
struct RASIPADDR ipaddrWins;
|
|
struct RASIPADDR ipaddrWinsAlt;
|
|
DWORD dwFrameSize;
|
|
DWORD dwfNetProtocols;
|
|
DWORD dwFramingProtocol;
|
|
CHAR szScript[260 ];
|
|
CHAR szAutodialDll[260 ];
|
|
CHAR szAutodialFunc[260 ];
|
|
CHAR szDeviceType[16 + 1 ];
|
|
CHAR szDeviceName[128 + 1 ];
|
|
CHAR szX25PadType[32 + 1 ];
|
|
CHAR szX25Address[200 + 1 ];
|
|
CHAR szX25Facilities[200 + 1 ];
|
|
CHAR szX25UserData[200 + 1 ];
|
|
DWORD dwChannels;
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
DWORD dwSubEntries;
|
|
DWORD dwDialMode;
|
|
DWORD dwDialExtraPercent;
|
|
DWORD dwDialExtraSampleSeconds;
|
|
DWORD dwHangUpExtraPercent;
|
|
DWORD dwHangUpExtraSampleSeconds;
|
|
DWORD dwIdleDisconnectSeconds;
|
|
DWORD dwType;
|
|
DWORD dwEncryptionType;
|
|
DWORD dwCustomAuthKey;
|
|
GUID guidId;
|
|
CHAR szCustomDialDll[260];
|
|
DWORD dwVpnStrategy;
|
|
DWORD dwfOptions2;
|
|
DWORD dwfOptions3;
|
|
CHAR szDnsSuffix[256];
|
|
DWORD dwTcpWindowSize;
|
|
CHAR szPrerequisitePbk[260];
|
|
CHAR szPrerequisiteEntry[256 + 1];
|
|
DWORD dwRedialCount;
|
|
DWORD dwRedialPause;
|
|
};
|
|
struct tagRASENTRYW {
|
|
DWORD dwSize;
|
|
DWORD dwfOptions;
|
|
DWORD dwCountryID;
|
|
DWORD dwCountryCode;
|
|
WCHAR szAreaCode[10 + 1 ];
|
|
WCHAR szLocalPhoneNumber[128 + 1 ];
|
|
DWORD dwAlternateOffset;
|
|
struct RASIPADDR ipaddr;
|
|
struct RASIPADDR ipaddrDns;
|
|
struct RASIPADDR ipaddrDnsAlt;
|
|
struct RASIPADDR ipaddrWins;
|
|
struct RASIPADDR ipaddrWinsAlt;
|
|
DWORD dwFrameSize;
|
|
DWORD dwfNetProtocols;
|
|
DWORD dwFramingProtocol;
|
|
WCHAR szScript[260 ];
|
|
WCHAR szAutodialDll[260 ];
|
|
WCHAR szAutodialFunc[260 ];
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
WCHAR szX25PadType[32 + 1 ];
|
|
WCHAR szX25Address[200 + 1 ];
|
|
WCHAR szX25Facilities[200 + 1 ];
|
|
WCHAR szX25UserData[200 + 1 ];
|
|
DWORD dwChannels;
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
DWORD dwSubEntries;
|
|
DWORD dwDialMode;
|
|
DWORD dwDialExtraPercent;
|
|
DWORD dwDialExtraSampleSeconds;
|
|
DWORD dwHangUpExtraPercent;
|
|
DWORD dwHangUpExtraSampleSeconds;
|
|
DWORD dwIdleDisconnectSeconds;
|
|
DWORD dwType;
|
|
DWORD dwEncryptionType;
|
|
DWORD dwCustomAuthKey;
|
|
GUID guidId;
|
|
WCHAR szCustomDialDll[260];
|
|
DWORD dwVpnStrategy;
|
|
DWORD dwfOptions2;
|
|
DWORD dwfOptions3;
|
|
WCHAR szDnsSuffix[256];
|
|
DWORD dwTcpWindowSize;
|
|
WCHAR szPrerequisitePbk[260];
|
|
WCHAR szPrerequisiteEntry[256 + 1];
|
|
DWORD dwRedialCount;
|
|
DWORD dwRedialPause;
|
|
};
|
|
typedef WINBOOL ( *ORASADFUNC)(HWND,LPSTR,DWORD,LPDWORD);
|
|
struct tagRASADPARAMS {
|
|
DWORD dwSize;
|
|
HWND hwndOwner;
|
|
DWORD dwFlags;
|
|
LONG xDlg;
|
|
LONG yDlg;
|
|
};
|
|
typedef WINBOOL ( *RASADFUNCA)(LPSTR,LPSTR,struct tagRASADPARAMS*,LPDWORD);
|
|
typedef WINBOOL ( *RASADFUNCW)(LPWSTR,LPWSTR,struct tagRASADPARAMS*,LPDWORD);
|
|
struct tagRASSUBENTRYA {
|
|
DWORD dwSize;
|
|
DWORD dwfFlags;
|
|
CHAR szDeviceType[16 + 1 ];
|
|
CHAR szDeviceName[128 + 1 ];
|
|
CHAR szLocalPhoneNumber[128 + 1 ];
|
|
DWORD dwAlternateOffset;
|
|
};
|
|
struct tagRASSUBENTRYW {
|
|
DWORD dwSize;
|
|
DWORD dwfFlags;
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
WCHAR szLocalPhoneNumber[128 + 1 ];
|
|
DWORD dwAlternateOffset;
|
|
};
|
|
struct tagRASCREDENTIALSA {
|
|
DWORD dwSize;
|
|
DWORD dwMask;
|
|
CHAR szUserName[256 + 1 ];
|
|
CHAR szPassword[256 + 1 ];
|
|
CHAR szDomain[15 + 1 ];
|
|
};
|
|
struct tagRASCREDENTIALSW {
|
|
DWORD dwSize;
|
|
DWORD dwMask;
|
|
WCHAR szUserName[256 + 1 ];
|
|
WCHAR szPassword[256 + 1 ];
|
|
WCHAR szDomain[15 + 1 ];
|
|
};
|
|
struct tagRASAUTODIALENTRYA {
|
|
DWORD dwSize;
|
|
DWORD dwFlags;
|
|
DWORD dwDialingLocation;
|
|
CHAR szEntry[256 + 1];
|
|
};
|
|
struct tagRASAUTODIALENTRYW {
|
|
DWORD dwSize;
|
|
DWORD dwFlags;
|
|
DWORD dwDialingLocation;
|
|
WCHAR szEntry[256 + 1];
|
|
};
|
|
struct tagRASEAPUSERIDENTITYA {
|
|
CHAR szUserName[256 + 1 ];
|
|
DWORD dwSizeofEapInfo;
|
|
BYTE pbEapInfo[1 ];
|
|
};
|
|
struct tagRASEAPUSERIDENTITYW {
|
|
WCHAR szUserName[256 + 1 ];
|
|
DWORD dwSizeofEapInfo;
|
|
BYTE pbEapInfo[1 ];
|
|
};
|
|
typedef DWORD ( *PFNRASGETBUFFER) (PBYTE *ppBuffer,PDWORD pdwSize);
|
|
typedef DWORD ( *PFNRASFREEBUFFER) (PBYTE pBufer);
|
|
typedef DWORD ( *PFNRASSENDBUFFER) (HANDLE hPort,PBYTE pBuffer,DWORD dwSize);
|
|
typedef DWORD ( *PFNRASRECEIVEBUFFER) (HANDLE hPort,PBYTE pBuffer,PDWORD pdwSize,DWORD dwTimeOut,HANDLE hEvent);
|
|
typedef DWORD ( *PFNRASRETRIEVEBUFFER) (HANDLE hPort,PBYTE pBuffer,PDWORD pdwSize);
|
|
typedef DWORD ( *RasCustomScriptExecuteFn) (HANDLE hPort,LPCWSTR lpszPhonebook,LPCWSTR lpszEntryName,PFNRASGETBUFFER pfnRasGetBuffer,PFNRASFREEBUFFER pfnRasFreeBuffer,PFNRASSENDBUFFER pfnRasSendBuffer,PFNRASRECEIVEBUFFER pfnRasReceiveBuffer,PFNRASRETRIEVEBUFFER pfnRasRetrieveBuffer,HWND hWnd,struct tagRASDIALPARAMSA *pRasDialParams,PVOID pvReserved);
|
|
struct tagRASCOMMSETTINGS {
|
|
DWORD dwSize;
|
|
BYTE bParity;
|
|
BYTE bStop;
|
|
BYTE bByteSize;
|
|
BYTE bAlign;
|
|
};
|
|
typedef DWORD ( *PFNRASSETCOMMSETTINGS) (HANDLE hPort,struct tagRASCOMMSETTINGS *pRasCommSettings,PVOID pvReserved);
|
|
struct tagRASCUSTOMSCRIPTEXTENSIONS {
|
|
DWORD dwSize;
|
|
PFNRASSETCOMMSETTINGS pfnRasSetCommSettings;
|
|
};
|
|
DWORD RasDialA(struct tagRASDIALEXTENSIONS*,LPCSTR,struct tagRASDIALPARAMSA*,DWORD,LPVOID,HRASCONN*);
|
|
DWORD RasDialW(struct tagRASDIALEXTENSIONS*,LPCWSTR,struct tagRASDIALPARAMSW*,DWORD,LPVOID,HRASCONN*);
|
|
DWORD RasEnumConnectionsA(struct tagRASCONNA*,LPDWORD,LPDWORD);
|
|
DWORD RasEnumConnectionsW(struct tagRASCONNW*,LPDWORD,LPDWORD);
|
|
DWORD RasEnumEntriesA(LPCSTR,LPCSTR,struct tagRASENTRYNAMEA*,LPDWORD,LPDWORD);
|
|
DWORD RasEnumEntriesW(LPCWSTR,LPCWSTR,struct tagRASENTRYNAMEW*,LPDWORD,LPDWORD);
|
|
DWORD RasGetConnectStatusA(HRASCONN,struct tagRASCONNSTATUSA*);
|
|
DWORD RasGetConnectStatusW(HRASCONN,struct tagRASCONNSTATUSW*);
|
|
DWORD RasGetErrorStringA(UINT,LPSTR,DWORD);
|
|
DWORD RasGetErrorStringW(UINT,LPWSTR,DWORD);
|
|
DWORD RasHangUpA(HRASCONN);
|
|
DWORD RasHangUpW(HRASCONN);
|
|
DWORD RasGetProjectionInfoA(HRASCONN,enum tagRASPROJECTION,LPVOID,LPDWORD);
|
|
DWORD RasGetProjectionInfoW(HRASCONN,enum tagRASPROJECTION,LPVOID,LPDWORD);
|
|
DWORD RasCreatePhonebookEntryA(HWND,LPCSTR);
|
|
DWORD RasCreatePhonebookEntryW(HWND,LPCWSTR);
|
|
DWORD RasEditPhonebookEntryA(HWND,LPCSTR,LPCSTR);
|
|
DWORD RasEditPhonebookEntryW(HWND,LPCWSTR,LPCWSTR);
|
|
DWORD RasSetEntryDialParamsA(LPCSTR,struct tagRASDIALPARAMSA*,WINBOOL);
|
|
DWORD RasSetEntryDialParamsW(LPCWSTR,struct tagRASDIALPARAMSW*,WINBOOL);
|
|
DWORD RasGetEntryDialParamsA(LPCSTR,struct tagRASDIALPARAMSA*,LPBOOL);
|
|
DWORD RasGetEntryDialParamsW(LPCWSTR,struct tagRASDIALPARAMSW*,LPBOOL);
|
|
DWORD RasEnumDevicesA(struct tagRASDEVINFOA*,LPDWORD,LPDWORD);
|
|
DWORD RasEnumDevicesW(struct tagRASDEVINFOW*,LPDWORD,LPDWORD);
|
|
DWORD RasGetCountryInfoA(struct RASCTRYINFO*,LPDWORD);
|
|
DWORD RasGetCountryInfoW(struct RASCTRYINFO*,LPDWORD);
|
|
DWORD RasGetEntryPropertiesA(LPCSTR,LPCSTR,struct tagRASENTRYA*,LPDWORD,LPBYTE,LPDWORD);
|
|
DWORD RasGetEntryPropertiesW(LPCWSTR,LPCWSTR,struct tagRASENTRYW*,LPDWORD,LPBYTE,LPDWORD);
|
|
DWORD RasSetEntryPropertiesA(LPCSTR,LPCSTR,struct tagRASENTRYA*,DWORD,LPBYTE,DWORD);
|
|
DWORD RasSetEntryPropertiesW(LPCWSTR,LPCWSTR,struct tagRASENTRYW*,DWORD,LPBYTE,DWORD);
|
|
DWORD RasRenameEntryA(LPCSTR,LPCSTR,LPCSTR);
|
|
DWORD RasRenameEntryW(LPCWSTR,LPCWSTR,LPCWSTR);
|
|
DWORD RasDeleteEntryA(LPCSTR,LPCSTR);
|
|
DWORD RasDeleteEntryW(LPCWSTR,LPCWSTR);
|
|
DWORD RasValidateEntryNameA(LPCSTR,LPCSTR);
|
|
DWORD RasValidateEntryNameW(LPCWSTR,LPCWSTR);
|
|
DWORD RasConnectionNotificationA(HRASCONN,HANDLE,DWORD);
|
|
DWORD RasConnectionNotificationW(HRASCONN,HANDLE,DWORD);
|
|
DWORD RasGetSubEntryHandleA(HRASCONN,DWORD,HRASCONN*);
|
|
DWORD RasGetSubEntryHandleW(HRASCONN,DWORD,HRASCONN*);
|
|
DWORD RasGetCredentialsA(LPCSTR,LPCSTR,struct tagRASCREDENTIALSA*);
|
|
DWORD RasGetCredentialsW(LPCWSTR,LPCWSTR,struct tagRASCREDENTIALSW*);
|
|
DWORD RasSetCredentialsA(LPCSTR,LPCSTR,struct tagRASCREDENTIALSA*,WINBOOL);
|
|
DWORD RasSetCredentialsW(LPCWSTR,LPCWSTR,struct tagRASCREDENTIALSW*,WINBOOL);
|
|
DWORD RasGetSubEntryPropertiesA(LPCSTR,LPCSTR,DWORD,struct tagRASSUBENTRYA*,LPDWORD,LPBYTE,LPDWORD);
|
|
DWORD RasGetSubEntryPropertiesW(LPCWSTR,LPCWSTR,DWORD,struct tagRASSUBENTRYW*,LPDWORD,LPBYTE,LPDWORD);
|
|
DWORD RasSetSubEntryPropertiesA(LPCSTR,LPCSTR,DWORD,struct tagRASSUBENTRYA*,DWORD,LPBYTE,DWORD);
|
|
DWORD RasSetSubEntryPropertiesW(LPCWSTR,LPCWSTR,DWORD,struct tagRASSUBENTRYW*,DWORD,LPBYTE,DWORD);
|
|
DWORD RasGetAutodialAddressA(LPCSTR,LPDWORD,struct tagRASAUTODIALENTRYA*,LPDWORD,LPDWORD);
|
|
DWORD RasGetAutodialAddressW(LPCWSTR,LPDWORD,struct tagRASAUTODIALENTRYW*,LPDWORD,LPDWORD);
|
|
DWORD RasSetAutodialAddressA(LPCSTR,DWORD,struct tagRASAUTODIALENTRYA*,DWORD,DWORD);
|
|
DWORD RasSetAutodialAddressW(LPCWSTR,DWORD,struct tagRASAUTODIALENTRYW*,DWORD,DWORD);
|
|
DWORD RasEnumAutodialAddressesA(LPSTR *,LPDWORD,LPDWORD);
|
|
DWORD RasEnumAutodialAddressesW(LPWSTR *,LPDWORD,LPDWORD);
|
|
DWORD RasGetAutodialEnableA(DWORD,LPBOOL);
|
|
DWORD RasGetAutodialEnableW(DWORD,LPBOOL);
|
|
DWORD RasSetAutodialEnableA(DWORD,WINBOOL);
|
|
DWORD RasSetAutodialEnableW(DWORD,WINBOOL);
|
|
DWORD RasGetAutodialParamA(DWORD,LPVOID,LPDWORD);
|
|
DWORD RasGetAutodialParamW(DWORD,LPVOID,LPDWORD);
|
|
DWORD RasSetAutodialParamA(DWORD,LPVOID,DWORD);
|
|
DWORD RasSetAutodialParamW(DWORD,LPVOID,DWORD);
|
|
typedef struct _RAS_STATS {
|
|
DWORD dwSize;
|
|
DWORD dwBytesXmited;
|
|
DWORD dwBytesRcved;
|
|
DWORD dwFramesXmited;
|
|
DWORD dwFramesRcved;
|
|
DWORD dwCrcErr;
|
|
DWORD dwTimeoutErr;
|
|
DWORD dwAlignmentErr;
|
|
DWORD dwHardwareOverrunErr;
|
|
DWORD dwFramingErr;
|
|
DWORD dwBufferOverrunErr;
|
|
DWORD dwCompressionRatioIn;
|
|
DWORD dwCompressionRatioOut;
|
|
DWORD dwBps;
|
|
DWORD dwConnectDuration;
|
|
} RAS_STATS,*PRAS_STATS;
|
|
typedef DWORD ( *RasCustomHangUpFn)(HRASCONN hRasConn);
|
|
typedef DWORD ( *RasCustomDialFn)(HINSTANCE hInstDll,struct tagRASDIALEXTENSIONS* lpRasDialExtensions,LPCWSTR lpszPhonebook,struct tagRASDIALPARAMSA* lpRasDialParams,DWORD dwNotifierType,LPVOID lpvNotifier,HRASCONN* lphRasConn,DWORD dwFlags);
|
|
typedef DWORD ( *RasCustomDeleteEntryNotifyFn)(LPCWSTR lpszPhonebook,LPCWSTR lpszEntry,DWORD dwFlags);
|
|
DWORD RasInvokeEapUI(HRASCONN,DWORD,struct tagRASDIALEXTENSIONS*,HWND);
|
|
DWORD RasGetLinkStatistics(HRASCONN hRasConn,DWORD dwSubEntry,RAS_STATS *lpStatistics);
|
|
DWORD RasGetConnectionStatistics(HRASCONN hRasConn,RAS_STATS *lpStatistics);
|
|
DWORD RasClearLinkStatistics(HRASCONN hRasConn,DWORD dwSubEntry);
|
|
DWORD RasClearConnectionStatistics(HRASCONN hRasConn);
|
|
DWORD RasGetEapUserDataA(HANDLE hToken,LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbEapData,DWORD *pdwSizeofEapData);
|
|
DWORD RasGetEapUserDataW(HANDLE hToken,LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbEapData,DWORD *pdwSizeofEapData);
|
|
DWORD RasSetEapUserDataA(HANDLE hToken,LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbEapData,DWORD dwSizeofEapData);
|
|
DWORD RasSetEapUserDataW(HANDLE hToken,LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbEapData,DWORD dwSizeofEapData);
|
|
DWORD RasGetCustomAuthDataA(LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbCustomAuthData,DWORD *pdwSizeofCustomAuthData);
|
|
DWORD RasGetCustomAuthDataW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbCustomAuthData,DWORD *pdwSizeofCustomAuthData);
|
|
DWORD RasSetCustomAuthDataA(LPCSTR pszPhonebook,LPCSTR pszEntry,BYTE *pbCustomAuthData,DWORD dwSizeofCustomAuthData);
|
|
DWORD RasSetCustomAuthDataW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,BYTE *pbCustomAuthData,DWORD dwSizeofCustomAuthData);
|
|
DWORD RasGetEapUserIdentityW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,DWORD dwFlags,HWND hwnd,struct tagRASEAPUSERIDENTITYW* *ppRasEapUserIdentity);
|
|
DWORD RasGetEapUserIdentityA(LPCSTR pszPhonebook,LPCSTR pszEntry,DWORD dwFlags,HWND hwnd,struct tagRASEAPUSERIDENTITYA* *ppRasEapUserIdentity);
|
|
void RasFreeEapUserIdentityW(struct tagRASEAPUSERIDENTITYW* pRasEapUserIdentity);
|
|
void RasFreeEapUserIdentityA(struct tagRASEAPUSERIDENTITYA* pRasEapUserIdentity);
|
|
DWORD RasDeleteSubEntryA(LPCSTR pszPhonebook,LPCSTR pszEntry,DWORD dwSubentryId);
|
|
DWORD RasDeleteSubEntryW(LPCWSTR pszPhonebook,LPCWSTR pszEntry,DWORD dwSubEntryId);
|
|
#pragma pack(pop)
|
|
typedef enum _ROUTER_INTERFACE_TYPE {
|
|
ROUTER_IF_TYPE_CLIENT,ROUTER_IF_TYPE_HOME_ROUTER,ROUTER_IF_TYPE_FULL_ROUTER,ROUTER_IF_TYPE_DEDICATED,ROUTER_IF_TYPE_INTERNAL,
|
|
ROUTER_IF_TYPE_LOOPBACK,ROUTER_IF_TYPE_TUNNEL1,ROUTER_IF_TYPE_DIALOUT
|
|
} ROUTER_INTERFACE_TYPE;
|
|
typedef enum _ROUTER_CONNECTION_STATE {
|
|
ROUTER_IF_STATE_UNREACHABLE,ROUTER_IF_STATE_DISCONNECTED,ROUTER_IF_STATE_CONNECTING,ROUTER_IF_STATE_CONNECTED
|
|
} ROUTER_CONNECTION_STATE;
|
|
typedef struct _MPR_INTERFACE_0 {
|
|
WCHAR wszInterfaceName[256 +1];
|
|
HANDLE hInterface;
|
|
WINBOOL fEnabled;
|
|
ROUTER_INTERFACE_TYPE dwIfType;
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
DWORD fUnReachabilityReasons;
|
|
DWORD dwLastError;
|
|
} MPR_INTERFACE_0,*PMPR_INTERFACE_0;
|
|
typedef struct _MPR_IPINIP_INTERFACE_0 {
|
|
WCHAR wszFriendlyName[256 +1];
|
|
GUID Guid;
|
|
} MPR_IPINIP_INTERFACE_0,*PMPR_IPINIP_INTERFACE_0;
|
|
typedef struct _MPR_INTERFACE_1 {
|
|
WCHAR wszInterfaceName[256 +1];
|
|
HANDLE hInterface;
|
|
WINBOOL fEnabled;
|
|
ROUTER_INTERFACE_TYPE dwIfType;
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
DWORD fUnReachabilityReasons;
|
|
DWORD dwLastError;
|
|
LPWSTR lpwsDialoutHoursRestriction;
|
|
} MPR_INTERFACE_1,*PMPR_INTERFACE_1;
|
|
typedef struct _MPR_INTERFACE_2 {
|
|
WCHAR wszInterfaceName[256 +1];
|
|
HANDLE hInterface;
|
|
WINBOOL fEnabled;
|
|
ROUTER_INTERFACE_TYPE dwIfType;
|
|
ROUTER_CONNECTION_STATE dwConnectionState;
|
|
DWORD fUnReachabilityReasons;
|
|
DWORD dwLastError;
|
|
DWORD dwfOptions;
|
|
WCHAR szLocalPhoneNumber[128 + 1 ];
|
|
PWCHAR szAlternates;
|
|
DWORD ipaddr;
|
|
DWORD ipaddrDns;
|
|
DWORD ipaddrDnsAlt;
|
|
DWORD ipaddrWins;
|
|
DWORD ipaddrWinsAlt;
|
|
DWORD dwfNetProtocols;
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
WCHAR szX25PadType[32 + 1 ];
|
|
WCHAR szX25Address[200 + 1 ];
|
|
WCHAR szX25Facilities[200 + 1 ];
|
|
WCHAR szX25UserData[200 + 1 ];
|
|
DWORD dwChannels;
|
|
DWORD dwSubEntries;
|
|
DWORD dwDialMode;
|
|
DWORD dwDialExtraPercent;
|
|
DWORD dwDialExtraSampleSeconds;
|
|
DWORD dwHangUpExtraPercent;
|
|
DWORD dwHangUpExtraSampleSeconds;
|
|
DWORD dwIdleDisconnectSeconds;
|
|
DWORD dwType;
|
|
DWORD dwEncryptionType;
|
|
DWORD dwCustomAuthKey;
|
|
DWORD dwCustomAuthDataSize;
|
|
LPBYTE lpbCustomAuthData;
|
|
GUID guidId;
|
|
DWORD dwVpnStrategy;
|
|
} MPR_INTERFACE_2,*PMPR_INTERFACE_2;
|
|
typedef struct _MPR_DEVICE_0 {
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
} MPR_DEVICE_0,*PMPR_DEVICE_0;
|
|
typedef struct _MPR_DEVICE_1 {
|
|
WCHAR szDeviceType[16 + 1 ];
|
|
WCHAR szDeviceName[128 + 1 ];
|
|
WCHAR szLocalPhoneNumber[128 + 1 ];
|
|
PWCHAR szAlternates;
|
|
} MPR_DEVICE_1,*PMPR_DEVICE_1;
|
|
typedef struct _MPR_CREDENTIALSEX_0 {
|
|
DWORD dwSize;
|
|
LPBYTE lpbCredentialsInfo;
|
|
} MPR_CREDENTIALSEX_0,*PMPR_CREDENTIALSEX_0;
|
|
typedef struct _MPR_CREDENTIALSEX_1 {
|
|
DWORD dwSize;
|
|
LPBYTE lpbCredentialsInfo;
|
|
} MPR_CREDENTIALSEX_1,*PMPR_CREDENTIALSEX_1;
|
|
typedef struct _MPR_TRANSPORT_0 {
|
|
DWORD dwTransportId;
|
|
HANDLE hTransport;
|
|
WCHAR wszTransportName[40 +1];
|
|
} MPR_TRANSPORT_0,*PMPR_TRANSPORT_0;
|
|
typedef struct _MPR_IFTRANSPORT_0
|
|
{
|
|
DWORD dwTransportId;
|
|
HANDLE hIfTransport;
|
|
WCHAR wszIfTransportName[40 +1];
|
|
}
|
|
MPR_IFTRANSPORT_0,*PMPR_IFTRANSPORT_0;
|
|
typedef struct _MPR_SERVER_0
|
|
{
|
|
WINBOOL fLanOnlyMode;
|
|
DWORD dwUpTime;
|
|
DWORD dwTotalPorts;
|
|
DWORD dwPortsInUse;
|
|
}
|
|
MPR_SERVER_0,*PMPR_SERVER_0;
|
|
typedef struct _MPR_SERVER_1 {
|
|
DWORD dwNumPptpPorts;
|
|
DWORD dwPptpPortFlags;
|
|
DWORD dwNumL2tpPorts;
|
|
DWORD dwL2tpPortFlags;
|
|
} MPR_SERVER_1,*PMPR_SERVER_1;
|
|
typedef enum _RAS_PORT_CONDITION {
|
|
RAS_PORT_NON_OPERATIONAL,RAS_PORT_DISCONNECTED,RAS_PORT_CALLING_BACK,RAS_PORT_LISTENING,RAS_PORT_AUTHENTICATING,RAS_PORT_AUTHENTICATED,
|
|
RAS_PORT_INITIALIZING
|
|
} RAS_PORT_CONDITION;
|
|
typedef enum _RAS_HARDWARE_CONDITION {
|
|
RAS_HARDWARE_OPERATIONAL,RAS_HARDWARE_FAILURE
|
|
} RAS_HARDWARE_CONDITION;
|
|
typedef struct _RAS_PORT_0 {
|
|
HANDLE hPort;
|
|
HANDLE hConnection;
|
|
RAS_PORT_CONDITION dwPortCondition;
|
|
DWORD dwTotalNumberOfCalls;
|
|
DWORD dwConnectDuration;
|
|
WCHAR wszPortName[16 + 1 ];
|
|
WCHAR wszMediaName[16 + 1 ];
|
|
WCHAR wszDeviceName[128 + 1 ];
|
|
WCHAR wszDeviceType[16 + 1 ];
|
|
} RAS_PORT_0,*PRAS_PORT_0;
|
|
typedef struct _RAS_PORT_1 {
|
|
HANDLE hPort;
|
|
HANDLE hConnection;
|
|
RAS_HARDWARE_CONDITION dwHardwareCondition;
|
|
DWORD dwLineSpeed;
|
|
DWORD dwBytesXmited;
|
|
DWORD dwBytesRcved;
|
|
DWORD dwFramesXmited;
|
|
DWORD dwFramesRcved;
|
|
DWORD dwCrcErr;
|
|
DWORD dwTimeoutErr;
|
|
DWORD dwAlignmentErr;
|
|
DWORD dwHardwareOverrunErr;
|
|
DWORD dwFramingErr;
|
|
DWORD dwBufferOverrunErr;
|
|
DWORD dwCompressionRatioIn;
|
|
DWORD dwCompressionRatioOut;
|
|
} RAS_PORT_1,*PRAS_PORT_1;
|
|
typedef struct _PPP_NBFCP_INFO {
|
|
DWORD dwError;
|
|
WCHAR wszWksta[16 + 1 ];
|
|
} PPP_NBFCP_INFO;
|
|
typedef struct _PPP_IPCP_INFO {
|
|
DWORD dwError;
|
|
WCHAR wszAddress[15 + 1 ];
|
|
WCHAR wszRemoteAddress[15 + 1 ];
|
|
} PPP_IPCP_INFO;
|
|
typedef struct _PPP_IPCP_INFO2 {
|
|
DWORD dwError;
|
|
WCHAR wszAddress[15 + 1 ];
|
|
WCHAR wszRemoteAddress[15 + 1 ];
|
|
DWORD dwOptions;
|
|
DWORD dwRemoteOptions;
|
|
} PPP_IPCP_INFO2;
|
|
typedef struct _PPP_IPXCP_INFO {
|
|
DWORD dwError;
|
|
WCHAR wszAddress[22 + 1 ];
|
|
} PPP_IPXCP_INFO;
|
|
typedef struct _PPP_ATCP_INFO {
|
|
DWORD dwError;
|
|
WCHAR wszAddress[32 + 1 ];
|
|
} PPP_ATCP_INFO;
|
|
typedef struct _PPP_INFO {
|
|
PPP_NBFCP_INFO nbf;
|
|
PPP_IPCP_INFO ip;
|
|
PPP_IPXCP_INFO ipx;
|
|
PPP_ATCP_INFO at;
|
|
} PPP_INFO;
|
|
typedef struct _PPP_CCP_INFO {
|
|
DWORD dwError;
|
|
DWORD dwCompressionAlgorithm;
|
|
DWORD dwOptions;
|
|
DWORD dwRemoteCompressionAlgorithm;
|
|
DWORD dwRemoteOptions;
|
|
} PPP_CCP_INFO;
|
|
typedef struct _PPP_LCP_INFO {
|
|
DWORD dwError;
|
|
DWORD dwAuthenticationProtocol;
|
|
DWORD dwAuthenticationData;
|
|
DWORD dwRemoteAuthenticationProtocol;
|
|
DWORD dwRemoteAuthenticationData;
|
|
DWORD dwTerminateReason;
|
|
DWORD dwRemoteTerminateReason;
|
|
DWORD dwOptions;
|
|
DWORD dwRemoteOptions;
|
|
DWORD dwEapTypeId;
|
|
DWORD dwRemoteEapTypeId;
|
|
} PPP_LCP_INFO;
|
|
typedef struct _PPP_INFO_2 {
|
|
PPP_NBFCP_INFO nbf;
|
|
PPP_IPCP_INFO2 ip;
|
|
PPP_IPXCP_INFO ipx;
|
|
PPP_ATCP_INFO at;
|
|
PPP_CCP_INFO ccp;
|
|
PPP_LCP_INFO lcp;
|
|
} PPP_INFO_2;
|
|
typedef struct _RAS_CONNECTION_0 {
|
|
HANDLE hConnection;
|
|
HANDLE hInterface;
|
|
DWORD dwConnectDuration;
|
|
ROUTER_INTERFACE_TYPE dwInterfaceType;
|
|
DWORD dwConnectionFlags;
|
|
WCHAR wszInterfaceName[256 + 1 ];
|
|
WCHAR wszUserName[256 + 1 ];
|
|
WCHAR wszLogonDomain[15 + 1 ];
|
|
WCHAR wszRemoteComputer[16 + 1 ];
|
|
} RAS_CONNECTION_0,*PRAS_CONNECTION_0;
|
|
typedef struct _RAS_CONNECTION_1 {
|
|
HANDLE hConnection;
|
|
HANDLE hInterface;
|
|
PPP_INFO PppInfo;
|
|
DWORD dwBytesXmited;
|
|
DWORD dwBytesRcved;
|
|
DWORD dwFramesXmited;
|
|
DWORD dwFramesRcved;
|
|
DWORD dwCrcErr;
|
|
DWORD dwTimeoutErr;
|
|
DWORD dwAlignmentErr;
|
|
DWORD dwHardwareOverrunErr;
|
|
DWORD dwFramingErr;
|
|
DWORD dwBufferOverrunErr;
|
|
DWORD dwCompressionRatioIn;
|
|
DWORD dwCompressionRatioOut;
|
|
} RAS_CONNECTION_1,*PRAS_CONNECTION_1;
|
|
typedef struct _RAS_CONNECTION_2 {
|
|
HANDLE hConnection;
|
|
WCHAR wszUserName[256 + 1 ];
|
|
ROUTER_INTERFACE_TYPE dwInterfaceType;
|
|
GUID guid;
|
|
PPP_INFO_2 PppInfo2;
|
|
} RAS_CONNECTION_2,*PRAS_CONNECTION_2;
|
|
typedef struct _RAS_USER_0 {
|
|
BYTE bfPrivilege;
|
|
WCHAR wszPhoneNumber[128 + 1];
|
|
} RAS_USER_0,*PRAS_USER_0;
|
|
typedef struct _RAS_USER_1 {
|
|
BYTE bfPrivilege;
|
|
WCHAR wszPhoneNumber[128 + 1];
|
|
BYTE bfPrivilege2;
|
|
} RAS_USER_1,*PRAS_USER_1;
|
|
typedef HANDLE RAS_SERVER_HANDLE;
|
|
typedef HANDLE MPR_SERVER_HANDLE;
|
|
typedef HANDLE MIB_SERVER_HANDLE;
|
|
DWORD MprAdminConnectionEnum(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
|
DWORD MprAdminPortEnum(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hConnection,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
|
DWORD MprAdminConnectionGetInfo(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hConnection,LPBYTE *lplpbBuffer);
|
|
DWORD MprAdminPortGetInfo(RAS_SERVER_HANDLE hRasServer,DWORD dwLevel,HANDLE hPort,LPBYTE *lplpbBuffer);
|
|
DWORD MprAdminConnectionClearStats(RAS_SERVER_HANDLE hRasServer,HANDLE hConnection);
|
|
DWORD MprAdminPortClearStats(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
|
|
DWORD MprAdminPortReset(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
|
|
DWORD MprAdminPortDisconnect(RAS_SERVER_HANDLE hRasServer,HANDLE hPort);
|
|
WINBOOL MprAdminAcceptNewConnection(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1);
|
|
WINBOOL MprAdminAcceptNewConnection2(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1,RAS_CONNECTION_2 *pRasConnection2);
|
|
WINBOOL MprAdminAcceptNewLink (RAS_PORT_0 *pRasPort0,RAS_PORT_1 *pRasPort1);
|
|
void MprAdminConnectionHangupNotification(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1);
|
|
void MprAdminConnectionHangupNotification2(RAS_CONNECTION_0 *pRasConnection0,RAS_CONNECTION_1 *pRasConnection1,RAS_CONNECTION_2 *pRasConnection2);
|
|
DWORD MprAdminConnectionRemoveQuarantine(HANDLE hRasServer,HANDLE hRasConnection,WINBOOL fIsIpAddress);
|
|
void MprAdminLinkHangupNotification (RAS_PORT_0 *pRasPort0,RAS_PORT_1 *pRasPort1);
|
|
DWORD MprAdminGetIpAddressForUser (WCHAR *lpwszUserName,WCHAR *lpwszPortName,DWORD *lpdwIpAddress,WINBOOL *bNotifyRelease);
|
|
void MprAdminReleaseIpAddress (WCHAR *lpszUserName,WCHAR *lpszPortName,DWORD *lpdwIpAddress);
|
|
DWORD MprAdminInitializeDll(void);
|
|
DWORD MprAdminTerminateDll(void);
|
|
DWORD MprAdminUserGetInfo(const WCHAR *lpszServer,const WCHAR *lpszUser,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprAdminUserSetInfo(const WCHAR *lpszServer,const WCHAR *lpszUser,DWORD dwLevel,const LPBYTE lpbBuffer);
|
|
DWORD MprAdminSendUserMessage(MPR_SERVER_HANDLE hMprServer,HANDLE hConnection,LPWSTR lpwszMessage);
|
|
DWORD MprAdminGetPDCServer(const WCHAR *lpszDomain,const WCHAR *lpszServer,LPWSTR lpszPDCServer);
|
|
WINBOOL MprAdminIsServiceRunning(LPWSTR lpwsServerName);
|
|
DWORD MprAdminServerConnect(LPWSTR lpwsServerName,MPR_SERVER_HANDLE *phMprServer);
|
|
void MprAdminServerDisconnect(MPR_SERVER_HANDLE hMprServer);
|
|
DWORD MprAdminServerGetCredentials(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
|
DWORD MprAdminServerSetCredentials(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprAdminBufferFree(LPVOID pBuffer);
|
|
DWORD MprAdminGetErrorString(DWORD dwError,LPWSTR *lpwsErrorString);
|
|
DWORD MprAdminServerGetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
|
DWORD MprAdminServerSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprAdminEstablishDomainRasServer (PWCHAR pszDomain,PWCHAR pszMachine,WINBOOL bEnable);
|
|
DWORD MprAdminIsDomainRasServer (PWCHAR pszDomain,PWCHAR pszMachine,PBOOL pbIsRasServer);
|
|
DWORD MprAdminTransportCreate(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath);
|
|
DWORD MprAdminTransportSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize);
|
|
DWORD MprAdminTransportGetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwTransportId,LPBYTE *ppGlobalInfo,LPDWORD lpdwGlobalInfoSize,LPBYTE *ppClientInterfaceInfo,LPDWORD lpdwClientInterfaceInfoSize);
|
|
DWORD MprAdminDeviceEnum(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer,LPDWORD lpdwTotalEntries);
|
|
DWORD MprAdminInterfaceGetHandle(MPR_SERVER_HANDLE hMprServer,LPWSTR lpwsInterfaceName,HANDLE *phInterface,WINBOOL fIncludeClientInterfaces);
|
|
DWORD MprAdminInterfaceCreate(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer,HANDLE *phInterface);
|
|
DWORD MprAdminInterfaceGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
|
DWORD MprAdminInterfaceSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprAdminInterfaceDelete(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
|
|
DWORD MprAdminInterfaceDeviceGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwIndex,DWORD dwLevel,LPBYTE *lplpBuffer);
|
|
DWORD MprAdminInterfaceDeviceSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwIndex,DWORD dwLevel,LPBYTE lplpBuffer);
|
|
DWORD MprAdminInterfaceTransportRemove(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId);
|
|
DWORD MprAdminInterfaceTransportAdd(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
|
|
DWORD MprAdminInterfaceTransportGetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE *ppInterfaceInfo,LPDWORD lpdwpInterfaceInfoSize);
|
|
DWORD MprAdminInterfaceTransportSetInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwTransportId,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
|
|
DWORD MprAdminInterfaceEnum(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE *lplpbBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
|
DWORD MprSetupIpInIpInterfaceFriendlyNameEnum(PWCHAR pwszMachineName,LPBYTE *lplpBuffer,LPDWORD lpdwEntriesRead);
|
|
DWORD MprSetupIpInIpInterfaceFriendlyNameFree(LPVOID lpBuffer);
|
|
DWORD MprSetupIpInIpInterfaceFriendlyNameCreate(PWCHAR pwszMachineName,PMPR_IPINIP_INTERFACE_0 pNameInformation);
|
|
DWORD MprSetupIpInIpInterfaceFriendlyNameDelete(PWCHAR pwszMachineName,GUID *pGuid);
|
|
DWORD MprAdminInterfaceSetCredentials(LPWSTR lpwsServer,LPWSTR lpwsInterfaceName,LPWSTR lpwsUserName,LPWSTR lpwsDomainName,LPWSTR lpwsPassword);
|
|
DWORD MprAdminInterfaceGetCredentials(LPWSTR lpwsServer,LPWSTR lpwsInterfaceName,LPWSTR lpwsUserName,LPWSTR lpwsPassword,LPWSTR lpwsDomainName);
|
|
DWORD MprAdminInterfaceSetCredentialsEx(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprAdminInterfaceGetCredentialsEx(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
|
DWORD MprAdminInterfaceConnect(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,HANDLE hEvent,WINBOOL fSynchronous);
|
|
DWORD MprAdminInterfaceDisconnect(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
|
|
DWORD MprAdminInterfaceUpdateRoutes(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwProtocolId,HANDLE hEvent);
|
|
DWORD MprAdminInterfaceQueryUpdateResult(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface,DWORD dwProtocolId,LPDWORD lpdwUpdateResult);
|
|
DWORD MprAdminInterfaceUpdatePhonebookInfo(MPR_SERVER_HANDLE hMprServer,HANDLE hInterface);
|
|
DWORD MprAdminRegisterConnectionNotification(MPR_SERVER_HANDLE hMprServer,HANDLE hEventNotification);
|
|
DWORD MprAdminDeregisterConnectionNotification(MPR_SERVER_HANDLE hMprServer,HANDLE hEventNotification);
|
|
DWORD MprAdminMIBServerConnect(LPWSTR lpwsServerName,MIB_SERVER_HANDLE *phMibServer);
|
|
void MprAdminMIBServerDisconnect(MIB_SERVER_HANDLE hMibServer);
|
|
DWORD MprAdminMIBEntryCreate(MIB_SERVER_HANDLE hMibServer,DWORD dwPid,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
|
|
DWORD MprAdminMIBEntryDelete(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
|
|
DWORD MprAdminMIBEntrySet(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpEntry,DWORD dwEntrySize);
|
|
DWORD MprAdminMIBEntryGet(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
|
|
DWORD MprAdminMIBEntryGetFirst(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
|
|
DWORD MprAdminMIBEntryGetNext(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInEntry,DWORD dwInEntrySize,LPVOID *lplpOutEntry,LPDWORD lpOutEntrySize);
|
|
DWORD MprAdminMIBGetTrapInfo(MIB_SERVER_HANDLE hMibServer,DWORD dwProtocolId,DWORD dwRoutingPid,LPVOID lpInData,DWORD dwInDataSize,LPVOID *lplpOutData,LPDWORD lpOutDataSize);
|
|
DWORD MprAdminMIBSetTrapInfo(DWORD dwProtocolId,DWORD dwRoutingPid,HANDLE hEvent,LPVOID lpInData,DWORD dwInDataSize,LPVOID *lplpOutData,LPDWORD lpOutDataSize);
|
|
DWORD MprAdminMIBBufferFree(LPVOID pBuffer);
|
|
DWORD MprConfigServerInstall(DWORD dwLevel,PVOID pBuffer);
|
|
DWORD MprConfigServerConnect(LPWSTR lpwsServerName,HANDLE *phMprConfig);
|
|
void MprConfigServerDisconnect(HANDLE hMprConfig);
|
|
DWORD MprConfigServerRefresh(HANDLE hMprConfig);
|
|
DWORD MprConfigBufferFree(LPVOID pBuffer);
|
|
DWORD MprConfigServerGetInfo(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpbBuffer);
|
|
DWORD MprConfigServerSetInfo(MPR_SERVER_HANDLE hMprServer,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprConfigServerBackup(HANDLE hMprConfig,LPWSTR lpwsPath);
|
|
DWORD MprConfigServerRestore(HANDLE hMprConfig,LPWSTR lpwsPath);
|
|
DWORD MprConfigTransportCreate(HANDLE hMprConfig,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath,HANDLE *phRouterTransport);
|
|
DWORD MprConfigTransportDelete(HANDLE hMprConfig,HANDLE hRouterTransport);
|
|
DWORD MprConfigTransportGetHandle(HANDLE hMprConfig,DWORD dwTransportId,HANDLE *phRouterTransport);
|
|
DWORD MprConfigTransportSetInfo(HANDLE hMprConfig,HANDLE hRouterTransport,LPBYTE pGlobalInfo,DWORD dwGlobalInfoSize,LPBYTE pClientInterfaceInfo,DWORD dwClientInterfaceInfoSize,LPWSTR lpwsDLLPath);
|
|
DWORD MprConfigTransportGetInfo(HANDLE hMprConfig,HANDLE hRouterTransport,LPBYTE *ppGlobalInfo,LPDWORD lpdwGlobalInfoSize,LPBYTE *ppClientInterfaceInfo,LPDWORD lpdwClientInterfaceInfoSize,LPWSTR *lplpwsDLLPath);
|
|
DWORD MprConfigTransportEnum(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
|
DWORD MprConfigInterfaceCreate(HANDLE hMprConfig,DWORD dwLevel,LPBYTE lpbBuffer,HANDLE *phRouterInterface);
|
|
DWORD MprConfigInterfaceDelete(HANDLE hMprConfig,HANDLE hRouterInterface);
|
|
DWORD MprConfigInterfaceGetHandle(HANDLE hMprConfig,LPWSTR lpwsInterfaceName,HANDLE *phRouterInterface);
|
|
DWORD MprConfigInterfaceGetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE *lplpBuffer,LPDWORD lpdwBufferSize);
|
|
DWORD MprConfigInterfaceSetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE lpbBuffer);
|
|
DWORD MprConfigInterfaceEnum(HANDLE hMprConfig,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
|
DWORD MprConfigInterfaceTransportAdd(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwTransportId,LPWSTR lpwsTransportName,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize,HANDLE *phRouterIfTransport);
|
|
DWORD MprConfigInterfaceTransportRemove(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport);
|
|
DWORD MprConfigInterfaceTransportGetHandle(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwTransportId,HANDLE *phRouterIfTransport);
|
|
DWORD MprConfigInterfaceTransportGetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport,LPBYTE *ppInterfaceInfo,LPDWORD lpdwInterfaceInfoSize);
|
|
DWORD MprConfigInterfaceTransportSetInfo(HANDLE hMprConfig,HANDLE hRouterInterface,HANDLE hRouterIfTransport,LPBYTE pInterfaceInfo,DWORD dwInterfaceInfoSize);
|
|
DWORD MprConfigInterfaceTransportEnum(HANDLE hMprConfig,HANDLE hRouterInterface,DWORD dwLevel,LPBYTE *lplpBuffer,DWORD dwPrefMaxLen,LPDWORD lpdwEntriesRead,LPDWORD lpdwTotalEntries,LPDWORD lpdwResumeHandle);
|
|
DWORD MprConfigGetFriendlyName(HANDLE hMprConfig,PWCHAR pszGuidName,PWCHAR pszBuffer,DWORD dwBufferSize);
|
|
DWORD MprConfigGetGuidName(HANDLE hMprConfig,PWCHAR pszFriendlyName,PWCHAR pszBuffer,DWORD dwBufferSize);
|
|
DWORD MprInfoCreate(DWORD dwVersion,LPVOID *lplpNewHeader);
|
|
DWORD MprInfoDelete(LPVOID lpHeader);
|
|
DWORD MprInfoRemoveAll(LPVOID lpHeader,LPVOID *lplpNewHeader);
|
|
DWORD MprInfoDuplicate(LPVOID lpHeader,LPVOID *lplpNewHeader);
|
|
DWORD MprInfoBlockAdd(LPVOID lpHeader,DWORD dwInfoType,DWORD dwItemSize,DWORD dwItemCount,LPBYTE lpItemData,LPVOID *lplpNewHeader);
|
|
DWORD MprInfoBlockRemove(LPVOID lpHeader,DWORD dwInfoType,LPVOID *lplpNewHeader);
|
|
DWORD MprInfoBlockSet(LPVOID lpHeader,DWORD dwInfoType,DWORD dwItemSize,DWORD dwItemCount,LPBYTE lpItemData,LPVOID *lplpNewHeader);
|
|
DWORD MprInfoBlockFind(LPVOID lpHeader,DWORD dwInfoType,LPDWORD lpdwItemSize,LPDWORD lpdwItemCount,LPBYTE *lplpItemData);
|
|
DWORD MprInfoBlockQuerySize(LPVOID lpHeader);
|
|
typedef enum {
|
|
NldsInvalid,
|
|
NldsTentative,
|
|
NldsDuplicate,
|
|
NldsDeprecated,
|
|
NldsPreferred,
|
|
IpDadStateInvalid = 0,
|
|
IpDadStateTentative,
|
|
IpDadStateDuplicate,
|
|
IpDadStateDeprecated,
|
|
IpDadStatePreferred,
|
|
} NL_DAD_STATE;
|
|
typedef enum {
|
|
RouteProtocolOther = 1,
|
|
RouteProtocolLocal = 2,
|
|
RouteProtocolNetMgmt = 3,
|
|
RouteProtocolIcmp = 4,
|
|
RouteProtocolEgp = 5,
|
|
RouteProtocolGgp = 6,
|
|
RouteProtocolHello = 7,
|
|
RouteProtocolRip = 8,
|
|
RouteProtocolIsIs = 9,
|
|
RouteProtocolEsIs = 10,
|
|
RouteProtocolCisco = 11,
|
|
RouteProtocolBbn = 12,
|
|
RouteProtocolOspf = 13,
|
|
RouteProtocolBgp = 14,
|
|
MIB_IPPROTO_OTHER = 1, PROTO_IP_OTHER = 1,
|
|
MIB_IPPROTO_LOCAL = 2, PROTO_IP_LOCAL = 2,
|
|
MIB_IPPROTO_NETMGMT = 3, PROTO_IP_NETMGMT = 3,
|
|
MIB_IPPROTO_ICMP = 4, PROTO_IP_ICMP = 4,
|
|
MIB_IPPROTO_EGP = 5, PROTO_IP_EGP = 5,
|
|
MIB_IPPROTO_GGP = 6, PROTO_IP_GGP = 6,
|
|
MIB_IPPROTO_HELLO = 7, PROTO_IP_HELLO = 7,
|
|
MIB_IPPROTO_RIP = 8, PROTO_IP_RIP = 8,
|
|
MIB_IPPROTO_IS_IS = 9, PROTO_IP_IS_IS = 9,
|
|
MIB_IPPROTO_ES_IS = 10, PROTO_IP_ES_IS = 10,
|
|
MIB_IPPROTO_CISCO = 11, PROTO_IP_CISCO = 11,
|
|
MIB_IPPROTO_BBN = 12, PROTO_IP_BBN = 12,
|
|
MIB_IPPROTO_OSPF = 13, PROTO_IP_OSPF = 13,
|
|
MIB_IPPROTO_BGP = 14, PROTO_IP_BGP = 14,
|
|
MIB_IPPROTO_NT_AUTOSTATIC = 10002, PROTO_IP_NT_AUTOSTATIC = 10002,
|
|
MIB_IPPROTO_NT_STATIC = 10006, PROTO_IP_NT_STATIC = 10006,
|
|
MIB_IPPROTO_NT_STATIC_NON_DOD = 10007, PROTO_IP_NT_STATIC_NON_DOD = 10007
|
|
} NL_ROUTE_PROTOCOL,*PNL_ROUTE_PROTOCOL;
|
|
typedef enum {
|
|
IpPrefixOriginOther = 0,
|
|
IpPrefixOriginManual,
|
|
IpPrefixOriginWellKnown,
|
|
IpPrefixOriginDhcp,
|
|
IpPrefixOriginRouterAdvertisement,
|
|
IpPrefixOriginUnchanged = 16
|
|
} NL_PREFIX_ORIGIN;
|
|
typedef enum {
|
|
NlsoOther = 0,
|
|
NlsoManual,
|
|
NlsoWellKnown,
|
|
NlsoDhcp,
|
|
NlsoLinkLayerAddress,
|
|
NlsoRandom,
|
|
IpSuffixOriginOther = 0,
|
|
IpSuffixOriginManual,
|
|
IpSuffixOriginWellKnown,
|
|
IpSuffixOriginDhcp,
|
|
IpSuffixOriginLinkLayerAddress,
|
|
IpSuffixOriginRandom,
|
|
IpSuffixOriginUnchanged = 16
|
|
} NL_SUFFIX_ORIGIN;
|
|
typedef enum {
|
|
NlatUnspecified,
|
|
NlatUnicast,
|
|
NlatAnycast,
|
|
NlatMulticast,
|
|
NlatBroadcast,
|
|
NlatInvalid
|
|
} NL_ADDRESS_TYPE, *PNL_ADDRESS_TYPE;
|
|
typedef enum _NL_ROUTE_ORIGIN {
|
|
NlroManual,
|
|
NlroWellKnown,
|
|
NlroDHCP,
|
|
NlroRouterAdvertisement,
|
|
Nlro6to4,
|
|
} NL_ROUTE_ORIGIN, *PNL_ROUTE_ORIGIN;
|
|
typedef enum _NL_NEIGHBOR_STATE {
|
|
NlnsUnreachable,
|
|
NlnsIncomplete,
|
|
NlnsProbe,
|
|
NlnsDelay,
|
|
NlnsStale,
|
|
NlnsReachable,
|
|
NlnsPermanent,
|
|
NlnsMaximum,
|
|
} NL_NEIGHBOR_STATE, *PNL_NEIGHBOR_STATE;
|
|
typedef enum _NL_LINK_LOCAL_ADDRESS_BEHAVIOR {
|
|
LinkLocalAlwaysOff = 0,
|
|
LinkLocalDelayed,
|
|
LinkLocalAlwaysOn,
|
|
LinkLocalUnchanged = -1
|
|
} NL_LINK_LOCAL_ADDRESS_BEHAVIOR;
|
|
typedef enum _NL_ROUTER_DISCOVERY_BEHAVIOR {
|
|
RouterDiscoveryDisabled = 0,
|
|
RouterDiscoveryEnabled,
|
|
RouterDiscoveryDhcp,
|
|
RouterDiscoveryUnchanged = -1
|
|
} NL_ROUTER_DISCOVERY_BEHAVIOR;
|
|
typedef enum _NL_BANDWIDTH_FLAG {
|
|
NlbwDisabled = 0,
|
|
NlbwEnabled,
|
|
NlbwUnchanged = -1
|
|
} NL_BANDWIDTH_FLAG, *PNL_BANDWIDTH_FLAG;
|
|
typedef enum _NL_INTERFACE_NETWORK_CATEGORY_STATE {
|
|
NlincCategoryUnknown = 0,
|
|
NlincPublic = 1,
|
|
NlincPrivate = 2,
|
|
NlincDomainAuthenticated = 3,
|
|
NlincCategoryStateMax
|
|
} NL_INTERFACE_NETWORK_CATEGORY_STATE, *PNL_INTERFACE_NETWORK_CATEGORY_STATE;
|
|
typedef struct _NL_INTERFACE_OFFLOAD_ROD {
|
|
BOOLEAN NlChecksumSupported : 1;
|
|
BOOLEAN NlOptionsSupported : 1;
|
|
BOOLEAN TlDatagramChecksumSupported : 1;
|
|
BOOLEAN TlStreamChecksumSupported : 1;
|
|
BOOLEAN TlStreamOptionsSupported : 1;
|
|
BOOLEAN FastPathCompatible : 1;
|
|
BOOLEAN TlLargeSendOffloadSupported : 1;
|
|
BOOLEAN TlGiantSendOffloadSupported : 1;
|
|
} NL_INTERFACE_OFFLOAD_ROD, *PNL_INTERFACE_OFFLOAD_ROD;
|
|
typedef struct _NL_PATH_BANDWIDTH_ROD {
|
|
ULONG64 Bandwidth;
|
|
ULONG64 Instability;
|
|
BOOLEAN BandwidthPeaked;
|
|
} NL_PATH_BANDWIDTH_ROD, *PNL_PATH_BANDWIDTH_ROD;
|
|
typedef enum _NL_NETWORK_CATEGORY {
|
|
NetworkCategoryPublic,
|
|
NetworkCategoryPrivate,
|
|
NetworkCategoryDomainAuthenticated,
|
|
NetworkCategoryUnchanged = -1,
|
|
NetworkCategoryUnknown = -1
|
|
} NL_NETWORK_CATEGORY,*PNL_NETWORK_CATEGORY;
|
|
typedef struct _NL_BANDWIDTH_INFORMATION {
|
|
ULONG64 Bandwidth;
|
|
ULONG64 Instability;
|
|
BOOLEAN BandwidthPeaked;
|
|
} NL_BANDWIDTH_INFORMATION, *PNL_BANDWIDTH_INFORMATION;
|
|
typedef ULONG IFTYPE;
|
|
typedef struct _MIB_OPAQUE_QUERY {
|
|
DWORD dwVarId;
|
|
DWORD rgdwVarIndex[1];
|
|
} MIB_OPAQUE_QUERY,*PMIB_OPAQUE_QUERY;
|
|
typedef struct _MIB_IFNUMBER {
|
|
DWORD dwValue;
|
|
} MIB_IFNUMBER,*PMIB_IFNUMBER;
|
|
typedef struct _MIB_IFROW {
|
|
WCHAR wszName[256];
|
|
DWORD dwIndex;
|
|
DWORD dwType;
|
|
DWORD dwMtu;
|
|
DWORD dwSpeed;
|
|
DWORD dwPhysAddrLen;
|
|
BYTE bPhysAddr[8];
|
|
DWORD dwAdminStatus;
|
|
DWORD dwOperStatus;
|
|
DWORD dwLastChange;
|
|
DWORD dwInOctets;
|
|
DWORD dwInUcastPkts;
|
|
DWORD dwInNUcastPkts;
|
|
DWORD dwInDiscards;
|
|
DWORD dwInErrors;
|
|
DWORD dwInUnknownProtos;
|
|
DWORD dwOutOctets;
|
|
DWORD dwOutUcastPkts;
|
|
DWORD dwOutNUcastPkts;
|
|
DWORD dwOutDiscards;
|
|
DWORD dwOutErrors;
|
|
DWORD dwOutQLen;
|
|
DWORD dwDescrLen;
|
|
BYTE bDescr[256];
|
|
} MIB_IFROW,*PMIB_IFROW;
|
|
typedef struct _MIB_IFTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IFROW table[1];
|
|
} MIB_IFTABLE,*PMIB_IFTABLE;
|
|
typedef struct _MIBICMPSTATS {
|
|
DWORD dwMsgs;
|
|
DWORD dwErrors;
|
|
DWORD dwDestUnreachs;
|
|
DWORD dwTimeExcds;
|
|
DWORD dwParmProbs;
|
|
DWORD dwSrcQuenchs;
|
|
DWORD dwRedirects;
|
|
DWORD dwEchos;
|
|
DWORD dwEchoReps;
|
|
DWORD dwTimestamps;
|
|
DWORD dwTimestampReps;
|
|
DWORD dwAddrMasks;
|
|
DWORD dwAddrMaskReps;
|
|
} MIBICMPSTATS,*PMIBICMPSTATS;
|
|
typedef struct _MIBICMPINFO {
|
|
MIBICMPSTATS icmpInStats;
|
|
MIBICMPSTATS icmpOutStats;
|
|
} MIBICMPINFO;
|
|
typedef struct _MIB_ICMP {
|
|
MIBICMPINFO stats;
|
|
} MIB_ICMP,*PMIB_ICMP;
|
|
typedef enum {
|
|
ICMP6_DST_UNREACH = 1,ICMP6_PACKET_TOO_BIG = 2,ICMP6_TIME_EXCEEDED = 3,ICMP6_PARAM_PROB = 4,ICMP6_ECHO_REQUEST = 128,
|
|
ICMP6_ECHO_REPLY = 129,ICMP6_MEMBERSHIP_QUERY = 130,ICMP6_MEMBERSHIP_REPORT = 131,ICMP6_MEMBERSHIP_REDUCTION = 132,
|
|
ND_ROUTER_SOLICIT = 133,ND_ROUTER_ADVERT = 134,ND_NEIGHBOR_SOLICIT = 135,ND_NEIGHBOR_ADVERT = 136,ND_REDIRECT = 137
|
|
} ICMP6_TYPE,*PICMP6_TYPE;
|
|
typedef enum {
|
|
ICMP4_ECHO_REPLY = 0,ICMP4_DST_UNREACH = 3,ICMP4_SOURCE_QUENCH = 4,ICMP4_REDIRECT = 5,ICMP4_ECHO_REQUEST = 8,ICMP4_ROUTER_ADVERT = 9,
|
|
ICMP4_ROUTER_SOLICIT = 10,ICMP4_TIME_EXCEEDED = 11,ICMP4_PARAM_PROB = 12,ICMP4_TIMESTAMP_REQUEST = 13,ICMP4_TIMESTAMP_REPLY = 14,
|
|
ICMP4_MASK_REQUEST = 17,ICMP4_MASK_REPLY = 18
|
|
} ICMP4_TYPE,*PICMP4_TYPE;
|
|
typedef struct _MIBICMPSTATS_EX {
|
|
DWORD dwMsgs;
|
|
DWORD dwErrors;
|
|
DWORD rgdwTypeCount[256];
|
|
} MIBICMPSTATS_EX,*PMIBICMPSTATS_EX;
|
|
typedef struct _MIB_ICMP_EX {
|
|
MIBICMPSTATS_EX icmpInStats;
|
|
MIBICMPSTATS_EX icmpOutStats;
|
|
} MIB_ICMP_EX,*PMIB_ICMP_EX;
|
|
typedef struct _MIB_UDPSTATS {
|
|
DWORD dwInDatagrams;
|
|
DWORD dwNoPorts;
|
|
DWORD dwInErrors;
|
|
DWORD dwOutDatagrams;
|
|
DWORD dwNumAddrs;
|
|
} MIB_UDPSTATS,*PMIB_UDPSTATS;
|
|
typedef struct _MIB_UDPROW {
|
|
DWORD dwLocalAddr;
|
|
DWORD dwLocalPort;
|
|
} MIB_UDPROW,*PMIB_UDPROW;
|
|
typedef MIB_UDPROW MIB_UDPROW_BASIC,*PMIB_UDPROW_BASIC;
|
|
typedef struct _MIB_UDPROW_OWNER_PID {
|
|
DWORD dwLocalAddr;
|
|
DWORD dwLocalPort;
|
|
DWORD dwOwningPid;
|
|
} MIB_UDPROW_OWNER_PID,*PMIB_UDPROW_OWNER_PID;
|
|
typedef struct _MIB_UDPROW_OWNER_MODULE {
|
|
DWORD dwLocalAddr;
|
|
DWORD dwLocalPort;
|
|
DWORD dwOwningPid;
|
|
LARGE_INTEGER liCreateTimestamp;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
DWORD SpecificPortBind : 1;
|
|
};
|
|
DWORD dwFlags;
|
|
};
|
|
ULONGLONG OwningModuleInfo[16];
|
|
} MIB_UDPROW_OWNER_MODULE,*PMIB_UDPROW_OWNER_MODULE;
|
|
typedef struct _MIB_UDP6ROW_OWNER_PID {
|
|
UCHAR ucLocalAddr[16];
|
|
DWORD dwLocalScopeId;
|
|
DWORD dwLocalPort;
|
|
DWORD dwOwningPid;
|
|
} MIB_UDP6ROW_OWNER_PID,*PMIB_UDP6ROW_OWNER_PID;
|
|
typedef struct _MIB_UDP6ROW_OWNER_MODULE {
|
|
UCHAR ucLocalAddr[16];
|
|
DWORD dwLocalScopeId;
|
|
DWORD dwLocalPort;
|
|
DWORD dwOwningPid;
|
|
LARGE_INTEGER liCreateTimestamp;
|
|
__extension__ union {
|
|
__extension__ struct {
|
|
DWORD SpecificPortBind : 1;
|
|
};
|
|
DWORD dwFlags;
|
|
};
|
|
ULONGLONG OwningModuleInfo[16];
|
|
} MIB_UDP6ROW_OWNER_MODULE,*PMIB_UDP6ROW_OWNER_MODULE;
|
|
typedef struct _MIB_UDPTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_UDPROW table[1];
|
|
} MIB_UDPTABLE,*PMIB_UDPTABLE;
|
|
typedef MIB_UDPTABLE MIB_UDPTABLE_BASIC,*PMIB_UDPTABLE_BASIC;
|
|
typedef struct _MIB_UDPTABLE_OWNER_PID {
|
|
DWORD dwNumEntries;
|
|
MIB_UDPROW_OWNER_PID table[1];
|
|
} MIB_UDPTABLE_OWNER_PID,*PMIB_UDPTABLE_OWNER_PID;
|
|
typedef struct _MIB_UDPTABLE_OWNER_MODULE {
|
|
DWORD dwNumEntries;
|
|
MIB_UDPROW_OWNER_MODULE table[1];
|
|
} MIB_UDPTABLE_OWNER_MODULE,*PMIB_UDPTABLE_OWNER_MODULE;
|
|
typedef struct _MIB_UDP6TABLE_OWNER_PID {
|
|
DWORD dwNumEntries;
|
|
MIB_UDP6ROW_OWNER_PID table[1];
|
|
} MIB_UDP6TABLE_OWNER_PID,*PMIB_UDP6TABLE_OWNER_PID;
|
|
typedef struct _MIB_UDP6TABLE_OWNER_MODULE {
|
|
DWORD dwNumEntries;
|
|
MIB_UDP6ROW_OWNER_MODULE table[1];
|
|
} MIB_UDP6TABLE_OWNER_MODULE,*PMIB_UDP6TABLE_OWNER_MODULE;
|
|
typedef struct _MIB_TCPSTATS {
|
|
DWORD dwRtoAlgorithm;
|
|
DWORD dwRtoMin;
|
|
DWORD dwRtoMax;
|
|
DWORD dwMaxConn;
|
|
DWORD dwActiveOpens;
|
|
DWORD dwPassiveOpens;
|
|
DWORD dwAttemptFails;
|
|
DWORD dwEstabResets;
|
|
DWORD dwCurrEstab;
|
|
DWORD dwInSegs;
|
|
DWORD dwOutSegs;
|
|
DWORD dwRetransSegs;
|
|
DWORD dwInErrs;
|
|
DWORD dwOutRsts;
|
|
DWORD dwNumConns;
|
|
} MIB_TCPSTATS,*PMIB_TCPSTATS;
|
|
typedef enum _TCP_TABLE_CLASS {
|
|
TCP_TABLE_BASIC_LISTENER,
|
|
TCP_TABLE_BASIC_CONNECTIONS,
|
|
TCP_TABLE_BASIC_ALL,
|
|
TCP_TABLE_OWNER_PID_LISTENER,
|
|
TCP_TABLE_OWNER_PID_CONNECTIONS,
|
|
TCP_TABLE_OWNER_PID_ALL,
|
|
TCP_TABLE_OWNER_MODULE_LISTENER,
|
|
TCP_TABLE_OWNER_MODULE_CONNECTIONS,
|
|
TCP_TABLE_OWNER_MODULE_ALL
|
|
} TCP_TABLE_CLASS, *PTCP_TABLE_CLASS;
|
|
typedef struct _MIB_TCPROW {
|
|
DWORD dwState;
|
|
DWORD dwLocalAddr;
|
|
DWORD dwLocalPort;
|
|
DWORD dwRemoteAddr;
|
|
DWORD dwRemotePort;
|
|
} MIB_TCPROW,*PMIB_TCPROW;
|
|
typedef MIB_TCPROW MIB_TCPROW_BASIC,*PMIB_TCPROW_BASIC;
|
|
typedef struct _MIB_TCPROW_OWNER_PID {
|
|
DWORD dwState;
|
|
DWORD dwLocalAddr;
|
|
DWORD dwLocalPort;
|
|
DWORD dwRemoteAddr;
|
|
DWORD dwRemotePort;
|
|
DWORD dwOwningPid;
|
|
} MIB_TCPROW_OWNER_PID,*PMIB_TCPROW_OWNER_PID;
|
|
typedef struct _MIB_TCPROW_OWNER_MODULE {
|
|
DWORD dwState;
|
|
DWORD dwLocalAddr;
|
|
DWORD dwLocalPort;
|
|
DWORD dwRemoteAddr;
|
|
DWORD dwRemotePort;
|
|
DWORD dwOwningPid;
|
|
LARGE_INTEGER liCreateTimestamp;
|
|
ULONGLONG OwningModuleInfo[16];
|
|
} MIB_TCPROW_OWNER_MODULE,*PMIB_TCPROW_OWNER_MODULE;
|
|
typedef struct _MIB_TCP6ROW_OWNER_PID {
|
|
UCHAR ucLocalAddr[16];
|
|
DWORD dwLocalScopeId;
|
|
DWORD dwLocalPort;
|
|
UCHAR ucRemoteAddr[16];
|
|
DWORD dwRemoteScopeId;
|
|
DWORD dwRemotePort;
|
|
DWORD dwState;
|
|
DWORD dwOwningPid;
|
|
} MIB_TCP6ROW_OWNER_PID,*PMIB_TCP6ROW_OWNER_PID;
|
|
typedef struct _MIB_TCP6ROW_OWNER_MODULE {
|
|
UCHAR ucLocalAddr[16];
|
|
DWORD dwLocalScopeId;
|
|
DWORD dwLocalPort;
|
|
UCHAR ucRemoteAddr[16];
|
|
DWORD dwRemoteScopeId;
|
|
DWORD dwRemotePort;
|
|
DWORD dwState;
|
|
DWORD dwOwningPid;
|
|
LARGE_INTEGER liCreateTimestamp;
|
|
ULONGLONG OwningModuleInfo[16];
|
|
} MIB_TCP6ROW_OWNER_MODULE,*PMIB_TCP6ROW_OWNER_MODULE;
|
|
typedef struct _MIB_TCPTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_TCPROW table[1];
|
|
} MIB_TCPTABLE,*PMIB_TCPTABLE;
|
|
typedef MIB_TCPTABLE MIB_TCPTABLE_BASIC,*PMIB_TCPTABLE_BASIC;
|
|
typedef struct _MIB_TCPTABLE_OWNER_PID {
|
|
DWORD dwNumEntries;
|
|
MIB_TCPROW_OWNER_PID table[1];
|
|
} MIB_TCPTABLE_OWNER_PID,*PMIB_TCPTABLE_OWNER_PID;
|
|
typedef struct _MIB_TCPTABLE_OWNER_MODULE {
|
|
DWORD dwNumEntries;
|
|
MIB_TCPROW_OWNER_MODULE table[1];
|
|
} MIB_TCPTABLE_OWNER_MODULE,*PMIB_TCPTABLE_OWNER_MODULE;
|
|
typedef struct _MIB_TCP6TABLE_OWNER_PID {
|
|
DWORD dwNumEntries;
|
|
MIB_TCP6ROW_OWNER_PID table[1];
|
|
} MIB_TCP6TABLE_OWNER_PID,*PMIB_TCP6TABLE_OWNER_PID;
|
|
typedef struct _MIB_TCP6TABLE_OWNER_MODULE {
|
|
DWORD dwNumEntries;
|
|
MIB_TCP6ROW_OWNER_MODULE table[1];
|
|
} MIB_TCP6TABLE_OWNER_MODULE,*PMIB_TCP6TABLE_OWNER_MODULE;
|
|
typedef struct _MIB_IPSTATS {
|
|
DWORD dwForwarding;
|
|
DWORD dwDefaultTTL;
|
|
DWORD dwInReceives;
|
|
DWORD dwInHdrErrors;
|
|
DWORD dwInAddrErrors;
|
|
DWORD dwForwDatagrams;
|
|
DWORD dwInUnknownProtos;
|
|
DWORD dwInDiscards;
|
|
DWORD dwInDelivers;
|
|
DWORD dwOutRequests;
|
|
DWORD dwRoutingDiscards;
|
|
DWORD dwOutDiscards;
|
|
DWORD dwOutNoRoutes;
|
|
DWORD dwReasmTimeout;
|
|
DWORD dwReasmReqds;
|
|
DWORD dwReasmOks;
|
|
DWORD dwReasmFails;
|
|
DWORD dwFragOks;
|
|
DWORD dwFragFails;
|
|
DWORD dwFragCreates;
|
|
DWORD dwNumIf;
|
|
DWORD dwNumAddr;
|
|
DWORD dwNumRoutes;
|
|
} MIB_IPSTATS,*PMIB_IPSTATS;
|
|
typedef struct _MIB_IPADDRROW {
|
|
DWORD dwAddr;
|
|
DWORD dwIndex;
|
|
DWORD dwMask;
|
|
DWORD dwBCastAddr;
|
|
DWORD dwReasmSize;
|
|
unsigned short unused1;
|
|
unsigned short wType;
|
|
} MIB_IPADDRROW,*PMIB_IPADDRROW;
|
|
typedef struct _MIB_IPADDRTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPADDRROW table[1];
|
|
} MIB_IPADDRTABLE,*PMIB_IPADDRTABLE;
|
|
typedef struct _MIB_IPFORWARDNUMBER {
|
|
DWORD dwValue;
|
|
} MIB_IPFORWARDNUMBER,*PMIB_IPFORWARDNUMBER;
|
|
typedef struct _MIB_IPFORWARDROW {
|
|
DWORD dwForwardDest;
|
|
DWORD dwForwardMask;
|
|
DWORD dwForwardPolicy;
|
|
DWORD dwForwardNextHop;
|
|
DWORD dwForwardIfIndex;
|
|
DWORD dwForwardType;
|
|
DWORD dwForwardProto;
|
|
DWORD dwForwardAge;
|
|
DWORD dwForwardNextHopAS;
|
|
DWORD dwForwardMetric1;
|
|
DWORD dwForwardMetric2;
|
|
DWORD dwForwardMetric3;
|
|
DWORD dwForwardMetric4;
|
|
DWORD dwForwardMetric5;
|
|
} MIB_IPFORWARDROW,*PMIB_IPFORWARDROW;
|
|
typedef struct _MIB_IPFORWARDTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPFORWARDROW table[1];
|
|
} MIB_IPFORWARDTABLE,*PMIB_IPFORWARDTABLE;
|
|
typedef struct _MIB_IPNETROW {
|
|
DWORD dwIndex;
|
|
DWORD dwPhysAddrLen;
|
|
BYTE bPhysAddr[8];
|
|
DWORD dwAddr;
|
|
DWORD dwType;
|
|
} MIB_IPNETROW,*PMIB_IPNETROW;
|
|
typedef struct _MIB_IPNETTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPNETROW table[1];
|
|
} MIB_IPNETTABLE,*PMIB_IPNETTABLE;
|
|
typedef struct _MIB_IPMCAST_OIF {
|
|
DWORD dwOutIfIndex;
|
|
DWORD dwNextHopAddr;
|
|
DWORD dwReserved;
|
|
DWORD dwReserved1;
|
|
} MIB_IPMCAST_OIF,*PMIB_IPMCAST_OIF;
|
|
typedef struct _MIB_IPMCAST_MFE {
|
|
DWORD dwGroup;
|
|
DWORD dwSource;
|
|
DWORD dwSrcMask;
|
|
DWORD dwUpStrmNgbr;
|
|
DWORD dwInIfIndex;
|
|
DWORD dwInIfProtocol;
|
|
DWORD dwRouteProtocol;
|
|
DWORD dwRouteNetwork;
|
|
DWORD dwRouteMask;
|
|
ULONG ulUpTime;
|
|
ULONG ulExpiryTime;
|
|
ULONG ulTimeOut;
|
|
ULONG ulNumOutIf;
|
|
DWORD fFlags;
|
|
DWORD dwReserved;
|
|
MIB_IPMCAST_OIF rgmioOutInfo[1];
|
|
} MIB_IPMCAST_MFE,*PMIB_IPMCAST_MFE;
|
|
typedef struct _MIB_MFE_TABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPMCAST_MFE table[1];
|
|
} MIB_MFE_TABLE,*PMIB_MFE_TABLE;
|
|
typedef struct _MIB_IPMCAST_OIF_STATS {
|
|
DWORD dwOutIfIndex;
|
|
DWORD dwNextHopAddr;
|
|
DWORD dwDialContext;
|
|
ULONG ulTtlTooLow;
|
|
ULONG ulFragNeeded;
|
|
ULONG ulOutPackets;
|
|
ULONG ulOutDiscards;
|
|
} MIB_IPMCAST_OIF_STATS,*PMIB_IPMCAST_OIF_STATS;
|
|
typedef struct _MIB_IPMCAST_MFE_STATS {
|
|
DWORD dwGroup;
|
|
DWORD dwSource;
|
|
DWORD dwSrcMask;
|
|
DWORD dwUpStrmNgbr;
|
|
DWORD dwInIfIndex;
|
|
DWORD dwInIfProtocol;
|
|
DWORD dwRouteProtocol;
|
|
DWORD dwRouteNetwork;
|
|
DWORD dwRouteMask;
|
|
ULONG ulUpTime;
|
|
ULONG ulExpiryTime;
|
|
ULONG ulNumOutIf;
|
|
ULONG ulInPkts;
|
|
ULONG ulInOctets;
|
|
ULONG ulPktsDifferentIf;
|
|
ULONG ulQueueOverflow;
|
|
MIB_IPMCAST_OIF_STATS rgmiosOutStats[1];
|
|
} MIB_IPMCAST_MFE_STATS,*PMIB_IPMCAST_MFE_STATS;
|
|
typedef struct _MIB_MFE_STATS_TABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPMCAST_MFE_STATS table[1];
|
|
} MIB_MFE_STATS_TABLE,*PMIB_MFE_STATS_TABLE;
|
|
typedef struct _MIB_IPMCAST_MFE_STATS_EX {
|
|
DWORD dwGroup;
|
|
DWORD dwSource;
|
|
DWORD dwSrcMask;
|
|
DWORD dwUpStrmNgbr;
|
|
DWORD dwInIfIndex;
|
|
DWORD dwInIfProtocol;
|
|
DWORD dwRouteProtocol;
|
|
DWORD dwRouteNetwork;
|
|
DWORD dwRouteMask;
|
|
ULONG ulUpTime;
|
|
ULONG ulExpiryTime;
|
|
ULONG ulNumOutIf;
|
|
ULONG ulInPkts;
|
|
ULONG ulInOctets;
|
|
ULONG ulPktsDifferentIf;
|
|
ULONG ulQueueOverflow;
|
|
ULONG ulUninitMfe;
|
|
ULONG ulNegativeMfe;
|
|
ULONG ulInDiscards;
|
|
ULONG ulInHdrErrors;
|
|
ULONG ulTotalOutPackets;
|
|
MIB_IPMCAST_OIF_STATS rgmiosOutStats[1];
|
|
} MIB_IPMCAST_MFE_STATS_EX,*PMIB_IPMCAST_MFE_STATS_EX;
|
|
typedef struct _MIB_MFE_STATS_TABLE_EX {
|
|
DWORD dwNumEntries;
|
|
MIB_IPMCAST_MFE_STATS_EX table[1];
|
|
} MIB_MFE_STATS_TABLE_EX,*PMIB_MFE_STATS_TABLE_EX;
|
|
typedef struct _MIB_IPMCAST_GLOBAL {
|
|
DWORD dwEnable;
|
|
} MIB_IPMCAST_GLOBAL,*PMIB_IPMCAST_GLOBAL;
|
|
typedef struct _MIB_IPMCAST_IF_ENTRY {
|
|
DWORD dwIfIndex;
|
|
DWORD dwTtl;
|
|
DWORD dwProtocol;
|
|
DWORD dwRateLimit;
|
|
ULONG ulInMcastOctets;
|
|
ULONG ulOutMcastOctets;
|
|
} MIB_IPMCAST_IF_ENTRY,*PMIB_IPMCAST_IF_ENTRY;
|
|
typedef struct _MIB_IPMCAST_IF_TABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPMCAST_IF_ENTRY table[1];
|
|
} MIB_IPMCAST_IF_TABLE,*PMIB_IPMCAST_IF_TABLE;
|
|
typedef struct _MIB_IPMCAST_BOUNDARY {
|
|
DWORD dwIfIndex;
|
|
DWORD dwGroupAddress;
|
|
DWORD dwGroupMask;
|
|
DWORD dwStatus;
|
|
} MIB_IPMCAST_BOUNDARY,*PMIB_IPMCAST_BOUNDARY;
|
|
typedef struct _MIB_IPMCAST_BOUNDARY_TABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPMCAST_BOUNDARY table[1];
|
|
} MIB_IPMCAST_BOUNDARY_TABLE,*PMIB_IPMCAST_BOUNDARY_TABLE;
|
|
typedef struct {
|
|
DWORD dwGroupAddress;
|
|
DWORD dwGroupMask;
|
|
} MIB_BOUNDARYROW,*PMIB_BOUNDARYROW;
|
|
typedef struct {
|
|
DWORD dwTtl;
|
|
DWORD dwRateLimit;
|
|
} MIB_MCAST_LIMIT_ROW,*PMIB_MCAST_LIMIT_ROW;
|
|
typedef WCHAR SN_CHAR;
|
|
typedef SN_CHAR SCOPE_NAME_BUFFER[255 +1],*SCOPE_NAME;
|
|
typedef struct _MIB_IPMCAST_SCOPE {
|
|
DWORD dwGroupAddress;
|
|
DWORD dwGroupMask;
|
|
SCOPE_NAME_BUFFER snNameBuffer;
|
|
DWORD dwStatus;
|
|
} MIB_IPMCAST_SCOPE,*PMIB_IPMCAST_SCOPE;
|
|
typedef struct _MIB_IPDESTROW {
|
|
__extension__ union {
|
|
DWORD dwForwardDest;
|
|
DWORD dwForwardMask;
|
|
DWORD dwForwardPolicy;
|
|
DWORD dwForwardNextHop;
|
|
DWORD dwForwardIfIndex;
|
|
DWORD dwForwardType;
|
|
DWORD dwForwardProto;
|
|
DWORD dwForwardAge;
|
|
DWORD dwForwardNextHopAS;
|
|
DWORD dwForwardMetric1;
|
|
DWORD dwForwardMetric2;
|
|
DWORD dwForwardMetric3;
|
|
DWORD dwForwardMetric4;
|
|
DWORD dwForwardMetric5;
|
|
};
|
|
DWORD dwForwardPreference;
|
|
DWORD dwForwardViewSet;
|
|
} MIB_IPDESTROW,*PMIB_IPDESTROW;
|
|
typedef struct _MIB_IPDESTTABLE {
|
|
DWORD dwNumEntries;
|
|
MIB_IPDESTROW table[1];
|
|
} MIB_IPDESTTABLE,*PMIB_IPDESTTABLE;
|
|
typedef struct _MIB_BEST_IF {
|
|
DWORD dwDestAddr;
|
|
DWORD dwIfIndex;
|
|
} MIB_BEST_IF,*PMIB_BEST_IF;
|
|
typedef struct _MIB_PROXYARP {
|
|
DWORD dwAddress;
|
|
DWORD dwMask;
|
|
DWORD dwIfIndex;
|
|
} MIB_PROXYARP,*PMIB_PROXYARP;
|
|
typedef struct _MIB_IFSTATUS {
|
|
DWORD dwIfIndex;
|
|
DWORD dwAdminStatus;
|
|
DWORD dwOperationalStatus;
|
|
WINBOOL bMHbeatActive;
|
|
WINBOOL bMHbeatAlive;
|
|
} MIB_IFSTATUS,*PMIB_IFSTATUS;
|
|
typedef struct _MIB_ROUTESTATE {
|
|
WINBOOL bRoutesSetToStack;
|
|
} MIB_ROUTESTATE,*PMIB_ROUTESTATE;
|
|
typedef struct _MIB_OPAQUE_INFO {
|
|
DWORD dwId;
|
|
__extension__ union {
|
|
ULONGLONG ullAlign;
|
|
BYTE rgbyData[1];
|
|
};
|
|
} MIB_OPAQUE_INFO,*PMIB_OPAQUE_INFO;
|
|
typedef struct _TCPIP_OWNER_MODULE_BASIC_INFO {
|
|
PWCHAR pModuleName;
|
|
PWCHAR pModulePath;
|
|
} TCPIP_OWNER_MODULE_BASIC_INFO, *PTCPIP_OWNER_MODULE_BASIC_INFO;
|
|
typedef enum _UDP_TABLE_CLASS {
|
|
UDP_TABLE_BASIC,
|
|
UDP_TABLE_OWNER_PID,
|
|
UDP_TABLE_OWNER_MODULE
|
|
} UDP_TABLE_CLASS, *PUDP_TABLE_CLASS;
|
|
typedef enum _TCPIP_OWNER_MODULE_INFO_CLASS {
|
|
TCPIP_OWNER_MODULE_INFO_BASIC
|
|
} TCPIP_OWNER_MODULE_INFO_CLASS, *PTCPIP_OWNER_MODULE_INFO_CLASS;
|
|
typedef ULONG IPAddr;
|
|
typedef ULONG IPMask;
|
|
typedef ULONG IP_STATUS;
|
|
typedef struct in6_addr IPv6Addr;
|
|
typedef struct ip_option_information {
|
|
UCHAR Ttl;
|
|
UCHAR Tos;
|
|
UCHAR Flags;
|
|
UCHAR OptionsSize;
|
|
PUCHAR OptionsData;
|
|
} IP_OPTION_INFORMATION,*PIP_OPTION_INFORMATION;
|
|
typedef struct ip_option_information32 {
|
|
UCHAR Ttl;
|
|
UCHAR Tos;
|
|
UCHAR Flags;
|
|
UCHAR OptionsSize;
|
|
UCHAR *OptionsData;
|
|
} IP_OPTION_INFORMATION32,*PIP_OPTION_INFORMATION32;
|
|
typedef struct icmp_echo_reply {
|
|
IPAddr Address;
|
|
ULONG Status;
|
|
ULONG RoundTripTime;
|
|
USHORT DataSize;
|
|
USHORT Reserved;
|
|
PVOID Data;
|
|
struct ip_option_information Options;
|
|
} ICMP_ECHO_REPLY,*PICMP_ECHO_REPLY;
|
|
typedef struct icmp_echo_reply32 {
|
|
IPAddr Address;
|
|
ULONG Status;
|
|
ULONG RoundTripTime;
|
|
USHORT DataSize;
|
|
USHORT Reserved;
|
|
void *Data;
|
|
struct ip_option_information32 Options;
|
|
} ICMP_ECHO_REPLY32,*PICMP_ECHO_REPLY32;
|
|
typedef struct arp_send_reply {
|
|
IPAddr DestAddress;
|
|
IPAddr SrcAddress;
|
|
} ARP_SEND_REPLY,*PARP_SEND_REPLY;
|
|
typedef struct tcp_reserve_port_range {
|
|
USHORT UpperRange;
|
|
USHORT LowerRange;
|
|
} TCP_RESERVE_PORT_RANGE,*PTCP_RESERVE_PORT_RANGE;
|
|
typedef struct _IP_ADAPTER_INDEX_MAP {
|
|
ULONG Index;
|
|
WCHAR Name[128];
|
|
} IP_ADAPTER_INDEX_MAP,*PIP_ADAPTER_INDEX_MAP;
|
|
typedef struct _IP_INTERFACE_INFO {
|
|
LONG NumAdapters;
|
|
IP_ADAPTER_INDEX_MAP Adapter[1];
|
|
} IP_INTERFACE_INFO,*PIP_INTERFACE_INFO;
|
|
typedef struct _IP_UNIDIRECTIONAL_ADAPTER_ADDRESS {
|
|
ULONG NumAdapters;
|
|
IPAddr Address[1];
|
|
} IP_UNIDIRECTIONAL_ADAPTER_ADDRESS,*PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS;
|
|
typedef struct _IP_ADAPTER_ORDER_MAP {
|
|
ULONG NumAdapters;
|
|
ULONG AdapterOrder[1];
|
|
} IP_ADAPTER_ORDER_MAP,*PIP_ADAPTER_ORDER_MAP;
|
|
typedef struct _IP_MCAST_COUNTER_INFO {
|
|
ULONG64 InMcastOctets;
|
|
ULONG64 OutMcastOctets;
|
|
ULONG64 InMcastPkts;
|
|
ULONG64 OutMcastPkts;
|
|
} IP_MCAST_COUNTER_INFO,*PIP_MCAST_COUNTER_INFO;
|
|
typedef struct _IPV6_ADDRESS_EX {
|
|
USHORT sin6_port;
|
|
ULONG sin6_flowinfo;
|
|
USHORT sin6_addr[8];
|
|
ULONG sin6_scope_id;
|
|
} IPV6_ADDRESS_EX, *PIPV6_ADDRESS_EX;
|
|
#pragma pack(push,_CRT_PACKING)
|
|
typedef long clock_t;
|
|
struct tm {
|
|
int tm_sec;
|
|
int tm_min;
|
|
int tm_hour;
|
|
int tm_mday;
|
|
int tm_mon;
|
|
int tm_year;
|
|
int tm_wday;
|
|
int tm_yday;
|
|
int tm_isdst;
|
|
};
|
|
extern __attribute__ ((__dllimport__)) int _daylight;
|
|
extern __attribute__ ((__dllimport__)) long _dstbias;
|
|
extern __attribute__ ((__dllimport__)) long _timezone;
|
|
extern __attribute__ ((__dllimport__)) char * _tzname[2];
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_daylight(int *_Daylight);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_dstbias(long *_Daylight_savings_bias);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_timezone(long *_Timezone);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _get_tzname(size_t *_ReturnValue,char *_Buffer,size_t _SizeInBytes,int _Index);
|
|
char *__attribute__((__cdecl__)) asctime(const struct tm *_Tm) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) asctime_s (char *_Buf,size_t _SizeInWords,const struct tm *_Tm);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ctime32(const __time32_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _ctime32_s (char *_Buf,size_t _SizeInBytes,const __time32_t *_Time);
|
|
clock_t __attribute__((__cdecl__)) clock(void);
|
|
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _difftime32(__time32_t _Time1,__time32_t _Time2);
|
|
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _gmtime32(const __time32_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _gmtime32_s (struct tm *_Tm,const __time32_t *_Time);
|
|
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _localtime32(const __time32_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _localtime32_s (struct tm *_Tm,const __time32_t *_Time);
|
|
size_t __attribute__((__cdecl__)) strftime(char * __restrict__ _Buf,size_t _SizeInBytes,const char * __restrict__ _Format,const struct tm * __restrict__ _Tm);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _strftime_l(char * __restrict__ _Buf,size_t _Max_size,const char * __restrict__ _Format,const struct tm * __restrict__ _Tm,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strdate(char *_Buffer) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _strdate_s (char *_Buf,size_t _SizeInBytes);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _strtime(char *_Buffer) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _strtime_s (char *_Buf ,size_t _SizeInBytes);
|
|
__attribute__ ((__dllimport__)) __time32_t __attribute__((__cdecl__)) _time32(__time32_t *_Time);
|
|
__attribute__ ((__dllimport__)) __time32_t __attribute__((__cdecl__)) _mktime32(struct tm *_Tm);
|
|
__attribute__ ((__dllimport__)) __time32_t __attribute__((__cdecl__)) _mkgmtime32(struct tm *_Tm);
|
|
void __attribute__((__cdecl__)) tzset(void) ;
|
|
__attribute__ ((__dllimport__))
|
|
void __attribute__((__cdecl__)) _tzset(void);
|
|
__attribute__ ((__dllimport__)) double __attribute__((__cdecl__)) _difftime64(__time64_t _Time1,__time64_t _Time2);
|
|
__attribute__ ((__dllimport__)) char *__attribute__((__cdecl__)) _ctime64(const __time64_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _ctime64_s (char *_Buf,size_t _SizeInBytes,const __time64_t *_Time);
|
|
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _gmtime64(const __time64_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _gmtime64_s (struct tm *_Tm,const __time64_t *_Time);
|
|
__attribute__ ((__dllimport__)) struct tm *__attribute__((__cdecl__)) _localtime64(const __time64_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _localtime64_s (struct tm *_Tm,const __time64_t *_Time);
|
|
__attribute__ ((__dllimport__)) __time64_t __attribute__((__cdecl__)) _mktime64(struct tm *_Tm);
|
|
__attribute__ ((__dllimport__)) __time64_t __attribute__((__cdecl__)) _mkgmtime64(struct tm *_Tm);
|
|
__attribute__ ((__dllimport__)) __time64_t __attribute__((__cdecl__)) _time64(__time64_t *_Time);
|
|
unsigned __attribute__((__cdecl__)) _getsystime(struct tm *_Tm);
|
|
unsigned __attribute__((__cdecl__)) _setsystime(struct tm *_Tm,unsigned _MilliSec);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wasctime(const struct tm *_Tm);
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wasctime_s (wchar_t *_Buf,size_t _SizeInWords,const struct tm *_Tm);
|
|
wchar_t *__attribute__((__cdecl__)) _wctime32(const __time32_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wctime32_s (wchar_t *_Buf,size_t _SizeInWords,const __time32_t *_Time);
|
|
size_t __attribute__((__cdecl__)) wcsftime(wchar_t * __restrict__ _Buf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,const struct tm * __restrict__ _Tm);
|
|
__attribute__ ((__dllimport__)) size_t __attribute__((__cdecl__)) _wcsftime_l(wchar_t * __restrict__ _Buf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,const struct tm * __restrict__ _Tm,_locale_t _Locale);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wstrdate(wchar_t *_Buffer) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wstrdate_s (wchar_t *_Buf,size_t _SizeInWords);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wstrtime(wchar_t *_Buffer) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wstrtime_s (wchar_t *_Buf,size_t _SizeInWords);
|
|
__attribute__ ((__dllimport__)) wchar_t *__attribute__((__cdecl__)) _wctime64(const __time64_t *_Time) ;
|
|
__attribute__((dllimport)) errno_t __attribute__((__cdecl__)) _wctime64_s (wchar_t *_Buf,size_t _SizeInWords,const __time64_t *_Time);
|
|
wchar_t *__attribute__((__cdecl__)) _wctime(const time_t *) ;
|
|
errno_t __attribute__((__cdecl__)) _wctime_s(wchar_t *, size_t, const time_t *);
|
|
static __inline time_t __attribute__((__cdecl__)) time(time_t *_Time) { return _time64(_Time); }
|
|
static __inline double __attribute__((__cdecl__)) difftime(time_t _Time1,time_t _Time2) { return _difftime64(_Time1,_Time2); }
|
|
static __inline struct tm *__attribute__((__cdecl__)) localtime(const time_t *_Time) { return _localtime64(_Time); }
|
|
static __inline errno_t __attribute__((__cdecl__)) localtime_s(struct tm *_Tm,const time_t *_Time) { return _localtime64_s(_Tm,_Time); }
|
|
static __inline struct tm *__attribute__((__cdecl__)) gmtime(const time_t *_Time) { return _gmtime64(_Time); }
|
|
static __inline errno_t __attribute__((__cdecl__)) gmtime_s(struct tm *_Tm, const time_t *_Time) { return _gmtime64_s(_Tm, _Time); }
|
|
static __inline char *__attribute__((__cdecl__)) ctime(const time_t *_Time) { return _ctime64(_Time); }
|
|
static __inline errno_t __attribute__((__cdecl__)) ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) { return _ctime64_s(_Buf,_SizeInBytes,_Time); }
|
|
static __inline time_t __attribute__((__cdecl__)) mktime(struct tm *_Tm) { return _mktime64(_Tm); }
|
|
static __inline time_t __attribute__((__cdecl__)) _mkgmtime(struct tm *_Tm) { return _mkgmtime64(_Tm); }
|
|
__attribute__ ((__dllimport__)) extern int daylight ;
|
|
__attribute__ ((__dllimport__)) extern long timezone ;
|
|
__attribute__ ((__dllimport__)) extern char *tzname[2] ;
|
|
void __attribute__((__cdecl__)) tzset(void) ;
|
|
struct timezone {
|
|
int tz_minuteswest;
|
|
int tz_dsttime;
|
|
};
|
|
extern int __attribute__((__cdecl__)) mingw_gettimeofday (struct timeval *p, struct timezone *z);
|
|
#pragma pack(pop)
|
|
#pragma pack(push,_CRT_PACKING)
|
|
struct __timeb32 {
|
|
__time32_t time;
|
|
unsigned short millitm;
|
|
short timezone;
|
|
short dstflag;
|
|
};
|
|
struct timeb {
|
|
time_t time;
|
|
unsigned short millitm;
|
|
short timezone;
|
|
short dstflag;
|
|
};
|
|
struct __timeb64 {
|
|
__time64_t time;
|
|
unsigned short millitm;
|
|
short timezone;
|
|
short dstflag;
|
|
};
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _ftime64(struct __timeb64 *_Time);
|
|
__attribute__ ((__dllimport__)) void __attribute__((__cdecl__)) _ftime32(struct __timeb32 *_Time);
|
|
struct timespec {
|
|
time_t tv_sec;
|
|
long tv_nsec;
|
|
};
|
|
struct itimerspec {
|
|
struct timespec it_interval;
|
|
struct timespec it_value;
|
|
};
|
|
void __attribute__((__cdecl__)) ftime (struct timeb *);
|
|
#pragma pack(pop)
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ftime32_s(struct __timeb32 *_Time);
|
|
__attribute__ ((__dllimport__)) errno_t __attribute__((__cdecl__)) _ftime64_s(struct __timeb64 *_Time);
|
|
typedef int clockid_t;
|
|
|
|
int __attribute__((__cdecl__)) nanosleep(const struct timespec *request, struct timespec *remain);
|
|
int __attribute__((__cdecl__)) clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *request, struct timespec *remain);
|
|
int __attribute__((__cdecl__)) clock_getres(clockid_t clock_id, struct timespec *res);
|
|
int __attribute__((__cdecl__)) clock_gettime(clockid_t clock_id, struct timespec *tp);
|
|
int __attribute__((__cdecl__)) clock_settime(clockid_t clock_id, const struct timespec *tp);
|
|
|
|
typedef UINT32 NET_IF_COMPARTMENT_ID, *PNET_IF_COMPARTMENT_ID;
|
|
typedef ULONG NET_IFINDEX, *PNET_IFINDEX;
|
|
typedef UINT16 NET_IFTYPE, *PNET_IFTYPE;
|
|
typedef NET_IFINDEX IF_INDEX, *PIF_INDEX;
|
|
typedef GUID NET_IF_NETWORK_GUID;
|
|
typedef enum _IF_OPER_STATUS {
|
|
IfOperStatusUp = 1,
|
|
IfOperStatusDown,
|
|
IfOperStatusTesting,
|
|
IfOperStatusUnknown,
|
|
IfOperStatusDormant,
|
|
IfOperStatusNotPresent,
|
|
IfOperStatusLowerLayerDown
|
|
} IF_OPER_STATUS;
|
|
typedef enum _NET_IF_OPER_STATUS {
|
|
NET_IF_OPER_STATUS_UP = 1,
|
|
NET_IF_OPER_STATUS_DOWN,
|
|
NET_IF_OPER_STATUS_TESTING,
|
|
NET_IF_OPER_STATUS_UNKNOWN,
|
|
NET_IF_OPER_STATUS_DORMANT,
|
|
NET_IF_OPER_STATUS_NOT_PRESENT,
|
|
NET_IF_OPER_STATUS_LOWER_LAYER_DOWN
|
|
} NET_IF_OPER_STATUS, *PNET_IF_OPER_STATUS;
|
|
typedef enum _NET_IF_ADMIN_STATUS {
|
|
NET_IF_ADMIN_STATUS_UP = 1,
|
|
NET_IF_ADMIN_STATUS_DOWN,
|
|
NET_IF_ADMIN_STATUS_TESTING
|
|
} NET_IF_ADMIN_STATUS, *PNET_IF_ADMIN_STATUS;
|
|
typedef enum _NET_IF_MEDIA_CONNECT_STATE {
|
|
MediaConnectStateUnknown,
|
|
MediaConnectStateConnected,
|
|
MediaConnectStateDisconnected
|
|
} NET_IF_MEDIA_CONNECT_STATE, *PNET_IF_MEDIA_CONNECT_STATE;
|
|
typedef enum _NET_IF_ACCESS_TYPE {
|
|
NET_IF_ACCESS_LOOPBACK = 1,
|
|
NET_IF_ACCESS_BROADCAST,
|
|
NET_IF_ACCESS_POINT_TO_POINT,
|
|
NET_IF_ACCESS_POINT_TO_MULTI_POINT,
|
|
NET_IF_ACCESS_MAXIMUM
|
|
} NET_IF_ACCESS_TYPE, *PNET_IF_ACCESS_TYPE;
|
|
typedef enum _NET_IF_CONNECTION_TYPE {
|
|
NET_IF_CONNECTION_DEDICATED = 1,
|
|
NET_IF_CONNECTION_PASSIVE,
|
|
NET_IF_CONNECTION_DEMAND,
|
|
NET_IF_CONNECTION_MAXIMUM
|
|
} NET_IF_CONNECTION_TYPE, *PNET_IF_CONNECTION_TYPE;
|
|
typedef enum _NET_IF_DIRECTION_TYPE {
|
|
NET_IF_DIRECTION_SENDRECEIVE,
|
|
NET_IF_DIRECTION_SENDONLY,
|
|
NET_IF_DIRECTION_RECEIVEONLY,
|
|
NET_IF_DIRECTION_MAXIMUM
|
|
} NET_IF_DIRECTION_TYPE, *PNET_IF_DIRECTION_TYPE;
|
|
typedef enum _NET_IF_MEDIA_DUPLEX_STATE {
|
|
MediaDuplexStateUnknown,
|
|
MediaDuplexStateHalf,
|
|
MediaDuplexStateFull
|
|
} NET_IF_MEDIA_DUPLEX_STATE, *PNET_IF_MEDIA_DUPLEX_STATE;
|
|
typedef enum _TUNNEL_TYPE {
|
|
TUNNEL_TYPE_NONE = 0,
|
|
TUNNEL_TYPE_OTHER = 1,
|
|
TUNNEL_TYPE_DIRECT = 2,
|
|
TUNNEL_TYPE_6TO4 = 11,
|
|
TUNNEL_TYPE_ISATAP = 13,
|
|
TUNNEL_TYPE_TEREDO = 14,
|
|
TUNNEL_TYPE_IPHTTPS = 15
|
|
} TUNNEL_TYPE, *PTUNNEL_TYPE;
|
|
typedef union _NET_LUID {
|
|
ULONG64 Value;
|
|
__extension__ struct {
|
|
ULONG64 Reserved :24;
|
|
ULONG64 NetLuidIndex :24;
|
|
ULONG64 IfType :16;
|
|
} Info;
|
|
} NET_LUID, *PNET_LUID;
|
|
typedef NET_LUID IF_LUID, *PIF_LUID;
|
|
typedef struct _IF_COUNTED_STRING_LH {
|
|
USHORT Length;
|
|
WCHAR String[256 + 1];
|
|
} IF_COUNTED_STRING_LH, *PIF_COUNTED_STRING_LH;
|
|
typedef IF_COUNTED_STRING_LH IF_COUNTED_STRING;
|
|
typedef IF_COUNTED_STRING *PIF_COUNTED_STRING;
|
|
typedef struct _IF_PHYSICAL_ADDRESS_LH {
|
|
USHORT Length;
|
|
UCHAR Address[32];
|
|
} IF_PHYSICAL_ADDRESS_LH, *PIF_PHYSICAL_ADDRESS_LH;
|
|
typedef IF_PHYSICAL_ADDRESS_LH IF_PHYSICAL_ADDRESS;
|
|
typedef IF_PHYSICAL_ADDRESS *PIF_PHYSICAL_ADDRESS;
|
|
typedef struct {
|
|
char String[4*4];
|
|
} IP_ADDRESS_STRING,*PIP_ADDRESS_STRING,IP_MASK_STRING,*PIP_MASK_STRING;
|
|
typedef struct _IP_ADDR_STRING {
|
|
struct _IP_ADDR_STRING *Next;
|
|
IP_ADDRESS_STRING IpAddress;
|
|
IP_MASK_STRING IpMask;
|
|
DWORD Context;
|
|
} IP_ADDR_STRING,*PIP_ADDR_STRING;
|
|
typedef struct _IP_ADAPTER_INFO {
|
|
struct _IP_ADAPTER_INFO *Next;
|
|
DWORD ComboIndex;
|
|
char AdapterName[256 + 4];
|
|
char Description[128 + 4];
|
|
UINT AddressLength;
|
|
BYTE Address[8];
|
|
DWORD Index;
|
|
UINT Type;
|
|
UINT DhcpEnabled;
|
|
PIP_ADDR_STRING CurrentIpAddress;
|
|
IP_ADDR_STRING IpAddressList;
|
|
IP_ADDR_STRING GatewayList;
|
|
IP_ADDR_STRING DhcpServer;
|
|
WINBOOL HaveWins;
|
|
IP_ADDR_STRING PrimaryWinsServer;
|
|
IP_ADDR_STRING SecondaryWinsServer;
|
|
time_t LeaseObtained;
|
|
time_t LeaseExpires;
|
|
} IP_ADAPTER_INFO,*PIP_ADAPTER_INFO;
|
|
typedef NL_PREFIX_ORIGIN IP_PREFIX_ORIGIN;
|
|
typedef NL_SUFFIX_ORIGIN IP_SUFFIX_ORIGIN;
|
|
typedef NL_DAD_STATE IP_DAD_STATE;
|
|
typedef struct _IP_ADAPTER_UNICAST_ADDRESS_XP {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Flags;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_UNICAST_ADDRESS_XP *Next;
|
|
SOCKET_ADDRESS Address;
|
|
IP_PREFIX_ORIGIN PrefixOrigin;
|
|
IP_SUFFIX_ORIGIN SuffixOrigin;
|
|
IP_DAD_STATE DadState;
|
|
ULONG ValidLifetime;
|
|
ULONG PreferredLifetime;
|
|
ULONG LeaseLifetime;
|
|
} IP_ADAPTER_UNICAST_ADDRESS_XP,*PIP_ADAPTER_UNICAST_ADDRESS_XP;
|
|
typedef struct _IP_ADAPTER_UNICAST_ADDRESS_LH {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Flags;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_UNICAST_ADDRESS_LH *Next;
|
|
SOCKET_ADDRESS Address;
|
|
IP_PREFIX_ORIGIN PrefixOrigin;
|
|
IP_SUFFIX_ORIGIN SuffixOrigin;
|
|
IP_DAD_STATE DadState;
|
|
ULONG ValidLifetime;
|
|
ULONG PreferredLifetime;
|
|
ULONG LeaseLifetime;
|
|
UINT8 OnLinkPrefixLength;
|
|
} IP_ADAPTER_UNICAST_ADDRESS_LH,*PIP_ADAPTER_UNICAST_ADDRESS_LH;
|
|
typedef IP_ADAPTER_UNICAST_ADDRESS_XP IP_ADAPTER_UNICAST_ADDRESS;
|
|
typedef IP_ADAPTER_UNICAST_ADDRESS_XP *PIP_ADAPTER_UNICAST_ADDRESS;
|
|
typedef struct _IP_ADAPTER_ANYCAST_ADDRESS_XP {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Flags;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_ANYCAST_ADDRESS_XP *Next;
|
|
SOCKET_ADDRESS Address;
|
|
} IP_ADAPTER_ANYCAST_ADDRESS_XP,*PIP_ADAPTER_ANYCAST_ADDRESS_XP;
|
|
typedef IP_ADAPTER_ANYCAST_ADDRESS_XP IP_ADAPTER_ANYCAST_ADDRESS;
|
|
typedef IP_ADAPTER_ANYCAST_ADDRESS_XP *PIP_ADAPTER_ANYCAST_ADDRESS;
|
|
typedef struct _IP_ADAPTER_MULTICAST_ADDRESS_XP {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Flags;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_MULTICAST_ADDRESS_XP *Next;
|
|
SOCKET_ADDRESS Address;
|
|
} IP_ADAPTER_MULTICAST_ADDRESS_XP,*PIP_ADAPTER_MULTICAST_ADDRESS_XP;
|
|
typedef IP_ADAPTER_MULTICAST_ADDRESS_XP IP_ADAPTER_MULTICAST_ADDRESS;
|
|
typedef IP_ADAPTER_MULTICAST_ADDRESS_XP *PIP_ADAPTER_MULTICAST_ADDRESS;
|
|
typedef struct _IP_ADAPTER_DNS_SERVER_ADDRESS_XP {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Reserved;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_DNS_SERVER_ADDRESS_XP *Next;
|
|
SOCKET_ADDRESS Address;
|
|
} IP_ADAPTER_DNS_SERVER_ADDRESS_XP,*PIP_ADAPTER_DNS_SERVER_ADDRESS_XP;
|
|
typedef IP_ADAPTER_DNS_SERVER_ADDRESS_XP IP_ADAPTER_DNS_SERVER_ADDRESS;
|
|
typedef IP_ADAPTER_DNS_SERVER_ADDRESS_XP *PIP_ADAPTER_DNS_SERVER_ADDRESS;
|
|
typedef struct _IP_ADAPTER_PREFIX_XP {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Flags;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_PREFIX_XP *Next;
|
|
SOCKET_ADDRESS Address;
|
|
ULONG PrefixLength;
|
|
} IP_ADAPTER_PREFIX_XP,*PIP_ADAPTER_PREFIX_XP;
|
|
typedef IP_ADAPTER_PREFIX_XP IP_ADAPTER_PREFIX;
|
|
typedef IP_ADAPTER_PREFIX_XP *PIP_ADAPTER_PREFIX;
|
|
typedef struct _IP_ADAPTER_WINS_SERVER_ADDRESS_LH {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Reserved;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_WINS_SERVER_ADDRESS_LH *Next;
|
|
SOCKET_ADDRESS Address;
|
|
} IP_ADAPTER_WINS_SERVER_ADDRESS_LH,*PIP_ADAPTER_WINS_SERVER_ADDRESS_LH;
|
|
typedef struct _IP_ADAPTER_GATEWAY_ADDRESS_LH {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD Reserved;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_GATEWAY_ADDRESS_LH *Next;
|
|
SOCKET_ADDRESS Address;
|
|
} IP_ADAPTER_GATEWAY_ADDRESS_LH,*PIP_ADAPTER_GATEWAY_ADDRESS_LH;
|
|
typedef struct _IP_ADAPTER_DNS_SUFFIX {
|
|
struct _IP_ADAPTER_DNS_SUFFIX *Next;
|
|
WCHAR String[256];
|
|
} IP_ADAPTER_DNS_SUFFIX, *PIP_ADAPTER_DNS_SUFFIX;
|
|
typedef struct _IP_ADAPTER_ADDRESSES_LH {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
IF_INDEX IfIndex;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_ADDRESSES_LH *Next;
|
|
PCHAR AdapterName;
|
|
PIP_ADAPTER_UNICAST_ADDRESS_LH FirstUnicastAddress;
|
|
PIP_ADAPTER_ANYCAST_ADDRESS_XP FirstAnycastAddress;
|
|
PIP_ADAPTER_MULTICAST_ADDRESS_XP FirstMulticastAddress;
|
|
PIP_ADAPTER_DNS_SERVER_ADDRESS_XP FirstDnsServerAddress;
|
|
PWCHAR DnsSuffix;
|
|
PWCHAR Description;
|
|
PWCHAR FriendlyName;
|
|
BYTE PhysicalAddress[8];
|
|
ULONG PhysicalAddressLength;
|
|
__extension__ union {
|
|
ULONG Flags;
|
|
__extension__ struct {
|
|
ULONG DdnsEnabled : 1;
|
|
ULONG RegisterAdapterSuffix : 1;
|
|
ULONG Dhcpv4Enabled : 1;
|
|
ULONG ReceiveOnly : 1;
|
|
ULONG NoMulticast : 1;
|
|
ULONG Ipv6OtherStatefulConfig : 1;
|
|
ULONG NetbiosOverTcpipEnabled : 1;
|
|
ULONG Ipv4Enabled : 1;
|
|
ULONG Ipv6Enabled : 1;
|
|
ULONG Ipv6ManagedAddressConfigurationSupported : 1;
|
|
};
|
|
};
|
|
ULONG Mtu;
|
|
IFTYPE IfType;
|
|
IF_OPER_STATUS OperStatus;
|
|
IF_INDEX Ipv6IfIndex;
|
|
ULONG ZoneIndices[16];
|
|
PIP_ADAPTER_PREFIX_XP FirstPrefix;
|
|
ULONG64 TransmitLinkSpeed;
|
|
ULONG64 ReceiveLinkSpeed;
|
|
PIP_ADAPTER_WINS_SERVER_ADDRESS_LH FirstWinsServerAddress;
|
|
PIP_ADAPTER_GATEWAY_ADDRESS_LH FirstGatewayAddress;
|
|
ULONG Ipv4Metric;
|
|
ULONG Ipv6Metric;
|
|
IF_LUID Luid;
|
|
SOCKET_ADDRESS Dhcpv4Server;
|
|
NET_IF_COMPARTMENT_ID CompartmentId;
|
|
NET_IF_NETWORK_GUID NetworkGuid;
|
|
NET_IF_CONNECTION_TYPE ConnectionType;
|
|
TUNNEL_TYPE TunnelType;
|
|
SOCKET_ADDRESS Dhcpv6Server;
|
|
BYTE Dhcpv6ClientDuid[130];
|
|
ULONG Dhcpv6ClientDuidLength;
|
|
ULONG Dhcpv6Iaid;
|
|
} IP_ADAPTER_ADDRESSES_LH, *PIP_ADAPTER_ADDRESSES_LH;
|
|
typedef struct _IP_ADAPTER_ADDRESSES_XP {
|
|
__extension__ union {
|
|
ULONGLONG Alignment;
|
|
__extension__ struct {
|
|
ULONG Length;
|
|
DWORD IfIndex;
|
|
};
|
|
};
|
|
struct _IP_ADAPTER_ADDRESSES_XP *Next;
|
|
PCHAR AdapterName;
|
|
PIP_ADAPTER_UNICAST_ADDRESS_XP FirstUnicastAddress;
|
|
PIP_ADAPTER_ANYCAST_ADDRESS_XP FirstAnycastAddress;
|
|
PIP_ADAPTER_MULTICAST_ADDRESS_XP FirstMulticastAddress;
|
|
PIP_ADAPTER_DNS_SERVER_ADDRESS_XP FirstDnsServerAddress;
|
|
PWCHAR DnsSuffix;
|
|
PWCHAR Description;
|
|
PWCHAR FriendlyName;
|
|
BYTE PhysicalAddress[8];
|
|
DWORD PhysicalAddressLength;
|
|
DWORD Flags;
|
|
DWORD Mtu;
|
|
DWORD IfType;
|
|
IF_OPER_STATUS OperStatus;
|
|
DWORD Ipv6IfIndex;
|
|
DWORD ZoneIndices[16];
|
|
PIP_ADAPTER_PREFIX_XP FirstPrefix;
|
|
} IP_ADAPTER_ADDRESSES_XP,*PIP_ADAPTER_ADDRESSES_XP;
|
|
typedef IP_ADAPTER_ADDRESSES_XP IP_ADAPTER_ADDRESSES;
|
|
typedef IP_ADAPTER_ADDRESSES_XP *PIP_ADAPTER_ADDRESSES;
|
|
typedef struct _IP_PER_ADAPTER_INFO {
|
|
UINT AutoconfigEnabled;
|
|
UINT AutoconfigActive;
|
|
PIP_ADDR_STRING CurrentDnsServer;
|
|
IP_ADDR_STRING DnsServerList;
|
|
} IP_PER_ADAPTER_INFO,*PIP_PER_ADAPTER_INFO;
|
|
typedef struct {
|
|
char HostName[128 + 4];
|
|
char DomainName[128 + 4];
|
|
PIP_ADDR_STRING CurrentDnsServer;
|
|
IP_ADDR_STRING DnsServerList;
|
|
UINT NodeType;
|
|
char ScopeId[256 + 4];
|
|
UINT EnableRouting;
|
|
UINT EnableProxy;
|
|
UINT EnableDns;
|
|
} FIXED_INFO,*PFIXED_INFO;
|
|
typedef struct ip_interface_name_info {
|
|
ULONG Index;
|
|
ULONG MediaType;
|
|
UCHAR ConnectionType;
|
|
UCHAR AccessType;
|
|
GUID DeviceGuid;
|
|
GUID InterfaceGuid;
|
|
} IP_INTERFACE_NAME_INFO,*PIP_INTERFACE_NAME_INFO;
|
|
DWORD GetNumberOfInterfaces (PDWORD pdwNumIf);
|
|
DWORD GetIfEntry (PMIB_IFROW pIfRow);
|
|
DWORD GetIfTable (PMIB_IFTABLE pIfTable, PULONG pdwSize, WINBOOL bOrder);
|
|
DWORD GetIpAddrTable (PMIB_IPADDRTABLE pIpAddrTable, PULONG pdwSize, WINBOOL bOrder);
|
|
ULONG GetIpNetTable (PMIB_IPNETTABLE IpNetTable, PULONG SizePointer, WINBOOL Order);
|
|
DWORD GetIpForwardTable (PMIB_IPFORWARDTABLE pIpForwardTable, PULONG pdwSize, WINBOOL bOrder);
|
|
ULONG GetTcpTable (PMIB_TCPTABLE TcpTable, PULONG SizePointer, WINBOOL Order);
|
|
DWORD GetExtendedTcpTable (PVOID pTcpTable, PDWORD pdwSize, WINBOOL bOrder, ULONG ulAf, TCP_TABLE_CLASS TableClass, ULONG Reserved);
|
|
DWORD GetOwnerModuleFromTcpEntry (PMIB_TCPROW_OWNER_MODULE pTcpEntry, TCPIP_OWNER_MODULE_INFO_CLASS Class, PVOID pBuffer, PDWORD pdwSize);
|
|
ULONG GetUdpTable (PMIB_UDPTABLE UdpTable, PULONG SizePointer, WINBOOL Order);
|
|
DWORD GetExtendedUdpTable (PVOID pUdpTable, PDWORD pdwSize, WINBOOL bOrder, ULONG ulAf, UDP_TABLE_CLASS TableClass, ULONG Reserved);
|
|
DWORD GetOwnerModuleFromUdpEntry (PMIB_UDPROW_OWNER_MODULE pUdpEntry, TCPIP_OWNER_MODULE_INFO_CLASS Class, PVOID pBuffer, PDWORD pdwSize);
|
|
DWORD AllocateAndGetTcpExTableFromStack (PVOID *ppTcpTable, WINBOOL bOrder, HANDLE hHeap, DWORD dwFlags, DWORD dwFamily);
|
|
DWORD AllocateAndGetUdpExTableFromStack (PVOID *ppUdpTable, WINBOOL bOrder, HANDLE hHeap, DWORD dwFlags, DWORD dwFamily);
|
|
DWORD GetOwnerModuleFromPidAndInfo (ULONG ulPid, ULONGLONG *pInfo, TCPIP_OWNER_MODULE_INFO_CLASS Class, PVOID pBuffer, PDWORD pdwSize);
|
|
ULONG GetIpStatistics (PMIB_IPSTATS Statistics);
|
|
ULONG GetIcmpStatistics (PMIB_ICMP Statistics);
|
|
ULONG GetTcpStatistics (PMIB_TCPSTATS Statistics);
|
|
ULONG GetUdpStatistics (PMIB_UDPSTATS Stats);
|
|
ULONG GetIpStatisticsEx (PMIB_IPSTATS Statistics, ULONG Family);
|
|
ULONG SetIpStatisticsEx (PMIB_IPSTATS Statistics, ULONG Family);
|
|
ULONG GetIcmpStatisticsEx (PMIB_ICMP_EX Statistics, ULONG Family);
|
|
ULONG GetTcpStatisticsEx (PMIB_TCPSTATS Statistics, ULONG Family);
|
|
ULONG GetUdpStatisticsEx (PMIB_UDPSTATS Statistics, ULONG Family);
|
|
DWORD SetIfEntry (PMIB_IFROW pIfRow);
|
|
DWORD CreateIpForwardEntry (PMIB_IPFORWARDROW pRoute);
|
|
DWORD SetIpForwardEntry (PMIB_IPFORWARDROW pRoute);
|
|
DWORD DeleteIpForwardEntry (PMIB_IPFORWARDROW pRoute);
|
|
DWORD SetIpStatistics (PMIB_IPSTATS pIpStats);
|
|
DWORD SetIpTTL (UINT nTTL);
|
|
DWORD CreateIpNetEntry (PMIB_IPNETROW pArpEntry);
|
|
DWORD SetIpNetEntry (PMIB_IPNETROW pArpEntry);
|
|
DWORD DeleteIpNetEntry (PMIB_IPNETROW pArpEntry);
|
|
DWORD FlushIpNetTable (DWORD dwIfIndex);
|
|
DWORD CreateProxyArpEntry (DWORD dwAddress, DWORD dwMask, DWORD dwIfIndex);
|
|
DWORD DeleteProxyArpEntry (DWORD dwAddress, DWORD dwMask, DWORD dwIfIndex);
|
|
DWORD SetTcpEntry (PMIB_TCPROW pTcpRow);
|
|
DWORD GetInterfaceInfo (PIP_INTERFACE_INFO pIfTable, PULONG dwOutBufLen);
|
|
DWORD GetUniDirectionalAdapterInfo (PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS pIPIfInfo, PULONG dwOutBufLen);
|
|
DWORD NhpAllocateAndGetInterfaceInfoFromStack (IP_INTERFACE_NAME_INFO **ppTable, PDWORD pdwCount, WINBOOL bOrder, HANDLE hHeap, DWORD dwFlags);
|
|
DWORD GetBestInterface (IPAddr dwDestAddr, PDWORD pdwBestIfIndex);
|
|
DWORD GetBestInterfaceEx (struct sockaddr *pDestAddr, PDWORD pdwBestIfIndex);
|
|
DWORD GetBestRoute (DWORD dwDestAddr, DWORD dwSourceAddr, PMIB_IPFORWARDROW pBestRoute);
|
|
DWORD NotifyAddrChange (PHANDLE Handle, LPOVERLAPPED overlapped);
|
|
DWORD NotifyRouteChange (PHANDLE Handle, LPOVERLAPPED overlapped);
|
|
WINBOOL CancelIPChangeNotify (LPOVERLAPPED notifyOverlapped);
|
|
DWORD GetAdapterIndex (LPWSTR AdapterName, PULONG IfIndex);
|
|
DWORD AddIPAddress (IPAddr Address, IPMask IpMask, DWORD IfIndex, PULONG NTEContext, PULONG NTEInstance);
|
|
DWORD DeleteIPAddress (ULONG NTEContext);
|
|
DWORD GetNetworkParams (PFIXED_INFO pFixedInfo, PULONG pOutBufLen);
|
|
ULONG GetAdaptersInfo (PIP_ADAPTER_INFO AdapterInfo, PULONG SizePointer);
|
|
PIP_ADAPTER_ORDER_MAP GetAdapterOrderMap (void);
|
|
ULONG GetAdaptersAddresses (ULONG Family, ULONG Flags, PVOID Reserved, PIP_ADAPTER_ADDRESSES AdapterAddresses, PULONG SizePointer);
|
|
DWORD GetPerAdapterInfo (ULONG IfIndex, PIP_PER_ADAPTER_INFO pPerAdapterInfo, PULONG pOutBufLen);
|
|
DWORD IpReleaseAddress (PIP_ADAPTER_INDEX_MAP AdapterInfo);
|
|
DWORD IpRenewAddress (PIP_ADAPTER_INDEX_MAP AdapterInfo);
|
|
DWORD SendARP (IPAddr DestIP, IPAddr SrcIP, PVOID pMacAddr, PULONG PhyAddrLen);
|
|
WINBOOL GetRTTAndHopCount (IPAddr DestIpAddress, PULONG HopCount, ULONG MaxHops, PULONG RTT);
|
|
DWORD GetFriendlyIfIndex (DWORD IfIndex);
|
|
DWORD EnableRouter (HANDLE *pHandle, OVERLAPPED *pOverlapped);
|
|
DWORD UnenableRouter (OVERLAPPED *pOverlapped, LPDWORD lpdwEnableCount);
|
|
DWORD DisableMediaSense (HANDLE *pHandle, OVERLAPPED *pOverLapped);
|
|
DWORD RestoreMediaSense (OVERLAPPED *pOverlapped, LPDWORD lpdwEnableCount);
|
|
typedef struct _UNICODE_STRING {
|
|
USHORT Length;
|
|
USHORT MaximumLength;
|
|
PWSTR Buffer;
|
|
} UNICODE_STRING;
|
|
typedef struct _PEB_LDR_DATA {
|
|
BYTE Reserved1[8];
|
|
PVOID Reserved2[3];
|
|
LIST_ENTRY InMemoryOrderModuleList;
|
|
} PEB_LDR_DATA,*PPEB_LDR_DATA;
|
|
typedef struct _LDR_DATA_TABLE_ENTRY {
|
|
PVOID Reserved1[2];
|
|
LIST_ENTRY InMemoryOrderLinks;
|
|
PVOID Reserved2[2];
|
|
PVOID DllBase;
|
|
PVOID Reserved3[2];
|
|
UNICODE_STRING FullDllName;
|
|
BYTE Reserved4[8];
|
|
PVOID Reserved5[3];
|
|
__extension__ union {
|
|
ULONG CheckSum;
|
|
PVOID Reserved6;
|
|
};
|
|
ULONG TimeDateStamp;
|
|
} LDR_DATA_TABLE_ENTRY,*PLDR_DATA_TABLE_ENTRY;
|
|
typedef struct _RTL_USER_PROCESS_PARAMETERS {
|
|
BYTE Reserved1[16];
|
|
PVOID Reserved2[10];
|
|
UNICODE_STRING ImagePathName;
|
|
UNICODE_STRING CommandLine;
|
|
} RTL_USER_PROCESS_PARAMETERS,*PRTL_USER_PROCESS_PARAMETERS;
|
|
typedef void ( *PPS_POST_PROCESS_INIT_ROUTINE)(void);
|
|
typedef struct _PEB {
|
|
BYTE Reserved1[2];
|
|
BYTE BeingDebugged;
|
|
BYTE Reserved2[1];
|
|
PVOID Reserved3[2];
|
|
PPEB_LDR_DATA Ldr;
|
|
PRTL_USER_PROCESS_PARAMETERS ProcessParameters;
|
|
PVOID Reserved4[3];
|
|
PVOID AtlThunkSListPtr;
|
|
PVOID Reserved5;
|
|
ULONG Reserved6;
|
|
PVOID Reserved7;
|
|
ULONG Reserved8;
|
|
ULONG AtlThunkSListPtr32;
|
|
PVOID Reserved9[45];
|
|
BYTE Reserved10[96];
|
|
PPS_POST_PROCESS_INIT_ROUTINE PostProcessInitRoutine;
|
|
BYTE Reserved11[128];
|
|
PVOID Reserved12[1];
|
|
ULONG SessionId;
|
|
} PEB,*PPEB;
|
|
typedef struct _TEB {
|
|
PVOID Reserved1[12];
|
|
PPEB ProcessEnvironmentBlock;
|
|
PVOID Reserved2[399];
|
|
BYTE Reserved3[1952];
|
|
PVOID TlsSlots[64];
|
|
BYTE Reserved4[8];
|
|
PVOID Reserved5[26];
|
|
PVOID ReservedForOle;
|
|
PVOID Reserved6[4];
|
|
PVOID TlsExpansionSlots;
|
|
} TEB;
|
|
typedef TEB *PTEB;
|
|
typedef const char *PCSZ;
|
|
typedef struct _STRING {
|
|
USHORT Length;
|
|
USHORT MaximumLength;
|
|
PCHAR Buffer;
|
|
} STRING;
|
|
typedef STRING *PSTRING;
|
|
typedef STRING ANSI_STRING;
|
|
typedef PSTRING PANSI_STRING;
|
|
typedef PSTRING PCANSI_STRING;
|
|
typedef STRING OEM_STRING;
|
|
typedef PSTRING POEM_STRING;
|
|
typedef const STRING *PCOEM_STRING;
|
|
typedef UNICODE_STRING *PUNICODE_STRING;
|
|
typedef const UNICODE_STRING *PCUNICODE_STRING;
|
|
typedef struct _OBJECT_ATTRIBUTES {
|
|
ULONG Length;
|
|
ULONG pad1;
|
|
HANDLE RootDirectory;
|
|
PUNICODE_STRING ObjectName;
|
|
ULONG Attributes;
|
|
ULONG pad2;
|
|
PVOID SecurityDescriptor;
|
|
PVOID SecurityQualityOfService;
|
|
} OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES;
|
|
typedef struct _OBJECT_DATA_INFORMATION {
|
|
BOOLEAN InheritHandle;
|
|
BOOLEAN ProtectFromClose;
|
|
} OBJECT_DATA_INFORMATION, *POBJECT_DATA_INFORMATION;
|
|
typedef struct _OBJECT_BASIC_INFORMATION {
|
|
ULONG Attributes;
|
|
ACCESS_MASK GrantedAccess;
|
|
ULONG HandleCount;
|
|
ULONG PointerCount;
|
|
ULONG PagedPoolUsage;
|
|
ULONG NonPagedPoolUsage;
|
|
ULONG Reserved[3];
|
|
ULONG NameInformationLength;
|
|
ULONG TypeInformationLength;
|
|
ULONG SecurityDescriptorLength;
|
|
LARGE_INTEGER CreateTime;
|
|
} OBJECT_BASIC_INFORMATION, *POBJECT_BASIC_INFORMATION;
|
|
typedef struct _OBJECT_NAME_INFORMATION {
|
|
UNICODE_STRING Name;
|
|
} OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION;
|
|
typedef struct _OBJECT_TYPE_INFORMATION {
|
|
UNICODE_STRING TypeName;
|
|
ULONG TotalNumberOfObjects;
|
|
ULONG TotalNumberOfHandles;
|
|
ULONG TotalPagedPoolUsage;
|
|
ULONG TotalNonPagedPoolUsage;
|
|
ULONG TotalNamePoolUsage;
|
|
ULONG TotalHandleTableUsage;
|
|
ULONG HighWaterNumberOfObjects;
|
|
ULONG HighWaterNumberOfHandles;
|
|
ULONG HighWaterPagedPoolUsage;
|
|
ULONG HighWaterNonPagedPoolUsage;
|
|
ULONG HighWaterNamePoolUsage;
|
|
ULONG HighWaterHandleTableUsage;
|
|
ULONG InvalidAttributes;
|
|
GENERIC_MAPPING GenericMapping;
|
|
ULONG ValidAccessMask;
|
|
BOOLEAN SecurityRequired;
|
|
BOOLEAN MaintainHandleCount;
|
|
ULONG PoolType;
|
|
ULONG DefaultPagedPoolCharge;
|
|
ULONG DefaultNonPagedPoolCharge;
|
|
} OBJECT_TYPE_INFORMATION, *POBJECT_TYPE_INFORMATION;
|
|
typedef struct _OBJECT_ALL_INFORMATION {
|
|
ULONG NumberOfObjects;
|
|
OBJECT_TYPE_INFORMATION ObjectTypeInformation[1];
|
|
}OBJECT_ALL_INFORMATION, *POBJECT_ALL_INFORMATION;
|
|
typedef enum _FILE_INFORMATION_CLASS {
|
|
FileDirectoryInformation = 1,
|
|
FileFullDirectoryInformation,
|
|
FileBothDirectoryInformation,
|
|
FileBasicInformation,
|
|
FileStandardInformation,
|
|
FileInternalInformation,
|
|
FileEaInformation,
|
|
FileAccessInformation,
|
|
FileNameInformation,
|
|
FileRenameInformation,
|
|
FileLinkInformation,
|
|
FileNamesInformation,
|
|
FileDispositionInformation,
|
|
FilePositionInformation,
|
|
FileFullEaInformation,
|
|
FileModeInformation,
|
|
FileAlignmentInformation,
|
|
FileAllInformation,
|
|
FileAllocationInformation,
|
|
FileEndOfFileInformation,
|
|
FileAlternateNameInformation,
|
|
FileStreamInformation,
|
|
FilePipeInformation,
|
|
FilePipeLocalInformation,
|
|
FilePipeRemoteInformation,
|
|
FileMailslotQueryInformation,
|
|
FileMailslotSetInformation,
|
|
FileCompressionInformation,
|
|
FileObjectIdInformation,
|
|
FileCompletionInformation,
|
|
FileMoveClusterInformation,
|
|
FileQuotaInformation,
|
|
FileReparsePointInformation,
|
|
FileNetworkOpenInformation,
|
|
FileAttributeTagInformation,
|
|
FileTrackingInformation,
|
|
FileIdBothDirectoryInformation,
|
|
FileIdFullDirectoryInformation,
|
|
FileValidDataLengthInformation,
|
|
FileShortNameInformation = 40,
|
|
FileSfioReserveInformation = 44,
|
|
FileSfioVolumeInformation = 45,
|
|
FileHardLinkInformation = 46,
|
|
FileNormalizedNameInformation = 48,
|
|
FileIdGlobalTxDirectoryInformation = 50,
|
|
FileStandardLinkInformation = 54,
|
|
FileMaximumInformation
|
|
} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;
|
|
typedef struct _FILE_DIRECTORY_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG FileIndex;
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
LARGE_INTEGER EndOfFile;
|
|
LARGE_INTEGER AllocationSize;
|
|
ULONG FileAttributes;
|
|
ULONG FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FILE_DIRECTORY_INFORMATION, *PFILE_DIRECTORY_INFORMATION;
|
|
typedef struct _FILE_FULL_DIR_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG FileIndex;
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
LARGE_INTEGER EndOfFile;
|
|
LARGE_INTEGER AllocationSize;
|
|
ULONG FileAttributes;
|
|
ULONG FileNameLength;
|
|
ULONG EaSize;
|
|
WCHAR FileName[1];
|
|
} FILE_FULL_DIR_INFORMATION, *PFILE_FULL_DIR_INFORMATION;
|
|
typedef struct _FILE_ID_FULL_DIR_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG FileIndex;
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
LARGE_INTEGER EndOfFile;
|
|
LARGE_INTEGER AllocationSize;
|
|
ULONG FileAttributes;
|
|
ULONG FileNameLength;
|
|
ULONG EaSize;
|
|
LARGE_INTEGER FileId;
|
|
WCHAR FileName[1];
|
|
} FILE_ID_FULL_DIR_INFORMATION, *PFILE_ID_FULL_DIR_INFORMATION;
|
|
typedef struct _FILE_BOTH_DIR_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG FileIndex;
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
LARGE_INTEGER EndOfFile;
|
|
LARGE_INTEGER AllocationSize;
|
|
ULONG FileAttributes;
|
|
ULONG FileNameLength;
|
|
ULONG EaSize;
|
|
CHAR ShortNameLength;
|
|
WCHAR ShortName[12];
|
|
WCHAR FileName[1];
|
|
} FILE_BOTH_DIR_INFORMATION, *PFILE_BOTH_DIR_INFORMATION;
|
|
typedef struct _FILE_ID_BOTH_DIR_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG FileIndex;
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
LARGE_INTEGER EndOfFile;
|
|
LARGE_INTEGER AllocationSize;
|
|
ULONG FileAttributes;
|
|
ULONG FileNameLength;
|
|
ULONG EaSize;
|
|
CHAR ShortNameLength;
|
|
WCHAR ShortName[12];
|
|
LARGE_INTEGER FileId;
|
|
WCHAR FileName[1];
|
|
} FILE_ID_BOTH_DIR_INFORMATION, *PFILE_ID_BOTH_DIR_INFORMATION;
|
|
typedef struct _FILE_FULL_DIR_INFORMATION
|
|
FILE_FULL_DIRECTORY_INFORMATION, *PFILE_FULL_DIRECTORY_INFORMATION;
|
|
typedef struct _FILE_ID_FULL_DIR_INFORMATION
|
|
FILE_ID_FULL_DIRECTORY_INFORMATION, *PFILE_ID_FULL_DIRECTORY_INFORMATION;
|
|
typedef struct _FILE_BOTH_DIR_INFORMATION
|
|
FILE_BOTH_DIRECTORY_INFORMATION, *PFILE_BOTH_DIRECTORY_INFORMATION;
|
|
typedef struct _FILE_ID_BOTH_DIR_INFORMATION
|
|
FILE_ID_BOTH_DIRECTORY_INFORMATION, *PFILE_ID_BOTH_DIRECTORY_INFORMATION;
|
|
typedef struct _FILE_BASIC_INFORMATION {
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
ULONG FileAttributes;
|
|
} FILE_BASIC_INFORMATION, *PFILE_BASIC_INFORMATION;
|
|
typedef struct _FILE_STANDARD_INFORMATION {
|
|
LARGE_INTEGER AllocationSize;
|
|
LARGE_INTEGER EndOfFile;
|
|
ULONG NumberOfLinks;
|
|
BOOLEAN DeletePending;
|
|
BOOLEAN Directory;
|
|
} FILE_STANDARD_INFORMATION, *PFILE_STANDARD_INFORMATION;
|
|
typedef struct _FILE_INTERNAL_INFORMATION {
|
|
LARGE_INTEGER IndexNumber;
|
|
} FILE_INTERNAL_INFORMATION, *PFILE_INTERNAL_INFORMATION;
|
|
typedef struct _FILE_EA_INFORMATION {
|
|
ULONG EaSize;
|
|
} FILE_EA_INFORMATION, *PFILE_EA_INFORMATION;
|
|
typedef struct _FILE_ACCESS_INFORMATION {
|
|
ACCESS_MASK AccessFlags;
|
|
} FILE_ACCESS_INFORMATION, *PFILE_ACCESS_INFORMATION;
|
|
typedef struct _FILE_LINK_INFORMATION {
|
|
BOOLEAN ReplaceIfExists;
|
|
HANDLE RootDirectory;
|
|
ULONG FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FILE_LINK_INFORMATION, *PFILE_LINK_INFORMATION;
|
|
typedef struct _FILE_NAME_INFORMATION {
|
|
ULONG FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FILE_NAME_INFORMATION, *PFILE_NAME_INFORMATION;
|
|
typedef struct _FILE_RENAME_INFORMATION {
|
|
BOOLEAN ReplaceIfExists;
|
|
HANDLE RootDirectory;
|
|
ULONG FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FILE_RENAME_INFORMATION, *PFILE_RENAME_INFORMATION;
|
|
typedef struct _FILE_NAMES_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG FileIndex;
|
|
ULONG FileNameLength;
|
|
WCHAR FileName[1];
|
|
} FILE_NAMES_INFORMATION, *PFILE_NAMES_INFORMATION;
|
|
typedef struct _FILE_DISPOSITION_INFORMATION {
|
|
BOOLEAN DoDeleteFile;
|
|
} FILE_DISPOSITION_INFORMATION, *PFILE_DISPOSITION_INFORMATION;
|
|
typedef struct _FILE_POSITION_INFORMATION {
|
|
LARGE_INTEGER CurrentByteOffset;
|
|
} FILE_POSITION_INFORMATION, *PFILE_POSITION_INFORMATION;
|
|
typedef struct _FILE_ALIGNMENT_INFORMATION {
|
|
ULONG AlignmentRequirement;
|
|
} FILE_ALIGNMENT_INFORMATION, *PFILE_ALIGNMENT_INFORMATION;
|
|
typedef struct _FILE_ALLOCATION_INFORMATION {
|
|
LARGE_INTEGER AllocationSize;
|
|
} FILE_ALLOCATION_INFORMATION, *PFILE_ALLOCATION_INFORMATION;
|
|
typedef struct _FILE_END_OF_FILE_INFORMATION {
|
|
LARGE_INTEGER EndOfFile;
|
|
} FILE_END_OF_FILE_INFORMATION, *PFILE_END_OF_FILE_INFORMATION;
|
|
typedef struct _FILE_NETWORK_OPEN_INFORMATION {
|
|
LARGE_INTEGER CreationTime;
|
|
LARGE_INTEGER LastAccessTime;
|
|
LARGE_INTEGER LastWriteTime;
|
|
LARGE_INTEGER ChangeTime;
|
|
LARGE_INTEGER AllocationSize;
|
|
LARGE_INTEGER EndOfFile;
|
|
ULONG FileAttributes;
|
|
} FILE_NETWORK_OPEN_INFORMATION, *PFILE_NETWORK_OPEN_INFORMATION;
|
|
typedef struct _FILE_FULL_EA_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
UCHAR Flags;
|
|
UCHAR EaNameLength;
|
|
USHORT EaValueLength;
|
|
CHAR EaName[1];
|
|
} FILE_FULL_EA_INFORMATION, *PFILE_FULL_EA_INFORMATION;
|
|
typedef struct _FILE_MODE_INFORMATION {
|
|
ULONG Mode;
|
|
} FILE_MODE_INFORMATION, *PFILE_MODE_INFORMATION;
|
|
typedef struct _FILE_STREAM_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG StreamNameLength;
|
|
LARGE_INTEGER StreamSize;
|
|
LARGE_INTEGER StreamAllocationSize;
|
|
WCHAR StreamName[1];
|
|
} FILE_STREAM_INFORMATION, *PFILE_STREAM_INFORMATION;
|
|
typedef struct _FILE_ATTRIBUTE_TAG_INFORMATION {
|
|
ULONG FileAttributes;
|
|
ULONG ReparseTag;
|
|
} FILE_ATTRIBUTE_TAG_INFORMATION, *PFILE_ATTRIBUTE_TAG_INFORMATION;
|
|
typedef struct _FILE_MAILSLOT_QUERY_INFORMATION {
|
|
ULONG MaximumMessageSize;
|
|
ULONG MailslotQuota;
|
|
ULONG NextMessageSize;
|
|
ULONG MessagesAvailable;
|
|
LARGE_INTEGER ReadTimeout;
|
|
} FILE_MAILSLOT_QUERY_INFORMATION, *PFILE_MAILSLOT_QUERY_INFORMATION;
|
|
typedef struct _FILE_MAILSLOT_SET_INFORMATION {
|
|
LARGE_INTEGER ReadTimeout;
|
|
} FILE_MAILSLOT_SET_INFORMATION, *PFILE_MAILSLOT_SET_INFORMATION;
|
|
typedef struct _FILE_PIPE_LOCAL_INFORMATION {
|
|
ULONG NamedPipeType;
|
|
ULONG NamedPipeConfiguration;
|
|
ULONG MaximumInstances;
|
|
ULONG CurrentInstances;
|
|
ULONG InboundQuota;
|
|
ULONG ReadDataAvailable;
|
|
ULONG OutboundQuota;
|
|
ULONG WriteQuotaAvailable;
|
|
ULONG NamedPipeState;
|
|
ULONG NamedPipeEnd;
|
|
} FILE_PIPE_LOCAL_INFORMATION, *PFILE_PIPE_LOCAL_INFORMATION;
|
|
typedef struct _FILE_ALL_INFORMATION {
|
|
FILE_BASIC_INFORMATION BasicInformation;
|
|
FILE_STANDARD_INFORMATION StandardInformation;
|
|
FILE_INTERNAL_INFORMATION InternalInformation;
|
|
FILE_EA_INFORMATION EaInformation;
|
|
FILE_ACCESS_INFORMATION AccessInformation;
|
|
FILE_POSITION_INFORMATION PositionInformation;
|
|
FILE_MODE_INFORMATION ModeInformation;
|
|
FILE_ALIGNMENT_INFORMATION AlignmentInformation;
|
|
FILE_NAME_INFORMATION NameInformation;
|
|
} FILE_ALL_INFORMATION, *PFILE_ALL_INFORMATION;
|
|
typedef enum _FSINFOCLASS {
|
|
FileFsVolumeInformation = 1,
|
|
FileFsLabelInformation,
|
|
FileFsSizeInformation,
|
|
FileFsDeviceInformation,
|
|
FileFsAttributeInformation,
|
|
FileFsControlInformation,
|
|
FileFsFullSizeInformation,
|
|
FileFsObjectIdInformation,
|
|
FileFsDriverPathInformation,
|
|
FileFsVolumeFlagsInformation,
|
|
FileFsMaximumInformation
|
|
} FS_INFORMATION_CLASS, *PFS_INFORMATION_CLASS;
|
|
typedef struct _FILE_FS_VOLUME_INFORMATION {
|
|
LARGE_INTEGER VolumeCreationTime;
|
|
ULONG VolumeSerialNumber;
|
|
ULONG VolumeLabelLength;
|
|
BOOLEAN SupportsObjects;
|
|
WCHAR VolumeLabel[1];
|
|
} FILE_FS_VOLUME_INFORMATION, *PFILE_FS_VOLUME_INFORMATION;
|
|
typedef struct _FILE_FS_LABEL_INFORMATION {
|
|
ULONG VolumeLabelLength;
|
|
WCHAR VolumeLabel[1];
|
|
} FILE_FS_LABEL_INFORMATION, *PFILE_FS_LABEL_INFORMATION;
|
|
typedef struct _FILE_FS_SIZE_INFORMATION {
|
|
LARGE_INTEGER TotalAllocationUnits;
|
|
LARGE_INTEGER AvailableAllocationUnits;
|
|
ULONG SectorsPerAllocationUnit;
|
|
ULONG BytesPerSector;
|
|
} FILE_FS_SIZE_INFORMATION, *PFILE_FS_SIZE_INFORMATION;
|
|
typedef struct _FILE_FS_DEVICE_INFORMATION {
|
|
DWORD DeviceType;
|
|
ULONG Characteristics;
|
|
} FILE_FS_DEVICE_INFORMATION, *PFILE_FS_DEVICE_INFORMATION;
|
|
typedef struct _FILE_FS_ATTRIBUTE_INFORMATION {
|
|
ULONG FileSystemAttributes;
|
|
ULONG MaximumComponentNameLength;
|
|
ULONG FileSystemNameLength;
|
|
WCHAR FileSystemName[1];
|
|
} FILE_FS_ATTRIBUTE_INFORMATION, *PFILE_FS_ATTRIBUTE_INFORMATION;
|
|
typedef struct _FILE_FS_FULL_SIZE_INFORMATION {
|
|
LARGE_INTEGER TotalAllocationUnits;
|
|
LARGE_INTEGER CallerAvailableAllocationUnits;
|
|
LARGE_INTEGER ActualAvailableAllocationUnits;
|
|
ULONG SectorsPerAllocationUnit;
|
|
ULONG BytesPerSector;
|
|
} FILE_FS_FULL_SIZE_INFORMATION, *PFILE_FS_FULL_SIZE_INFORMATION;
|
|
typedef struct _FILE_FS_OBJECTID_INFORMATION {
|
|
UCHAR ObjectId[16];
|
|
UCHAR ExtendedInfo[48];
|
|
} FILE_FS_OBJECTID_INFORMATION, *PFILE_FS_OBJECTID_INFORMATION;
|
|
typedef struct _IO_STATUS_BLOCK {
|
|
__extension__ union {
|
|
NTSTATUS Status;
|
|
PVOID Pointer;
|
|
};
|
|
ULONG_PTR Information;
|
|
} IO_STATUS_BLOCK,*PIO_STATUS_BLOCK;
|
|
typedef void ( *PIO_APC_ROUTINE)(PVOID ApcContext,PIO_STATUS_BLOCK IoStatusBlock,ULONG Reserved);
|
|
typedef struct _VM_COUNTERS {
|
|
SIZE_T PeakVirtualSize;
|
|
SIZE_T VirtualSize;
|
|
ULONG PageFaultCount;
|
|
SIZE_T PeakWorkingSetSize;
|
|
SIZE_T WorkingSetSize;
|
|
SIZE_T QuotaPeakPagedPoolUsage;
|
|
SIZE_T QuotaPagedPoolUsage;
|
|
SIZE_T QuotaPeakNonPagedPoolUsage;
|
|
SIZE_T QuotaNonPagedPoolUsage;
|
|
SIZE_T PagefileUsage;
|
|
SIZE_T PeakPagefileUsage;
|
|
} VM_COUNTERS, *PVM_COUNTERS;
|
|
typedef enum _THREAD_STATE {
|
|
StateInitialized = 0,
|
|
StateReady, StateRunning, StateStandby, StateTerminated,
|
|
StateWait, StateTransition,
|
|
StateUnknown
|
|
} THREAD_STATE;
|
|
typedef struct _CLIENT_ID {
|
|
HANDLE UniqueProcess;
|
|
HANDLE UniqueThread;
|
|
} CLIENT_ID, *PCLIENT_ID;
|
|
typedef LONG KPRIORITY;
|
|
typedef enum _KWAIT_REASON {
|
|
Executive = 0,
|
|
FreePage, PageIn, PoolAllocation, DelayExecution,
|
|
Suspended, UserRequest, WrExecutive, WrFreePage, WrPageIn,
|
|
WrPoolAllocation, WrDelayExecution, WrSuspended,
|
|
WrUserRequest, WrEventPair, WrQueue, WrLpcReceive,
|
|
WrLpcReply, WrVirtualMemory, WrPageOut, WrRendezvous,
|
|
Spare2, Spare3, Spare4, Spare5, Spare6, WrKernel,
|
|
MaximumWaitReason
|
|
} KWAIT_REASON;
|
|
typedef struct _SYSTEM_THREADS
|
|
{
|
|
LARGE_INTEGER KernelTime;
|
|
LARGE_INTEGER UserTime;
|
|
LARGE_INTEGER CreateTime;
|
|
ULONG WaitTime;
|
|
PVOID StartAddress;
|
|
CLIENT_ID ClientId;
|
|
KPRIORITY Priority;
|
|
KPRIORITY BasePriority;
|
|
ULONG ContextSwitchCount;
|
|
THREAD_STATE State;
|
|
KWAIT_REASON WaitReason;
|
|
} SYSTEM_THREADS, *PSYSTEM_THREADS;
|
|
typedef struct _PROCESS_BASIC_INFORMATION {
|
|
NTSTATUS ExitStatus;
|
|
PPEB PebBaseAddress;
|
|
KAFFINITY AffinityMask;
|
|
KPRIORITY BasePriority;
|
|
ULONG_PTR UniqueProcessId;
|
|
ULONG_PTR InheritedFromUniqueProcessId;
|
|
} PROCESS_BASIC_INFORMATION, *PPROCESS_BASIC_INFORMATION;
|
|
typedef struct _KERNEL_USER_TIMES {
|
|
FILETIME CreateTime;
|
|
FILETIME ExitTime;
|
|
LARGE_INTEGER KernelTime;
|
|
LARGE_INTEGER UserTime;
|
|
} KERNEL_USER_TIMES, *PKERNEL_USER_TIMES;
|
|
typedef struct _SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION {
|
|
LARGE_INTEGER IdleTime;
|
|
LARGE_INTEGER KernelTime;
|
|
LARGE_INTEGER UserTime;
|
|
LARGE_INTEGER Reserved1[2];
|
|
ULONG Reserved2;
|
|
} SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION,*PSYSTEM_PROCESSOR_PERFORMANCE_INFORMATION;
|
|
typedef struct _SYSTEM_PROCESS_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG NumberOfThreads;
|
|
LARGE_INTEGER Reserved[3];
|
|
LARGE_INTEGER CreateTime;
|
|
LARGE_INTEGER UserTime;
|
|
LARGE_INTEGER KernelTime;
|
|
UNICODE_STRING ImageName;
|
|
KPRIORITY BasePriority;
|
|
HANDLE UniqueProcessId;
|
|
HANDLE InheritedFromUniqueProcessId;
|
|
ULONG HandleCount;
|
|
ULONG SessionId;
|
|
ULONG PageDirectoryBase;
|
|
VM_COUNTERS VirtualMemoryCounters;
|
|
SIZE_T PrivatePageCount;
|
|
IO_COUNTERS IoCounters;
|
|
} SYSTEM_PROCESS_INFORMATION,*PSYSTEM_PROCESS_INFORMATION;
|
|
typedef struct _SYSTEM_THREAD_INFORMATION {
|
|
LARGE_INTEGER Reserved1[3];
|
|
ULONG Reserved2;
|
|
PVOID StartAddress;
|
|
CLIENT_ID ClientId;
|
|
KPRIORITY Priority;
|
|
LONG BasePriority;
|
|
ULONG Reserved3;
|
|
ULONG ThreadState;
|
|
ULONG WaitReason;
|
|
} SYSTEM_THREAD_INFORMATION, *PSYSTEM_THREAD_INFORMATION;
|
|
typedef struct _SYSTEM_REGISTRY_QUOTA_INFORMATION {
|
|
ULONG RegistryQuotaAllowed;
|
|
ULONG RegistryQuotaUsed;
|
|
PVOID Reserved1;
|
|
} SYSTEM_REGISTRY_QUOTA_INFORMATION,*PSYSTEM_REGISTRY_QUOTA_INFORMATION;
|
|
typedef struct _SYSTEM_BASIC_INFORMATION {
|
|
BYTE Reserved1[4];
|
|
ULONG MaximumIncrement;
|
|
ULONG PhysicalPageSize;
|
|
ULONG NumberOfPhysicalPages;
|
|
ULONG LowestPhysicalPage;
|
|
ULONG HighestPhysicalPage;
|
|
ULONG AllocationGranularity;
|
|
ULONG_PTR LowestUserAddress;
|
|
ULONG_PTR HighestUserAddress;
|
|
ULONG_PTR ActiveProcessors;
|
|
CCHAR NumberOfProcessors;
|
|
} SYSTEM_BASIC_INFORMATION,*PSYSTEM_BASIC_INFORMATION;
|
|
typedef struct _SYSTEM_PROCESSOR_INFORMATION {
|
|
USHORT ProcessorArchitecture;
|
|
USHORT ProcessorLevel;
|
|
USHORT ProcessorRevision;
|
|
USHORT Unknown;
|
|
ULONG FeatureBits;
|
|
} SYSTEM_PROCESSOR_INFORMATION, *PSYSTEM_PROCESSOR_INFORMATION;
|
|
typedef struct _SYSTEM_TIMEOFDAY_INFORMATION {
|
|
LARGE_INTEGER BootTime;
|
|
LARGE_INTEGER CurrentTime;
|
|
LARGE_INTEGER TimeZoneBias;
|
|
ULONG CurrentTimeZoneId;
|
|
BYTE Reserved1[20];
|
|
} SYSTEM_TIMEOFDAY_INFORMATION,*PSYSTEM_TIMEOFDAY_INFORMATION;
|
|
typedef struct _SYSTEM_PERFORMANCE_INFORMATION {
|
|
LARGE_INTEGER IdleTime;
|
|
LARGE_INTEGER ReadTransferCount;
|
|
LARGE_INTEGER WriteTransferCount;
|
|
LARGE_INTEGER OtherTransferCount;
|
|
ULONG ReadOperationCount;
|
|
ULONG WriteOperationCount;
|
|
ULONG OtherOperationCount;
|
|
ULONG AvailablePages;
|
|
ULONG TotalCommittedPages;
|
|
ULONG TotalCommitLimit;
|
|
ULONG PeakCommitment;
|
|
ULONG PageFaults;
|
|
ULONG WriteCopyFaults;
|
|
ULONG TransitionFaults;
|
|
ULONG CacheTransitionFaults;
|
|
ULONG DemandZeroFaults;
|
|
ULONG PagesRead;
|
|
ULONG PageReadIos;
|
|
ULONG CacheReads;
|
|
ULONG CacheIos;
|
|
ULONG PagefilePagesWritten;
|
|
ULONG PagefilePageWriteIos;
|
|
ULONG MappedFilePagesWritten;
|
|
ULONG MappedFilePageWriteIos;
|
|
ULONG PagedPoolUsage;
|
|
ULONG NonPagedPoolUsage;
|
|
ULONG PagedPoolAllocs;
|
|
ULONG PagedPoolFrees;
|
|
ULONG NonPagedPoolAllocs;
|
|
ULONG NonPagedPoolFrees;
|
|
ULONG TotalFreeSystemPtes;
|
|
ULONG SystemCodePage;
|
|
ULONG TotalSystemDriverPages;
|
|
ULONG TotalSystemCodePages;
|
|
ULONG SmallNonPagedLookasideListAllocateHits;
|
|
ULONG SmallPagedLookasideListAllocateHits;
|
|
ULONG Reserved3;
|
|
ULONG MmSystemCachePage;
|
|
ULONG PagedPoolPage;
|
|
ULONG SystemDriverPage;
|
|
ULONG FastReadNoWait;
|
|
ULONG FastReadWait;
|
|
ULONG FastReadResourceMiss;
|
|
ULONG FastReadNotPossible;
|
|
ULONG FastMdlReadNoWait;
|
|
ULONG FastMdlReadWait;
|
|
ULONG FastMdlReadResourceMiss;
|
|
ULONG FastMdlReadNotPossible;
|
|
ULONG MapDataNoWait;
|
|
ULONG MapDataWait;
|
|
ULONG MapDataNoWaitMiss;
|
|
ULONG MapDataWaitMiss;
|
|
ULONG PinMappedDataCount;
|
|
ULONG PinReadNoWait;
|
|
ULONG PinReadWait;
|
|
ULONG PinReadNoWaitMiss;
|
|
ULONG PinReadWaitMiss;
|
|
ULONG CopyReadNoWait;
|
|
ULONG CopyReadWait;
|
|
ULONG CopyReadNoWaitMiss;
|
|
ULONG CopyReadWaitMiss;
|
|
ULONG MdlReadNoWait;
|
|
ULONG MdlReadWait;
|
|
ULONG MdlReadNoWaitMiss;
|
|
ULONG MdlReadWaitMiss;
|
|
ULONG ReadAheadIos;
|
|
ULONG LazyWriteIos;
|
|
ULONG LazyWritePages;
|
|
ULONG DataFlushes;
|
|
ULONG DataPages;
|
|
ULONG ContextSwitches;
|
|
ULONG FirstLevelTbFills;
|
|
ULONG SecondLevelTbFills;
|
|
ULONG SystemCalls;
|
|
} SYSTEM_PERFORMANCE_INFORMATION, *PSYSTEM_PERFORMANCE_INFORMATION;
|
|
typedef struct _SYSTEM_EXCEPTION_INFORMATION {
|
|
BYTE Reserved1[16];
|
|
} SYSTEM_EXCEPTION_INFORMATION,*PSYSTEM_EXCEPTION_INFORMATION;
|
|
typedef struct _SYSTEM_LOOKASIDE_INFORMATION {
|
|
BYTE Reserved1[32];
|
|
} SYSTEM_LOOKASIDE_INFORMATION,*PSYSTEM_LOOKASIDE_INFORMATION;
|
|
typedef struct _SYSTEM_INTERRUPT_INFORMATION {
|
|
BYTE Reserved1[24];
|
|
} SYSTEM_INTERRUPT_INFORMATION,*PSYSTEM_INTERRUPT_INFORMATION;
|
|
typedef struct _SYSTEM_POLICY_INFORMATION {
|
|
PVOID Reserved1[2];
|
|
ULONG Reserved2[3];
|
|
} SYSTEM_POLICY_INFORMATION, *PSYSTEM_POLICY_INFORMATION;
|
|
typedef struct _SYSTEM_HANDLE_ENTRY {
|
|
ULONG OwnerPid;
|
|
BYTE ObjectType;
|
|
BYTE HandleFlags;
|
|
USHORT HandleValue;
|
|
PVOID ObjectPointer;
|
|
ULONG AccessMask;
|
|
} SYSTEM_HANDLE_ENTRY, *PSYSTEM_HANDLE_ENTRY;
|
|
typedef struct _SYSTEM_HANDLE_INFORMATION {
|
|
ULONG Count;
|
|
SYSTEM_HANDLE_ENTRY Handle[1];
|
|
} SYSTEM_HANDLE_INFORMATION, *PSYSTEM_HANDLE_INFORMATION;
|
|
typedef struct _SYSTEM_PAGEFILE_INFORMATION {
|
|
ULONG NextEntryOffset;
|
|
ULONG CurrentSize;
|
|
ULONG TotalUsed;
|
|
ULONG PeakUsed;
|
|
UNICODE_STRING FileName;
|
|
} SYSTEM_PAGEFILE_INFORMATION, *PSYSTEM_PAGEFILE_INFORMATION;
|
|
typedef struct _PUBLIC_OBJECT_BASIC_INFORMATION {
|
|
ULONG Attributes;
|
|
ACCESS_MASK GrantedAccess;
|
|
ULONG HandleCount;
|
|
ULONG PointerCount;
|
|
ULONG Reserved[10];
|
|
} PUBLIC_OBJECT_BASIC_INFORMATION, *PPUBLIC_OBJECT_BASIC_INFORMATION;
|
|
typedef struct __PUBLIC_OBJECT_TYPE_INFORMATION {
|
|
UNICODE_STRING TypeName;
|
|
ULONG Reserved[22];
|
|
} PUBLIC_OBJECT_TYPE_INFORMATION, *PPUBLIC_OBJECT_TYPE_INFORMATION;
|
|
typedef enum _PROCESSINFOCLASS {
|
|
ProcessBasicInformation,
|
|
ProcessQuotaLimits,
|
|
ProcessIoCounters,
|
|
ProcessVmCounters,
|
|
ProcessTimes,
|
|
ProcessBasePriority,
|
|
ProcessRaisePriority,
|
|
ProcessDebugPort,
|
|
ProcessExceptionPort,
|
|
ProcessAccessToken,
|
|
ProcessLdtInformation,
|
|
ProcessLdtSize,
|
|
ProcessDefaultHardErrorMode,
|
|
ProcessIoPortHandlers,
|
|
ProcessPooledUsageAndLimits,
|
|
ProcessWorkingSetWatch,
|
|
ProcessUserModeIOPL,
|
|
ProcessEnableAlignmentFaultFixup,
|
|
ProcessPriorityClass,
|
|
ProcessWx86Information,
|
|
ProcessHandleCount,
|
|
ProcessAffinityMask,
|
|
ProcessPriorityBoost,
|
|
ProcessDeviceMap,
|
|
ProcessSessionInformation,
|
|
ProcessForegroundInformation,
|
|
ProcessWow64Information,
|
|
ProcessImageFileName,
|
|
ProcessLUIDDeviceMapsEnabled,
|
|
ProcessBreakOnTermination,
|
|
ProcessDebugObjectHandle,
|
|
ProcessDebugFlags,
|
|
ProcessHandleTracing,
|
|
ProcessIoPriority,
|
|
ProcessExecuteFlags,
|
|
ProcessTlsInformation,
|
|
ProcessCookie,
|
|
ProcessImageInformation,
|
|
ProcessCycleTime,
|
|
ProcessPagePriority,
|
|
ProcessInstrumentationCallback,
|
|
ProcessThreadStackAllocation,
|
|
ProcessWorkingSetWatchEx,
|
|
ProcessImageFileNameWin32,
|
|
ProcessImageFileMapping,
|
|
ProcessAffinityUpdateMode,
|
|
ProcessMemoryAllocationMode,
|
|
ProcessGroupInformation,
|
|
ProcessTokenVirtualizationEnabled,
|
|
ProcessConsoleHostProcess,
|
|
ProcessWindowInformation,
|
|
MaxProcessInfoClass
|
|
} PROCESSINFOCLASS;
|
|
typedef enum _THREADINFOCLASS {
|
|
ThreadBasicInformation,
|
|
ThreadTimes,
|
|
ThreadPriority,
|
|
ThreadBasePriority,
|
|
ThreadAffinityMask,
|
|
ThreadImpersonationToken,
|
|
ThreadDescriptorTableEntry,
|
|
ThreadEnableAlignmentFaultFixup,
|
|
ThreadEventPair,
|
|
ThreadQuerySetWin32StartAddress,
|
|
ThreadZeroTlsCell,
|
|
ThreadPerformanceCount,
|
|
ThreadAmILastThread,
|
|
ThreadIdealProcessor,
|
|
ThreadPriorityBoost,
|
|
ThreadSetTlsArrayAddress,
|
|
ThreadIsIoPending,
|
|
ThreadHideFromDebugger
|
|
} THREADINFOCLASS;
|
|
typedef struct _SYSTEM_CODEINTEGRITY_INFORMATION {
|
|
ULONG Length;
|
|
ULONG CodeIntegrityOptions;
|
|
} SYSTEM_CODEINTEGRITY_INFORMATION, *PSYSTEM_CODEINTEGRITY_INFORMATION;
|
|
typedef enum _SYSTEM_INFORMATION_CLASS {
|
|
SystemBasicInformation = 0,
|
|
SystemProcessorInformation = 1,
|
|
SystemPerformanceInformation = 2,
|
|
SystemTimeOfDayInformation = 3,
|
|
SystemProcessInformation = 5,
|
|
SystemProcessorPerformanceInformation = 8,
|
|
SystemHandleInformation = 16,
|
|
SystemPagefileInformation = 18,
|
|
SystemInterruptInformation = 23,
|
|
SystemExceptionInformation = 33,
|
|
SystemRegistryQuotaInformation = 37,
|
|
SystemLookasideInformation = 45
|
|
} SYSTEM_INFORMATION_CLASS;
|
|
typedef enum _OBJECT_INFORMATION_CLASS {
|
|
ObjectBasicInformation,
|
|
ObjectNameInformation,
|
|
ObjectTypeInformation,
|
|
ObjectAllInformation,
|
|
ObjectDataInformation
|
|
} OBJECT_INFORMATION_CLASS, *POBJECT_INFORMATION_CLASS;
|
|
typedef struct _KEY_VALUE_ENTRY {
|
|
PUNICODE_STRING ValueName;
|
|
ULONG DataLength;
|
|
ULONG DataOffset;
|
|
ULONG Type;
|
|
} KEY_VALUE_ENTRY, *PKEY_VALUE_ENTRY;
|
|
typedef enum _KEY_SET_INFORMATION_CLASS {
|
|
KeyWriteTimeInformation,
|
|
KeyWow64FlagsInformation,
|
|
KeyControlFlagsInformation,
|
|
KeySetVirtualizationInformation,
|
|
KeySetDebugInformation,
|
|
KeySetHandleTagsInformation,
|
|
MaxKeySetInfoClass
|
|
} KEY_SET_INFORMATION_CLASS;
|
|
NTSTATUS NtClose(HANDLE Handle);
|
|
NTSTATUS NtCreateFile(PHANDLE FileHandle,ACCESS_MASK DesiredAccess,POBJECT_ATTRIBUTES ObjectAttributes,PIO_STATUS_BLOCK IoStatusBlock,PLARGE_INTEGER AllocationSize,ULONG FileAttributes,ULONG ShareAccess,ULONG CreateDisposition,ULONG CreateOptions,PVOID EaBuffer,ULONG EaLength);
|
|
NTSTATUS NtOpenFile(PHANDLE FileHandle,ACCESS_MASK DesiredAccess,POBJECT_ATTRIBUTES ObjectAttributes,PIO_STATUS_BLOCK IoStatusBlock,ULONG ShareAccess,ULONG OpenOptions);
|
|
NTSTATUS NtRenameKey(HANDLE KeyHandle, PUNICODE_STRING NewName);
|
|
NTSTATUS NtNotifyChangeMultipleKeys(HANDLE MasterKeyHandle, ULONG Count, OBJECT_ATTRIBUTES SubordinateObjects[], HANDLE Event, PIO_APC_ROUTINE ApcRoutine, PVOID ApcContext, PIO_STATUS_BLOCK IoStatusBlock, ULONG CompletionFilter, BOOLEAN WatchTree, PVOID Buffer, ULONG BufferSize, BOOLEAN Asynchronous);
|
|
NTSTATUS NtQueryMultipleValueKey(HANDLE KeyHandle, PKEY_VALUE_ENTRY ValueEntries, ULONG EntryCount, PVOID ValueBuffer, PULONG BufferLength, PULONG RequiredBufferLength);
|
|
NTSTATUS NtSetInformationKey(HANDLE KeyHandle, KEY_SET_INFORMATION_CLASS KeySetInformationClass, PVOID KeySetInformation, ULONG KeySetInformationLength);
|
|
NTSTATUS NtFsControlFile(HANDLE FileHandle,HANDLE Event,PIO_APC_ROUTINE ApcRoutine,PVOID ApcContext,PIO_STATUS_BLOCK IoStatusBlock,ULONG IoControlCode,PVOID InputBuffer,ULONG InputBufferLength,PVOID OutputBuffer,ULONG OutputBufferLength);
|
|
NTSTATUS NtDeviceIoControlFile(HANDLE FileHandle,HANDLE Event,PIO_APC_ROUTINE ApcRoutine,PVOID ApcContext,PIO_STATUS_BLOCK IoStatusBlock,ULONG IoControlCode,PVOID InputBuffer,ULONG InputBufferLength,PVOID OutputBuffer,ULONG OutputBufferLength);
|
|
NTSTATUS NtWaitForSingleObject(HANDLE Handle,BOOLEAN Alertable,PLARGE_INTEGER Timeout);
|
|
BOOLEAN RtlIsNameLegalDOS8Dot3(PUNICODE_STRING Name,POEM_STRING OemName,PBOOLEAN NameContainsSpaces);
|
|
ULONG RtlNtStatusToDosError (NTSTATUS Status);
|
|
NTSTATUS NtQueryInformationProcess(HANDLE ProcessHandle,PROCESSINFOCLASS ProcessInformationClass,PVOID ProcessInformation,ULONG ProcessInformationLength,PULONG ReturnLength);
|
|
NTSTATUS NtQueryInformationThread(HANDLE ThreadHandle,THREADINFOCLASS ThreadInformationClass,PVOID ThreadInformation,ULONG ThreadInformationLength,PULONG ReturnLength);
|
|
NTSTATUS NtQueryInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FILE_INFORMATION_CLASS FileInformationClass);
|
|
NTSTATUS NtQueryObject(HANDLE Handle,OBJECT_INFORMATION_CLASS ObjectInformationClass,PVOID ObjectInformation,ULONG ObjectInformationLength,PULONG ReturnLength);
|
|
NTSTATUS NtQuerySystemInformation(SYSTEM_INFORMATION_CLASS SystemInformationClass,PVOID SystemInformation,ULONG SystemInformationLength,PULONG ReturnLength);
|
|
NTSTATUS NtQuerySystemTime(PLARGE_INTEGER SystemTime);
|
|
NTSTATUS NtQueryVolumeInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FS_INFORMATION_CLASS FsInformationClass);
|
|
NTSTATUS NtSetInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FILE_INFORMATION_CLASS FileInformationClass);
|
|
NTSTATUS NtSetInformationProcess(HANDLE ProcessHandle, PROCESSINFOCLASS ProcessInformationClass, PVOID ProcessInformation, ULONG ProcessInformationLength);
|
|
NTSTATUS NtSetVolumeInformationFile(HANDLE hFile,PIO_STATUS_BLOCK io,PVOID ptr,ULONG len,FILE_INFORMATION_CLASS FileInformationClass);
|
|
NTSTATUS RtlLocalTimeToSystemTime(PLARGE_INTEGER LocalTime,PLARGE_INTEGER SystemTime);
|
|
BOOLEAN RtlTimeToSecondsSince1970(PLARGE_INTEGER Time,PULONG ElapsedSeconds);
|
|
void RtlFreeAnsiString(PANSI_STRING AnsiString);
|
|
void RtlFreeUnicodeString(PUNICODE_STRING UnicodeString);
|
|
void RtlFreeOemString(POEM_STRING OemString);
|
|
void RtlInitString (PSTRING DestinationString,PCSZ SourceString);
|
|
NTSTATUS RtlInitStringEx(PSTRING DestinationString, PCSZ SourceString);
|
|
void RtlInitAnsiString(PANSI_STRING DestinationString,PCSZ SourceString);
|
|
NTSTATUS RtlInitAnsiStringEx(PANSI_STRING DestinationString, PCSZ SourceString);
|
|
void RtlInitUnicodeString(PUNICODE_STRING DestinationString,PCWSTR SourceString);
|
|
NTSTATUS RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString,PCANSI_STRING SourceString,BOOLEAN AllocateDestinationString);
|
|
NTSTATUS RtlUnicodeStringToAnsiString(PANSI_STRING DestinationString,PCUNICODE_STRING SourceString,BOOLEAN AllocateDestinationString);
|
|
NTSTATUS RtlUnicodeStringToOemString(POEM_STRING DestinationString,PCUNICODE_STRING SourceString,BOOLEAN AllocateDestinationString);
|
|
NTSTATUS RtlUnicodeToMultiByteSize(PULONG BytesInMultiByteString,PWCH UnicodeString,ULONG BytesInUnicodeString);
|
|
NTSTATUS RtlCharToInteger (PCSZ String,ULONG Base,PULONG Value);
|
|
NTSTATUS RtlConvertSidToUnicodeString(PUNICODE_STRING UnicodeString,PSID Sid,BOOLEAN AllocateDestinationString);
|
|
ULONG RtlUniform(PULONG Seed);
|
|
void RtlUnwind (PVOID TargetFrame,PVOID TargetIp,PEXCEPTION_RECORD ExceptionRecord,PVOID ReturnValue);
|
|
BOOL RtlDosPathNameToNtPathName_U(PCWSTR DosPathName, PUNICODE_STRING NtPathName, PCWSTR *NtFileNamePart, void *DirectoryInfo);
|
|
BOOLEAN RtlPrefixUnicodeString(PCUNICODE_STRING String1, PCUNICODE_STRING String2, BOOLEAN CaseInSensitive);
|
|
BOOLEAN RtlCreateUnicodeStringFromAsciiz(PUNICODE_STRING target, LPCSTR src);
|
|
typedef NTSTATUS ( *PRTL_HEAP_COMMIT_ROUTINE) (PVOID Base, PVOID *CommitAddress, PSIZE_T CommitSize);
|
|
typedef struct _RTL_HEAP_PARAMETERS {
|
|
ULONG Length;
|
|
SIZE_T SegmentReserve;
|
|
SIZE_T SegmentCommit;
|
|
SIZE_T DeCommitFreeBlockThreshold;
|
|
SIZE_T DeCommitTotalFreeThreshold;
|
|
SIZE_T MaximumAllocationSize;
|
|
SIZE_T VirtualMemoryThreshold;
|
|
SIZE_T InitialCommit;
|
|
SIZE_T InitialReserve;
|
|
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine;
|
|
SIZE_T Reserved[ 2 ];
|
|
} RTL_HEAP_PARAMETERS, *PRTL_HEAP_PARAMETERS;
|
|
BOOLEAN RtlFreeHeap(PVOID HeapHandle, ULONG Flags, PVOID HeapBase);
|
|
PVOID RtlAllocateHeap(PVOID HeapHandle, ULONG Flags, SIZE_T Size);
|
|
PVOID RtlCreateHeap(ULONG Flags, PVOID HeapBase, SIZE_T ReserveSize, SIZE_T CommitSize, PVOID Lock, PRTL_HEAP_PARAMETERS Parameters);
|
|
PVOID RtlDestroyHeap(PVOID HeapHandle);
|
|
typedef enum _WINSTATIONINFOCLASS {
|
|
WinStationInformation = 8
|
|
} WINSTATIONINFOCLASS;
|
|
typedef struct _WINSTATIONINFORMATIONW {
|
|
BYTE Reserved2[70];
|
|
ULONG LogonId;
|
|
BYTE Reserved3[1140];
|
|
} WINSTATIONINFORMATIONW,*PWINSTATIONINFORMATIONW;
|
|
typedef BOOLEAN ( *PWINSTATIONQUERYINFORMATIONW)(HANDLE,ULONG,WINSTATIONINFOCLASS,PVOID,ULONG,PULONG);
|
|
#pragma pack(push,8)
|
|
extern const GUID IID_IPropertyFrame;
|
|
extern const GUID CLSID_CFontPropPage;
|
|
extern const GUID CLSID_CColorPropPage;
|
|
extern const GUID CLSID_CPicturePropPage;
|
|
extern const GUID CLSID_PersistPropset;
|
|
extern const GUID CLSID_ConvertVBX;
|
|
extern const GUID CLSID_StdFont;
|
|
extern const GUID CLSID_StdPicture;
|
|
extern const GUID GUID_HIMETRIC;
|
|
extern const GUID GUID_COLOR;
|
|
extern const GUID GUID_XPOSPIXEL;
|
|
extern const GUID GUID_YPOSPIXEL;
|
|
extern const GUID GUID_XSIZEPIXEL;
|
|
extern const GUID GUID_YSIZEPIXEL;
|
|
extern const GUID GUID_XPOS;
|
|
extern const GUID GUID_YPOS;
|
|
extern const GUID GUID_XSIZE;
|
|
extern const GUID GUID_YSIZE;
|
|
extern const GUID GUID_OPTIONVALUEEXCLUSIVE;
|
|
extern const GUID GUID_CHECKVALUEEXCLUSIVE;
|
|
extern const GUID GUID_FONTNAME;
|
|
extern const GUID GUID_FONTSIZE;
|
|
extern const GUID GUID_FONTBOLD;
|
|
extern const GUID GUID_FONTITALIC;
|
|
extern const GUID GUID_FONTUNDERSCORE;
|
|
extern const GUID GUID_FONTSTRIKETHROUGH;
|
|
extern const GUID GUID_HANDLE;
|
|
typedef struct tagOCPFIPARAMS {
|
|
ULONG cbStructSize;
|
|
HWND hWndOwner;
|
|
int x;
|
|
int y;
|
|
LPCOLESTR lpszCaption;
|
|
ULONG cObjects;
|
|
LPUNKNOWN *lplpUnk;
|
|
ULONG cPages;
|
|
CLSID *lpPages;
|
|
LCID lcid;
|
|
DISPID dispidInitialProperty;
|
|
} OCPFIPARAMS,*LPOCPFIPARAMS;
|
|
typedef struct tagFONTDESC {
|
|
UINT cbSizeofstruct;
|
|
LPOLESTR lpstrName;
|
|
CY cySize;
|
|
SHORT sWeight;
|
|
SHORT sCharset;
|
|
WINBOOL fItalic;
|
|
WINBOOL fUnderline;
|
|
WINBOOL fStrikethrough;
|
|
} FONTDESC,*LPFONTDESC;
|
|
typedef struct tagPICTDESC {
|
|
UINT cbSizeofstruct;
|
|
UINT picType;
|
|
__extension__ union {
|
|
struct {
|
|
HBITMAP hbitmap;
|
|
HPALETTE hpal;
|
|
} bmp;
|
|
struct {
|
|
HMETAFILE hmeta;
|
|
int xExt;
|
|
int yExt;
|
|
} wmf;
|
|
struct {
|
|
HICON hicon;
|
|
} icon;
|
|
struct {
|
|
HENHMETAFILE hemf;
|
|
} emf;
|
|
} ;
|
|
} PICTDESC,*LPPICTDESC;
|
|
typedef long OLE_XPOS_PIXELS;
|
|
typedef long OLE_YPOS_PIXELS;
|
|
typedef long OLE_XSIZE_PIXELS;
|
|
typedef long OLE_YSIZE_PIXELS;
|
|
typedef float OLE_XPOS_CONTAINER;
|
|
typedef float OLE_YPOS_CONTAINER;
|
|
typedef float OLE_XSIZE_CONTAINER;
|
|
typedef float OLE_YSIZE_CONTAINER;
|
|
typedef enum {
|
|
triUnchecked = 0,triChecked = 1,triGray = 2
|
|
} OLE_TRISTATE;
|
|
typedef VARIANT_BOOL OLE_OPTEXCLUSIVE;
|
|
typedef VARIANT_BOOL OLE_CANCELBOOL;
|
|
typedef VARIANT_BOOL OLE_ENABLEDEFAULTBOOL;
|
|
extern HRESULT DllRegisterServer(void);
|
|
extern HRESULT DllUnregisterServer(void);
|
|
extern __attribute__((dllimport)) HRESULT OleCreatePropertyFrame(HWND hwndOwner,UINT x,UINT y,LPCOLESTR lpszCaption,ULONG cObjects,LPUNKNOWN *ppUnk,ULONG cPages,LPCLSID pPageClsID,LCID lcid,DWORD dwReserved,LPVOID pvReserved);
|
|
extern __attribute__((dllimport)) HRESULT OleCreatePropertyFrameIndirect(LPOCPFIPARAMS lpParams);
|
|
extern __attribute__((dllimport)) HRESULT OleTranslateColor(OLE_COLOR clr,HPALETTE hpal,COLORREF *lpcolorref);
|
|
extern __attribute__((dllimport)) HRESULT OleCreateFontIndirect(LPFONTDESC lpFontDesc,const IID *const riid,LPVOID *lplpvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleCreatePictureIndirect(LPPICTDESC lpPictDesc,const IID *const riid,WINBOOL fOwn,LPVOID *lplpvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleLoadPicture(LPSTREAM lpstream,LONG lSize,WINBOOL fRunmode,const IID *const riid,LPVOID *lplpvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleLoadPictureEx(LPSTREAM lpstream,LONG lSize,WINBOOL fRunmode,const IID *const riid,DWORD xSizeDesired,DWORD ySizeDesired,DWORD dwFlags,LPVOID *lplpvObj);
|
|
extern __attribute__((dllimport)) HRESULT OleLoadPicturePath(LPOLESTR szURLorPath,LPUNKNOWN punkCaller,DWORD dwReserved,OLE_COLOR clrReserved,const IID *const riid,LPVOID *ppvRet);
|
|
extern __attribute__((dllimport)) HRESULT OleLoadPictureFile(VARIANT varFileName,LPDISPATCH *lplpdispPicture);
|
|
extern __attribute__((dllimport)) HRESULT OleLoadPictureFileEx(VARIANT varFileName,DWORD xSizeDesired,DWORD ySizeDesired,DWORD dwFlags,LPDISPATCH *lplpdispPicture);
|
|
extern __attribute__((dllimport)) HRESULT OleSavePictureFile(LPDISPATCH lpdispPicture,BSTR bstrFileName);
|
|
extern __attribute__((dllimport)) HCURSOR OleIconToCursor(HINSTANCE hinstExe,HICON hIcon);
|
|
#pragma pack(pop)
|