Boost Grapg - Property Map nach Wert durchsuchen



  • Hallo

    Ich suche schon ne Weile nen Weg, aus ner Property Map des Typs:
    boost::property< boost::vertex_name_t, std::string> (Key ist ein VertexDescriptor)
    den Vertex Iterator oder Descriptor per Value zu finden.
    Dh ich möchte den Namen (als String) übergeben und den Vertex erhalten:
    Geht sowas? Und wenn ja wie?

    Danke im Voraus



  • Ok, ich hab eine Lösung, denn umgekehrt geht's ja. Is aber nich schön.

    VertexDesc find( std::string name )
    {
        VertIter v_it, v_end;
        for( boost::tie( v_it, v_end ) = vertices( graph ); v_it != v_end; ++v_it )
        {
            if( vertex_name_map[*v_it] == name )
                return *v_it;
        }
    };
    

    Was meint ihr?


Anmelden zum Antworten