Source code of Windows XP (NT5)
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.

72 lines
1.7 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1992.
  5. //
  6. // File: peiter.hxx
  7. //
  8. // Contents: PExposedIterator class
  9. //
  10. // Classes: PExposedIterator
  11. //
  12. // History: 18-Jan-93 DrewB Created
  13. //
  14. // Notes: PExposedIterator is a partial exposed iterator
  15. // implementation used by CExposedIterator.
  16. //
  17. //----------------------------------------------------------------------------
  18. #ifndef __PEITER_HXX__
  19. #define __PEITER_HXX__
  20. #ifndef REF
  21. #include <dfmem.hxx>
  22. #ifndef REF
  23. interface PExposedIterator : public CLocalAlloc
  24. #else
  25. interface PExposedIterator
  26. #endif //!REF
  27. {
  28. public:
  29. SCODE hSkip(ULONG celt, BOOL fProps);
  30. SCODE hReset(void);
  31. inline LONG hAddRef(void);
  32. LONG hRelease(void);
  33. SCODE hQueryInterface(REFIID iid,
  34. REFIID riidSelf,
  35. IUnknown *punkSelf,
  36. void **ppv);
  37. protected:
  38. CBasedPubDocFilePtr _ppdf;
  39. CDfName _dfnKey;
  40. #ifndef REF
  41. CBasedDFBasisPtr _pdfb;
  42. CPerContext *_ppc;
  43. #endif //!REF
  44. LONG _cReferences;
  45. ULONG _sig;
  46. };
  47. //+---------------------------------------------------------------------------
  48. //
  49. // Member: PExposedIterator::hAddRef, public
  50. //
  51. // Synopsis: AddRef helper
  52. //
  53. // History: 18-Jan-93 DrewB Created
  54. //
  55. //----------------------------------------------------------------------------
  56. LONG PExposedIterator::hAddRef(void)
  57. {
  58. olDebugOut((DEB_ITRACE, "In PExposedIterator::hAddRef:%p()\n", this));
  59. InterlockedIncrement(&_cReferences);
  60. olDebugOut((DEB_ITRACE, "Out PExposedIterator::hAddRef\n"));
  61. return _cReferences;
  62. }
  63. #endif //!REF
  64. #endif // #ifndef __PEITER_HXX__