wangzhengquan
2020-06-08 f48e2e378bacffb96cb5575876a7b2f0081de0be
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#ifndef __NETDISK_H__
#define __NETDISK_H__
#include "usg_common.h"
 
typedef struct Netdisk_EnvConfig {
    std::string libpath;
} Netdisk_EnvConfig;
 
typedef struct Netdisk_LoginInfo {
 
    std::string username;
    std::string password;
    std::string host;
    int port;
 
} Netdisk_LoginInfo;
 
typedef struct Netdisk_DownloadRequest {
    int channel;             //通道号
    struct tm start;         //开始时间
    struct tm end;           //结束时间
    std::string destpath;     //存放路径+文件名
 
} Netdisk_DownloadRequest;
 
 
 
// 网络硬盘 抽象类
class Netdisk {
 
protected:
    std::string devicename; //设备名称
    int startChannel;       //起始通道号
    int maxChannels;        //最大通道数
 
    long userid;            //用户id
    std::string username;   //用户名
    std::string password;   //密码
    std::string host;       //ip
    int port;               //端口
 
public:
    Netdisk(const std::string &_devicename): devicename(_devicename) {}
 
    virtual ~Netdisk() {}
    
 
    virtual int login(Netdisk_LoginInfo &loginInfo) = 0;
 
    virtual int logout() = 0;
 
    virtual int downloadByTime(Netdisk_DownloadRequest &request, std::vector<std::string> *files) = 0;
 
    int getStartChannel() {return startChannel;}
 
    int getMaxChannels() {return maxChannels;}
 
};
 
#endif