Arcane  4.2.1.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::Real3Proxy

Proxy d'un Real3. Plus de détails...

#include <arcane/utils/Real3Proxy.h>

Graphe d'héritage de Arcane::Real3Proxy:
Graphe de collaboration de Arcane::Real3Proxy:

Fonctions membres publiques

 Real3Proxy (Real3 &value, const MemoryAccessInfo &info)
 Construit le triplet (ax,ay,az).
 Real3Proxy (const Real3Proxy &f)
 Construit un triplet identique à f.
Real3 operator= (const Real3Proxy f)
Real3 operator= (Real3 f)
Real3 operator= (Real v)
 Affecte à l'instance le triplet (v,v,v).
 operator Real3 () const
Real3 copy () const
 Retourne une copie du triplet.
Real3Proxy & reset ()
 Réinitialise le triplet avec les constructeurs par défaut.
Real3Proxy & assign (Real ax, Real ay, Real az)
 Affecte à l'instance le triplet (ax,ay,az).
Real3Proxy & assign (Real3 f)
 Copie le triplet f.
bool isNearlyZero () const
 Compare le triplet avec le triplet nul.
Real abs2 () const
 Retourne la norme au carré du triplet \(x^2+y^2+z^2\).
Real abs () const
 Retourne la norme du triplet \(\sqrt{x^2+y^2+z^2}\).
std::istream & assign (std::istream &i)
 Lit un triplet sur le flot i Le triplet est lu sous la forme de trois valeur de type #value_type.
std::ostream & print (std::ostream &o) const
 Ecrit le triplet sur le flot o lisible par un assign().
std::ostream & printXyz (std::ostream &o) const
 Ecrit le triplet sur le flot o sous la forme (x,y,z).
Real3Proxy & add (Real3 b)
 Ajoute b au triplet.
Real3Proxy & sub (Real3 b)
 Soustrait b au triplet.
Real3Proxy & mul (Real3 b)
 Multiple chaque composante du triplet par la composant correspondant de b.
Real3Proxy & div (Real3 b)
 Divise chaque composante du triplet par la composant correspondant de b.
Real3Proxy & addSame (Real b)
 Ajoute b à chaque composante du triplet.
Real3Proxy & subSame (Real b)
 Soustrait b à chaque composante du triplet.
Real3Proxy & mulSame (Real b)
 Multiplie chaque composante du triplet par b.
Real3Proxy & divSame (Real b)
 Divise chaque composante du triplet par b.
Real3Proxy & operator+= (Real3 b)
 Ajoute b au triplet.
Real3Proxy & operator-= (Real3 b)
 Soustrait b au triplet.
Real3Proxy & operator*= (Real3 b)
 Multiple chaque composante du triplet par la composant correspondant de b.
void operator*= (Real b)
 Multiple chaque composante du triplet par le réel b.
Real3Proxy & operator/= (Real3 b)
 Divise chaque composante du triplet par la composant correspondant de b.
void operator/= (Real b)
 Divise chaque composante du triplet par le réel b.
Real3 operator+ (Real3 b) const
 Créé un triplet qui vaut ce triplet ajouté à b.
Real3 operator- (Real3 b) const
 Créé un triplet qui vaut b soustrait de ce triplet.
Real3 operator- () const
 Créé un triplet opposé au triplet actuel.
Real3 operator* (Real3 b) const
 Créé un triplet qui vaut ce triplet dont chaque composant a été multipliée par la composante correspondante de b.
Real3 operator/ (Real3 b) const
 Créé un triplet qui vaut ce triplet dont chaque composant a été divisée par la composante correspondante de b.
Real3Proxy & normalize ()
 Normalise le triplet.
Real3 getValue () const
Real3 & getValueMutable ()
Fonctions membres publiques hérités de Arcane::Real3POD
__host__ __device__ Real operator[] (Integer i) const
__host__ __device__ Real operator() (Integer i) const
__host__ __device__ Real & operator[] (Integer i)
__host__ __device__ Real & operator() (Integer i)
__host__ __device__ void setComponent (Integer i, Real value)
 Définit la i-ème composante à la valeur.

Attributs publics

RealProxy x
 première composante du triplet
RealProxy y
 deuxième composante du triplet
RealProxy z
 troisième composante du triplet
Attributs publics hérités de Arcane::Real3POD
Real x
 première composante du triplet
Real y
 deuxième composante du triplet
Real z
 troisième composante du triplet

Fonctions membres privées statiques

static bool _eq (Real a, Real b)
 Compare les valeurs de a et b avec le comparateur TypeEqualT.
static Real _sqrt (Real a)
 Retourne la racine carrée de a.

Attributs privés

Real3 & m_value
MemoryAccessInfo m_info

Amis

