Definitions.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. //
  2. // Created by wrede on 25.04.16.
  3. //
  4. #ifndef GBMOT_DEFINITIONS_H
  5. #define GBMOT_DEFINITIONS_H
  6. #include <boost/graph/properties.hpp>
  7. #include <boost/graph/graph_traits.hpp>
  8. #include <boost/graph/adjacency_list.hpp>
  9. #include "../core/Definitions.h"
  10. #include "../core/ObjectData.h"
  11. #include "../core/Tracklet.h"
  12. namespace algo
  13. {
  14. //TODO read minimal example
  15. typedef boost::property<boost::edge_weight_t, double> EdgeProp;
  16. typedef boost::property<boost::vertex_name_t, core::ObjectDataPtr>
  17. VertexProp;
  18. typedef boost::adjacency_list<
  19. boost::listS, boost::vecS, boost::directedS, VertexProp, EdgeProp>
  20. DirectedGraph;
  21. typedef boost::graph_traits<DirectedGraph>::vertex_descriptor Vertex;
  22. typedef boost::property_map<DirectedGraph, boost::vertex_index_t>::type
  23. VertexIndexMap;
  24. typedef boost::property_map<DirectedGraph, boost::vertex_name_t >::type
  25. VertexValueMap;
  26. typedef boost::iterator_property_map<Vertex*, VertexIndexMap, Vertex, Vertex&>
  27. PredecessorMap;
  28. typedef boost::iterator_property_map<double*, VertexIndexMap, double, double&>
  29. DistanceMap;
  30. };
  31. #endif //GBMOT_DEFINITIONS_H