libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
Edge.h
1 #ifndef MHO_EDGE_H
2 #define MHO_EDGE_H
3 
4 #include <utility>
5 #include "EdgeInterface.h"
6 
7 namespace mho {
8 
9 class Node;
10 
11 class Edge : public EdgeInterface
12 {
13 public:
14  Edge();
15  Edge(NodeInterface* n1, NodeInterface* n2, cost_t c);
16  virtual ~Edge(){}
17 
18  NodeInterface* first(void);
19  NodeInterface* second(void);
20 
21  NodeInterface* oppositeSideOf(NodeInterface* n);
22 
23 
24  cost_t getCost(void);
25  void setCost(cost_t c);
26  void setFirst(NodeInterface* n);
27  void setSecond(NodeInterface* n);
28 
29 private:
30  std::pair<NodeInterface*,NodeInterface*> _nodes;
31  cost_t _cost;
32 
33 };
34 
35 } // namespace mho
36 
37 #endif // MHO_EDGE_H
Classe représentant un Node d'un Graph.
Definition: node.hpp:39
Definition: Edge.h:11
Definition: NodeInterface.h:11
Definition: EdgeInterface.h:12