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.

91 lines
2.6 KiB

  1. //***************************************************************************
  2. //
  3. // File:
  4. //
  5. // Module: MS SNMP Provider
  6. //
  7. // Purpose:
  8. //
  9. // Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
  10. //
  11. //***************************************************************************
  12. #ifndef __PROPGET_H
  13. #define __PROPGET_H
  14. class SnmpGetResponseEventObject : public SnmpResponseEventObject
  15. {
  16. private:
  17. protected:
  18. SnmpSession *session ;
  19. GetOperation *operation ;
  20. IWbemClassObject *classObject ;
  21. IWbemClassObject *instanceObject ;
  22. SnmpGetClassObject snmpObject ;
  23. BOOL processComplete ;
  24. BOOL SendSnmp ( WbemSnmpErrorObject &a_errorObject ) ;
  25. public:
  26. SnmpGetResponseEventObject ( CImpPropProv *provider , IWbemClassObject *classObject , IWbemContext *a_Context ) ;
  27. ~SnmpGetResponseEventObject () ;
  28. SnmpClassObject *GetSnmpClassObject () { return & snmpObject ; }
  29. IWbemClassObject *GetClassObject () { return classObject ; }
  30. IWbemClassObject *GetInstanceObject () { return instanceObject ; }
  31. } ;
  32. class SnmpGetEventObject : public SnmpGetResponseEventObject
  33. {
  34. private:
  35. protected:
  36. wchar_t *objectPath ;
  37. BOOL GetInstanceClass ( WbemSnmpErrorObject &a_errorObject , BSTR Class ) ;
  38. BOOL DispatchKeyLessClass ( WbemSnmpErrorObject &a_errorObject , wchar_t *a_Class ) ;
  39. BOOL SetProperty ( WbemSnmpErrorObject &a_errorObject , WbemSnmpProperty *property , KeyRef *a_KeyReference ) ;
  40. BOOL SetClassKeySpecKey ( WbemSnmpErrorObject &a_errorObject , wchar_t *a_Class ) ;
  41. BOOL DispatchClassKeySpec ( WbemSnmpErrorObject &a_errorObject , wchar_t *a_Class ) ;
  42. BOOL SetInstanceSpecKeys ( WbemSnmpErrorObject &a_errorObject , ParsedObjectPath *t_ParsedObjectPath ) ;
  43. BOOL DispatchInstanceSpec ( WbemSnmpErrorObject &a_errorObject , ParsedObjectPath *t_ParsedObjectPath ) ;
  44. BOOL DispatchObjectPath ( WbemSnmpErrorObject &a_errorObject , ParsedObjectPath *t_ParsedObjectPath ) ;
  45. BOOL DispatchObjectReference ( WbemSnmpErrorObject &a_errorObject , ParsedObjectPath *t_ParsedObjectPath ) ;
  46. BOOL ParseObjectPath ( WbemSnmpErrorObject &a_errorObject ) ;
  47. public:
  48. SnmpGetEventObject ( CImpPropProv *provider , wchar_t *ObjectPath , IWbemContext *a_Context ) ;
  49. ~SnmpGetEventObject () ;
  50. } ;
  51. class SnmpGetAsyncEventObject : public SnmpGetEventObject
  52. {
  53. private:
  54. ULONG state ;
  55. IWbemObjectSink *notificationHandler ;
  56. protected:
  57. public:
  58. SnmpGetAsyncEventObject ( CImpPropProv *provider , wchar_t *ObjectPath , IWbemObjectSink *notify , IWbemContext *a_Context ) ;
  59. ~SnmpGetAsyncEventObject () ;
  60. void Process () ;
  61. void ReceiveComplete () ;
  62. } ;
  63. #endif // __PROPGET_H