bool operator== (Real3Proxy a, Real3Proxy b)
 Compare le triplet à b.
bool operator!= (Real3Proxy a, Real3Proxy b)
 Compare deux triplets. Pour la notion d'égalité, voir operator==().

Description détaillée

Proxy d'un Real3.

Définition à la ligne 35 du fichier Real3Proxy.h.

Documentation des constructeurs et destructeur

◆ Real3Proxy() [1/2]

Arcane::Real3Proxy::Real3Proxy ( Real3 & value,
const MemoryAccessInfo & info )
inline

Construit le triplet (ax,ay,az).

Définition à la ligne 41 du fichier Real3Proxy.h.

Références x, y, et z.

Référencé par add(), addSame(), assign(), assign(), div(), divSame(), mul(), mulSame(), normalize(), operator!=, operator*=(), operator+=(), operator-=(), operator/=(), operator==, Real3Proxy(), reset(), sub(), et subSame().

Voici le graphe des appelants de cette fonction :

◆ Real3Proxy() [2/2]

Arcane::Real3Proxy::Real3Proxy ( const Real3Proxy & f)
inline

Construit un triplet identique à f.

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

Références Real3Proxy(), x, y, et z.

Voici le graphe d'appel pour cette fonction :

Documentation des fonctions membres

◆ _eq()

bool Arcane::Real3Proxy::_eq ( Real a,
Real b )
inlinestaticprivate

Compare les valeurs de a et b avec le comparateur TypeEqualT.

Valeurs retournées
truesi a et b sont égaux,
falsesinon.

Définition à la ligne 224 du fichier Real3Proxy.h.

Références Arcane::math::isEqual().

Référencé par operator==.

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

◆ _sqrt()

Real Arcane::Real3Proxy::_sqrt ( Real a)
inlinestaticprivate

Retourne la racine carrée de a.

Définition à la ligne 227 du fichier Real3Proxy.h.

Références Arcane::math::sqrt().

Référencé par abs().

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

◆ abs()

Real Arcane::Real3Proxy::abs ( ) const
inline

Retourne la norme du triplet \(\sqrt{x^2+y^2+z^2}\).

Définition à la ligne 107 du fichier Real3Proxy.h.

Références _sqrt(), et abs2().

Référencé par normalize().

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

◆ abs2()

Real Arcane::Real3Proxy::abs2 ( ) const
inline

Retourne la norme au carré du triplet \(x^2+y^2+z^2\).

Définition à la ligne 104 du fichier Real3Proxy.h.

Références x, y, et z.

Référencé par abs().

Voici le graphe des appelants de cette fonction :

◆ add()

Real3Proxy & Arcane::Real3Proxy::add ( Real3 b)
inline

Ajoute b au triplet.

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

Références Real3Proxy(), Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

Référencé par operator+=().

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

◆ addSame()

Real3Proxy & Arcane::Real3Proxy::addSame ( Real b)
inline

Ajoute b à chaque composante du triplet.

Définition à la ligne 129 du fichier Real3Proxy.h.

Références Real3Proxy(), x, y, et z.

Voici le graphe d'appel pour cette fonction :

◆ assign() [1/3]

Real3Proxy & Arcane::Real3Proxy::assign ( Real ax,
Real ay,
Real az )
inline

Affecte à l'instance le triplet (ax,ay,az).

Définition à la ligne 79 du fichier Real3Proxy.h.

Références Real3Proxy(), x, y, et z.

Référencé par assign(), et Arcane::Real3::operator>>().

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

◆ assign() [2/3]

Real3Proxy & Arcane::Real3Proxy::assign ( Real3 f)
inline

Copie le triplet f.

Définition à la ligne 82 du fichier Real3Proxy.h.

Références Real3Proxy(), Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

Voici le graphe d'appel pour cette fonction :

◆ assign() [3/3]

std::istream & Arcane::Real3Proxy::assign ( std::istream & i)

Lit un triplet sur le flot i Le triplet est lu sous la forme de trois valeur de type #value_type.

Définition à la ligne 27 du fichier arcane/src/arcane/utils/Real3.cc.

Références assign().

Voici le graphe d'appel pour cette fonction :

◆ copy()

Real3 Arcane::Real3Proxy::copy ( ) const
inline

Retourne une copie du triplet.

Définition à la ligne 75 du fichier Real3Proxy.h.

Références x, y, et z.

◆ div()

Real3Proxy & Arcane::Real3Proxy::div ( Real3 b)
inline

Divise chaque composante du triplet par la composant correspondant de b.

Définition à la ligne 127 du fichier Real3Proxy.h.

Références Real3Proxy(), Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

Référencé par operator/=().

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

◆ divSame()

Real3Proxy & Arcane::Real3Proxy::divSame ( Real b)
inline

Divise chaque composante du triplet par b.

