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.

93 lines
2.4 KiB

  1. //
  2. // Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
  3. //
  4. // ***************************************************************************
  5. //
  6. // Original Author: Rajesh Rao
  7. //
  8. // $Author: rajeshr $
  9. // $Date: 6/11/98 4:43p $
  10. // $Workfile:classfac.cpp $
  11. //
  12. // $Modtime: 6/11/98 11:21a $
  13. // $Revision: 1 $
  14. // $Nokeywords: $
  15. //
  16. //
  17. // Description: Contains the declaration for the DS Class Provider class factory and
  18. // the DS CLass Associations Provider class factory.
  19. //
  20. //***************************************************************************
  21. /////////////////////////////////////////////////////////////////////////
  22. #ifndef DS_CLASS_PROVIDER_CLASS_FACTORY_H
  23. #define DS_CLASS_PROVIDER_CLASS_FACTORY_H
  24. ////////////////////////////////////////////////////////////////
  25. //////
  26. ////// The DS Class provider class factory
  27. //////
  28. ///////////////////////////////////////////////////////////////
  29. class CDSClassProviderClassFactory : public IClassFactory
  30. {
  31. private:
  32. long m_ReferenceCount ;
  33. protected:
  34. public:
  35. // Initializer objects required by the classes used by the DLL
  36. static CDSClassProviderInitializer *s_pDSClassProviderInitializer;
  37. static CLDAPClassProviderInitializer *s_pLDAPClassProviderInitializer;
  38. CDSClassProviderClassFactory () ;
  39. ~CDSClassProviderClassFactory ( void ) ;
  40. //IUnknown members
  41. STDMETHODIMP QueryInterface ( REFIID , LPVOID FAR * ) ;
  42. STDMETHODIMP_( ULONG ) AddRef () ;
  43. STDMETHODIMP_( ULONG ) Release () ;
  44. //IClassFactory members
  45. STDMETHODIMP CreateInstance ( LPUNKNOWN , REFIID , LPVOID FAR * ) ;
  46. STDMETHODIMP LockServer ( BOOL ) ;
  47. };
  48. ////////////////////////////////////////////////////////////////
  49. //////
  50. ////// The DS Class Associations provider class factory
  51. //////
  52. ///////////////////////////////////////////////////////////////
  53. class CDSClassAssociationsProviderClassFactory : public IClassFactory
  54. {
  55. private:
  56. long m_ReferenceCount ;
  57. protected:
  58. public:
  59. CDSClassAssociationsProviderClassFactory () ;
  60. ~CDSClassAssociationsProviderClassFactory ( void ) ;
  61. //IUnknown members
  62. STDMETHODIMP QueryInterface ( REFIID , LPVOID FAR * ) ;
  63. STDMETHODIMP_( ULONG ) AddRef () ;
  64. STDMETHODIMP_( ULONG ) Release () ;
  65. //IClassFactory members
  66. STDMETHODIMP CreateInstance ( LPUNKNOWN , REFIID , LPVOID FAR * ) ;
  67. STDMETHODIMP LockServer ( BOOL ) ;
  68. };
  69. #endif // DS_CLASS_PROVIDER_CLASS_FACTORY_H