-
Notifications
You must be signed in to change notification settings - Fork 1
/
mission.h
50 lines (41 loc) · 1.33 KB
/
mission.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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#ifndef MISSION_H
#define MISSION_H
#include "map.h"
#include "config.h"
#include "isearch.h"
#include "ilogger.h"
#include "searchresult.h"
#include "environmentoptions.h"
#include "astar.h"
#include "dijkstra.h"
#include "xmllogger.h"
//That's the wrap up class that first creates all the needed objects (Map, Search etc.)
//and then runs the search and then cleans everything up.
//Hint: Create Mission object in the main() function and then use it 1) to retreive all the data from input XML
//2) run the search 3) flush the results to output XML
class Mission
{
public:
Mission();
Mission (const char* fileName, int maptype);
~Mission();
bool getMap();
bool getConfig();
bool createLog();
void createSearch();
void createEnvironmentOptions();
void startSearch();
void printSearchResultsToConsole();
void saveSearchResultsToLog();
private:
const char* getAlgorithmName();
Map *map;
int maptype;
Config config;
EnvironmentOptions options;
ISearch* search;
ILogger* logger;
const char* fileName;
SearchResult sr;
};
#endif