SourcePro® API Reference Guide

 
List of all members | Public Types | Public Member Functions | Protected Member Functions
RWTPointer< Body > Class Template Reference

Base class for smart-pointer classes. More...

#include <rw/pointer/RWTPointer.h>

Inheritance diagram for RWTPointer< Body >:
RWTCountedPointer< Body > RWTCountingPointer< Body, Counter > RWTOnlyPointer< Body >

Public Types

typedef Body BodyType
 

Public Member Functions

 ~RWTPointer (void)
 
bool isValid (void) const
 
bool operator!= (const RWTPointer< Body > &second) const
 
bool operator!= (const Body *ptr) const
 
bool operator== (const RWTPointer< Body > &second) const
 
bool operator== (const Body *ptr) const
 
void swapWith (RWTPointer< Body > &second)
 
void validate (void) const
 

Protected Member Functions

 RWTPointer (void)
 
 RWTPointer (RWStaticCtor)
 
 RWTPointer (Body *bodyP)
 
 RWTPointer (const RWTPointer< Body > &second)
 
Body * get (void) const
 
RWTPointer< Body > & operator= (Body *ptr)
 

Detailed Description

template<class Body>
class RWTPointer< Body >

Base class for the smart-pointer classes in the Smart Pointer package.

Member Typedef Documentation

template<class Body>
typedef Body RWTPointer< Body >::BodyType

The type of the body.

Constructor & Destructor Documentation

template<class Body>
RWTPointer< Body >::~RWTPointer ( void  )

Destructor. Throws no exceptions.

template<class Body>
RWTPointer< Body >::RWTPointer ( void  )
protected

Constructs a handle instance with a pointer value of rwnil. Throws no exceptions.

template<class Body>
RWTPointer< Body >::RWTPointer ( RWStaticCtor  )
protected

Constructor for static pointers that may be used before constructed. Throws no exceptions.

template<class Body>
RWTPointer< Body >::RWTPointer ( Body *  bodyP)
protected

Constructs a handle instance that points to the specified body. Throws no exceptions.

template<class Body>
RWTPointer< Body >::RWTPointer ( const RWTPointer< Body > &  second)
protected

Constructs a handle instance that points to the same body as second. Throws no exceptions.

Member Function Documentation

template<class Body>
Body* RWTPointer< Body >::get ( void  ) const
protected

Retrieves the handle's pointer value without validating it. Throws no exceptions.

template<class Body >
bool RWTPointer< Body >::isValid ( void  ) const
inline

Returns true if the pointer is non-nil (rwnil), otherwise returns false. Throws no exceptions.

template<class Body>
bool RWTPointer< Body >::operator!= ( const RWTPointer< Body > &  second) const

Tests to see if this instance points to a different body than the second instance points to. Throws no exceptions.

template<class Body>
bool RWTPointer< Body >::operator!= ( const Body *  ptr) const

Tests to see if this instance points to a different body than ptr. Throws no exceptions.

template<class Body>
RWTPointer<Body>& RWTPointer< Body >::operator= ( Body *  ptr)
protected

Assigns a new pointer value to the handle. The parameter ptr is Body*. Throws no exceptions.

template<class Body>
bool RWTPointer< Body >::operator== ( const RWTPointer< Body > &  second) const

Tests to see if this instance points to the same body that the second instance points to. Throws no exceptions.

template<class Body>
bool RWTPointer< Body >::operator== ( const Body *  ptr) const

Tests to see if this instance points to the same body as ptr. Throws no exceptions.

template<class Body>
void RWTPointer< Body >::swapWith ( RWTPointer< Body > &  second)

Swap bodies, if any, pointed to by this and second. Throws no exceptions.

template<class Body >
void RWTPointer< Body >::validate ( void  ) const
inline

Check if the pointer is valid. Throws an RWTHRInvalidPointer exception if the pointer is rwnil.

Copyright © 2023 Rogue Wave Software, Inc., a Perforce company. All Rights Reserved.