Support Software for Vector Reduction/Transformation Operators Version of the Day
Public Member Functions | Protected Member Functions
RTOpPack::Teuchos::RCPNode Class Reference

Node class to keep track of address and the reference count for a reference-counted utility class and delete the object. More...

#include <RTOpPack_SPMD_apply_op_def.hpp>

Inheritance diagram for RTOpPack::Teuchos::RCPNode:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 RCPNode (bool has_ownership_in)
 
virtual ~RCPNode ()
 
int strong_count () const
 
int weak_count () const
 
int count (const ERCPStrength strength)
 
int incr_count (const ERCPStrength strength)
 
int deincr_count (const ERCPStrength strength)
 
void has_ownership (bool has_ownership_in)
 
bool has_ownership () const
 
void set_extra_data (const any &extra_data, const std::string &name, EPrePostDestruction destroy_when, bool force_unique)
 
anyget_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_extra_data (const std::string &type_name, const std::string &name) const
 
anyget_optional_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_optional_extra_data (const std::string &type_name, const std::string &name) const
 
virtual bool is_valid_ptr () const =0
 
virtual void delete_obj ()=0
 
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 =0
 
virtual const std::string get_base_obj_type_name () const =0
 
 RCPNode (bool has_ownership_in)
 
virtual ~RCPNode ()
 
int strong_count () const
 
int weak_count () const
 
int count (const ERCPStrength strength)
 
int incr_count (const ERCPStrength strength)
 
int deincr_count (const ERCPStrength strength)
 
void has_ownership (bool has_ownership_in)
 
bool has_ownership () const
 
void set_extra_data (const any &extra_data, const std::string &name, EPrePostDestruction destroy_when, bool force_unique)
 
anyget_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_extra_data (const std::string &type_name, const std::string &name) const
 
anyget_optional_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_optional_extra_data (const std::string &type_name, const std::string &name) const
 
virtual bool is_valid_ptr () const =0
 
virtual void delete_obj ()=0
 
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 =0
 
virtual const std::string get_base_obj_type_name () const =0
 
 RCPNode (bool has_ownership_in)
 
virtual ~RCPNode ()
 
int strong_count () const
 
int weak_count () const
 
int count (const ERCPStrength strength)
 
int incr_count (const ERCPStrength strength)
 
int deincr_count (const ERCPStrength strength)
 
void has_ownership (bool has_ownership_in)
 
bool has_ownership () const
 
void set_extra_data (const any &extra_data, const std::string &name, EPrePostDestruction destroy_when, bool force_unique)
 
anyget_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_extra_data (const std::string &type_name, const std::string &name) const
 
anyget_optional_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_optional_extra_data (const std::string &type_name, const std::string &name) const
 
virtual bool is_valid_ptr () const =0
 
virtual void delete_obj ()=0
 
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 =0
 
virtual const std::string get_base_obj_type_name () const =0
 
 RCPNode (bool has_ownership_in)
 
virtual ~RCPNode ()
 
int strong_count () const
 
int weak_count () const
 
int count (const ERCPStrength strength)
 
int incr_count (const ERCPStrength strength)
 
int deincr_count (const ERCPStrength strength)
 
void has_ownership (bool has_ownership_in)
 
bool has_ownership () const
 
void set_extra_data (const any &extra_data, const std::string &name, EPrePostDestruction destroy_when, bool force_unique)
 
anyget_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_extra_data (const std::string &type_name, const std::string &name) const
 
anyget_optional_extra_data (const std::string &type_name, const std::string &name)
 
const anyget_optional_extra_data (const std::string &type_name, const std::string &name) const
 
virtual bool is_valid_ptr () const =0
 
virtual void delete_obj ()=0
 
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 =0
 
virtual const std::string get_base_obj_type_name () const =0
 

Protected Member Functions

void pre_delete_extra_data ()
 
void pre_delete_extra_data ()
 
void pre_delete_extra_data ()
 
void pre_delete_extra_data ()
 

Detailed Description

Node class to keep track of address and the reference count for a reference-counted utility class and delete the object.

This is not a general user-level class. This is used in the implementation of all of the reference-counting utility classes.

NOTE: The reference counts all start a 0 so the client (i.e. RCPNodeHandle) must increment them from 0 after creation.

Definition at line 143 of file RTOpPack_SPMD_apply_op_def.hpp.


Constructor & Destructor Documentation

RTOpPack::Teuchos::RCPNode::RCPNode ( bool  has_ownership_in) [inline]

Definition at line 146 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual RTOpPack::Teuchos::RCPNode::~RCPNode ( ) [inline, virtual]

Definition at line 156 of file RTOpPack_SPMD_apply_op_def.hpp.

RTOpPack::Teuchos::RCPNode::RCPNode ( bool  has_ownership_in) [inline]

Definition at line 146 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual RTOpPack::Teuchos::RCPNode::~RCPNode ( ) [inline, virtual]

Definition at line 156 of file RTOpPack_SPMD_apply_op_def.hpp.

RTOpPack::Teuchos::RCPNode::RCPNode ( bool  has_ownership_in) [inline]

Definition at line 146 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual RTOpPack::Teuchos::RCPNode::~RCPNode ( ) [inline, virtual]

Definition at line 156 of file RTOpPack_SPMD_apply_op_def.hpp.

RTOpPack::Teuchos::RCPNode::RCPNode ( bool  has_ownership_in) [inline]

Definition at line 146 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual RTOpPack::Teuchos::RCPNode::~RCPNode ( ) [inline, virtual]

Definition at line 156 of file RTOpPack_SPMD_apply_op_def.hpp.


Member Function Documentation

int RTOpPack::Teuchos::RCPNode::strong_count ( ) const [inline]

