Boost graph properties

T

Tim Frink

Hi,

I've a question about Boost Library Graphs; maybe
this is somehow off-topic but I didn't find any
more appropriate NG.

My Boost Graph is defined as:

typedef boost::adjacency_list< boost::vecS, boost::vecS,
boost::directedS,
boost::property< boost::graph_name_t, std::string >,
boost::property< boost::vertex_index_t, ClassA* > > Boost_Graph;

So, I want to have a pointer to an entity of class ClassA
as vertex property "vertex_index".

However, when I try to access this property via a property map

boost::property_map< Boost_Graph, boost::vertex_index_t >::type
vertexNameMap = get( boost::vertex_index, g );

with

vertexNameMap[v]

(where v is Vertex_Type)
the compiler tells me that the property is not of type 'ClassA*' (as I
would expect) but of type 'size_t'. Why? I thought that for the
definition of

boost::property< boost::vertex_index_t, ClassA* >

ClassA* is the template value and defines the type of the property
"vertex_index".

Any ideas how I can manage it to store pointers as vertex property?

Regards,
Tim
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top