#include #include #include #include #include #include #include #ifndef ETAG_H #define ETAG_H struct ETagData{ wxString ETagValue; wxString ETagOrigValue; int ETagStatus; }; class ETagDB{ public: //ETagDB(wxString AccountDir); ETagDB() {}; ~ETagDB(); // ETag functions. void AddETag(wxString Filename, wxString ETag, wxString ETagOriginal); void RemoveETag(wxString Filename); void UpdateETag(wxString Filename, wxString ETag); void UpdateETag(wxString Filename, wxString ETag, wxString ETagOriginal); std::map* GetFilenamePointer(); wxString GetETag(wxString Filename); wxString GetETagOriginal(wxString Filename); bool CheckETagExists(wxString Filename); //boost::mutex ProcessLock; // ETagDB functions. bool WriteETagDB(); bool LoadETagDB(); void DeleteETagDB(); void SetupDB(wxString AccountDirFilename); bool GetWriteStatus(); std::map GetETagData(); //void *ProcessLock = new std::mutex; private: std::map FilenameETag; std::map FilenameETagOriginal; bool NeedsWrite = FALSE; bool MarkedDeleted = FALSE; wxString AccountDir; std::mutex *ProcessLock = new std::mutex(); }; /* class ETagDB2{ public: ETagDB2() {} ; ~ETagDB2() {}; // ETag functions. void AddETag(wxString Filename, wxString ETag, wxString ETagOriginal); void RemoveETag(wxString Filename); void UpdateETag(wxString Filename, wxString ETag); void UpdateETag(wxString Filename, wxString ETag, wxString ETagOriginal); wxString GetETag(wxString Filename); wxString GetETagOriginal(wxString Filename); // ETagDB functions. bool WriteETagDB(); bool LoadETagDB(); void DeleteETagDB(); bool GetWriteStatus(); private: std::map FilenameETag; std::map FilenameETagOriginal; bool NeedsWrite = FALSE; bool MarkedDeleted = FALSE; std::mutex ProcessLock; wxString AccountDir; }; */ #endif