Castor3D  ..
Types publics | Fonctions membres publiques | Fonctions membres publiques statiques | Attributs publics statiques | Attributs protégés | Liste de tous les membres
Référence du modèle de la classe Castor3D::TUniform< Type >

Représentation d'une variable de shader à type variable. Plus de détails...

+ Graphe d'héritage de Castor3D::TUniform< Type >:
+ Graphe de collaboration de Castor3D::TUniform< Type >:

Types publics

using type = typename uniform_type< Type >::type
 
using value_type = typename uniform_type< Type >::value_type
 
using value_sub_type = typename uniform_type< Type >::value_sub_type
 
using param_type = typename uniform_type< Type >::param_type
 
using return_type = typename uniform_type< Type >::return_type
 
using return_const_type = typename uniform_type< Type >::return_const_type
 
using typed_value = typename uniform_type< Type >::typed_value_type
 

Fonctions membres publiques

 TUniform (uint32_t p_occurences)
 Constructeur. Plus de détails...
 
 ~TUniform ()
 Destructeur. Plus de détails...
 
value_sub_type const * GetValues () const
 
return_typeGetValue ()
 
return_const_type const & GetValue () const
 
return_typeGetValue (uint32_t p_index)
 Récupère la valeur à l'index donné. Plus de détails...
 
return_const_type const & GetValue (uint32_t p_index) const
 Récupère la valeur à l'index donné. Plus de détails...
 
void SetValue (param_type const &p_value)
 Définit la valeur de la variable. Plus de détails...
 
void SetValue (param_type const &p_value, uint32_t p_index)
 Définit la valeur de la variable. Plus de détails...
 
void SetValues (param_type const *p_values, size_t p_size)
 Définit les valeurs de la variable. Plus de détails...
 
template<size_t N>
void SetValues (param_type const(&p_values)[N])
 Définit les valeurs de la variable. Plus de détails...
 
template<size_t N>
void SetValues (std::array< param_type, N > const &p_values)
 Définit les valeurs de la variable. Plus de détails...
 
void SetValues (std::vector< param_type > const &p_values)
 Définit les valeurs de la variable. Plus de détails...
 
return_typeoperator[] (uint32_t p_index)
 Opérateur d'accès de type tableau. Plus de détails...
 
return_const_type const & operator[] (uint32_t p_index) const
 Opérateur d'accès de type tableau. Plus de détails...
 
uint32_t size () const override
 
uint8_t const *const const_ptr () const override
 
void link (uint8_t *p_buffer, uint32_t p_stride) override
 Définit le tampon de cette variable. Plus de détails...
 
Castor::String const & GetDataTypeName () const override
 
VariableType GetType () const override
 
UniformType GetFullType () const override
 
Castor::String const & GetFullTypeName () const override
 
- Fonctions membres publiques hérités de Castor3D::Uniform
C3D_API Uniform (uint32_t p_occurences)
 Constructeur. Plus de détails...
 
virtual C3D_API ~Uniform ()
 Destructeur. Plus de détails...
 
C3D_API void SetStrValues (Castor::String const &p_value)
 Définit la valeur de la variable à partir d'une chaîne. Plus de détails...
 
C3D_API Castor::String GetStrValues () const
 Récupère les valeurs chaîne de la variable. Plus de détails...
 
C3D_API void SetStrValue (Castor::String const &p_value, uint32_t p_index=0)
 Définit la valeur de la variable à partir d'une chaîne. Plus de détails...
 
C3D_API Castor::String GetStrValue (uint32_t p_index=0) const
 Récupère la valeur chaîne de la variable. Plus de détails...
 
void SetName (Castor::String const &p_name)
 Définit le nom de la variable. Plus de détails...
 
Castor::String GetName () const
 
const uint32_t & GetOccCount () const
 
bool IsChanged () const
 
void SetChanged (bool p_value=true)
 

Fonctions membres publiques statiques

static constexpr VariableType GetVariableType ()
 
static constexpr UniformType GetUniformType ()
 
static Castor::String const & GetUniformTypeName ()
 

Attributs publics statiques

static constexpr auto stride = variable_type< Type >::count * sizeof( value_sub_type )
 

Attributs protégés

bool m_ownBuffer { true }
 
value_sub_typem_values { nullptr }
 
std::vector< typed_valuem_typedValues
 
uint32_t m_stride { 0u }
 
