Types publics | Fonctions membres publiques | Amis

Référence de la classe Castor::Point< T, Count > (modèle)

Classe de points à dimensions statiques. Plus de détails...

Graphe d'héritage de Castor::Point< T, Count >:
Graphe de collaboration de Castor::Point< T, Count >:

Liste de tous les membres

Types publics

typedef value_type * iterator
 Typedef d'un pointeur sur les données.
typedef value_type const * const_iterator
 Typedef d'un pointeur constant sur les données.

Fonctions membres publiques

 Point ()
 Constructeur.
 Point (Point< T, Count > const &p_ptPoint)
 Constructeur par copie.
 Point (Point< T, Count > &&p_ptPoint)
 Constructeur par déplacement.
template<typename U >
 Point (U const *p_pValues)
 Constructeur.
template<typename U >
 Point (U const &p_vA, U const &p_vB)
 Constructeur.
template<typename U >
 Point (U const &p_vA, U const &p_vB, U const &p_vC)
 Constructeur.
template<typename U >
 Point (U const &p_vA, U const &p_vB, U const &p_vC, U const &p_vD)
 Constructeur.
 ~Point ()
 Destructeur.
Point< T, Count > & operator= (Point< T, Count > const &p_pt)
 Opérateur d'affectation par copie.
Point< T, Count > & operator= (Point< T, Count > &&p_pt)
 Opérateur d'affectation par déplacement.
template<typename U , std::size_t _Count>
Point< T, Count > & operator+= (Point< U, _Count > const &p_pt)
 Opérateur d'affectation par addition.
template<typename U , std::size_t _Count>
Point< T, Count > & operator-= (Point< U, _Count > const &p_pt)
 Opérateur d'affectation par soustraction.
template<typename U , std::size_t _Count>
Point< T, Count > & operator*= (Point< U, _Count > const &p_pt)
 Opérateur d'affectation par multiplication.
template<typename U , std::size_t _Count>
Point< T, Count > & operator/= (Point< U, _Count > const &p_pt)
 Opérateur d'affectation par division.
template<typename U >
Point< T, Count > & operator+= (U const *p_coords)
 Opérateur d'affectation par addition.
template<typename U >
Point< T, Count > & operator-= (U const *p_coords)
 Opérateur d'affectation par soustraction.
template<typename U >
Point< T, Count > & operator*= (U const *p_coords)
 Opérateur d'affectation par multiplication.
template<typename U >
Point< T, Count > & operator/= (U const *p_coords)
 Opérateur d'affectation par division.
Point< T, Count > & operator*= (T const &p_coord)
 Opérateur d'affectation par multiplication.
Point< T, Count > & operator/= (T const &p_coord)
 Opérateur d'affectation par division.
void link (void const *p_pCoords)
 Lie les données de ce point à celles données en paramètre.
void unlink ()
 Délie les données de ce point de celles données précédemment.
void swap (Point< T, Count > &p_pt)
 Echange les données de c epoint avec celles du point donné.
void flip ()
 Inverse les données dans ce point.
void clone (Point< T, Count > const &p_ptPoint)
void clopy (Point< T, Count > const &p_ptPoint)
template<typename U >
void copy (Point< U, Count > const &p_ptPoint)
void to_values (T *p_pResult) const
 Récupère les données et les place dans un tableau.
virtual std::size_t count () const
 Récupère le nombre de coordonnées.
virtual std::size_t elem_size () const
 Récupère la taille du type données.
T const & operator[] (std::size_t p_pos) const
 Récupère la donnée à l'index donné.
T & operator[] (std::size_t p_pos)
 Récupère la donnée à l'index donné.
T const & at (std::size_t p_pos) const
 Récupère la donnée à l'index donné.
T & at (std::size_t p_pos)
 Récupère la donnée à l'index donné.
T * ptr ()
 Récupère le pointeur sur les données.
T const * const_ptr () const
 Récupère le pointeur sur les données constantes.
iterator begin ()
 Récupère un itérateur sur le premier élément.
const_iterator begin () const
 Récupère un itérateur constant sur le premier élément.
const_iterator end () const
 Récupère un itérateur sur le dernier élément.

Amis

class Point

Description détaillée

template<typename T, std::size_t Count>
class Castor::Point< T, Count >

Classe de points à dimensions statiques.

Auteur:
Sylvain DOREMUS
Date:
14/02/2010
Remarques:
Peut recevoir les types de données qui ont une Policy créée

Documentation des définitions de type membres

template<typename T, std::size_t Count>
typedef value_type const* Castor::Point< T, Count >::const_iterator

Typedef d'un pointeur constant sur les données.

template<typename T, std::size_t Count>
typedef value_type* Castor::Point< T, Count >::iterator

Typedef d'un pointeur sur les données.


