Reference documentation for deal.II version 9.2.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Classes | Functions
smartpointer.h File Reference
#include <deal.II/base/config.h>
#include <deal.II/base/exceptions.h>
#include <atomic>
#include <typeinfo>

Go to the source code of this file.

Classes

class  SmartPointer< T, P >
 

Functions

template<typename T , typename P , class Q >
void swap (SmartPointer< T, P > &t1, SmartPointer< T, Q > &t2)
 
template<typename T , typename P >
void swap (SmartPointer< T, P > &t1, T *&t2)
 
template<typename T , typename P >
void swap (T *&t1, SmartPointer< T, P > &t2)
 

Function Documentation

◆ swap() [1/3]

template<typename T , typename P , class Q >
void swap ( SmartPointer< T, P > &  t1,
SmartPointer< T, Q > &  t2 
)
inline

Global function to swap the contents of two smart pointers. As both objects to which the pointers point retain to be subscribed to, we do not have to change their subscription count.

Definition at line 444 of file smartpointer.h.

◆ swap() [2/3]

template<typename T , typename P >
void swap ( SmartPointer< T, P > &  t1,
T *&  t2 
)
inline

Global function to swap the contents of a smart pointer and a C-style pointer.

Note that we indeed need a reference of a pointer, as we want to change the pointer variable which we are given.

Definition at line 460 of file smartpointer.h.

◆ swap() [3/3]

template<typename T , typename P >
void swap ( T *&  t1,
SmartPointer< T, P > &  t2 
)
inline

Global function to swap the contents of a C-style pointer and a smart pointer.

Note that we indeed need a reference of a pointer, as we want to change the pointer variable which we are given.

Definition at line 476 of file smartpointer.h.