Hi
I m able to use the transitive closure
using simple definition of adj_list as
typedef adjacency_list <setS, vecS,
bidirectionalS, property <vertex_name_t, std::string>, property <edge_weight_t,
int> > Graph;
and then calling
transitive_closure(g, TC);
graph_traits <Graph>::vertex_iterator
vi, vend;
for (tie(vi, vend) = vertices(TC);
vi != vend; ++vi)
{
file_op
<< "\n " << vertices_name[*vi] ;
}
Gives me correct output.
o/p :- A
B
C
D
Where A,B,C,D represent name of the
vertices
But when i try to the graph in bundled
properties like
struct Process
{
string name;
};
typedef adjacency_list <setS, vecS,
bidirectionalS,Process, property <edge_weight_t, int> > Graph;
transitive_closure(g, TC);
graph_traits <Graph>::vertex_iterator
vi, vend;
for (tie(vi, vend) = vertices(TC);
vi != vend; ++vi)
{
file_op
<< "\n " << TC[*vi].name ;
}
Gives me correct output.
o/p :-
Means in the second case it returns
me empty string for the name of the vertices what could be the reason for
this.
Kindly help
Thanks in Advance
Abhishek Vyas
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you