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.

62 lines
1.4 KiB

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1999, Microsoft Corp. All rights reserved.
  4. //
  5. // FILE
  6. //
  7. // sdopipemgr.h
  8. //
  9. // SYNOPSIS
  10. //
  11. // Declares the class PipelineMgr.
  12. //
  13. // MODIFICATION HISTORY
  14. //
  15. // 02/03/2000 Original version.
  16. //
  17. ///////////////////////////////////////////////////////////////////////////////
  18. #ifndef SDOPIPEMGR_H
  19. #define SDOPIPEMGR_H
  20. #if _MSC_VER >= 1000
  21. #pragma once
  22. #endif
  23. #include <vector>
  24. ///////////////////////////////////////////////////////////////////////////////
  25. //
  26. // CLASS
  27. //
  28. // PipelineMgr
  29. //
  30. ///////////////////////////////////////////////////////////////////////////////
  31. class PipelineMgr
  32. {
  33. public:
  34. _COM_SMARTPTR_TYPEDEF(IIasComponent, __uuidof(IIasComponent));
  35. HRESULT Initialize(ISdo* pSdoService) throw ();
  36. HRESULT Configure(ISdo* pSdoService) throw ();
  37. void Shutdown() throw ();
  38. HRESULT GetPipeline(IRequestHandler** handler) throw ();
  39. private:
  40. typedef std::vector<ComponentPtr>::iterator ComponentIterator;
  41. IIasComponentPtr pipeline; // The pipeline.
  42. std::vector<ComponentPtr> components; // Handlers configured by the SDOs
  43. };
  44. //////////
  45. // Links various SDO objects to handler properties.
  46. //////////
  47. HRESULT
  48. WINAPI
  49. LinkHandlerProperties(
  50. ISdo* pSdoService,
  51. IDataStoreObject* pDsObject
  52. ) throw ();
  53. #endif // SDOPIPEMGR_H