Hierarchical Edge Bundle 1.0
J:/Caro/C++_Coding/HierarchicalEdgeBundle/HierarchicalEdgeBundle/header/Edge.h
Go to the documentation of this file.
00001 #pragma once
00002 #include "Vertex.h"
00003 #include <memory> 
00004 
00005 #include <boost/ptr_container/ptr_deque.hpp>
00006 #include <boost/ptr_container/ptr_map.hpp>
00007 #include <boost/assign/ptr_map_inserter.hpp>  // for 'ptr_map_insert()'
00008 
00009 using namespace boost;
00010 using namespace boost::assign;
00011 
00017 class Edge 
00018 {
00019 public:
00020         typedef boost::shared_ptr<Vertex> VertexPtr;
00026         Edge(VertexPtr start, VertexPtr end);
00030         virtual ~Edge(void);
00031 
00032 public:
00038         void SetEdges(VertexPtr start, VertexPtr end);
00043         void SetStartEdge(VertexPtr start);
00048         void SetEndEdge(VertexPtr end);
00053         VertexPtr GetStartEdge();
00058         VertexPtr GetEndEdge();
00059 
00064         void SetID(unsigned int id);
00069         unsigned int GetID();
00070 
00071 protected:
00072         VertexPtr m_start;
00073         VertexPtr m_end;
00074 
00075         unsigned int m_id;
00076 };
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines