Geat, seems simpler. However, it does not compile for me (boost 1.33.1). Aot of error, but the first one seems to be the more interesting : error C2780: 'boost::_bi::bind_t<R,boost::_mfi::dm<R,T>,_bi::list_av_1<A1>::type> boost::bind(R T::* ,A1)' : 2 arguments attendus - 4 fournis (translation attempt : [...] 2 args waited, 4 given) 2007/11/13, Ovanes Markarian <om_boost@keywallet.com>:
Why do you need a function instance at all?
Just use boost::bind and that's it...
Profile p; boost::shared_ptr< TTImage<unsigned char> > image(new TTImage<unsigned char>);
boost::thread t( boost::bind ( &Profile::template ComputeRadiometries<unsigned char> , p , image , BICUBIC ) );
This code compiles fine for me.
Regards, Ovanes
On 11/13/07, Olivier Tournaire < olitour@gmail.com> wrote:
2007/11/13, Ovanes Markarian <om_boost@keywallet.com>:
On 11/13/07, Olivier Tournaire < olitour@gmail.com> wrote:
Yep, that what I tried, but it does not work. The compiler error is described below.
This is really strange. This code compiles fine: typedef bool (Profile::*mem_fcn)(boost::shared_ptr< TTImage <unsigned char> >, eInterpolatorType);
mem_fcn f = &Profile::template ComputeRadiometries<unsigned char>;
and the doc example states for member functions: boost::function<int (X*, int)> f;
f = &X::foo;
X x; f(&x, 5);
But I also got errors.
Yes. The first code I posted came from the doc. The one you just gave me compiles fine. However, how can I use it to create a thread and pass parameters ?
Regards
Regards,
Ovanes
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- Le temps des cerises reviendra. Dans l'immédiat, c'est le temps des noyaux. Courage.