Définition à la ligne 135 du fichier Real3Proxy.h.

Références Real3Proxy(), x, y, et z.

Référencé par normalize().

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

◆ getValue()

Real3 Arcane::Real3Proxy::getValue ( ) const
inline

Définition à la ligne 208 du fichier Real3Proxy.h.

◆ getValueMutable()

Real3 & Arcane::Real3Proxy::getValueMutable ( )
inline

Définition à la ligne 213 du fichier Real3Proxy.h.

◆ isNearlyZero()

bool Arcane::Real3Proxy::isNearlyZero ( ) const
inline

Compare le triplet avec le triplet nul.

Dans le cas d'un type #value_type de type intégral, le triplet est nul si et seulement si chacune de ses composantes est égal à 0.

Pour #value_type du type flottant (float, double ou Real), le triplet est nul si et seulement si chacune de ses composant est inférieure à un espilon donné. La valeur de l'epsilon utilisée est celle de float_info<value_type>::nearlyEpsilon():

\[A=0 \Leftrightarrow |A.x|<\epsilon,|A.y|<\epsilon,|A.z|<\epsilon \]

Valeurs retournées
truesi le triplet est égal au triplet nul,
falsesinon.

Définition à la ligne 99 du fichier Real3Proxy.h.

Références x, y, et z.

◆ mul()

Real3Proxy & Arcane::Real3Proxy::mul ( Real3 b)
inline

Multiple chaque composante du triplet par la composant correspondant de b.

Définition à la ligne 125 du fichier Real3Proxy.h.

Références Real3Proxy(), Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

Référencé par operator*=().

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

◆ mulSame()

Real3Proxy & Arcane::Real3Proxy::mulSame ( Real b)
inline

Multiplie chaque composante du triplet par b.

Définition à la ligne 133 du fichier Real3Proxy.h.

Références Real3Proxy(), x, y, et z.

Voici le graphe d'appel pour cette fonction :

◆ normalize()

Real3Proxy & Arcane::Real3Proxy::normalize ( )
inline

Normalise le triplet.

Si le triplet est non nul, divise chaque composante par la norme du triplet (abs()), de telle sorte qu'après l'appel à cette méthode, abs() valent 1. Si le triplet est nul, ne fait rien.

Définition à la ligne 172 du fichier Real3Proxy.h.

Références abs(), divSame(), Arcane::math::isZero(), et Real3Proxy().

Voici le graphe d'appel pour cette fonction :

◆ operator Real3()

Arcane::Real3Proxy::operator Real3 ( ) const
inline

Définition à la ligne 53 du fichier Real3Proxy.h.

◆ operator*()

Real3 Arcane::Real3Proxy::operator* ( Real3 b) const
inline

Créé un triplet qui vaut ce triplet dont chaque composant a été multipliée par la composante correspondante de b.

Définition à la ligne 158 du fichier Real3Proxy.h.

Références Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

◆ operator*=() [1/2]

void Arcane::Real3Proxy::operator*= ( Real b)
inline

Multiple chaque composante du triplet par le réel b.

Définition à la ligne 143 du fichier Real3Proxy.h.

Références x, y, et z.

◆ operator*=() [2/2]

Real3Proxy & Arcane::Real3Proxy::operator*= ( Real3 b)
inline

Multiple chaque composante du triplet par la composant correspondant de b.

Définition à la ligne 141 du fichier Real3Proxy.h.

Références mul(), et Real3Proxy().

Voici le graphe d'appel pour cette fonction :

◆ operator+()

Real3 Arcane::Real3Proxy::operator+ ( Real3 b) const
inline

Créé un triplet qui vaut ce triplet ajouté à b.

Définition à la ligne 149 du fichier Real3Proxy.h.

Références Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

◆ operator+=()

Real3Proxy & Arcane::Real3Proxy::operator+= ( Real3 b)
inline

Ajoute b au triplet.

Définition à la ligne 137 du fichier Real3Proxy.h.

Références add(), et Real3Proxy().

Voici le graphe d'appel pour cette fonction :

◆ operator-() [1/2]

Real3 Arcane::Real3Proxy::operator- ( ) const
inline

Créé un triplet opposé au triplet actuel.

Définition à la ligne 153 du fichier Real3Proxy.h.

Références x, y, et z.

◆ operator-() [2/2]

Real3 Arcane::Real3Proxy::operator- ( Real3 b) const
inline

Créé un triplet qui vaut b soustrait de ce triplet.

Définition à la ligne 151 du fichier Real3Proxy.h.

Références Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

◆ operator-=()

Real3Proxy & Arcane::Real3Proxy::operator-= ( Real3 b)
inline

Soustrait b au triplet.

Définition à la ligne 139 du fichier Real3Proxy.h.

Références Real3Proxy(), et sub().

