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.

68 lines
1.4 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1992.
  5. //
  6. // File: MemDeSer.hxx
  7. //
  8. // History: 29-Jul-94 KyleP Created
  9. //
  10. //--------------------------------------------------------------------------
  11. #pragma once
  12. #include <sstream.hxx>
  13. class CQMemDeSerStream : public PDeSerStream
  14. {
  15. public:
  16. inline CQMemDeSerStream( BYTE * pb );
  17. virtual ~CQMemDeSerStream() {};
  18. virtual BYTE GetByte();
  19. virtual void SkipByte();
  20. virtual void GetChar( char * pc, ULONG cc );
  21. virtual void SkipChar( ULONG cc );
  22. virtual void GetWChar( WCHAR * pwc, ULONG cc );
  23. virtual void SkipWChar( ULONG cc );
  24. virtual USHORT GetUShort();
  25. virtual void SkipUShort();
  26. virtual ULONG GetULong();
  27. virtual void SkipULong();
  28. virtual ULONG PeekULong();
  29. virtual long GetLong();
  30. virtual void SkipLong();
  31. virtual float GetFloat();
  32. virtual void SkipFloat();
  33. virtual double GetDouble();
  34. virtual void SkipDouble();
  35. virtual char * GetString();
  36. virtual WCHAR * GetWString();
  37. virtual void GetBlob( BYTE * pb, ULONG cb );
  38. virtual void SkipBlob( ULONG cb );
  39. virtual void GetGUID( GUID & guid );
  40. virtual void SkipGUID();
  41. private:
  42. BYTE * _pbCurrent;
  43. };
  44. inline CQMemDeSerStream::CQMemDeSerStream( BYTE * pb )
  45. : _pbCurrent( pb )
  46. {
  47. }