Arcane  v3.16.0.0
Documentation développeur
Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Amis Macros Groupes Pages Concepts
Référence du modèle de la classe Arcane::PtrT< T >

Encapsulation d'un pointeur. Plus de détails...

#include <arcane/utils/Ptr.h>

+ Graphe d'héritage de Arcane::PtrT< T >:
+ Graphe de collaboration de Arcane::PtrT< T >:

Fonctions membres publiques

 PtrT ()=default
 Construit une instance sans référence.
 
 PtrT (T *t)
 Construit une instance référant t.
 
T * operator-> () const
 Retourne l'objet référé par l'instance.
 
T & operator* () const
 Retourne l'objet référé par l'instance.
 
T * get () const
 Retourne l'objet référé par l'instance.
 
bool isNull () const
 

Fonctions membres protégées

PtrT< T > & operator= (const PtrT< T > &from)
 Opérateur de copie.
 
template<typename T2>
PtrT< T > & operator= (const PtrT< T2 > &from)
 
PtrT< T > & operator= (T *new_value)
 Affecte à l'instance la value new_value.
 
 PtrT (const PtrT< T > &from)
 Construit une référence référant from.
 
template<typename T2>
 PtrT (const PtrT< T2 > &from)
 Construit une référence référant from.
 

Attributs protégés

T * m_value = nullptr
 Pointeur sur l'objet référencé
 

Description détaillée

template<class T>
class Arcane::PtrT< T >

Encapsulation d'un pointeur.

Cette classe ne fait rien de particulier si ce n'est encapsulé un pointeur d'un type quelconque. Elle sert de classe de base à d'autres classes qui fournissent des fonctionnalités plus évoluées comme AutoRefT.

Afin d'éviter des copies malencontreuses, le constructeur de copie et les opérateurs de copie sont protégés.

En mode débug, vérifie qu'on accède pas à un pointeur nul.

Le paramètre template n'a pas besoin d'être défini. Cette classe peut donc être instanciée pour un type opaque.

Définition à la ligne 44 du fichier Ptr.h.

Documentation des constructeurs et destructeur

◆ PtrT() [1/3]

template<class T>
Arcane::PtrT< T >::PtrT ( const PtrT< T > & from)
inlineprotected

Construit une référence référant from.

Définition à la ligne 70 du fichier Ptr.h.

Références m_value, et PtrT().

Référencé par operator=(), operator=(), PtrT(), et PtrT().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

◆ PtrT() [2/3]

template<class T>
template<typename T2>
Arcane::PtrT< T >::PtrT ( const PtrT< T2 > & from)
inlineprotected

Construit une référence référant from.

Définition à la ligne 76 du fichier Ptr.h.

Références m_value, et PtrT().

+ Voici le graphe d'appel pour cette fonction :

◆ PtrT() [3/3]

template<class T>
Arcane::PtrT< T >::PtrT ( T * t)
inlineexplicit

Construit une instance référant t.

Définition à la ligne 86 du fichier Ptr.h.

Références m_value.

Documentation des fonctions membres

◆ get()

template<class T>
T * Arcane::PtrT< T >::get ( ) const
inline

Retourne l'objet référé par l'instance.

Avertissement
En général, il faut être prudent lorsqu'on utilise cette fonction et ne pas conservé le pointeur retourné.

Définition à la ligne 121 du fichier Ptr.h.

Références m_value.

Référencé par Arcane::VariableIOReaderMng::_readMetaData(), Arcane::LimaCutInfosReader::_readUniqueIndex(), Arcane::DumpWEnsight7::_saveVariableOnGroup(), Arcane::SimpleGridMeshPartitioner::applyMeshPartitioning(), Arcane::InternalInfosDumper::dumpArcaneDatabase(), Arcane::InternalInfosDumper::dumpInternalAllInfos(), Arcane::ManualHdf5VariableWriter::notifyEndWrite(), Arcane::operator!=(), Arcane::operator==(), Arcane::MeshGeneratorService::readMeshFromFile(), Arcane::TimeLoopReader::readTimeLoops(), Arcane::TimeHistoryMngInternal::readVariables(), Arcane::mesh::ItemFamily::reduceFromGhostItems(), et Arcane::TimeLoopMng::setUsedTimeLoop().

+ Voici le graphe des appelants de cette fonction :

◆ isNull()

template<class T>
bool Arcane::PtrT< T >::isNull ( ) const
inline

Définition à la ligne 123 du fichier Ptr.h.

◆ operator*()

template<class T>
T & Arcane::PtrT< T >::operator* ( ) const
inline

Retourne l'objet référé par l'instance.

Définition à la ligne 106 du fichier Ptr.h.

Références Arcane::arcaneNullPointerError(), et m_value.

+ Voici le graphe d'appel pour cette fonction :

◆ operator->()

template<class T>
T * Arcane::PtrT< T >::operator-> ( ) const
inline

Retourne l'objet référé par l'instance.

Définition à la ligne 96 du fichier Ptr.h.

Références Arcane::arcaneNullPointerError(), et m_value.

+ Voici le graphe d'appel pour cette fonction :

◆ operator=() [1/3]

template<class T>
PtrT< T > & Arcane::PtrT< T >::operator= ( const PtrT< T > & from)
inlineprotected

Opérateur de copie.

Définition à la ligne 49 du fichier Ptr.h.

Références m_value, et PtrT().

Référencé par Arcane::ScopedPtrT< T >::operator=().

+ Voici le graphe d'appel pour cette fonction :
+ Voici le graphe des appelants de cette fonction :

◆ operator=() [2/3]

template<class T>
template<typename T2>
PtrT< T > & Arcane::PtrT< T >::operator= ( const PtrT< T2 > & from)
inlineprotected

Définition à la ligne 56 du fichier Ptr.h.

◆ operator=() [3/3]

template<class T>
PtrT< T > & Arcane::PtrT< T >::operator= ( T * new_value)
inlineprotected

Affecte à l'instance la value new_value.

Définition à la ligne 63 du fichier Ptr.h.

Références m_value, et PtrT().

+ Voici le graphe d'appel pour cette fonction :

Documentation des données membres

◆ m_value

template<class T>
T* Arcane::PtrT< T >::m_value = nullptr
protected

La documentation de cette classe a été générée à partir du fichier suivant :