BPL : problems with constructors?
by Lorien Dunn other posts by this author
Feb 9 2001 9:18AM messages near this date
Re: [Re: [boost] BPL : problems with constructors?]
|
Re: [boost] BPL : problems with constructors?
------NetAddressPart-00--=_HLs43696S136497bc48
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable
Hullo,
I'm getting some errors I cant make sense of. They are happening in a set =
of
inter-object Midi reception and transmission classes. These are the only
classes affected out of about 75. Attached is a file containing the class
interfaces concerned, and the compiler errors.
I'm using Mandrake7.2 gcc 2.95.3 (prerelease 1991030) - the default
compiler.
Thanks for any help :)
Lorien Dunn
http://members.tripod.com/~loriend
____________________________________________________________________
Get free email and a permanent address at http://www.netaddress.com/?N=3D1
------NetAddressPart-00--=_HLs43696S136497bc48
Content-Type: text/plain; name= boostquestion.txt
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename= boostquestion.txt
////////////////////////////////////////////////////////////////////////////////////////////
/////
// Reciever classes
////////////////////////////////////////////////////////////////////////////////////////////
/////
class Transmitter;
class RecieverPyCallback : public Reciever
{
PyObject* _self;
public:
RecieverPyCallback(PyObject* self);
virtual ~RecieverPyCallback();
virtual void Parse(const Event& ev);
static void DefaultParse(Reciever& self, const Event& ev);
virtual void OnEvent(const Event& ev);
static void DefaultOnEvent(Reciever& self, const Event& ev);
//Connection callbacks
virtual void ConnectionMade(Transmitter& from);
static void DefaultConnectionMade(Reciever& self, Transmitter& from);
virtual void ConnectionBroken(Transmitter& from);
static void DefaultConnectionBroken(Reciever& self, Transmitter& from);
};
struct PyReciever : python::class_builder<Reciever,RecieverPyCallback>
{
PyReciever(python::module_builder& m) :
python::class_builder<Reciever,RecieverPyCallback> (m, Reciever )
{
def(python::constructor<> ());
def(&Reciever::Parse, Parse ,&RecieverPyCallback::DefaultParse);
def(&Reciever::OnEvent, OnEvent ,&RecieverPyCallback::DefaultOnEvent);
def(&Reciever::ConnectionMade, ConnectionMade ,&RecieverPyCallback::DefaultConnectionMade);
def(&Reciever::ConnectionBroken, ConnectionBroken ,&RecieverPyCallback::DefaultConnectionBro
ken);
def(&Reciever::Parse, Parse ,&RecieverPyCallback::DefaultParse);
def(&Reciever::OnEvent, OnEvent ,&RecieverPyCallback::DefaultOnEvent);
};
virtual ~PyReciever() throw() {};
};
////////////////////////////////////////////////////////////////////////////////////////////
/////////
// Transmitter classes
////////////////////////////////////////////////////////////////////////////////////////////
//////////
class TransmitterPyCallback : public Transmitter
{
PyObject* _self;
public:
TransmitterPyCallback(PyObject* self);
virtual ~TransmitterPyCallback();
virtual void Connect(Reciever& dest);
static void DefaultConnect(Transmitter& self, Reciever& dest);
virtual void Disconnect(Reciever& dest);
static void DefaultDisconnect(Transmitter& self, Reciever& dest);
virtual void Emit(const Event& ev));
static void DefaultEmit(Transmitter& self, const Event& ev);
virtual void ConnectionBroken(Reciever& dest);
static void DefaultConnectionBroken(Transmitter& self, Reciever& dest);
};
struct PyTransmitter : python::class_builder<Transmitter, TransmitterPyCallback>
{
PyTransmitter(python::module_builder& m) :
python::class_builder<Transmitter, TransmitterPyCallback> (m, Transmitter )
{
def(python::constructor<> ());
def(&Transmitter::Emit, Emit ,&TransmitterPyCallback::DefaultEmit);
def(&Transmitter::Connect, Connect , &TransmitterPyCallback::DefaultConnect);
def(&Transmitter::Disconnect, Disconnect , &TransmitterPyCallback::DefaultDisconnect);
def(&Transmitter::ConnectionBroken, ConnectionBroken ,&TransmitterPyCallback::DefaultConnect
ionBroken);
};
virtual ~PyTransmitter() throw() {};
};
////////////////////////////////////////////////////////////////////////////////////////////
/////////////////
// Error Messages
////////////////////////////////////////////////////////////////////////////////////////////
//////////////////
/home/lorien/boost/boost/python/detail/extension_class.hpp: In method `boost::python::detail
::instance_value_holder<Burt::Midi::Transmitter,Burt::Midi::TransmitterPyCallback> ::instance
_value_holder<Burt::Midi::Transmitter> (boost::python::detail::extension_instance *, Burt::Mi
di::Transmitter)':
/home/lorien/boost/boost/python/detail/extension_class.hpp:178: instantiated from `python_ex
tension_class_converters<Burt::Midi::Transmitter,Burt::Midi::TransmitterPyCallback> ::to_pyth
on(const Burt::Midi::Transmitter &) const'
/home/lorien/boost/boost/python/detail/extension_class.hpp:299: instantiated from `to_python
<Burt::Midi::Transmitter> (const Burt::Midi::Transmitter &)'
/home/lorien/boost/boost/python/callback.hpp:458: instantiated from here
/home/lorien/boost/boost/python/detail/extension_class.hpp:680: no matching function for cal
l to `Burt::Midi::TransmitterPyCallback::TransmitterPyCallback (boost::python::detail::exten
sion_instance *&, Burt::Midi::Transmitter &)'
PyMidi/PySignals.cpp:349: candidates are: Burt::Midi::TransmitterPyCallback::TransmitterPyCa
llback(PyObject *)
PyMidi/PySignals.h:294: Burt::Midi::TransmitterPyCallback::TransmitterPyCallback(const Burt:
:Midi::TransmitterPyCallback &)
/home/lorien/boost/boost/python/detail/extension_class.hpp: In method `boost::python::detail
::instance_value_holder<Burt::Midi::Reciever,Burt::Midi::RecieverPyCallback> ::instance_value
_holder<Burt::Midi::Reciever> (boost::python::detail::extension_instance *, Burt::Midi::Recie
ver)':
/home/lorien/boost/boost/python/detail/extension_class.hpp:178: instantiated from `python_ex
tension_class_converters<Burt::Midi::Reciever,Burt::Midi::RecieverPyCallback> ::to_python(con
st Burt::Midi::Reciever &) const'
/home/lorien/boost/boost/python/detail/extension_class.hpp:299: instantiated from `to_python
<Burt::Midi::Reciever> (const Burt::Midi::Reciever &)'
/home/lorien/boost/boost/python/callback.hpp:458: instantiated from here
/home/lorien/boost/boost/python/detail/extension_class.hpp:680: no matching function for cal
l to `Burt::Midi::RecieverPyCallback::RecieverPyCallback (boost::python::detail::extension_i
nstance *&, Burt::Midi::Reciever &)'
PyMidi/PySignals.cpp:6: candidates are: Burt::Midi::RecieverPyCallback::RecieverPyCallback(P
yObject *)
PyMidi/PySignals.h:86: Burt::Midi::RecieverPyCallback::RecieverPyCallback(const Burt::Midi::
RecieverPyCallback &)
////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////
// EOF
////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////
------NetAddressPart-00--=_HLs43696S136497bc48--
Attachments:
boostquestion.txt
Thread:
Lorien Dunn
David Abrahams
|