BlockSource.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:2k
源码类别:

模拟服务器

开发平台:

C/C++

  1. // BlockSource.h: interface for the BlockSource class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_BLOCKSOURCE_H__701243D3_7556_46B9_BB6C_9573FD6E142F__INCLUDED_)
  5. #define AFX_BLOCKSOURCE_H__701243D3_7556_46B9_BB6C_9573FD6E142F__INCLUDED_
  6. #include "DataPointFromStream.h" // Added by ClassView
  7. #if _MSC_VER > 1000
  8. #pragma once
  9. #endif // _MSC_VER > 1000
  10. #include"DataPointFromStream.h"
  11. #define SliceSize 0x10000L
  12. #include <iterator>
  13. using namespace std;
  14. namespace PackageCQ
  15. {
  16. class BlockSource  
  17. {
  18. public:
  19. unsigned char GetCompressMethod();
  20. BlockSource(int ID, int DataLength,int UnCompressLength,char CompressMethod, DataPointFromStream &Point);
  21. void CloneBlockSourceToMe(BlockSource& Source);
  22. BlockSource(const BlockSource& Source);
  23. BlockSource(DataPointFromStream & Point);
  24. BlockSource();
  25. iostream& GetBlockStream() ;
  26. int GetLength() const;
  27. int GetID() const;
  28. virtual ~BlockSource();
  29. bool operator ==(const BlockSource &Source) const;
  30. bool operator > (const BlockSource &Source) const;
  31. bool operator < (const BlockSource &Source) const;
  32. const BlockSource& operator <<(iostream &DataStream);
  33. const BlockSource& operator = (BlockSource &Source);
  34. const BlockSource& operator >>(iostream &DataStream);
  35. private :
  36. DataPointFromStream  m_BlockPoint;
  37. unsigned long  m_BlockID;
  38. long  m_BlockLength;
  39. long  m_UnCompressBlockLength;
  40. unsigned char  m_CompressMethod;
  41. };
  42. }
  43. #endif // !defined(AFX_BLOCKSOURCE_H__701243D3_7556_46B9_BB6C_9573FD6E142F__INCLUDED_)