DataMiner
DataMiner

Reputation: 325

How to add custom edge label in boost graph?

I am using boost graph of type:

namespace boost {
      struct computable_object_t
  {
    typedef vertex_property_tag kind;
  };
}

typedef boost::property<boost::vertex_index_t, unsigned int,
                        boost::property<boost::computable_object_t,
                                        plComputableObject*> > slVertexProperty;

typedef boost::property<boost::edge_weight_t, slScoreValueType> slEdgeProperty;

typedef boost::adjacency_list<boost::vecS, boost::listS, boost::bidirectionalS,
                              slVertexProperty, slEdgeProperty> slGraph;

Now i have to add sting type edge label for each edge of the graph, further i could use them in my program to distinguish different kind of edges.

Please share you idea, thanks in advance.

Upvotes: 0

Views: 855

Answers (1)

Jeremiah Willcock
Jeremiah Willcock

Reputation: 30969

You can just add that new label property to the list of edge properties (namespaces removed):

typedef property<edge_weight_t, slScoreValueType,
          property<edge_name_t, string> >
        slEdgeProperty;

Upvotes: 1

Related Questions