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 UniformTypeTraits< Type >::type
 
using value_type = typename UniformTypeTraits< Type >::value_type
 
using value_sub_type = typename UniformTypeTraits< Type >::value_sub_type
 
using param_type = typename UniformTypeTraits< Type >::param_type
 
using return_type = typename UniformTypeTraits< Type >::return_type
 
using return_const_type = typename UniformTypeTraits< Type >::return_const_type
 
using typed_value = typename UniformTypeTraits< 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 constPtr () 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 = VariableTypeTraits< 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 UniformTypeTraits< Type >::param_type

◆ return_const_type

template<UniformType Type>
using castor3d::TUniform< Type >::return_const_type = typename UniformTypeTraits< Type >::return_const_type

◆ return_type

template<UniformType Type>
using castor3d::TUniform< Type >::return_type = typename UniformTypeTraits< Type >::return_type

◆ type

template<UniformType Type>
using castor3d::TUniform< Type >::type = typename UniformTypeTraits< Type >::type

◆ typed_value

template<UniformType Type>
using castor3d::TUniform< Type >::typed_value = typename UniformTypeTraits< Type >::typed_value_type

◆ value_sub_type

template<UniformType Type>
using castor3d::TUniform< Type >::value_sub_type = typename UniformTypeTraits< Type >::value_sub_type

◆ value_type

template<UniformType Type>
using castor3d::TUniform< Type >::value_type = typename UniformTypeTraits< 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

◆ constPtr()

template<UniformType Type>
uint8_t const* const castor3d::TUniform< Type >::constPtr ( ) 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.

◆ 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 = VariableTypeTraits< Type >::count * sizeof( value_sub_type )
static

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