TrinityCore
Loading...
Searching...
No Matches
UF::DynamicUpdateFieldSetter< T > Struct Template Reference

#include <UpdateField.h>

Public Types

using value_type = T
 
using insert_result = std::conditional_t< std::is_base_of_v< HasChangesMaskTag, T >, MutableFieldReference< T, true >, T & >
 

Public Member Functions

 DynamicUpdateFieldSetter (std::vector< T > &values, std::vector< uint32 > &updateMask)
 

Private Member Functions

insert_result AddValue ()
 
insert_result InsertValue (std::size_t index)
 
void RemoveValue (std::size_t index)
 
void Clear ()
 
void MarkChanged (std::size_t index)
 

Private Attributes

std::vector< T > & _values
 
std::vector< uint32 > & _updateMask
 

Friends

template<typename F >
DynamicUpdateFieldSetter< F >::insert_result AddDynamicUpdateFieldValue (DynamicUpdateFieldSetter< F > &setter)
 
template<typename F >
DynamicUpdateFieldSetter< F >::insert_result InsertDynamicUpdateFieldValue (DynamicUpdateFieldSetter< F > &setter, uint32 index)
 
template<typename F >
void RemoveDynamicUpdateFieldValue (DynamicUpdateFieldSetter< F > &setter, uint32 index)
 
template<typename F >
void ClearDynamicUpdateFieldValues (DynamicUpdateFieldSetter< F > &setter)
 

Detailed Description

template<typename T>
struct UF::DynamicUpdateFieldSetter< T >

Definition at line 185 of file UpdateField.h.

Member Typedef Documentation

◆ insert_result

template<typename T >
using UF::DynamicUpdateFieldSetter< T >::insert_result = std::conditional_t<std::is_base_of_v<HasChangesMaskTag, T>, MutableFieldReference<T, true>, T&>

Definition at line 188 of file UpdateField.h.

◆ value_type

template<typename T >
using UF::DynamicUpdateFieldSetter< T >::value_type = T

Definition at line 187 of file UpdateField.h.

Constructor & Destructor Documentation

◆ DynamicUpdateFieldSetter()

template<typename T >
UF::DynamicUpdateFieldSetter< T >::DynamicUpdateFieldSetter ( std::vector< T > &  values,
std::vector< uint32 > &  updateMask 
)
inline

Definition at line 202 of file UpdateField.h.

Member Function Documentation

◆ AddValue()

template<typename T >
insert_result UF::DynamicUpdateFieldSetter< T >::AddValue ( )
inlineprivate

Definition at line 207 of file UpdateField.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Clear()

template<typename T >
void UF::DynamicUpdateFieldSetter< T >::Clear ( )
inlineprivate

Definition at line 246 of file UpdateField.h.

+ Here is the caller graph for this function:

◆ InsertValue()

template<typename T >
insert_result UF::DynamicUpdateFieldSetter< T >::InsertValue ( std::size_t  index)
inlineprivate

Definition at line 216 of file UpdateField.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MarkChanged()

template<typename T >
void UF::DynamicUpdateFieldSetter< T >::MarkChanged ( std::size_t  index)
inlineprivate

Definition at line 252 of file UpdateField.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RemoveValue()

template<typename T >
void UF::DynamicUpdateFieldSetter< T >::RemoveValue ( std::size_t  index)
inlineprivate

Definition at line 229 of file UpdateField.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ AddDynamicUpdateFieldValue

template<typename T >
template<typename F >
DynamicUpdateFieldSetter< F >::insert_result AddDynamicUpdateFieldValue ( DynamicUpdateFieldSetter< F > &  setter)
friend

◆ ClearDynamicUpdateFieldValues

template<typename T >
template<typename F >
void ClearDynamicUpdateFieldValues ( DynamicUpdateFieldSetter< F > &  setter)
friend

◆ InsertDynamicUpdateFieldValue

template<typename T >
template<typename F >
DynamicUpdateFieldSetter< F >::insert_result InsertDynamicUpdateFieldValue ( DynamicUpdateFieldSetter< F > &  setter,
uint32  index 
)
friend

◆ RemoveDynamicUpdateFieldValue

template<typename T >
template<typename F >
void RemoveDynamicUpdateFieldValue ( DynamicUpdateFieldSetter< F > &  setter,
uint32  index 
)
friend

Member Data Documentation

◆ _updateMask

template<typename T >
std::vector<uint32>& UF::DynamicUpdateFieldSetter< T >::_updateMask
private

Definition at line 262 of file UpdateField.h.

◆ _values

template<typename T >
std::vector<T>& UF::DynamicUpdateFieldSetter< T >::_values
private

Definition at line 261 of file UpdateField.h.


The documentation for this struct was generated from the following file: