#pragma once
|
|
#include <vector>
|
#include <afxmt.h>
|
#include "CHThreadPools/TimerThreadPools.h"
|
|
typedef std::vector<CString> VectorString;
|
typedef std::vector<CString>::iterator VectorStringIt;
|
typedef std::vector<CString>::const_iterator constVectorStringIt;
|
|
interface INfsDriveRenewer2Parent
|
{
|
virtual void NDR2P_SendDriveDisconnected(const CString& strDrivePath) = 0;
|
};
|
|
class AFX_EXT_CLASS CNfsDriveRenewer : public CTimerThreadPools
|
{
|
public:
|
CNfsDriveRenewer(DWORD dwInterval=1000, INfsDriveRenewer2Parent* pNDR2P=NULL);
|
virtual ~CNfsDriveRenewer(void);
|
|
void SetNDR2P(INfsDriveRenewer2Parent* pNDR2P) { m_pNDR2P = pNDR2P; }
|
virtual void AddDrivePath(const CString& strDrivePath);
|
|
virtual BOOL StartThread();
|
virtual void StopThread();
|
|
protected:
|
virtual void TimerThreadProcess(PVOID pParameter);
|
virtual void RenewDrivePath();
|
|
protected:
|
INfsDriveRenewer2Parent* m_pNDR2P;
|
CCriticalSection m_csDrivePath;
|
VectorString m_vecDrivePath;
|
};
|