DeleteFileQueue.h
上传用户:tjfeida
上传日期:2013-03-10
资源大小:1917k
文件大小:2k
源码类别:

Ftp客户端

开发平台:

Visual C++

  1. // DeleteFileQueue.h: interface for the CDeleteFileQueue class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_DELETEFILEQUEUE_H__48984F3B_B009_4F5D_9F7D_5EE2BE520F7B__INCLUDED_)
  5. #define AFX_DELETEFILEQUEUE_H__48984F3B_B009_4F5D_9F7D_5EE2BE520F7B__INCLUDED_
  6. /*********************************************
  7. **该文件是属于WolfFTP工程中的。如果有什么问题
  8. **请联系
  9. **         tablejiang@21cn.com
  10. **或者访问
  11. **         http://wolfftp.51.net
  12. **以得到最新的支持。
  13. *********************************************/
  14. #if _MSC_VER > 1000
  15. #pragma once
  16. #endif // _MSC_VER > 1000
  17. /***********************************************************
  18. ** @Description:
  19. ** this class is used for store the delete file info.
  20. ** Because this file queue will be readed by multithread , 
  21. ** so the critical section technique is used in this class .
  22. ** And the file queue is a single chain .
  23. **
  24. ** @Note:
  25. ** Interface function :
  26. **
  27. ** addItem() : add a delete file to queue
  28. ** DeleteItem( ) : delete a file from queue .
  29. ** DeleteAllItem( ) : delete all files of queue .
  30. ** IsInFileQueue( ) : is specify file in this file queue .
  31. ** IsEmpty( ) : file queue is empty .
  32. ** GetNextItem( ) : Get next useful item .
  33. **
  34. **
  35. ** @Author: Table.JHM.太子
  36. ** e-mail:  tablejiang@21cn.com
  37. ** Date:  2001 4 10
  38. *************************************************************/
  39. class CDeleteFileQueue  
  40. {
  41. public:
  42. CDeleteFileQueue();
  43. virtual ~CDeleteFileQueue();
  44. public:
  45. FTPFILEINFO* GetNextItem( );
  46. BOOL IsEmpty( );
  47. BOOL DeleteAllFileQueue( );
  48. BOOL IsInFileQueue( FTPFILEINFO* pFileInfo );
  49. BOOL DeleteItem( FTPFILEINFO* pFileInfo );
  50. BOOL AddItem( FTPFILEINFO* pFileInfo );
  51. FTPFILEINFO* m_pFileTransmitQueue ;
  52. protected:
  53. CRITICAL_SECTION m_cs ;
  54. };
  55. #endif // !defined(AFX_DELETEFILEQUEUE_H__48984F3B_B009_4F5D_9F7D_5EE2BE520F7B__INCLUDED_)