Voici le graphe d'appel pour cette fonction :

◆ operator/()

Real3 Arcane::Real3Proxy::operator/ ( Real3 b) const
inline

Créé un triplet qui vaut ce triplet dont chaque composant a été divisée par la composante correspondante de b.

Définition à la ligne 163 du fichier Real3Proxy.h.

Références Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

◆ operator/=() [1/2]

void Arcane::Real3Proxy::operator/= ( Real b)
inline

Divise chaque composante du triplet par le réel b.

Définition à la ligne 147 du fichier Real3Proxy.h.

Références x, y, et z.

◆ operator/=() [2/2]

Real3Proxy & Arcane::Real3Proxy::operator/= ( Real3 b)
inline

Divise chaque composante du triplet par la composant correspondant de b.

Définition à la ligne 145 du fichier Real3Proxy.h.

Références div(), et Real3Proxy().

Voici le graphe d'appel pour cette fonction :

◆ operator=() [1/3]

Real3 Arcane::Real3Proxy::operator= ( const Real3Proxy f)
inline

Définition à la ligne 46 du fichier Real3Proxy.h.

◆ operator=() [2/3]

Real3 Arcane::Real3Proxy::operator= ( Real v)
inline

Affecte à l'instance le triplet (v,v,v).

Définition à la ligne 51 du fichier Real3Proxy.h.

Références x, y, et z.

◆ operator=() [3/3]

Real3 Arcane::Real3Proxy::operator= ( Real3 f)
inline

Définition à la ligne 48 du fichier Real3Proxy.h.

◆ print()

std::ostream & Arcane::Real3Proxy::print ( std::ostream & o) const

Ecrit le triplet sur le flot o lisible par un assign().

Définition à la ligne 37 du fichier arcane/src/arcane/utils/Real3.cc.

Références print().

Référencé par print().

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

◆ printXyz()

std::ostream & Arcane::Real3Proxy::printXyz ( std::ostream & o) const

Ecrit le triplet sur le flot o sous la forme (x,y,z).

Définition à la ligne 46 du fichier arcane/src/arcane/utils/Real3.cc.

Référencé par Arcane::Real3::operator<<().

Voici le graphe des appelants de cette fonction :

◆ reset()

Real3Proxy & Arcane::Real3Proxy::reset ( )
inline

Réinitialise le triplet avec les constructeurs par défaut.

Définition à la ligne 77 du fichier Real3Proxy.h.

Références Real3Proxy(), x, y, et z.

Voici le graphe d'appel pour cette fonction :

◆ sub()

Real3Proxy & Arcane::Real3Proxy::sub ( Real3 b)
inline

Soustrait b au triplet.

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

Références Real3Proxy(), Arcane::Real3POD::x, x, Arcane::Real3POD::y, y, Arcane::Real3POD::z, et z.

Référencé par operator-=().

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

◆ subSame()

Real3Proxy & Arcane::Real3Proxy::subSame ( Real b)
inline

Soustrait b à chaque composante du triplet.

Définition à la ligne 131 du fichier Real3Proxy.h.

Références Real3Proxy(), x, y, et z.

Voici le graphe d'appel pour cette fonction :

◆ operator!=

bool operator!= ( Real3Proxy a,
Real3Proxy b )
friend

Compare deux triplets. Pour la notion d'égalité, voir operator==().

Valeurs retournées
truesi les deux triplets sont différents,
falsesinon.

Définition à la ligne 204 du fichier Real3Proxy.h.

Références Real3Proxy().

◆ operator==

bool operator== ( Real3Proxy a,
Real3Proxy b )
friend

Compare le triplet à b.

Dans le cas d'un type #value_type de type intégral, deux triplets sont égaux si et seulement si chacune de leur composant sont strictement égales.

Pour #value_type du type flottant (float, double ou Real), deux triplets sont identiques si et seulement si la valeur absolue de la différence entre chacune de leur composant correspondante est inférieure à un espilon donné. La valeur de l'epsilon utilisée est celle de float_info<value_type>::nearlyEpsilon():

\[A=B \Leftrightarrow |A.x-B.x|<\epsilon,|A.y-B.y|<\epsilon,|A.z-B.z|<\epsilon \]

Valeurs retournées
truesi les deux triplets sont égaux,
falsesinon.

Définition à la ligne 196 du fichier Real3Proxy.h.

Références _eq(), Real3Proxy(), x, y, et z.

Documentation des données membres

◆ m_info

MemoryAccessInfo Arcane::Real3Proxy::m_info
private

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

◆ m_value

Real3& Arcane::Real3Proxy::m_value
private

Définition à la ligne 69 du fichier Real3Proxy.h.

◆ x

◆ y

◆ z


La documentation de cette classe a été générée à partir des fichiers suivants :