rstwtr.idl 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. //-----------------------------------------------------------------------------
  2. // File: rstwtr.idl
  3. //
  4. // Copyright: Copyright (c) Microsoft Corporation
  5. //
  6. // Contents: OLE DB interface definition
  7. //
  8. // Comments:
  9. //
  10. //-----------------------------------------------------------------------------
  11. #include "idlmulti.h"
  12. //
  13. LOCAL_INTERFACE(0c733a45-2a1c-11ce-ade5-00aa0044773d)
  14. interface IRowsetWatchRegion : IRowsetWatchAll {
  15. //
  16. // DBWATCHMODE and related definitions
  17. //
  18. typedef DWORD DBWATCHMODE;
  19. enum DBWATCHMODEENUM {
  20. DBWATCHMODE_ALL = 0x01,
  21. DBWATCHMODE_EXTEND = 0x02,
  22. DBWATCHMODE_MOVE = 0x04,
  23. DBWATCHMODE_COUNT = 0x08
  24. };
  25. //
  26. // DBROWWATCHCHANGE and related definitions
  27. //
  28. typedef DWORD DBROWCHANGEKIND;
  29. enum DBROWCHANGEKINDENUM {
  30. DBROWCHANGEKIND_INSERT,
  31. DBROWCHANGEKIND_DELETE,
  32. DBROWCHANGEKIND_UPDATE,
  33. DBROWCHANGEKIND_COUNT
  34. };
  35. typedef struct tagDBROWWATCHRANGE {
  36. HWATCHREGION hRegion;
  37. DBROWCHANGEKIND eChangeKind;
  38. HROW hRow;
  39. DBCOUNTITEM iRow;
  40. } DBROWWATCHCHANGE;
  41. HRESULT CreateWatchRegion(
  42. [in] DBWATCHMODE dwWatchMode,
  43. [out] HWATCHREGION * phRegion
  44. );
  45. HRESULT ChangeWatchMode(
  46. [in] HWATCHREGION hRegion,
  47. [in] DBWATCHMODE dwWatchMode
  48. );
  49. HRESULT DeleteWatchRegion(
  50. [in] HWATCHREGION hRegion
  51. );
  52. HRESULT GetWatchRegionInfo(
  53. [in] HWATCHREGION hRegion,
  54. [out] DBWATCHMODE * pdwWatchMode,
  55. [out] HCHAPTER * phChapter,
  56. [in, out] DBBKMARK * pcbBookmark,
  57. [out, size_is(,*pcbBookmark)] BYTE ** ppBookmark,
  58. [out] DBROWCOUNT * pcRows
  59. );
  60. HRESULT Refresh(
  61. [in, out] DBCOUNTITEM * pcChangesObtained,
  62. [out, size_is(,*pcChangesObtained)] DBROWWATCHCHANGE ** prgChanges
  63. );
  64. HRESULT ShrinkWatchRegion(
  65. [in] HWATCHREGION hRegion,
  66. [in] HCHAPTER hChapter,
  67. [in] DBBKMARK cbBookmark,
  68. [in, size_is(cbBookmark)] BYTE * pBookmark,
  69. [in] DBROWCOUNT cRows
  70. );
  71. }