Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
3.0 KiB

  1. //---------------------------------------------------------------------------
  2. // Fastguid.h : Macros used to speed up guid comparisons
  3. //
  4. // Copyright (c) 1996 Microsoft Corporation, All Rights Reserved
  5. // Developed by Sheridan Software Systems, Inc.
  6. //---------------------------------------------------------------------------
  7. #ifndef __FASTGUID__
  8. #define __FASTGUID__
  9. #define SUPPORTS_ERROR_INFO(itf) \
  10. case Data1_##itf: \
  11. if(DO_GUIDS_MATCH(riid, IID_##itf)) \
  12. { \
  13. fSupportsErrorInfo = TRUE; \
  14. } \
  15. break;
  16. #define QI_INTERFACE_SUPPORTED(pObj, itf) \
  17. case Data1_##itf: \
  18. if(DO_GUIDS_MATCH(riid, IID_##itf)) \
  19. { \
  20. *ppvObjOut = (void *)(itf *)pObj; \
  21. } \
  22. break;
  23. #define QI_INTERFACE_SUPPORTED_IF(pObj, itf, supportif) \
  24. case Data1_##itf: \
  25. if(supportif && DO_GUIDS_MATCH(riid, IID_##itf)) \
  26. { \
  27. *ppvObjOut = (void *)(itf *)pObj; \
  28. } \
  29. break;
  30. #define BOOL_PROP_SUPPORTED(itf, value) \
  31. case itf: \
  32. var.boolVal = (VARIANT_BOOL)value; \
  33. fPropSupported = TRUE; \
  34. break;
  35. #define I4_PROP_SUPPORTED(itf, value) \
  36. case itf: \
  37. var.vt = VT_I4; \
  38. var.lVal = value; \
  39. fPropSupported = TRUE; \
  40. break;
  41. // Viaduct 1
  42. #define Data1_IUnknown 0x00000000
  43. #define Data1_IConnectionPointContainer 0xb196b284
  44. #define Data1_INotifyDBEvents 0xdb526cc0
  45. #define Data1_IRowset 0x0c733a7c
  46. #define Data1_IRowsetLocate 0x0c733a7d
  47. #define Data1_IRowsetScroll 0x0c733a7e
  48. #define Data1_IAccessor 0x0c733a8c
  49. #define Data1_IColumnsInfo 0x0c733a11
  50. #define Data1_IRowsetInfo 0x0c733a55
  51. #define Data1_IRowsetChange 0x0c733a05
  52. #define Data1_IRowsetUpdate 0x0c733a6d
  53. //#define Data1_IRowsetNewRow
  54. #define Data1_IRowsetIdentity 0x0c733a09
  55. //#define Data1_IRowsetDelete
  56. #define Data1_IRowsetFind 0x0c733a0d
  57. #define Data1_IRowsetAsynch 0x0c733a0f
  58. #define Data1_ISupportErrorInfo 0xdf0b3d60
  59. #define Data1_IRowPosition 0x0c733a94
  60. // Viaduct 2
  61. #define Data1_IStream 0x00000030
  62. #define Data1_IStreamEx 0xf74e27fc
  63. #define Data1_ICursor 0x9f6aa700
  64. #define Data1_ICursorMove 0xacff0690
  65. #define Data1_ICursorScroll 0xbb87e420
  66. #define Data1_ICursorUpdateARow 0xd14216a0
  67. #define Data1_ICursorFind 0xe01d7850
  68. #define Data1_IEntryID 0xe4d19810
  69. #define Data1_IRowPositionChange 0x0997a571
  70. #endif //__FASTGUID__