#include <service.h>
Inheritance diagram for service_base:

Public Types | |
| typedef service_base | t_interface |
Public Member Functions | |
| virtual int | service_add_ref ()=0 throw () |
| virtual bool | service_query (service_ptr_t< service_base > &p_out, const GUID &p_guid) |
| template<class T> | |
| bool | service_query_t (service_ptr_t< T > &p_out) |
| virtual int | service_release ()=0 throw () |
Private Member Functions | |
| const service_base & | operator= (const service_base &) |
| service_base (const service_base &) | |
|
|
Increments reference count. This is normally not called directly but managed by service_ptr_t<> template.
|
|
||||||||||||
|
Queries whether the object supports specific interface and retrieves a pointer to that interface. This is normally not called directly but managed by service_query_t<> function template. Typical implementation checks the parameter against GUIDs of interfaces supported by this object, if the GUID is one of supported interfaces, p_out is set to service_base pointer that can be static_cast<>'ed to queried interface and the method returns true; otherwise the method returns false. |
|
||||||||||
|
Queries whether the object supports specific interface and retrieves a pointer to that interface.
|
|
|
Decrements reference count; deletes the object if reference count reaches zero. This is normally not called directly but managed by service_ptr_t<> template.
|
1.4.6-NO