OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
Public Member Functions | Private Attributes | List of all members
Pointer< Object > Class Template Reference

Reference-counted pointer. More...

#include <Pointer.h>

Collaboration diagram for Pointer< Object >:
Collaboration graph
[legend]

Public Member Functions

 Pointer ()
 Default constructor. More...
 
 Pointer (const Pointer &)
 Copy constructor. More...
 
 Pointer (Object *)
 Constructor. More...
 
 ~Pointer ()
 Destructor. More...
 
Pointeroperator= (const Pointer &)
 Assign. More...
 
Pointeroperator= (Object *)
 Assign. More...
 
Objectoperator-> () const
 Delegation operator. More...
 
Objectoperator* () const
 Dereferencing operator. More...
 
bool operator== (const Pointer &) const
 Pointer equality. More...
 
bool operator!= (const Pointer &) const
 Pointer inequality. More...
 
bool isValid () const
 Test for validity. More...
 
void unique ()
 Force unique. More...
 

Private Attributes

Objectobject
 

Detailed Description

template<class Object>
class Pointer< Object >

Reference-counted pointer.

Definition at line 38 of file Pointer.h.

Constructor & Destructor Documentation

◆ Pointer() [1/3]

template<class Object >
Pointer< Object >::Pointer
inline

Default constructor.

Definition at line 99 of file Pointer.h.

◆ Pointer() [2/3]

template<class Object >
Pointer< Object >::Pointer ( const Pointer< Object > &  rhs)
inline

Copy constructor.

Definition at line 105 of file Pointer.h.

◆ Pointer() [3/3]

template<class Object >
Pointer< Object >::Pointer ( Object obj)
inline

Constructor.

Definition at line 112 of file Pointer.h.

◆ ~Pointer()

template<class Object >
Pointer< Object >::~Pointer
inline

Destructor.

Definition at line 119 of file Pointer.h.

Member Function Documentation

◆ isValid()

template<class Object >
bool Pointer< Object >::isValid
inline

Test for validity.

Definition at line 172 of file Pointer.h.

Referenced by AttributeHandler::getDefault(), and Line::parseList().

◆ operator!=()

template<class Object >
bool Pointer< Object >::operator!= ( const Pointer< Object > &  rhs) const
inline

Pointer inequality.

Definition at line 166 of file Pointer.h.

References Pointer< Object >::object.

◆ operator*()

template<class Object >
Object & Pointer< Object >::operator*
inline

Dereferencing operator.

Definition at line 154 of file Pointer.h.

◆ operator->()

template<class Object >
Object * Pointer< Object >::operator->
inline

Delegation operator.

Definition at line 148 of file Pointer.h.

◆ operator=() [1/2]

template<class Object >
Pointer< Object > & Pointer< Object >::operator= ( const Pointer< Object > &  rhs)
inline

Assign.

Definition at line 125 of file Pointer.h.

References RCObject::addReference(), and Pointer< Object >::object.

Here is the call graph for this function:

◆ operator=() [2/2]

template<class Object >
Pointer< Object > & Pointer< Object >::operator= ( Object obj)
inline

Assign.

Definition at line 137 of file Pointer.h.

References RCObject::addReference().

Here is the call graph for this function:

◆ operator==()

template<class Object >
bool Pointer< Object >::operator== ( const Pointer< Object > &  rhs) const
inline

Pointer equality.

Definition at line 160 of file Pointer.h.

References Pointer< Object >::object.

◆ unique()

template<class Object >
void Pointer< Object >::unique
inline

Force unique.

Definition at line 178 of file Pointer.h.

References RCObject::addReference().

Here is the call graph for this function:

Member Data Documentation

◆ object

template<class Object >
Object* Pointer< Object >::object
private

The documentation for this class was generated from the following file: