
#include <nub/object.h>
Inheritance diagram for nub::object:


Definition at line 64 of file object.h.
Public Member Functions | |
| nub::uid | id () const throw () |
| rutz::fstring | real_typename () const |
| Returns the typename of the full object. | |
| virtual rutz::fstring | obj_typename () const |
| Returns the (apparent) typename of the full object. | |
| rutz::fstring | unique_name () const |
| Returns a short string describing the object by its typename and id. | |
Protected Member Functions | |
| object () | |
| Default constructor. | |
| virtual | ~object () GVX_DTOR_NOTHROW |
| Virtual destructor. | |
|
|
Default constructor. Can't have an empty throw() spec here, because ref_counted's constructor might throw (because it has to allocate memory for a nub::ref_counts object). Definition at line 52 of file object.cc. References GVX_TRACE. Referenced by IT::getDebugImage(), and IT::getObjectLikelihood(). |
|
|
Virtual destructor.
Definition at line 57 of file object.cc. References GVX_TRACE. |
|
|
Returns the unique id for this object. The unique id will always be strictly positive; zero is always an invalid unique id. Definition at line 62 of file object.cc. Referenced by nub::objectdb::impl::insert_obj(). |
|
|
Returns the (apparent) typename of the full object. The default implementation just returns real_typename(). However, certain kinds of objects -- e.g., proxy objects -- might usefully choose to have obj_typename() return something besides the real_typename(), in order to masquerade as a different type of object. Definition at line 73 of file object.cc. References GVX_TRACE, and real_typename(). Referenced by unique_name(). |
|
|
Returns the typename of the full object.
The result is a demangled version of Definition at line 67 of file object.cc. References rutz::demangled_name(), and GVX_TRACE. Referenced by obj_typename(). |
|
|
Returns a short string describing the object by its typename and id.
Definition at line 79 of file object.cc. References GVX_TRACE, obj_typename(), and rutz::sfmt(). Referenced by nub::logging::add_obj_scope(), and nub::logging::remove_obj_scope(). |
1.4.4