| Home | Download | Screen shots | Discussion | Documentation |
|---|
Abstract base class for a pointer-to-polymorphic-member type. More...
#include <openvrml/node_impl_util.h>

Public Member Functions | |
| virtual | ~ptr_to_polymorphic_mem ()=0 throw () |
| Destroy. | |
| virtual MemberBase & | deref (Object &obj)=0 |
| Dereference. | |
| virtual const MemberBase & | deref (const Object &obj)=0 |
Abstract base class for a pointer-to-polymorphic-member type.
In conjunction with ptr_to_polymorphic_mem_impl, this class circumvents the “contravariance problem” with pointer-to-member types. That is, the type Base Object::* is not compatible with the type Derived Object::*.
| MemberBase | the base type of the member. |
| Object | the type that contains the member. |
| openvrml::node_impl_util::ptr_to_polymorphic_mem< MemberBase, Object >::~ptr_to_polymorphic_mem | ( | ) | throw () [pure virtual] |
Destroy.
| MemberBase | the base type of the member. |
| Object | the type that contains the member. |
| MemberBase & openvrml::node_impl_util::ptr_to_polymorphic_mem< MemberBase, Object >::deref | ( | Object & | obj | ) | [pure virtual] |
Dereference.
| MemberBase | the base type of the member. |
| Object | the type that contains the member. |
Implemented in openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< MemberBase, Member, Object >, openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< openvrml::event_listener, EventListenerMember, Node >, openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< openvrml::event_emitter, EventEmitterMember, Node >, and openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< openvrml::field_value, FieldMember, Node >.
| const MemberBase & openvrml::node_impl_util::ptr_to_polymorphic_mem< MemberBase, Object >::deref | ( | const Object & | obj | ) | [pure virtual] |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| MemberBase | the base type of the member. |
| Object | the type that contains the member. |
const reference to the base type of the member. Implemented in openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< MemberBase, Member, Object >, openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< openvrml::event_listener, EventListenerMember, Node >, openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< openvrml::event_emitter, EventEmitterMember, Node >, and openvrml::node_impl_util::ptr_to_polymorphic_mem_impl< openvrml::field_value, FieldMember, Node >.