-
Notifications
You must be signed in to change notification settings - Fork 28
/
ilogger.h
26 lines (23 loc) · 976 Bytes
/
ilogger.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef ILOGGER_H
#define ILOGGER_H
#include "map.h"
#include "node.h"
#include <unordered_map>
#include <list>
class ILogger
{
public:
ILogger(std::string loglevel) {this->loglevel = loglevel;}
virtual bool getLog(const char* FileName, const std::string* LogParams) = 0;
virtual void saveLog() = 0;
virtual void writeToLogMap(const Map& map, const std::list<Node>& path) = 0;
virtual void writeToLogOpenClose(const std::vector<std::list<Node>>& open, const std::unordered_map<int,Node>& close, bool last) = 0;
virtual void writeToLogPath(const std::list<Node>& path) = 0;
virtual void writeToLogHPpath(const std::list<Node>& path) = 0;
virtual void writeToLogNotFound() = 0;
virtual void writeToLogSummary(unsigned int numberofsteps, unsigned int nodescreated, float length, double time, double cellSize) = 0;
virtual ~ILogger() {};
protected:
std::string loglevel;
};
#endif