File: StructEnumDefinition_CopyEngine.h

package info (click to toggle)
ultracopier 2.2.6.0-1.1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 40,480 kB
  • sloc: ansic: 60,903; cpp: 59,790; sh: 6,882; asm: 723; xml: 675; makefile: 320; perl: 264
file content (119 lines) | stat: -rwxr-xr-x 2,444 bytes parent folder | download | duplicates (2)
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
/** \file StructEnumDefinition_CopyEngine.h
\brief Define the structure and enumeration used in the copy engine
\author alpha_one_x86
\licence GPL3, see the file COPYING */

#include <string>
#include <regex>

#ifndef STRUCTDEF_COPYENGINE_H
#define STRUCTDEF_COPYENGINE_H

/// \brief Define action if file exists
enum FileExistsAction
{
    FileExists_NotSet=0,
    FileExists_Cancel=1,
    FileExists_Skip=2,
    FileExists_Overwrite=3,
    FileExists_OverwriteIfNotSameMdate=4,
    FileExists_OverwriteIfNewer=5,
    FileExists_OverwriteIfOlder=6,
    FileExists_OverwriteIfNotSameSize=7,
    FileExists_OverwriteIfNotSameSizeAndDate=8,
    FileExists_Rename=9
};

/// \brief Define action if file error
enum FileErrorAction
{
    FileError_NotSet=1,
    FileError_Cancel=2,
    FileError_Skip=3,
    FileError_Retry=4,
    FileError_PutToEndOfTheList=5
};

/// \brief to have the transfer status
enum TransferStat
{
    TransferStat_Idle=0,
    TransferStat_PreOperation=1,
    TransferStat_WaitForTheTransfer=2,
    TransferStat_Transfer=3,
    TransferStat_PostTransfer=5,
    TransferStat_PostOperation=6,
    TransferStat_Checksum=7
};

/// \brief Define overwrite mode
/*enum OverwriteMode
{
    OverwriteMode_None,
    OverwriteMode_Overwrite,
    OverwriteMode_OverwriteIfNewer,
    OverwriteMode_OverwriteIfNotSameModificationDate
};*/

/// \brief Define action if file exists
enum FolderExistsAction
{
    FolderExists_NotSet=0,
    FolderExists_Cancel=1,
    FolderExists_Merge=2,
    FolderExists_Skip=3,
    FolderExists_Rename=4
};

enum ErrorType
{
    ErrorType_Normal=0,
    ErrorType_Folder=1,
    ErrorType_FolderWithRety=2,
    ErrorType_Rights=3
};

enum SearchType
{
    SearchType_rawText=0,
    SearchType_simpleRegex=1,
    SearchType_perlRegex=2
};

enum ApplyOn
{
    ApplyOn_file=0,
    ApplyOn_fileAndFolder=1,
    ApplyOn_folder=2
};

/** to store into different way the filter rules to be exported */
struct Filters_rules
{
    std::string search_text;
    SearchType search_type;
    ApplyOn apply_on;
    bool need_match_all;
    std::regex regex;
};

/// \brief get action type
enum ActionType
{
    ActionType_MkPath=1,
    ActionType_MovePath=2,
    ActionType_RealMove=3,
    #ifdef ULTRACOPIER_PLUGIN_RSYNC
    ActionType_RmSync=4,
    #endif
    ActionType_SyncDate=5
};

struct Diskspace
{
    std::string drive;
    uint64_t requiredSpace;
    uint64_t freeSpace;
};

#endif // STRUCTDEF_COPYENGINE_H