85 const std::vector<ITEM*>& aAddedItems,
86 const std::set<KIID>& aRemovedItems,
87 const std::vector<ITEM*>& aHeads,
88 const std::vector<LOGGER::EVENT_ENTRY>& aEvents )
90 wxString
result = wxString::Format(
"mode %d\n", aMode );
95 for(
const KIID& uuid : aRemovedItems )
96 result += wxString::Format(
"removed %s\n", uuid.AsString().c_str() );
98 for(
ITEM* item : aAddedItems )
99 result += wxString::Format(
"added %s\n", item->Format().c_str() );
101 for(
ITEM* item : aHeads )
102 result += wxString::Format(
"head %s\n", item->Format().c_str() );
135 wxStringTokenizer tokens( aLine );
136 wxString cmd = tokens.GetNextToken();
140 wxCHECK_MSG( cmd == wxT(
"event" ),
EVENT_ENTRY(),
"Line doesn't contain an event!" );
143 evt.
p.
x = wxAtoi( tokens.GetNextToken() );
144 evt.
p.
y = wxAtoi( tokens.GetNextToken() );
146 evt.
layer = wxAtoi( tokens.GetNextToken() );
147 n_uuids = wxAtoi( tokens.GetNextToken() );
149 for(
int i = 0; i < n_uuids; i++)
150 evt.
uuids.push_back(
KIID( tokens.GetNextToken() ) );
void Log(EVENT_TYPE evt, const VECTOR2I &pos=VECTOR2I(), const ITEM *item=nullptr, const SIZES_SETTINGS *sizes=nullptr, int aLayer=0)
static wxString FormatLogFileAsString(int aMode, const std::vector< ITEM * > &aAddedItems, const std::set< KIID > &aRemovedItems, const std::vector< ITEM * > &aHeads, const std::vector< EVENT_ENTRY > &aEvents)
void LogM(EVENT_TYPE evt, const VECTOR2I &pos=VECTOR2I(), std::vector< ITEM * > items={}, const SIZES_SETTINGS *sizes=nullptr, int aLayer=0)
std::vector< KIID > uuids
wxString result
Test unit parsing edge cases and error handling.