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.

51 lines
1.6 KiB

  1. //******************************************************************************
  2. //
  3. // TEMPFILT.H
  4. //
  5. // Copyright (C) 1996-1999 Microsoft Corporation
  6. //
  7. //******************************************************************************
  8. #ifndef __WMI_ESS_TEMP_FILTER__H_
  9. #define __WMI_ESS_TEMP_FILTER__H_
  10. #include "binding.h"
  11. #include "filter.h"
  12. #include <comutil.h>
  13. class CTempFilter : public CGenericFilter
  14. {
  15. private:
  16. LPWSTR m_wszQuery;
  17. LPWSTR m_wszQueryLanguage;
  18. IWbemCallSecurity* m_pSecurity;
  19. CWbemPtr<IWbemObjectSink> m_pSink;
  20. bool m_bInternal;
  21. public:
  22. CTempFilter(CEssNamespace* pNamespace);
  23. HRESULT Initialize( LPCWSTR wszQueryLanguage,
  24. LPCWSTR wszQuery,
  25. long lFlags,
  26. PSID pOwnerSid,
  27. bool bInternal,
  28. IWbemContext* pContext,
  29. IWbemObjectSink* pSink );
  30. ~CTempFilter();
  31. virtual bool IsInternal() { return m_bInternal; }
  32. virtual HRESULT GetCoveringQuery(DELETE_ME LPWSTR& wszQueryLanguage,
  33. DELETE_ME LPWSTR& wszQuery, BOOL& bExact,
  34. DELETE_ME QL_LEVEL_1_RPN_EXPRESSION** ppExp);
  35. BOOL IsPermanent() { return m_pOwnerSid != NULL; }
  36. virtual DWORD GetForceFlags() {return WBEM_FLAG_STRONG_VALIDATION;}
  37. virtual HRESULT SetThreadSecurity( IUnknown** ppNewContext );
  38. HRESULT ObtainToken(IWbemToken** ppToken);
  39. STDMETHOD(SetStatus)(long a, long b, BSTR c, IWbemClassObject* d)
  40. { return m_pSink->SetStatus( a, b, c, d ); }
  41. DELETE_ME LPWSTR ComputeThisKey();
  42. };
  43. #endif