#include <scim_object.h>
| Public Member Functions | |
| bool | is_referenced () const | 
| void | ref () | 
| Increase an object's reference count by one. | |
| void | unref () | 
| Protected Member Functions | |
| ReferencedObject () | |
| Constructor. | |
| virtual | ~ReferencedObject ()=0 | 
| Destructor. | |
| void | set_referenced (bool reference) | 
| Friends | |
| class | Pointer | 
ReferencedObject is a reference counting base class. it has an integer reference counter so that dynamic objects can have their memory allocation handled by the scim smart pointer: Pointer<>. This keeps the memory management in scim consistent across all classes. If you derive a class from ReferencedObject and allocate it on the heap, you free the memory and destroy the object by calling unref(), not delete.
| scim::ReferencedObject::ReferencedObject | ( | ) |  [protected] | 
Constructor.
| virtual scim::ReferencedObject::~ReferencedObject | ( | ) |  [protected, pure virtual] | 
Destructor.
| void scim::ReferencedObject::set_referenced | ( | bool | reference | ) |  [protected] | 
Set the internal referenced flag.
| reference | - true if the initial reference count must be removed by owner. | 
| bool scim::ReferencedObject::is_referenced | ( | ) | const | 
The referenced flag setting.
| void scim::ReferencedObject::ref | ( | ) | 
Increase an object's reference count by one.
| void scim::ReferencedObject::unref | ( | ) | 
Decrease an object's reference count by one. When the reference count becomes zero delete is called. Remember, with ReferencedObject you must call unref() on dynmaically allocated objects, not delete.
| friend class Pointer  [friend] | 
 1.5.7.1
 1.5.7.1