HOG2
GraphAlgorithm.h
Go to the documentation of this file.
1 /*
2  * GraphAlgorithm.h
3  * hog2
4  *
5  * Created by Nathan Sturtevant on 9/30/07.
6  * Copyright 2007 __MyCompanyName__. All rights reserved.
7  *
8  */
9 
10 #ifndef GRAPHALGORITHM_H
11 #define GRAPHALGORITHM_H
12 
13 #include "GraphEnvironment.h"
14 #include "Graph.h"
15 #include <vector>
16 
18 public:
19  virtual ~GraphAlgorithm() {}
20  virtual void GetPath(GraphEnvironment *env, Graph* _g, graphState from, graphState to, std::vector<graphState> &thePath) = 0;
21 
22  virtual uint64_t GetNodesExpanded() = 0;
23  virtual uint64_t GetNodesTouched() = 0;
24  virtual uint64_t GetNodesReopened() = 0;
25 
26  virtual double GetSolutionCost() = 0;
27  virtual const char* GetName() = 0;
28  virtual int GetSolutionEdges() = 0;
29 
30  virtual bool InitializeSearch(GraphEnvironment *env, Graph* g, graphState from, graphState to, std::vector<graphState> &thePath) = 0;
31  virtual bool DoSingleSearchStep(std::vector<graphState> &thePath) = 0;
32  virtual void OpenGLDraw() const = 0;
33 };
34 
35 #endif
GraphAlgorithm::InitializeSearch
virtual bool InitializeSearch(GraphEnvironment *env, Graph *g, graphState from, graphState to, std::vector< graphState > &thePath)=0
Graph.h
GraphAlgorithm::GetNodesExpanded
virtual uint64_t GetNodesExpanded()=0
GraphAlgorithm::GetSolutionEdges
virtual int GetSolutionEdges()=0
graphState
unsigned long graphState
Definition: GraphEnvironment.h:32
GraphAlgorithm::~GraphAlgorithm
virtual ~GraphAlgorithm()
Definition: GraphAlgorithm.h:19
GraphAlgorithm::GetNodesReopened
virtual uint64_t GetNodesReopened()=0
GraphAlgorithm::GetNodesTouched
virtual uint64_t GetNodesTouched()=0
Graph
A generic Graph class.
Definition: Graph.h:66
GraphAlgorithm::GetSolutionCost
virtual double GetSolutionCost()=0
GraphAlgorithm::OpenGLDraw
virtual void OpenGLDraw() const =0
GraphAlgorithm::GetName
virtual const char * GetName()=0
GraphAlgorithm::GetPath
virtual void GetPath(GraphEnvironment *env, Graph *_g, graphState from, graphState to, std::vector< graphState > &thePath)=0
GraphAlgorithm::DoSingleSearchStep
virtual bool DoSingleSearchStep(std::vector< graphState > &thePath)=0
GraphAlgorithm
Definition: GraphAlgorithm.h:17
GraphEnvironment
Definition: GraphEnvironment.h:291
GraphEnvironment.h