hi,
     i want to name the vertices and add the edges between vertices by referring to their names dynamicaly.
   
 i 'll have something like this.
     typedef boost::property<boost::vertex_name_t, string> VName;
     typedef boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, VName > Graph;
     typedef boost::property_map<Graph, boost::vertex_name_t>::type VertexNames;

     Graph g;
     VertexNames names = get(vertex_name, g);
     boost::add_vertex(VName("me") , g);
     boost::add_vertex(VName("myNeighbour") , g);

    i want to be able to do something like this.
    boost::add_edge(  names.getKey("me"), names.getKey("myNeighbour")  ,g);
    // but there is no any such kind of property_map

i looked around and found that there are ways to get the name of vertex if i have a vertex_descriptor
but how can i get a vertex_descriptor given the vertex_name
there are only three ops defined on property_map :- get,put,iterator;
is there any other way to get the key from value other than iterating through all the pairs
in property_map & matching each pair.second with vertex_name?

pardon me if it is a basic thing, i just cant able to get at it.
Any help would be greatly appreciated.

Thanks,
Phani.