- Attributs protégés hérités de Castor3D::Uniform
Castor::String m_name
 
bool m_changed
 
uint32_t m_occurences
 

Description détaillée

template<UniformType Type>
class Castor3D::TUniform< Type >

Représentation d'une variable de shader à type variable.

Auteur
Sylvain DOREMUS
Version
0.6.1.0
Date
14/08/2010

Documentation des définitions de type membres

◆ param_type

template<UniformType Type>
using Castor3D::TUniform< Type >::param_type = typename uniform_type< Type >::param_type

◆ return_const_type

template<UniformType Type>
using Castor3D::TUniform< Type >::return_const_type = typename uniform_type< Type >::return_const_type

◆ return_type

template<UniformType Type>
using Castor3D::TUniform< Type >::return_type = typename uniform_type< Type >::return_type

◆ type

template<UniformType Type>
using Castor3D::TUniform< Type >::type = typename uniform_type< Type >::type

◆ typed_value

template<UniformType Type>
using Castor3D::TUniform< Type >::typed_value = typename uniform_type< Type >::typed_value_type

◆ value_sub_type

template<UniformType Type>
using Castor3D::TUniform< Type >::value_sub_type = typename uniform_type< Type >::value_sub_type

◆ value_type

template<UniformType Type>
using Castor3D::TUniform< Type >::value_type = typename uniform_type< Type >::value_type

Documentation des constructeurs et destructeur

◆ TUniform()

template<UniformType Type>
Castor3D::TUniform< Type >::TUniform ( uint32_t  p_occurences)
inline

Constructeur.

Paramètres
[in]p_occurencesLes dimensions du tableau.

◆ ~TUniform()

template<UniformType Type>
Castor3D::TUniform< Type >::~TUniform ( )
inline

Destructeur.

Documentation des fonctions membres

◆ const_ptr()

template<UniformType Type>
uint8_t const* const Castor3D::TUniform< Type >::const_ptr ( ) const
inlineoverridevirtual

Renvoie
Le pointeur sur les données de la variable.

Implémente Castor3D::Uniform.

◆ GetDataTypeName()

template<UniformType Type>
Castor::String const& Castor3D::TUniform< Type >::GetDataTypeName ( ) const
inlineoverridevirtual

Renvoie
Le nom du type de données de la variable.

Implémente Castor3D::Uniform.

◆ GetFullType()

template<UniformType Type>
UniformType Castor3D::TUniform< Type >::GetFullType ( ) const
inlineoverridevirtual

Implémente Castor3D::Uniform.

◆ GetFullTypeName()

template<UniformType Type>
Castor::String const& Castor3D::TUniform< Type >::GetFullTypeName ( ) const
inlineoverridevirtual

Implémente Castor3D::Uniform.

◆ GetType()

template<UniformType Type>
VariableType Castor3D::TUniform< Type >::GetType ( ) const
inlineoverridevirtual

Implémente Castor3D::Uniform.

◆ GetUniformType()

template<UniformType Type>
static constexpr UniformType Castor3D::TUniform< Type >::GetUniformType ( )
inlinestatic

◆ GetUniformTypeName()

template<UniformType Type>
static Castor::String const& Castor3D::TUniform< Type >::GetUniformTypeName ( )
inlinestatic

◆ GetValue() [1/4]

template<UniformType Type>
return_type& Castor3D::TUniform< Type >::GetValue ( )
inline
Renvoie
Une référence sur la valeur.

◆ GetValue() [2/4]

template<UniformType Type>
return_const_type const& Castor3D::TUniform< Type >::GetValue ( ) const
inline
Renvoie
Une référence constante sur la valeur.

◆ GetValue() [3/4]

template<UniformType Type>
return_type& Castor3D::TUniform< Type >::GetValue ( uint32_t  p_index)
inline

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

Remarques
Vérifie que l'index est dans les bornes.
Paramètres
[in]p_indexL'indice.
Renvoie
Une référence sur la valeur à l'index donné0

◆ GetValue() [4/4]

template<UniformType Type>
return_const_type const& Castor3D::TUniform< Type >::GetValue ( uint32_t  p_index) const
inline

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

Remarques
Vérifie que l'index est dans les bornes.
Paramètres
[in]p_indexL'indice.
Renvoie
Une référence constante sur la valeur à l'index donné.

◆ GetValues()

template<UniformType Type>
value_sub_type const* Castor3D::TUniform< Type >::GetValues ( ) const
inline
Renvoie
Les valeurs.

◆ GetVariableType()

template<UniformType Type>
static constexpr VariableType Castor3D::TUniform< Type >::GetVariableType ( )
inlinestatic
Renvoie
Le type de la variable.

◆ link()

template<UniformType Type>
void Castor3D::TUniform< Type >::link ( uint8_t *  p_buffer,
uint32_t  p_stride 
)
overridevirtual

Définit le tampon de cette variable.

Remarques
La variable perd la responsabilité de son tampon.
Paramètres
[in]p_bufferLe tampon.
[in]p_strideLa distance binaire entre chaque valeur dans le tampon.

Implémente Castor3D::Uniform.

◆ operator[]() [1/2]

template<UniformType Type>
return_type& Castor3D::TUniform< Type >::operator[] ( uint32_t  p_index)
inline

Opérateur d'accès de type tableau.

Remarques
Ne vérifie pas que l'index est dans les bornes.
Paramètres
[in]p_indexL'indice.
Renvoie
Une référence sur la valeur à l'index donné.

◆ operator[]() [2/2]

template<UniformType Type>
return_const_type const& Castor3D::TUniform< Type >::operator[] ( uint32_t  p_index) const
inline

Opérateur d'accès de type tableau.

Remarques
Ne vérifie pas que l'index est dans les bornes.
Paramètres
[in]p_indexL'indice.
Renvoie
Une référence constante sur la valeur à l'index donné.

◆ SetValue() [1/2]

template<UniformType Type>
void Castor3D::TUniform< Type >::SetValue ( param_type const &  p_value)
inline

Définit la valeur de la variable.

Paramètres
[in]p_valueLa valeur.

Référencé par Castor3D::DoRenderNodeNoPass().

+ Voici le graphe des appelants de cette fonction :

◆ SetValue() [2/2]

template<UniformType Type>
void Castor3D::TUniform< Type >::SetValue ( param_type const &  p_value,
uint32_t  p_index 
)
inline

Définit la valeur de la variable.

Paramètres
[in]p_valueLa valeur.
[in]p_indexL'index de la valeur à modifier.

◆ SetValues() [1/4]

template<UniformType Type>
void Castor3D::TUniform< Type >::SetValues ( param_type const *  p_values,
size_t  p_size 
)
inline

Définit les valeurs de la variable.

Paramètres
[in]p_valuesLes valeurs.
[in]p_sizeLe nombre de valeurs.

◆ SetValues() [2/4]

template<UniformType Type>
template<size_t N>
void Castor3D::TUniform< Type >::SetValues ( param_type const(&)  p_values[N])
inline

Définit les valeurs de la variable.

Paramètres
[in]p_valuesLes valeurs.

◆ SetValues() [3/4]

template<UniformType Type>
template<size_t N>
void Castor3D::TUniform< Type >::SetValues ( std::array< param_type, N > const &  p_values)
inline

Définit les valeurs de la variable.

Paramètres
[in]p_valuesLes valeurs.

◆ SetValues() [4/4]

template<UniformType Type>
void Castor3D::TUniform< Type >::SetValues ( std::vector< param_type > const &  p_values)
inline

Définit les valeurs de la variable.

Paramètres
[in]p_valuesLes valeurs.

◆ size()

template<UniformType Type>
uint32_t Castor3D::TUniform< Type >::size ( ) const
inlineoverridevirtual

Renvoie
La taille en octets de la variable.

Implémente Castor3D::Uniform.

Documentation des données membres

◆ m_ownBuffer

template<UniformType Type>
bool Castor3D::TUniform< Type >::m_ownBuffer { true }
protected

Dit si la variable est responsable de son tampon.

◆ m_stride

template<UniformType Type>
uint32_t Castor3D::TUniform< Type >::m_stride { 0u }
protected

La distance binaire entrechaque valeur dans le tampon.

◆ m_typedValues

template<UniformType Type>
std::vector< typed_value > Castor3D::TUniform< Type >::m_typedValues
protected

Le tampon contenant toutes les valeurs. typées

◆ m_values

template<UniformType Type>
value_sub_type* Castor3D::TUniform< Type >::m_values { nullptr }
protected

Le tampon contenant toutes les valeurs.

◆ stride

template<UniformType Type>
constexpr auto Castor3D::TUniform< Type >::stride = variable_type< Type >::count * sizeof( value_sub_type )
static

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