ref.h File Reference

#include "nub/handle.h"
#include "nub/object.h"
#include "nub/weak_handle.h"
#include "rutz/fileposition.h"
#include "rutz/stderror.h"
#include "rutz/traits.h"
#include <typeinfo>

Include dependency graph for ref.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  nub
namespace  nub::detail
namespace  rutz

Classes

struct  nub::detail::default_unref_policy< T >
 Policy class which unrefs objects by decrementing their ref count. More...
struct  nub::detail::no_delete_unref_policy< T >
 Policy class which decrements ref count without deletion. More...
struct  rutz::rutz::type_traits< nub::ref< T > >
 type_traits specialization for nub::ref smart pointer More...
struct  rutz::rutz::type_traits< nub::soft_ref< T > >
 type_traits specialization for soft_ref smart pointer. More...
class  nub::ref< T >
class  nub::soft_ref< T >
class  nub::floating_ref< T >

Functions

nub::ref_vis nub::get_default_ref_vis ()
 Get the current default visibility (will control ref_vis DEFAULT).
void nub::set_default_ref_vis (ref_vis vis)
 Set the current default visibility (will control ref_vis DEFAULT).
bool nub::detail::is_valid_uid (nub::uid id) throw ()
nub::objectnub::detail::get_checked_item (nub::uid id)
void nub::detail::insert_item (nub::object *obj, ref_vis vis)
template<class T>
T * nub::detail::get_casted_item (nub::uid id)
template<>
nub::objectnub::detail::get_casted_item< nub::object > (nub::uid id)
template<class To, class Fr>
nub::ref< To > dyn_cast (nub::ref< Fr > p)
template<class To, class Fr>
void dyn_cast_to_from (nub::ref< To > &dest, nub::ref< Fr > p)
template<class To, class Fr>
nub::ref< To > dynCast (nub::ref< Fr > p)
template<class To, class Fr>
void dynCastToFrom (nub::ref< To > &dest, nub::ref< Fr > p)
template<class To, class Fr>
nub::soft_ref< To > dyn_cast (nub::soft_ref< Fr > p)
template<class To, class Fr>
void dyn_cast_to_from (nub::soft_ref< To > &dest, nub::soft_ref< Fr > p)
template<class To, class Fr>
nub::soft_ref< To > dyn_cast_weak (nub::soft_ref< Fr > p)
template<class To, class Fr>
void dyn_cast_weak_to_from (nub::soft_ref< To > &dest, nub::soft_ref< Fr > p)
template<class To, class Fr>
nub::soft_ref< To > dyn_cast_weak (nub::ref< Fr > p)
template<class To, class Fr>
void dyn_cast_weak_to_from (nub::soft_ref< To > &dest, nub::ref< Fr > p)
template<class To, class Fr>
nub::soft_ref< To > dynCast (nub::soft_ref< Fr > p)
template<class To, class Fr>
void dynCastToFrom (nub::soft_ref< To > &dest, nub::soft_ref< Fr > p)
template<class To, class Fr>
nub::soft_ref< To > dynCastWeak (nub::soft_ref< Fr > p)
template<class To, class Fr>
void dynCastWeakToFrom (nub::soft_ref< To > &dest, nub::soft_ref< Fr > p)
template<class To, class Fr>
nub::soft_ref< To > dynCastWeak (nub::ref< Fr > p)
template<class To, class Fr>
void dynCastWeakToFrom (nub::soft_ref< To > &dest, nub::ref< Fr > p)


Detailed Description

smart pointers (both strong and weak) using intrusive ref-counting with nub::object and derivatives

Definition in file ref.h.


The software described here is Copyright (c) 1998-2005, Rob Peters.
This page was generated Wed Dec 3 06:51:18 2008 by Doxygen version 1.5.5.