1 /* 2 * PROJECT: ReactOS Automatic Testing Utility 3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+) 4 * PURPOSE: Class implementing a journaled test list for the Crash Recovery feature 5 * COPYRIGHT: Copyright 2009 Colin Finck (colin@reactos.org) 6 */ 7 8 class CJournaledTestList : public CTestList 9 { 10 private: 11 HANDLE m_hJournal; 12 size_t m_ListIterator; 13 vector<CTestInfo> m_List; 14 wstring m_JournalFile; 15 16 void LoadJournalFile(); 17 void OpenJournal(DWORD DesiredAccess, bool CreateNew = false); 18 void SerializeIntoJournal(const string& String); 19 void SerializeIntoJournal(const wstring& String); 20 void UnserializeFromBuffer(char** Buffer, string& Output); 21 void UnserializeFromBuffer(char** Buffer, wstring& Output); 22 void UpdateJournal(); 23 void WriteInitialJournalFile(); 24 25 public: 26 CJournaledTestList(CTest* Test); 27 ~CJournaledTestList(); 28 29 CTestInfo* GetNextTestInfo(); 30 }; 31