Documentation des constructeurs et destructeur

template<typename T, std::size_t Count>
Castor::Point< T, Count >::Point (  ) 

Constructeur.

template<typename T, std::size_t Count>
Castor::Point< T, Count >::Point ( Point< T, Count > const &  p_ptPoint  ) 

Constructeur par copie.

Paramètres:
[in] p_ptPoint L'objet Point à copier
template<typename T, std::size_t Count>
Castor::Point< T, Count >::Point ( Point< T, Count > &&  p_ptPoint  ) 

Constructeur par déplacement.

Paramètres:
[in] p_ptPoint L'objet Point à déplacer
template<typename T, std::size_t Count>
template<typename U >
Castor::Point< T, Count >::Point ( U const *  p_pValues  ) 

Constructeur.

template<typename T, std::size_t Count>
template<typename U >
Castor::Point< T, Count >::Point ( U const &  p_vA,
U const &  p_vB 
)

Constructeur.

template<typename T, std::size_t Count>
template<typename U >
Castor::Point< T, Count >::Point ( U const &  p_vA,
U const &  p_vB,
U const &  p_vC 
)

Constructeur.

template<typename T, std::size_t Count>
template<typename U >
Castor::Point< T, Count >::Point ( U const &  p_vA,
U const &  p_vB,
U const &  p_vC,
U const &  p_vD 
)

Constructeur.

template<typename T, std::size_t Count>
Castor::Point< T, Count >::~Point (  ) 

Destructeur.


Documentation des fonctions membres

template<typename T, std::size_t Count>
T const& Castor::Point< T, Count >::at ( std::size_t  p_pos  )  const

Récupère la donnée à l'index donné.

Remarques:
Cette fonction vérifie l'index et lance une exception s'il est hors bornes
Renvoie:
Une référence constante sur la donnée à l'index voulu

Voici le graphe d'appel pour cette fonction :

template<typename T, std::size_t Count>
T& Castor::Point< T, Count >::at ( std::size_t  p_pos  ) 

Récupère la donnée à l'index donné.

Remarques:
Cette fonction vérifie l'index et lance une exception s'il est hors bornes
Renvoie:
Une référence sur la donnée à l'index voulu
template<typename T, std::size_t Count>
iterator Castor::Point< T, Count >::begin (  )  [inline]

Récupère un itérateur sur le premier élément.

Renvoie:
L'itérateur
template<typename T, std::size_t Count>
const_iterator Castor::Point< T, Count >::begin (  )  const [inline]

Récupère un itérateur constant sur le premier élément.

Renvoie:
L'itérateur
template<typename T, std::size_t Count>
void Castor::Point< T, Count >::clone ( Point< T, Count > const &  p_ptPoint  ) 

Crée un clône de ce point Les coordonnées du clône pointent sur celles de ce point

template<typename T, std::size_t Count>
void Castor::Point< T, Count >::clopy ( Point< T, Count > const &  p_ptPoint  ) 

Compromis entre clone et copy Si ce point gère ses coordonnées, la clopie gèrera les siennes, sinon la clopie ne les gèrera pas non plus

template<typename T, std::size_t Count>
T const* Castor::Point< T, Count >::const_ptr (  )  const [inline]

Récupère le pointeur sur les données constantes.

Renvoie:
Les données

Réimplémentée à partir de Castor::PointBase.

template<typename T, std::size_t Count>
template<typename U >
void Castor::Point< T, Count >::copy ( Point< U, Count > const &  p_ptPoint  ) 

Copie les coordonnées du point en paramètre dans celles de ce point

Voici le graphe d'appel pour cette fonction :

template<typename T, std::size_t Count>
virtual std::size_t Castor::Point< T, Count >::count (  )  const [inline, virtual]

Récupère le nombre de coordonnées.

Renvoie:
Le nombre de coordonnées

Implémente Castor::PointBase.

template<typename T, std::size_t Count>
virtual std::size_t Castor::Point< T, Count >::elem_size (  )  const [inline, virtual]

Récupère la taille du type données.

Renvoie:
La taille du type de données

Implémente Castor::PointBase.

template<typename T, std::size_t Count>
const_iterator Castor::Point< T, Count >::end (  )  const [inline]

Récupère un itérateur sur le dernier élément.

Renvoie:
L'itérateur
template<typename T, std::size_t Count>
void Castor::Point< T, Count >::flip (  ) 

Inverse les données dans ce point.

Remarques:
Les premiers deviennent les derniers
template<typename T, std::size_t Count>
void Castor::Point< T, Count >::link ( void const *  p_pCoords  )  [virtual]

Lie les données de ce point à celles données en paramètre.

Remarques:
Le point perd la maîtrise de ses données

Implémente Castor::PointBase.

