#ifndef FILES_H #define FILES_H #include #include #include #include using namespace std; enum FileOpType { FILE_OP_COPY = 0, FILE_OP_REMOVE, FILE_OP_STRIP }; struct FileRecord { FileRecord(); string listFile; int listLine; string sourceBase; string sourceName; string sourcePath; bool sourceIsDir; time_t sourceMod; off_t sourceSize; FileOpType fileOp; string outName; string outPath; off_t outSize; time_t outMod; bool outIsDir; unsigned int mode; }; int read_list_file(const string& filename, const map& variables, vector* files, vector* excludes); int locate(FileRecord* rec, const vector& search); void stat_out(const string& base, FileRecord* rec); string dir_part(const string& filename); int list_dir(const FileRecord& rec, const vector& excludes, vector* files); #endif // FILES_H