[C++-sig] wrapping abstract classes question (original) (raw)
Roman Yakovenko roman.yakovenko at gmail.com
Sun Dec 4 13:36:47 CET 2005
- Previous message: [C++-sig] Pyste and pointers on const data
- Next message: [C++-sig] wrapping abstract classes question
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi. What is the right way to wrap next abstract classes?
struct base{ virtual int do_smth() = 0; };
struct derived : base{ virtual int do_smth_else() = 0; };
It is obvious to me that I should create wrapper classes for base and derived. My question is what is definition of derived wrapper?
struct base_wrapper : base, boost::python::wrapper< base > { ... }
The are 2 approaches to create wrapper for derived class 1.
struct derived_wrapper : derived, boost::python::wrapper< derived >{
virtual int do_smth( ){ boost::python::override do_smth = this->get_override( "do_smth" ); return do_smth( ); }
virtual int do_smth_else( ){ boost::python::override do_smth_else = this->get_override( "do_smth_else" ); return do_smth_else( ); }
}
struct derived_wrapper : derived, base_wrapper, boost::python::wrapper< derived >{
virtual int do_smth_else( ){ boost::python::override do_smth_else = this->get_override( "do_smth_else" ); return do_smth_else( ); }
}
It seems to me that both approaches will work, but I do not know which one is better ( right ) and which one is not.
Thanks for help.
Roman Yakovenko
- Previous message: [C++-sig] Pyste and pointers on const data
- Next message: [C++-sig] wrapping abstract classes question
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]