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.

101 lines
2.3 KiB

  1. //+-------------------------------------------------------------------
  2. //
  3. // File: perfsrv.hxx
  4. //
  5. // Contents: This file contins the DLL entry points
  6. // LibMain
  7. // DllGetClassObject (Bindings key func)
  8. // DllCanUnloadNow
  9. // CBasicBndCF (class factory)
  10. // History: 30-Mar-92 SarahJ Created
  11. //
  12. //---------------------------------------------------------------------
  13. #ifndef __PERFSRV_H__
  14. #define __PERFSRV_H__
  15. #include "iperf.h"
  16. extern "C" const IID CLSID_IPerf;
  17. #define SINGLE_THREADED L"Single Threaded"
  18. #define MULTI_THREADED L"Multi Threaded"
  19. #define KEY L"SOFTWARE\\Microsoft\\PerfCli"
  20. //+-------------------------------------------------------------------
  21. //
  22. // Class: CPerfCF
  23. //
  24. // Synopsis: Class Factory for CPerf
  25. //
  26. // Methods: IUnknown - QueryInterface, AddRef, Release
  27. // IClassFactory - CreateInstance
  28. //
  29. // History: 21-Mar-92 SarahJ Created
  30. //
  31. //--------------------------------------------------------------------
  32. class FAR CPerfCF: public IClassFactory
  33. {
  34. public:
  35. // Constructor/Destructor
  36. CPerfCF();
  37. ~CPerfCF();
  38. // IUnknown
  39. STDMETHODIMP QueryInterface(REFIID iid, void FAR * FAR * ppv);
  40. STDMETHOD_(ULONG,AddRef) ( void );
  41. STDMETHOD_(ULONG,Release) ( void );
  42. // IClassFactory
  43. STDMETHODIMP CreateInstance(
  44. IUnknown FAR* pUnkOuter,
  45. REFIID iidInterface,
  46. void FAR* FAR* ppv);
  47. STDMETHODIMP LockServer(BOOL fLock);
  48. private:
  49. ULONG ref_count;
  50. };
  51. //+-------------------------------------------------------------------
  52. //
  53. // Class: CPerf
  54. //
  55. // Synopsis: Test class
  56. //
  57. // Methods:
  58. //
  59. // History: 21-Mar-92 SarahJ Created
  60. //
  61. //--------------------------------------------------------------------
  62. class FAR CPerf: public IPerf
  63. {
  64. public:
  65. CPerf();
  66. ~CPerf();
  67. // IUnknown
  68. STDMETHODIMP QueryInterface(REFIID iid, void FAR * FAR * ppv);
  69. STDMETHOD_(ULONG,AddRef) ( void );
  70. STDMETHOD_(ULONG,Release) ( void );
  71. // IPerf
  72. STDMETHOD (NullCall) ( void );
  73. STDMETHOD (HResultCall) ( void );
  74. STDMETHOD (GetAnotherObject) ( IPerf ** );
  75. STDMETHOD (PassMoniker) ( IMoniker * );
  76. private:
  77. ULONG ref_count;
  78. };
  79. #endif
  80.