template<typename T, std::size_t Count>
template<typename U >
Point<T, Count>& Castor::Point< T, Count >::operator*= ( U const *  p_coords  ) 

Opérateur d'affectation par multiplication.

Paramètres:
[in] p_coords Les valeurs à multiplier
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
Point<T, Count>& Castor::Point< T, Count >::operator*= ( T const &  p_coord  ) 

Opérateur d'affectation par multiplication.

Paramètres:
[in] p_coord La valeur à multiplier
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U , std::size_t _Count>
Point<T, Count>& Castor::Point< T, Count >::operator*= ( Point< U, _Count > const &  p_pt  ) 

Opérateur d'affectation par multiplication.

Paramètres:
[in] p_pt L'objet Point à multiplier
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U , std::size_t _Count>
Point<T, Count>& Castor::Point< T, Count >::operator+= ( Point< U, _Count > const &  p_pt  ) 

Opérateur d'affectation par addition.

Paramètres:
[in] p_pt L'objet Point à ajouter
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U >
Point<T, Count>& Castor::Point< T, Count >::operator+= ( U const *  p_coords  ) 

Opérateur d'affectation par addition.

Paramètres:
[in] p_coords Les valeurs à additionner
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U >
Point<T, Count>& Castor::Point< T, Count >::operator-= ( U const *  p_coords  ) 

Opérateur d'affectation par soustraction.

Paramètres:
[in] p_coords Les valeurs à soustraire
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U , std::size_t _Count>
Point<T, Count>& Castor::Point< T, Count >::operator-= ( Point< U, _Count > const &  p_pt  ) 

Opérateur d'affectation par soustraction.

Paramètres:
[in] p_pt L'objet Point à soustraire
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U >
Point<T, Count>& Castor::Point< T, Count >::operator/= ( U const *  p_coords  ) 

Opérateur d'affectation par division.

Paramètres:
[in] p_coords Les valeurs à diviser
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
Point<T, Count>& Castor::Point< T, Count >::operator/= ( T const &  p_coord  ) 

Opérateur d'affectation par division.

Paramètres:
[in] p_coord La valeur à diviser
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
template<typename U , std::size_t _Count>
Point<T, Count>& Castor::Point< T, Count >::operator/= ( Point< U, _Count > const &  p_pt  ) 

Opérateur d'affectation par division.

Paramètres:
[in] p_pt L'objet Point à diviser
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
Point<T, Count>& Castor::Point< T, Count >::operator= ( Point< T, Count > &&  p_pt  ) 

Opérateur d'affectation par déplacement.

Paramètres:
[in] p_pt L'objet Point à déplacer
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
Point<T, Count>& Castor::Point< T, Count >::operator= ( Point< T, Count > const &  p_pt  ) 

Opérateur d'affectation par copie.

Paramètres:
[in] p_pt L'objet Point à copier
Renvoie:
Une référence sur cet objet Point
template<typename T, std::size_t Count>
T const& Castor::Point< T, Count >::operator[] ( std::size_t  p_pos  )  const [inline]

Récupère la donnée à l'index donné.

Remarques:
Aucun check n'est fait, s'il y a une erreur d'index, attendez-vous à un crash
Renvoie:
Une référence constante sur la donnée à l'index voulu
template<typename T, std::size_t Count>
T& Castor::Point< T, Count >::operator[] ( std::size_t  p_pos  )  [inline]

Récupère la donnée à l'index donné.

Remarques:
Aucun check n'est fait, s'il y a une erreur d'index, attendez-vous à un crash
Renvoie:
Une référence sur la donnée à l'index voulu
template<typename T, std::size_t Count>
T* Castor::Point< T, Count >::ptr (  )  [inline]

Récupère le pointeur sur les données.

Renvoie:
Les données

Réimplémentée à partir de Castor::PointBase.

template<typename T, std::size_t Count>
void Castor::Point< T, Count >::swap ( Point< T, Count > &  p_pt  ) 

Echange les données de c epoint avec celles du point donné.

Paramètres:
[in] p_pt Le point à échanger
template<typename T, std::size_t Count>
void Castor::Point< T, Count >::to_values ( T *  p_pResult  )  const

Récupère les données et les place dans un tableau.

Paramètres:
[in,out] p_pResult Reçoit les données, doit être alloué par l'appelant
template<typename T, std::size_t Count>
void Castor::Point< T, Count >::unlink (  )  [virtual]

Délie les données de ce point de celles données précédemment.

Remarques:
Le point regagne la maîtrise de ses données

Implémente Castor::PointBase.


Documentation des fonctions amies et associées

template<typename T, std::size_t Count>
friend class Point [friend]

La documentation de cette classe a été générée à partir du fichier suivant :
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définition de type Énumérations Valeurs énumérées Amis Macros