293 T to; |
294 T to; |
294 }; |
295 }; |
295 |
296 |
296 template<typename T> |
297 template<typename T> |
297 using Graph = std::deque<GraphEdge<T>>; |
298 using Graph = std::deque<GraphEdge<T>>; |
|
299 |
|
300 struct Message |
|
301 { |
|
302 QDateTime time; |
|
303 enum { Info, Warning, Error } type; |
|
304 QString text; |
|
305 }; |
|
306 |
|
307 inline Message logInfo(const QString text) |
|
308 { |
|
309 return Message{.time = QDateTime::currentDateTime(), .type = Message::Info, .text = text}; |
|
310 } |
|
311 |
|
312 inline Message logWarning(const QString text) |
|
313 { |
|
314 return Message{.time = QDateTime::currentDateTime(), .type = Message::Warning, .text = text}; |
|
315 } |
|
316 |
|
317 inline Message logError(const QString text) |
|
318 { |
|
319 return Message{.time = QDateTime::currentDateTime(), .type = Message::Error, .text = text}; |
|
320 } |