Medical Imaging Interaction Toolkit
2023.04.00
Medical Imaging Interaction Toolkit
|
Go to the documentation of this file.
13 #ifndef mitkUndirectedGraph_h
14 #define mitkUndirectedGraph_h
19 #include <boost/graph/adjacency_list.hpp>
44 template <
class TVertex,
class TEdge>
60 typedef boost::adjacency_list<boost::listS,
63 boost::property<vertex_properties_t, VertexType>,
64 boost::property<edge_properties_t, EdgeType>>
85 this->
GetSource()->UpdateOutputInformation();
146 void Clear()
override;
172 #include "mitkUndirectedGraph.txx"
UndirectedGraph< VertexType, EdgeType > & operator=(const UndirectedGraph< VertexType, EdgeType > &rhs)
VertexType GetVertex(const VertexDescriptorType &vertex)
EdgeType GetEdge(const EdgeDescriptorType &edge)
BOOST_INSTALL_PROPERTY(vertex, properties)
Base Class for Tube Graph Vertices.
void RemoveVertex(const VertexDescriptorType &vertex)
bool RequestedRegionIsOutsideOfTheBufferedRegion() override
Determine whether the RequestedRegion is outside of the BufferedRegion.
const GraphType & GetGraph() const
EdgeDescriptorType GetEdgeDescriptorByVerices(const VertexDescriptorType &vertexA, const VertexDescriptorType &vertexB) const
Template class for undirected graphs.Paramters should be the vertex and edge classes,...
void SetEdge(const EdgeDescriptorType &edge, const EdgeType &edgeData)
void SetRequestedRegionToLargestPossibleRegion() override
Set the RequestedRegion to the LargestPossibleRegion.
itk::SmartPointer< mitk::BaseDataSource > GetSource() const
Get the process object that generated this data object.
void UpdateOutputInformation() override
DataCollection - Class to facilitate loading/accessing structured data.
bool VerifyRequestedRegion() override
Verify that the RequestedRegion is within the LargestPossibleRegion.
boost::graph_traits< GraphType >::edge_iterator EdgeIteratorType
std::vector< EdgeType > GetAllEdgesOfAVertex(const VertexDescriptorType &vertex) const
boost::graph_traits< GraphType >::out_edge_iterator OutEdgeIteratorType
~UndirectedGraph() override
Base Class for Tube Graph Edges.
int GetNumberOfVertices() const
boost::graph_traits< GraphType >::edge_descriptor EdgeDescriptorType
void SetRequestedRegion(const itk::DataObject *) override
Set the requested region from this data object to match the requested region of the data object passe...
boost::adjacency_list< boost::listS, boost::vecS, boost::undirectedS, boost::property< vertex_properties_t, VertexType >, boost::property< edge_properties_t, EdgeType > > GraphType
EdgeDescriptorType GetEdgeDescriptor(const EdgeType &edgeData) const
std::vector< EdgeType > GetVectorOfAllEdges() const
Base of all data objects.
void SetVertex(const VertexDescriptorType &vertex, const VertexType &vertexData)
void RemoveEdge(const EdgeDescriptorType &edge)
boost::graph_traits< GraphType >::in_edge_iterator InEdgeIteratorType
mitkClassMacro(UndirectedGraph, BaseData)
VertexDescriptorType GetVertexDescriptor(const VertexType &vertexData) const
int GetNumberOfEdges() const
boost::graph_traits< GraphType >::adjacency_iterator AdjacenyIteratorType
std::vector< VertexType > GetVectorOfAllVertices() const
EdgeDescriptorType AddEdge(const VertexDescriptorType &vertexA, const VertexDescriptorType &vertexB, const EdgeType &edgeData)
std::pair< VertexType, VertexType > GetVerticesOfAnEdge(const EdgeDescriptorType &edge) const
VertexDescriptorType AddVertex(const VertexType &vertexData)
boost::graph_traits< GraphType >::vertex_iterator VertexIteratorType
boost::graph_traits< GraphType >::vertex_descriptor VertexDescriptorType