Castor3D 0.16.0
Multiplatform 3D engine
Types publics | Liste de tous les membres
Référence du modèle de la classe castor::FlagCombination< FlagType >

Classe template qui fournit une conversion implicite depuis un scoped enum vers son type entier de base. Plus de détails...

#include <FlagCombination.hpp>

Graphe d'héritage de castor::FlagCombination< FlagType >:
Inheritance graph
[légende]

Types publics

using BaseType = typename std::underlying_type< FlagType >::type
 The basic integer type.
 

Fonctions membres publiques

Construction.

constexpr FlagCombination (FlagType value) noexcept
 
constexpr FlagCombination (BaseType value=BaseType{}) noexcept
 

Conversion.

constexpr operator BaseType const & () const noexcept
 
constexpr BaseType value () const noexcept
 

Itération.

constexpr FlagIterator< FlagType > begin () const noexcept
 
constexpr FlagIterator< FlagType > end () const noexcept
 
constexpr size_t size () const noexcept
 
constexpr bool empty () const noexcept
 

Opérateurs binaires.

constexpr FlagCombinationoperator&= (BaseType rhs) noexcept
 
constexpr FlagCombinationoperator|= (BaseType rhs) noexcept
 
constexpr FlagCombinationoperator^= (BaseType rhs) noexcept
 
constexpr FlagCombinationoperator&= (FlagType rhs) noexcept
 
constexpr FlagCombinationoperator|= (FlagType rhs) noexcept
 
constexpr FlagCombinationoperator^= (FlagType rhs) noexcept
 
constexpr FlagCombinationoperator&= (FlagCombination< FlagType > const &rhs) noexcept
 
constexpr FlagCombinationoperator|= (FlagCombination< FlagType > const &rhs) noexcept
 
constexpr FlagCombinationoperator^= (FlagCombination< FlagType > const &rhs) noexcept
 
constexpr FlagCombinationoperator~ () noexcept
 

Description détaillée

template<typename FlagType>
class castor::FlagCombination< FlagType >

Classe template qui fournit une conversion implicite depuis un scoped enum vers son type entier de base.

Remarques
Permet la définition de flags, au travers des opérations binaires (&, |), Pour lesquels les opérandes auront la même taille binaire.

Documentation des définitions de type membres

◆ BaseType

template<typename FlagType >
using castor::FlagCombination< FlagType >::BaseType = typename std::underlying_type< FlagType >::type

The basic integer type.

Documentation des constructeurs et destructeur

◆ FlagCombination() [1/2]

template<typename FlagType >
constexpr castor::FlagCombination< FlagType >::FlagCombination ( FlagType value)
inlineconstexprnoexcept

Références castor::FlagCombination< FlagType >::value().

Voici le graphe d'appel pour cette fonction :

◆ FlagCombination() [2/2]

template<typename FlagType >
constexpr castor::FlagCombination< FlagType >::FlagCombination ( BaseType value = BaseType{})
inlineexplicitconstexprnoexcept

Documentation des fonctions membres

◆ begin()

template<typename FlagType >
constexpr FlagIterator< FlagType > castor::FlagCombination< FlagType >::begin ( ) const
inlineconstexprnoexcept

Référencé par castor::FlagCombination< FlagType >::size().

Voici le graphe des appelants de cette fonction :

◆ empty()

template<typename FlagType >
constexpr bool castor::FlagCombination< FlagType >::empty ( ) const
inlineconstexprnoexcept

Références castor::FlagCombination< FlagType >::value().

Voici le graphe d'appel pour cette fonction :

◆ end()

template<typename FlagType >
constexpr FlagIterator< FlagType > castor::FlagCombination< FlagType >::end ( ) const
inlineconstexprnoexcept

Référencé par castor::FlagCombination< FlagType >::size().

Voici le graphe des appelants de cette fonction :

◆ operator BaseType const &()

template<typename FlagType >
constexpr castor::FlagCombination< FlagType >::operator BaseType const & ( ) const
inlineconstexprnoexcept

◆ operator&=() [1/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator&= ( BaseType rhs)
inlineconstexprnoexcept

◆ operator&=() [2/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator&= ( FlagCombination< FlagType > const & rhs)
inlineconstexprnoexcept

◆ operator&=() [3/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator&= ( FlagType rhs)
inlineconstexprnoexcept

◆ operator^=() [1/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator^= ( BaseType rhs)
inlineconstexprnoexcept

◆ operator^=() [2/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator^= ( FlagCombination< FlagType > const & rhs)
inlineconstexprnoexcept

◆ operator^=() [3/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator^= ( FlagType rhs)
inlineconstexprnoexcept

◆ operator|=() [1/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator|= ( BaseType rhs)
inlineconstexprnoexcept

◆ operator|=() [2/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator|= ( FlagCombination< FlagType > const & rhs)
inlineconstexprnoexcept

◆ operator|=() [3/3]

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator|= ( FlagType rhs)
inlineconstexprnoexcept

◆ operator~()

template<typename FlagType >
constexpr FlagCombination & castor::FlagCombination< FlagType >::operator~ ( )
inlineconstexprnoexcept

◆ size()

template<typename FlagType >
constexpr size_t castor::FlagCombination< FlagType >::size ( ) const
inlineconstexprnoexcept

Références castor::FlagCombination< FlagType >::begin(), et castor::FlagCombination< FlagType >::end().

Voici le graphe d'appel pour cette fonction :

◆ value()

template<typename FlagType >
constexpr BaseType castor::FlagCombination< FlagType >::value ( ) const
inlineconstexprnoexcept

Référencé par castor::FlagCombination< FlagType >::empty(), et castor::FlagCombination< FlagType >::FlagCombination().

Voici le graphe des appelants de cette fonction :

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