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.

74 lines
1.9 KiB

  1. /******************************************************************************
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. SystemMonitor.h
  5. Abstract:
  6. This file contains the declaration of the classes used to implement
  7. the Setup Finalizer class.
  8. Revision History:
  9. Davide Massarenti (Dmassare) 08/25/99
  10. created
  11. ******************************************************************************/
  12. #if !defined(__INCLUDED___PCH___SYSTEMMONITOR_H___)
  13. #define __INCLUDED___PCH___SYSTEMMONITOR_H___
  14. #include <MPC_COM.h>
  15. #include <MPC_config.h>
  16. //
  17. // From HelpServiceTypeLib.idl
  18. //
  19. #include <HelpServiceTypeLib.h>
  20. #include <TaxonomyDatabase.h>
  21. #include <PCHUpdate.h>
  22. /////////////////////////////////////////////////////////////////////////////
  23. class CPCHSystemMonitor :
  24. public CComObjectRootEx<MPC::CComSafeMultiThreadModel>,
  25. public MPC::Thread<CPCHSystemMonitor,IUnknown>
  26. {
  27. bool m_fLoadCache;
  28. bool m_fScanBatch;
  29. bool m_fDataCollection;
  30. //////////////////////////////////////////////////////////////////////
  31. HRESULT Run ();
  32. HRESULT RunLoop();
  33. //////////////////////////////////////////////////////////////////////
  34. public:
  35. CPCHSystemMonitor();
  36. virtual ~CPCHSystemMonitor();
  37. ////////////////////////////////////////////////////////////////////////////////
  38. static CPCHSystemMonitor* s_GLOBAL;
  39. static HRESULT InitializeSystem();
  40. static void FinalizeSystem ();
  41. ////////////////////////////////////////////////////////////////////////////////
  42. HRESULT EnsureStarted();
  43. void Shutdown ();
  44. HRESULT Startup();
  45. HRESULT LoadCache ( );
  46. HRESULT TriggerDataCollection( /*[in]*/ bool fStart );
  47. HRESULT TaskScheduler_Add ( /*[in]*/ bool fAfterBoot );
  48. HRESULT TaskScheduler_Remove( );
  49. };
  50. #endif // !defined(__INCLUDED___PCH___SYSTEMMONITOR_H___)