Definition at line 162 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::weak_count ( ) const [inline]

Definition at line 167 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::count ( const ERCPStrength  strength) [inline]

Definition at line 172 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::incr_count ( const ERCPStrength  strength) [inline]

Definition at line 178 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::deincr_count ( const ERCPStrength  strength) [inline]

Definition at line 184 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::has_ownership ( bool  has_ownership_in) [inline]

Definition at line 190 of file RTOpPack_SPMD_apply_op_def.hpp.

bool RTOpPack::Teuchos::RCPNode::has_ownership ( ) const [inline]

Definition at line 195 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::set_extra_data ( const any extra_data,
const std::string &  name,
EPrePostDestruction  destroy_when,
bool  force_unique 
)

any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 207 of file RTOpPack_SPMD_apply_op_def.hpp.

any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 217 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual bool RTOpPack::Teuchos::RCPNode::is_valid_ptr ( ) const [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::delete_obj ( ) [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::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 [pure virtual]
virtual const std::string RTOpPack::Teuchos::RCPNode::get_base_obj_type_name ( ) const [pure virtual]
void RTOpPack::Teuchos::RCPNode::pre_delete_extra_data ( ) [inline, protected]

Definition at line 242 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::strong_count ( ) const [inline]

Definition at line 162 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::weak_count ( ) const [inline]

Definition at line 167 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::count ( const ERCPStrength  strength) [inline]

Definition at line 172 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::incr_count ( const ERCPStrength  strength) [inline]

Definition at line 178 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::deincr_count ( const ERCPStrength  strength) [inline]

Definition at line 184 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::has_ownership ( bool  has_ownership_in) [inline]

Definition at line 190 of file RTOpPack_SPMD_apply_op_def.hpp.

bool RTOpPack::Teuchos::RCPNode::has_ownership ( ) const [inline]

Definition at line 195 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::set_extra_data ( const any extra_data,
const std::string &  name,
EPrePostDestruction  destroy_when,
bool  force_unique 
)

any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 207 of file RTOpPack_SPMD_apply_op_def.hpp.

any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 217 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual bool RTOpPack::Teuchos::RCPNode::is_valid_ptr ( ) const [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::delete_obj ( ) [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::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 [pure virtual]
virtual const std::string RTOpPack::Teuchos::RCPNode::get_base_obj_type_name ( ) const [pure virtual]
void RTOpPack::Teuchos::RCPNode::pre_delete_extra_data ( ) [inline, protected]

Definition at line 242 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::strong_count ( ) const [inline]

Definition at line 162 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::weak_count ( ) const [inline]

Definition at line 167 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::count ( const ERCPStrength  strength) [inline]

Definition at line 172 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::incr_count ( const ERCPStrength  strength) [inline]

Definition at line 178 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::deincr_count ( const ERCPStrength  strength) [inline]

Definition at line 184 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::has_ownership ( bool  has_ownership_in) [inline]

Definition at line 190 of file RTOpPack_SPMD_apply_op_def.hpp.

bool RTOpPack::Teuchos::RCPNode::has_ownership ( ) const [inline]

Definition at line 195 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::set_extra_data ( const any extra_data,
const std::string &  name,
EPrePostDestruction  destroy_when,
bool  force_unique 
)

any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 207 of file RTOpPack_SPMD_apply_op_def.hpp.

any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 217 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual bool RTOpPack::Teuchos::RCPNode::is_valid_ptr ( ) const [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::delete_obj ( ) [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::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 [pure virtual]
virtual const std::string RTOpPack::Teuchos::RCPNode::get_base_obj_type_name ( ) const [pure virtual]
void RTOpPack::Teuchos::RCPNode::pre_delete_extra_data ( ) [inline, protected]

Definition at line 242 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::strong_count ( ) const [inline]

Definition at line 162 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::weak_count ( ) const [inline]

Definition at line 167 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::count ( const ERCPStrength  strength) [inline]

Definition at line 172 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::incr_count ( const ERCPStrength  strength) [inline]

Definition at line 178 of file RTOpPack_SPMD_apply_op_def.hpp.

int RTOpPack::Teuchos::RCPNode::deincr_count ( const ERCPStrength  strength) [inline]

Definition at line 184 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::has_ownership ( bool  has_ownership_in) [inline]

Definition at line 190 of file RTOpPack_SPMD_apply_op_def.hpp.

bool RTOpPack::Teuchos::RCPNode::has_ownership ( ) const [inline]

Definition at line 195 of file RTOpPack_SPMD_apply_op_def.hpp.

void RTOpPack::Teuchos::RCPNode::set_extra_data ( const any extra_data,
const std::string &  name,
EPrePostDestruction  destroy_when,
bool  force_unique 
)

any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any& RTOpPack::Teuchos::RCPNode::get_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 207 of file RTOpPack_SPMD_apply_op_def.hpp.

any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
)

const any* RTOpPack::Teuchos::RCPNode::get_optional_extra_data ( const std::string &  type_name,
const std::string &  name 
) const [inline]

Definition at line 217 of file RTOpPack_SPMD_apply_op_def.hpp.

virtual bool RTOpPack::Teuchos::RCPNode::is_valid_ptr ( ) const [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::delete_obj ( ) [pure virtual]
virtual void RTOpPack::Teuchos::RCPNode::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 [pure virtual]
virtual const std::string RTOpPack::Teuchos::RCPNode::get_base_obj_type_name ( ) const [pure virtual]
void RTOpPack::Teuchos::RCPNode::pre_delete_extra_data ( ) [inline, protected]

Definition at line 242 of file RTOpPack_SPMD_apply_op_def.hpp.


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