Teuchos::RCPNodeTmpl< T, Dealloc_T > Class Template Reference

Implementation class for actually deleting the object. More...

#include <Teuchos_RCPNode.hpp>

Inheritance diagram for Teuchos::RCPNodeTmpl< T, Dealloc_T >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 RCPNodeTmpl (T *p, Dealloc_T dealloc, bool has_ownership_in)
 
Dealloc_T & get_nonconst_dealloc ()
 
const Dealloc_T & get_dealloc () const
 
 ~RCPNodeTmpl ()
 
virtual bool is_valid_ptr () const
 
virtual void delete_obj ()
 Delete the underlying object.
virtual void throw_invalid_obj_exception (const std::string &rcp_type_name, const void *rcp_ptr, const RCPNode *rcp_node_ptr, const void *rcp_obj_ptr) const
 

Private Member Functions

 RCPNodeTmpl ()
 RCPNodeTmpl (const RCPNodeTmpl &)
RCPNodeTmploperator= (const RCPNodeTmpl &)

Private Attributes

T * ptr_
Dealloc_T dealloc_

Detailed Description

template<class T, class Dealloc_T>
class Teuchos::RCPNodeTmpl< T, Dealloc_T >

Implementation class for actually deleting the object.

Definition at line 238 of file Teuchos_RCPNode.hpp.


Constructor & Destructor Documentation

template<class T, class Dealloc_T>
Teuchos::RCPNodeTmpl< T, Dealloc_T >::RCPNodeTmpl ( T *  p,
Dealloc_T  dealloc,
bool  has_ownership_in 
) [inline]

Definition at line 241 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
Teuchos::RCPNodeTmpl< T, Dealloc_T >::~RCPNodeTmpl (  )  [inline]

Definition at line 255 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
Teuchos::RCPNodeTmpl< T, Dealloc_T >::RCPNodeTmpl (  )  [private]
template<class T, class Dealloc_T>
Teuchos::RCPNodeTmpl< T, Dealloc_T >::RCPNodeTmpl ( const RCPNodeTmpl< T, Dealloc_T > &   )  [private]

Member Function Documentation

template<class T, class Dealloc_T>
Dealloc_T& Teuchos::RCPNodeTmpl< T, Dealloc_T >::get_nonconst_dealloc (  )  [inline]

Definition at line 249 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
const Dealloc_T& Teuchos::RCPNodeTmpl< T, Dealloc_T >::get_dealloc (  )  const [inline]

Definition at line 252 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
virtual bool Teuchos::RCPNodeTmpl< T, Dealloc_T >::is_valid_ptr (  )  const [inline, virtual]

Implements Teuchos::RCPNode.

Definition at line 264 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
virtual void Teuchos::RCPNodeTmpl< T, Dealloc_T >::delete_obj (  )  [inline, virtual]

Delete the underlying object.

Provides the "strong guarantee" when exceptions are thrown in debug mode and but may not even provide the "basic guarantee" in release mode. .

Implements Teuchos::RCPNode.

Definition at line 273 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
virtual void Teuchos::RCPNodeTmpl< T, Dealloc_T >::throw_invalid_obj_exception ( const std::string &  rcp_type_name,
const void *  rcp_ptr,
const RCPNode rcp_node_ptr,
const void *  rcp_obj_ptr 
) const [inline, virtual]

Definition at line 309 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
RCPNodeTmpl& Teuchos::RCPNodeTmpl< T, Dealloc_T >::operator= ( const RCPNodeTmpl< T, Dealloc_T > &   )  [private]

Reimplemented from Teuchos::RCPNode.


Member Data Documentation

template<class T, class Dealloc_T>
T* Teuchos::RCPNodeTmpl< T, Dealloc_T >::ptr_ [private]

Definition at line 355 of file Teuchos_RCPNode.hpp.

template<class T, class Dealloc_T>
Dealloc_T Teuchos::RCPNodeTmpl< T, Dealloc_T >::dealloc_ [private]

Definition at line 359 of file Teuchos_RCPNode.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Tue Oct 20 10:14:05 2009 for Teuchos Package Browser (Single Doxygen Collection) by  doxygen 1.6.1