Castor3D 0.16.0
Multiplatform 3D engine
Public Types | Public Member Functions | List of all members
castor::GroupChangeTrackedT< ValueT, ControlT > Class Template Reference

Templated class that provide std::array style buffer view. More...

#include <GroupChangeTracked.hpp>

Inheritance diagram for castor::GroupChangeTrackedT< ValueT, ControlT >:
Inheritance graph
[legend]

Public Types

using Type = ValueT
 

Public Member Functions

 GroupChangeTrackedT (ControlT &dirty, castor::Function< void() > callback={}) noexcept
 
 GroupChangeTrackedT (GroupChangeTrackedT &&rhs) noexcept
 
 GroupChangeTrackedT (GroupChangeTrackedT const &rhs) noexcept
 
 GroupChangeTrackedT (ControlT &dirty, ValueT rhs, castor::Function< void() > callback={}) noexcept
 
 ~GroupChangeTrackedT () noexcept=default
 
GroupChangeTrackedToperator= (ValueT const &rhs) noexcept
 
GroupChangeTrackedToperator= (GroupChangeTrackedT const &rhs) noexcept
 
GroupChangeTrackedToperator= (GroupChangeTrackedT &&rhs) noexcept
 
void reset () noexcept
 
ValueT & naked () noexcept
 
ValueT const & value () const noexcept
 
ControlT & control () const noexcept
 
castor::Function< void() > callback () const noexcept
 
bool isDirty () const noexcept
 
 operator ValueT const & () const noexcept
 
 operator ValueT & () noexcept
 
ValueT const & operator* () const noexcept
 
ValueT & operator* () noexcept
 
ValueT const * operator-> () const noexcept
 
ValueT * operator-> () noexcept
 

Detailed Description

template<typename ValueT, typename ControlT>
class castor::GroupChangeTrackedT< ValueT, ControlT >

Templated class that provide std::array style buffer view.

Member Typedef Documentation

◆ Type

template<typename ValueT , typename ControlT >
using castor::GroupChangeTrackedT< ValueT, ControlT >::Type = ValueT

Constructor & Destructor Documentation

◆ GroupChangeTrackedT() [1/4]

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::GroupChangeTrackedT ( ControlT & dirty,
castor::Function< void() > callback = {} )
inlineexplicitnoexcept

◆ GroupChangeTrackedT() [2/4]

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::GroupChangeTrackedT ( GroupChangeTrackedT< ValueT, ControlT > && rhs)
inlinenoexcept

◆ GroupChangeTrackedT() [3/4]

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::GroupChangeTrackedT ( GroupChangeTrackedT< ValueT, ControlT > const & rhs)
inlinenoexcept

◆ GroupChangeTrackedT() [4/4]

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::GroupChangeTrackedT ( ControlT & dirty,
ValueT rhs,
castor::Function< void() > callback = {} )
inlinenoexcept

◆ ~GroupChangeTrackedT()

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::~GroupChangeTrackedT ( )
defaultnoexcept

Member Function Documentation

◆ callback()

template<typename ValueT , typename ControlT >
castor::Function< void() > castor::GroupChangeTrackedT< ValueT, ControlT >::callback ( ) const
inlinenoexcept

◆ control()

template<typename ValueT , typename ControlT >
ControlT & castor::GroupChangeTrackedT< ValueT, ControlT >::control ( ) const
inlinenoexcept

◆ isDirty()

template<typename ValueT , typename ControlT >
bool castor::GroupChangeTrackedT< ValueT, ControlT >::isDirty ( ) const
inlinenoexcept

◆ naked()

template<typename ValueT , typename ControlT >
ValueT & castor::GroupChangeTrackedT< ValueT, ControlT >::naked ( )
inlinenoexcept

◆ operator ValueT &()

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::operator ValueT & ( )
inlinenoexcept

◆ operator ValueT const &()

template<typename ValueT , typename ControlT >
castor::GroupChangeTrackedT< ValueT, ControlT >::operator ValueT const & ( ) const
inlinenoexcept

◆ operator*() [1/2]

template<typename ValueT , typename ControlT >
ValueT const & castor::GroupChangeTrackedT< ValueT, ControlT >::operator* ( ) const
inlinenoexcept

◆ operator*() [2/2]

template<typename ValueT , typename ControlT >
ValueT & castor::GroupChangeTrackedT< ValueT, ControlT >::operator* ( )
inlinenoexcept

◆ operator->() [1/2]

template<typename ValueT , typename ControlT >
ValueT const * castor::GroupChangeTrackedT< ValueT, ControlT >::operator-> ( ) const
inlinenoexcept

◆ operator->() [2/2]

template<typename ValueT , typename ControlT >
ValueT * castor::GroupChangeTrackedT< ValueT, ControlT >::operator-> ( )
inlinenoexcept

◆ operator=() [1/3]

template<typename ValueT , typename ControlT >
GroupChangeTrackedT & castor::GroupChangeTrackedT< ValueT, ControlT >::operator= ( GroupChangeTrackedT< ValueT, ControlT > && rhs)
inlinenoexcept

◆ operator=() [2/3]

template<typename ValueT , typename ControlT >
GroupChangeTrackedT & castor::GroupChangeTrackedT< ValueT, ControlT >::operator= ( GroupChangeTrackedT< ValueT, ControlT > const & rhs)
inlinenoexcept

◆ operator=() [3/3]

template<typename ValueT , typename ControlT >
GroupChangeTrackedT & castor::GroupChangeTrackedT< ValueT, ControlT >::operator= ( ValueT const & rhs)
inlinenoexcept

◆ reset()

template<typename ValueT , typename ControlT >
void castor::GroupChangeTrackedT< ValueT, ControlT >::reset ( )
inlinenoexcept

◆ value()

template<typename ValueT , typename ControlT >
ValueT const & castor::GroupChangeTrackedT< ValueT, ControlT >::value ( ) const
inlinenoexcept

The documentation for this class was generated from the following files: