Classes | |
| struct | AllEdges |
| dummy predicate that always returns true for edges More... | |
| struct | AllNodes |
| class | CachedNodeMap |
| A map<unsigned, M::ConstPtr> backed by a warehouse collection. More... | |
| class | ConstraintGraph |
| class | ConstraintGraphVisualizer |
| Class used to visualize constraint graph. More... | |
| struct | DataNotFoundException |
| Could not find exactly one entry for a given topic-node pair. More... | |
| class | DiffPublisher |
| class | DiffSubscriber |
| struct | DisconnectedComponentException |
| Exception when trying to optimize a disconnected graph. More... | |
| struct | DuplicateEdgeIdException |
| Exception for trying to add an EdgeId that already exists. More... | |
| struct | DuplicateNodeIdException |
| Exception for trying to add a NodeId that already exists. More... | |
| struct | NodeDuplicateDataException |
| Node n already had data. More... | |
| struct | NoOptimizedPoseException |
| Exception for when there's no optimized pose associated with a graph node. More... | |
| struct | NoPathException |
| Exception when no path found in graph between two nodes. More... | |
| struct | OptimizedDistancePredicate |
| class | PoseGraphException |
| A base class for all pose_graph exceptions; provides a handy boost::format parent constructor. More... | |
| struct | Spa2DConversionResult |
| struct | UnknownDBTopicException |
| Topic doesn't exist in the graph db. More... | |
| struct | UnknownEdgeIdException |
| Exception for unknown EdgeId. More... | |
| struct | UnknownNodeIdException |
| Exception for unknown NodeId. More... | |
| class | Visitor |
Typedefs | |
| typedef pair< DistanceMap, PredecessorMap > | DijkstraResult |
| typedef map< GraphVertex, double > | DistanceMap |
| typedef map< unsigned, GraphEdge > | EdgeMap |
| typedef std::set< unsigned > | EdgeSet |
| typedef boost::adjacency_list < boost::multisetS, boost::listS, boost::undirectedS, msg::Node, msg::Edge > | Graph |
| typedef boost::graph_traits < Graph >::edge_descriptor | GraphEdge |
| typedef boost::graph_traits < Graph >::vertex_descriptor | GraphVertex |
| typedef pair< unsigned, unsigned > | IncidentNodes |
| typedef boost::mutex::scoped_lock | Lock |
| typedef std::map< unsigned, unsigned > | NodeIndexMap |
| typedef map< unsigned, GraphVertex > | NodeMap |
| typedef std::pair< unsigned, unsigned > | NodePair |
| typedef std::map< unsigned, tf::Pose > | NodePoseMap |
| typedef std::set< unsigned > | NodeSet |
| typedef map< GraphVertex, GraphVertex > | PredecessorMap |
| typedef std::pair< std::vector < unsigned >, std::vector < unsigned > > | ShortestPath |
| typedef boost::shared_ptr < sba::SysSPA2d > | Spa2DPtr |
Functions | |
| void | applyDiff (ConstraintGraph *graph, const msg::ConstraintGraphDiff &diff) |
| Apply a diff to a ConstraintGraph. | |
| NodeSet | componentContaining (const ConstraintGraph &g, unsigned n) |
| std::vector< NodeSet > | connectedComponents (const ConstraintGraph &g) |
| ConstraintGraph | constraintGraphFromMessage (const msg::ConstraintGraphMessage &msg) |
| Create a ConstraintGraph from a ROS message. | |
| msg::ConstraintGraphMessage | constraintGraphToMessage (const ConstraintGraph &graph) |
| Convert a ConstraintGraph to the corresponding ros message. | |
| Spa2DConversionResult | constraintGraphToSpa2D (const ConstraintGraph &g, const NodePoseMap &init, const NodeSet &nodes) |
| DijkstraResult | dijkstra (const Graph &g, const GraphVertex &src) |
| template<class NodePred , class EdgePred > | |
| NodeSet | filterNearbyNodes (const ConstraintGraph &g, const unsigned n, const NodePred &node_pred, const EdgePred &edge_pred) |
| template<class NodePredicate , class EdgePredicate > | |
| NodeSet | filterNearbyNodes (const ConstraintGraph &g, const unsigned n, const NodePredicate &node_pred, const EdgePredicate &edge_pred) |
| template<class Predicate > | |
| NodeSet | filterNearbyNodes (const ConstraintGraph &g, const unsigned n, const Predicate &p) |
| template<class M > | |
| M::ConstPtr | getNodeData (wh::Collection< M > *client, const unsigned n) |
| template<class M > | |
| M::ConstPtr | getNodeData (warehouse::Collection< M > *coll, unsigned n) |
| Get the message associated with node n of the graph. | |
| tf::Pose | getNodePose (const sba::Node2d &n) |
| Return the Pose corresponding to a spa node. | |
| double | getYaw (const Quaterniond &q) |
| unsigned | index (const unsigned i, const unsigned j) |
| Node2d | makeNode (const double x, const double y, const double theta) |
| Con2dP2 | makeSpa2DConstraint (const PoseWithPrecision &constraint) |
| std::vector< std::string > | nodeIndex () |
| Use to index things by node. | |
| std::string | nodeMetadata (unsigned n) |
| Generate the metadata to associate a node n of the graph to a message being stored in the warehouse. | |
| NodePoseMap | optimizeGraph2D (const ConstraintGraph &g, const NodePoseMap &init, const NodeSet &nodes) |
| Optimize a component of a graph using SPA 2d. | |
| NodePoseMap | optimizeGraph2D (const ConstraintGraph &g, const NodePoseMap &init) |
| Optimize a graph using SPA 2d init Initial estimates. | |
| Eigen::Vector4d | quaternionMsgToVector4d (const geometry_msgs::Quaternion &m) |
| tf::Pose | relativePose (const ConstraintGraph &g, const unsigned n1, const unsigned n2) |
| ShortestPath | shortestPath (const ConstraintGraph &g, const unsigned src, const unsigned dest) |
| Eigen::Vector4d | translationToVector4d (const geometry_msgs::Point &p) |
| void | verifyConnected (const ConstraintGraph &g, const NodeSet &nodes) |
| typedef pair<DistanceMap, PredecessorMap> pose_graph::DijkstraResult |
Definition at line 97 of file graph_search.cpp.
| typedef map<GraphVertex, double> pose_graph::DistanceMap |
Definition at line 95 of file graph_search.cpp.
| typedef map<unsigned, GraphEdge> pose_graph::EdgeMap |
Definition at line 52 of file constraint_graph.cpp.
| typedef std::set<unsigned> pose_graph::EdgeSet |
Definition at line 74 of file constraint_graph.h.
| typedef boost::adjacency_list<boost::multisetS, boost::listS, boost::undirectedS, msg::Node, msg::Edge> pose_graph::Graph |
Definition at line 63 of file constraint_graph.h.
| typedef boost::graph_traits<Graph>::edge_descriptor pose_graph::GraphEdge |
Definition at line 64 of file constraint_graph.h.
| typedef boost::graph_traits<Graph>::vertex_descriptor pose_graph::GraphVertex |
Definition at line 65 of file constraint_graph.h.
| typedef pair<unsigned, unsigned> pose_graph::IncidentNodes |
Definition at line 50 of file constraint_graph.cpp.
| typedef boost::mutex::scoped_lock pose_graph::Lock |
Definition at line 61 of file graph_db_impl.h.
| typedef std::map<unsigned, unsigned> pose_graph::NodeIndexMap |
Definition at line 49 of file spa_2d_conversion.h.
| typedef map<unsigned, GraphVertex> pose_graph::NodeMap |
Definition at line 51 of file constraint_graph.cpp.
| typedef std::pair<unsigned, unsigned> pose_graph::NodePair |
Definition at line 43 of file spa_2d_conversion.cpp.
| typedef std::map<unsigned, tf::Pose> pose_graph::NodePoseMap |
Definition at line 72 of file constraint_graph.h.
| typedef std::set<unsigned> pose_graph::NodeSet |
Definition at line 73 of file constraint_graph.h.
| typedef map<GraphVertex, GraphVertex> pose_graph::PredecessorMap |
Definition at line 96 of file graph_search.cpp.
| typedef std::pair<std::vector<unsigned>, std::vector<unsigned> > pose_graph::ShortestPath |
Definition at line 116 of file graph_search.h.
| typedef boost::shared_ptr<sba::SysSPA2d> pose_graph::Spa2DPtr |
Definition at line 48 of file spa_2d_conversion.h.
| void pose_graph::applyDiff | ( | ConstraintGraph * | graph, | |
| const msg::ConstraintGraphDiff & | diff | |||
| ) |
Apply a diff to a ConstraintGraph.
Definition at line 95 of file message_conversion.cpp.
| NodeSet pose_graph::componentContaining | ( | const ConstraintGraph & | g, | |
| unsigned | n | |||
| ) |
| Component | containing node n |
Definition at line 84 of file graph_search.cpp.
| std::vector< NodeSet > pose_graph::connectedComponents | ( | const ConstraintGraph & | g | ) |
| A | vector of sets of nodes, each of which is one of the connected components of the graph |
Definition at line 52 of file graph_search.cpp.
| ConstraintGraph pose_graph::constraintGraphFromMessage | ( | const msg::ConstraintGraphMessage & | msg | ) |
Create a ConstraintGraph from a ROS message.
Definition at line 76 of file message_conversion.cpp.
| msg::ConstraintGraphMessage pose_graph::constraintGraphToMessage | ( | const ConstraintGraph & | graph | ) |
Convert a ConstraintGraph to the corresponding ros message.
Definition at line 46 of file message_conversion.cpp.
| Spa2DConversionResult pose_graph::constraintGraphToSpa2D | ( | const ConstraintGraph & | g, | |
| const NodePoseMap & | init, | |||
| const NodeSet & | nodes | |||
| ) |
Definition at line 117 of file spa_2d_conversion.cpp.
| DijkstraResult pose_graph::dijkstra | ( | const Graph & | g, | |
| const GraphVertex & | src | |||
| ) |
Definition at line 99 of file graph_search.cpp.
| NodeSet pose_graph::filterNearbyNodes | ( | const ConstraintGraph & | g, | |
| const unsigned | n, | |||
| const NodePred & | node_pred, | |||
| const EdgePred & | edge_pred | |||
| ) | [inline] |
Definition at line 67 of file graph_search_impl.h.
| NodeSet pose_graph::filterNearbyNodes | ( | const ConstraintGraph & | g, | |
| const unsigned | n, | |||
| const NodePredicate & | node_pred, | |||
| const EdgePredicate & | edge_pred | |||
| ) | [inline] |
| NodePredicate | a default-constructible type with operator() (GraphVertex) const defined | |
| EdgePredicate | a default-constructible type with operator() (GraphEdge) const defined |
| NodeSet pose_graph::filterNearbyNodes | ( | const ConstraintGraph & | g, | |
| const unsigned | n, | |||
| const Predicate & | p | |||
| ) | [inline] |
| Predicate | a default-constructible type with operator() (GraphVertex) const defined |
Definition at line 51 of file graph_search_impl.h.
| M::ConstPtr pose_graph::getNodeData | ( | wh::Collection< M > * | client, | |
| const unsigned | n | |||
| ) | [inline] |
Definition at line 65 of file graph_db_impl.h.
| M::ConstPtr pose_graph::getNodeData | ( | warehouse::Collection< M > * | coll, | |
| unsigned | n | |||
| ) | [inline] |
Get the message associated with node n of the graph.
| DataNotFoundException | ||
| WarehouseClientException | (if communication with warehouse fails) |
| tf::Pose pose_graph::getNodePose | ( | const sba::Node2d & | n | ) |
Return the Pose corresponding to a spa node.
Definition at line 160 of file spa_2d_conversion.cpp.
| double pose_graph::getYaw | ( | const Quaterniond & | q | ) |
Definition at line 72 of file spa_2d_conversion.cpp.
| unsigned pose_graph::index | ( | const unsigned | i, | |
| const unsigned | j | |||
| ) |
Definition at line 78 of file spa_2d_conversion.cpp.
| Node2d pose_graph::makeNode | ( | const double | x, | |
| const double | y, | |||
| const double | theta | |||
| ) |
Definition at line 58 of file spa_2d_conversion.cpp.
| Con2dP2 pose_graph::makeSpa2DConstraint | ( | const PoseWithPrecision & | constraint | ) |
Definition at line 83 of file spa_2d_conversion.cpp.
| std::vector<std::string> pose_graph::nodeIndex | ( | ) | [inline] |
Use to index things by node.
Definition at line 59 of file graph_db.h.
| string pose_graph::nodeMetadata | ( | unsigned | n | ) |
Generate the metadata to associate a node n of the graph to a message being stored in the warehouse.
Definition at line 44 of file graph_db.cpp.
| NodePoseMap pose_graph::optimizeGraph2D | ( | const ConstraintGraph & | g, | |
| const NodePoseMap & | init, | |||
| const NodeSet & | nodes | |||
| ) |
Optimize a component of a graph using SPA 2d.
Optimize subset of nodes.
| map | from node id to optimized pose |
| DisconnectedGraphException |
Definition at line 173 of file spa_2d_conversion.cpp.
| NodePoseMap pose_graph::optimizeGraph2D | ( | const ConstraintGraph & | g, | |
| const NodePoseMap & | init | |||
| ) |
Optimize a graph using SPA 2d init Initial estimates.
| map | from node id to optimized pose |
| DisconnectedGraphException |
Definition at line 167 of file spa_2d_conversion.cpp.
| Eigen::Vector4d pose_graph::quaternionMsgToVector4d | ( | const geometry_msgs::Quaternion & | m | ) |
Definition at line 46 of file spa_2d_conversion.cpp.
| tf::Pose pose_graph::relativePose | ( | const ConstraintGraph & | g, | |
| const unsigned | n1, | |||
| const unsigned | n2 | |||
| ) |
| Relative | pose of n2 w.r.t n1 formed by using constraints along shortest path |
| NoPathException |
Definition at line 189 of file graph_search.cpp.
| ShortestPath pose_graph::shortestPath | ( | const ConstraintGraph & | g, | |
| const unsigned | src, | |||
| const unsigned | dest | |||
| ) |
| Shortest | path between two nodes, where edge cost is magnitude of relative pose attached to edge constraint. |
| NoPathException |
Definition at line 150 of file graph_search.cpp.
| Eigen::Vector4d pose_graph::translationToVector4d | ( | const geometry_msgs::Point & | p | ) |
Definition at line 51 of file spa_2d_conversion.cpp.
| void pose_graph::verifyConnected | ( | const ConstraintGraph & | g, | |
| const NodeSet & | nodes | |||
| ) |
Definition at line 103 of file spa_2d_conversion.cpp.