Boost logo

Boost Users :

Subject: Re: [Boost-users] your mail
From: Avishay Ben Shabtai (avishay.ben.shabtai_at_[hidden])
Date: 2012-06-05 11:37:02


1>------ Build started: Project: VerifyStabilization, Configuration: Debug
Win32 ------
1>Build started 05/06/2012 18:36:08.
1>ClCompile:
1> VerifyStabilizaiton.cpp
1>c:\users\benshabt\projects\thesis\thesis\code\thirdparty\include\boost\graph\copy.hpp(82):
error C2664:
'boost::vec_adj_list_vertex_all_properties_map<Graph,GraphPtr,Property,PropertyRef>::vec_adj_list_vertex_all_properties_map(GraphPtr)'
: cannot convert parameter 1 from
'boost::vec_adj_list_vertex_all_properties_map<Graph,GraphPtr,Property,PropertyRef>'
to 'const MCGraph *'
1> with
1> [
1> Graph=MCGraph,
1> GraphPtr=const MCGraph *,
1>
 Property=boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>>,
1> PropertyRef=const
boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>> &
1> ]
1> and
1> [
1>
 Graph=boost::adjacency_list<boost::listS,boost::vecS,boost::bidirectionalS,MCVertexProp,boost::property<boost::edge_weight_t,MCEdgeWeight>,MCGraphProp>,
1> GraphPtr=const
boost::adjacency_list<boost::listS,boost::vecS,boost::bidirectionalS,MCVertexProp,boost::property<boost::edge_weight_t,MCEdgeWeight>,MCGraphProp>
*,
1>
 Property=boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>>,
1> PropertyRef=const
boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>> &
1> ]
1> No user-defined-conversion operator available that can perform
this conversion, or the operator cannot be called
1>
 c:\users\benshabt\projects\thesis\thesis\code\thirdparty\include\boost\graph\copy.hpp(80)
: while compiling class template member function
'boost::detail::vertex_copier<Graph1,Graph2>::vertex_copier(const Graph1
&,Graph2 &)'
1> with
1> [
1> Graph1=MCGraph,
1> Graph2=MCGraph
1> ]
1>
 c:\users\benshabt\projects\thesis\thesis\code\thirdparty\include\boost\graph\copy.hpp(304)
: see reference to class template instantiation
'boost::detail::vertex_copier<Graph1,Graph2>' being compiled
1> with
1> [
1> Graph1=MCGraph,
1> Graph2=MCGraph
1> ]
1>
 c:\users\benshabt\projects\thesis\thesis\code\verifiers\verifystabilization\verifystabilizaiton.cpp(18)
: see reference to function template instantiation 'void
boost::copy_graph<T,MCGraph>(const VertexListGraph &,MutableGraph &)' being
compiled
1> with
1> [
1> T=MCGraph,
1> VertexListGraph=MCGraph,
1> MutableGraph=MCGraph
1> ]
1>c:\users\benshabt\projects\thesis\thesis\code\thirdparty\include\boost\graph\copy.hpp(82):
error C2664:
'boost::vec_adj_list_vertex_all_properties_map<Graph,GraphPtr,Property,PropertyRef>::vec_adj_list_vertex_all_properties_map(GraphPtr)'
: cannot convert parameter 1 from
'boost::vec_adj_list_vertex_all_properties_map<Graph,GraphPtr,Property,PropertyRef>'
to 'MCGraph *'
1> with
1> [
1> Graph=MCGraph,
1> GraphPtr=MCGraph *,
1>
 Property=boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>>,
1>
 PropertyRef=boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>> &
1> ]
1> and
1> [
1>
 Graph=boost::adjacency_list<boost::listS,boost::vecS,boost::bidirectionalS,MCVertexProp,boost::property<boost::edge_weight_t,MCEdgeWeight>,MCGraphProp>,
1>
 GraphPtr=boost::adjacency_list<boost::listS,boost::vecS,boost::bidirectionalS,MCVertexProp,boost::property<boost::edge_weight_t,MCEdgeWeight>,MCGraphProp>
*,
1>
 Property=boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>>,
1>
 PropertyRef=boost::property<boost::vertex_name_t,ParamName,boost::property<boost::vertex_FPParamIndex_t,unsigned
int>> &
1> ]
1> No user-defined-conversion operator available that can perform
this conversion, or the operator cannot be called
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:25.04
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

On Tue, Jun 5, 2012 at 6:09 PM, Jeremiah Willcock <jewillco_at_[hidden]>wrote:

> On Tue, 5 Jun 2012, Avishay Ben Shabtai wrote:
>
> > Hi
>> >
>> > I am having compilation error when calling copy_graph.
>> > The compilation error is regarding vertex_all for default copy of
>> vertices.
>> > Where can I find info regarding this property and how to resolve
>> the issue?
>>
>> What graph type are you using? If it is custom, you might have an
>> easier
>> time passing in your own vertex and edge copying functions, which
>> avoids
>> the need to have vertex_all or edge_all properties. See
>> <URL:http://www.boost.org/doc/**libs/1_49_0/libs/graph/doc/**
>> copy_graph.html<http://www.boost.org/doc/libs/1_49_0/libs/graph/doc/copy_graph.html>
>> >
>> for information on those parameters.
>>
>> -- Jeremiah Willcock
>>
>>
>> I don't understand what is custom graph but my graph definition is:
>>
>> typedef boost::adjacency_list<**boost::listS
>>
>> //container class of the **edges.
>> ,boost::vecS
>>
>> ,boost::bidirectionalS
>> ,MCVertexProp
>>
>> ,boost::property<boost::edge_**weight_t,MCEdgeWeight>s
>> ,MCGraphProp>
>> MCBaseGraph;
>>
>> do i need to declare vertex_all as property and if so what is its type?
>>
>
> The examples seem to suggest that vertex_all should be predefined, but I
> may have broken that. Could you please send your full error message?
>
> -- Jeremiah Willcock



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net