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.

64 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. #include <dfmem.hxx>
  21. interface PExposedIterator : public CLocalAlloc
  22. {
  23. public:
  24. SCODE hSkip(ULONG celt, BOOL fProps);
  25. SCODE hReset(void);
  26. inline LONG hAddRef(void);
  27. LONG hRelease(void);
  28. SCODE hQueryInterface(REFIID iid,
  29. REFIID riidSelf,
  30. IUnknown *punkSelf,
  31. void **ppv);
  32. protected:
  33. CBasedPubDocFilePtr _ppdf;
  34. CDfName _dfnKey;
  35. CBasedDFBasisPtr _pdfb;
  36. CPerContext *_ppc;
  37. LONG _cReferences;
  38. ULONG _sig;
  39. };
  40. //+---------------------------------------------------------------------------
  41. //
  42. // Member: PExposedIterator::hAddRef, public
  43. //
  44. // Synopsis: AddRef helper
  45. //
  46. // History: 18-Jan-93 DrewB Created
  47. //
  48. //----------------------------------------------------------------------------
  49. LONG PExposedIterator::hAddRef(void)
  50. {
  51. olDebugOut((DEB_ITRACE, "In PExposedIterator::hAddRef:%p()\n", this));
  52. LONG lRefs = InterlockedIncrement(&_cReferences);
  53. olDebugOut((DEB_ITRACE, "Out PExposedIterator::hAddRef\n"));
  54. return lRefs;
  55. }
  56. #endif // #ifndef __PEITER_HXX__