TrinityCore
Loading...
Searching...
No Matches
UpdateMask< Bits > Class Template Reference

#include <UpdateMask.h>

Public Member Functions

constexpr UpdateMask ()
 
constexpr UpdateMask (std::array< uint32, BlockCount > const &init)
 
constexpr uint32 GetBlocksMask (uint32 index) const
 
constexpr uint32 GetBlock (uint32 index) const
 
constexpr bool operator[] (uint32 index) const
 
constexpr bool IsAnySet () const
 
constexpr void Reset (uint32 index)
 
constexpr void ResetAll ()
 
constexpr void Set (uint32 index)
 
constexpr void SetAll ()
 
constexpr UpdateMask & operator&= (UpdateMask const &right)
 
constexpr UpdateMask & operator|= (UpdateMask const &right)
 

Static Public Attributes

static constexpr uint32 BlockCount = (Bits + 31) / 32
 
static constexpr uint32 BlocksMaskCount = (BlockCount + 31) / 32
 

Private Attributes

std::array< uint32, BlocksMaskCount > _blocksMask
 
std::array< uint32, BlockCount > _blocks
 

Detailed Description

template<uint32 Bits>
class UpdateMask< Bits >

Definition at line 32 of file UpdateMask.h.

Constructor & Destructor Documentation

◆ UpdateMask() [1/2]

template<uint32 Bits>
constexpr UpdateMask< Bits >::UpdateMask ( )
inlineconstexpr

Definition at line 38 of file UpdateMask.h.

◆ UpdateMask() [2/2]

template<uint32 Bits>
constexpr UpdateMask< Bits >::UpdateMask ( std::array< uint32, BlockCount > const &  init)
inlineconstexpr

Member Function Documentation

◆ GetBlock()

template<uint32 Bits>
constexpr uint32 UpdateMask< Bits >::GetBlock ( uint32  index) const
inlineconstexpr

Definition at line 59 of file UpdateMask.h.

References UpdateMask< Bits >::_blocks.

Referenced by AreaTrigger::BuildValuesUpdateForPlayerWithMask(), Conversation::BuildValuesUpdateForPlayerWithMask(), Corpse::BuildValuesUpdateForPlayerWithMask(), DynamicObject::BuildValuesUpdateForPlayerWithMask(), GameObject::BuildValuesUpdateForPlayerWithMask(), Item::BuildValuesUpdateForPlayerWithMask(), AzeriteEmpoweredItem::BuildValuesUpdateForPlayerWithMask(), AzeriteItem::BuildValuesUpdateForPlayerWithMask(), Bag::BuildValuesUpdateForPlayerWithMask(), SceneObject::BuildValuesUpdateForPlayerWithMask(), Creature::BuildValuesUpdateForPlayerWithMask(), Player::BuildValuesUpdateForPlayerWithMask(), Creature::BuildValuesUpdateWithFlag(), AzeriteItem::BuildValuesUpdateWithFlag(), Item::BuildValuesUpdateWithFlag(), Player::BuildValuesUpdateWithFlag(), UF::OverrideCurve::WriteUpdate(), UF::VisualAnim::WriteUpdate(), UF::AreaTriggerActionSetPeriodModifier::WriteUpdate(), UF::AreaTriggerSplineCalculator::WriteUpdate(), UF::AreaTriggerOrbit::WriteUpdate(), UF::AreaTriggerMovementScript::WriteUpdate(), UF::AreaTriggerSphere::WriteUpdate(), UF::AreaTriggerBox::WriteUpdate(), UF::AreaTriggerPolygon::WriteUpdate(), UF::AreaTriggerCylinder::WriteUpdate(), UF::AreaTriggerDisk::WriteUpdate(), UF::AreaTriggerBoundedPlane::WriteUpdate(), UF::SelectedAzeriteEssences::WriteUpdate(), UF::DecorStoragePersistedData::WriteUpdate(), UF::HousingDoorData::WriteUpdate(), UF::MirroredMeshObjectData::WriteUpdate(), UF::ItemEnchantment::WriteUpdate(), UF::ItemModList::WriteUpdate(), UF::SocketedGem::WriteUpdate(), UF::DecorPetInfo::WriteUpdate(), UF::QuestLog::WriteUpdate(), UF::ArenaCooldown::WriteUpdate(), UF::ZonePlayerForcedReaction::WriteUpdate(), UF::PetCreatureName::WriteUpdate(), UF::DeclinedNames::WriteUpdate(), UF::CustomTabardInfo::WriteUpdate(), UF::SkillInfo::WriteUpdate(), UF::BitVector::WriteUpdate(), UF::BitVectors::WriteUpdate(), UF::RestInfo::WriteUpdate(), UF::PVPInfo::WriteUpdate(), UF::CompletedProject::WriteUpdate(), UF::ResearchHistory::WriteUpdate(), UF::QuestSession::WriteUpdate(), UF::ReplayedQuest::WriteUpdate(), UF::LevelLinkInfo::WriteUpdate(), UF::TraitConfig::WriteUpdate(), UF::CraftingOrderItem::WriteUpdate(), UF::CraftingOrderCustomer::WriteUpdate(), UF::CraftingOrderNpcCustomer::WriteUpdate(), UF::CraftingOrderData::WriteUpdate(), UF::CraftingOrder::WriteUpdate(), UF::PersonalCraftingOrderCount::WriteUpdate(), UF::NPCCraftingOrderInfo::WriteUpdate(), UF::StablePetInfo::WriteUpdate(), UF::StableInfo::WriteUpdate(), UF::CollectableSourceTrackedData::WriteUpdate(), UF::BankTabSettings::WriteUpdate(), UF::TransmogOutfitDataInfo::WriteUpdate(), UF::TransmogOutfitSituationInfo::WriteUpdate(), UF::TransmogOutfitSlotData::WriteUpdate(), UF::TransmogOutfitData::WriteUpdate(), UF::PlayerInitiativeInfo::WriteUpdate(), UF::PlayerInitiativeTaskInfo::WriteUpdate(), UF::VisibleItem::WriteUpdate(), and UF::UnitAssistActionData::WriteUpdate().

◆ GetBlocksMask()

◆ IsAnySet()

template<uint32 Bits>
constexpr bool UpdateMask< Bits >::IsAnySet ( ) const
inlineconstexpr

◆ operator&=()

template<uint32 Bits>
constexpr UpdateMask & UpdateMask< Bits >::operator&= ( UpdateMask< Bits > const &  right)
inlineconstexpr

◆ operator[]()

template<uint32 Bits>
constexpr bool UpdateMask< Bits >::operator[] ( uint32  index) const
inlineconstexpr

◆ operator|=()

template<uint32 Bits>
constexpr UpdateMask & UpdateMask< Bits >::operator|= ( UpdateMask< Bits > const &  right)
inlineconstexpr

◆ Reset()

◆ ResetAll()

template<uint32 Bits>
constexpr void UpdateMask< Bits >::ResetAll ( )
inlineconstexpr

Definition at line 85 of file UpdateMask.h.

References UpdateMask< Bits >::_blocks, and UpdateMask< Bits >::_blocksMask.

Referenced by UF::ObjectData::ClearChangesMask(), UF::ItemEnchantment::ClearChangesMask(), UF::ItemModList::ClearChangesMask(), UF::SocketedGem::ClearChangesMask(), UF::ItemData::ClearChangesMask(), UF::ContainerData::ClearChangesMask(), UF::AzeriteEmpoweredItemData::ClearChangesMask(), UF::SelectedAzeriteEssences::ClearChangesMask(), UF::AzeriteItemData::ClearChangesMask(), UF::VisibleItem::ClearChangesMask(), UF::UnitAssistActionData::ClearChangesMask(), UF::UnitData::ClearChangesMask(), UF::QuestLog::ClearChangesMask(), UF::ArenaCooldown::ClearChangesMask(), UF::ZonePlayerForcedReaction::ClearChangesMask(), UF::PetCreatureName::ClearChangesMask(), UF::DeclinedNames::ClearChangesMask(), UF::CustomTabardInfo::ClearChangesMask(), UF::PlayerData::ClearChangesMask(), UF::SkillInfo::ClearChangesMask(), UF::BitVector::ClearChangesMask(), UF::BitVectors::ClearChangesMask(), UF::RestInfo::ClearChangesMask(), UF::PVPInfo::ClearChangesMask(), UF::CompletedProject::ClearChangesMask(), UF::ResearchHistory::ClearChangesMask(), UF::QuestSession::ClearChangesMask(), UF::ReplayedQuest::ClearChangesMask(), UF::LevelLinkInfo::ClearChangesMask(), UF::TraitConfig::ClearChangesMask(), UF::CraftingOrderItem::ClearChangesMask(), UF::CraftingOrderCustomer::ClearChangesMask(), UF::CraftingOrderNpcCustomer::ClearChangesMask(), UF::CraftingOrderData::ClearChangesMask(), UF::CraftingOrder::ClearChangesMask(), UF::PersonalCraftingOrderCount::ClearChangesMask(), UF::NPCCraftingOrderInfo::ClearChangesMask(), UF::StablePetInfo::ClearChangesMask(), UF::StableInfo::ClearChangesMask(), UF::CollectableSourceTrackedData::ClearChangesMask(), UF::BankTabSettings::ClearChangesMask(), UF::TransmogOutfitDataInfo::ClearChangesMask(), UF::TransmogOutfitSituationInfo::ClearChangesMask(), UF::TransmogOutfitSlotData::ClearChangesMask(), UF::TransmogOutfitData::ClearChangesMask(), UF::ActivePlayerData::ClearChangesMask(), UF::GameObjectData::ClearChangesMask(), UF::DynamicObjectData::ClearChangesMask(), UF::CorpseData::ClearChangesMask(), UF::OverrideCurve::ClearChangesMask(), UF::VisualAnim::ClearChangesMask(), UF::AreaTriggerActionSetPeriodModifier::ClearChangesMask(), UF::AreaTriggerSplineCalculator::ClearChangesMask(), UF::AreaTriggerOrbit::ClearChangesMask(), UF::AreaTriggerMovementScript::ClearChangesMask(), UF::AreaTriggerSphere::ClearChangesMask(), UF::AreaTriggerBox::ClearChangesMask(), UF::AreaTriggerPolygon::ClearChangesMask(), UF::AreaTriggerCylinder::ClearChangesMask(), UF::AreaTriggerDisk::ClearChangesMask(), UF::AreaTriggerBoundedPlane::ClearChangesMask(), UF::AreaTriggerData::ClearChangesMask(), UF::SceneObjectData::ClearChangesMask(), UF::ConversationData::ClearChangesMask(), UF::MeshObjectData::ClearChangesMask(), UF::VendorData::ClearChangesMask(), UF::DecorStoragePersistedData::ClearChangesMask(), UF::DecorPetInfo::ClearChangesMask(), UF::HousingDecorData::ClearChangesMask(), UF::HousingDoorData::ClearChangesMask(), UF::HousingRoomData::ClearChangesMask(), UF::HousingRoomComponentMeshData::ClearChangesMask(), UF::HousingPlayerHouseData::ClearChangesMask(), UF::HousingCornerstoneData::ClearChangesMask(), UF::NeighborhoodMirrorData::ClearChangesMask(), UF::MirroredMeshObjectData::ClearChangesMask(), UF::MirroredPositionData::ClearChangesMask(), UF::PlayerHouseInfoComponentData::ClearChangesMask(), UF::HousingStorageData::ClearChangesMask(), UF::HousingFixtureData::ClearChangesMask(), UF::PlayerInitiativeInfo::ClearChangesMask(), UF::PlayerInitiativeTaskInfo::ClearChangesMask(), and UF::PlayerInitiativeComponentData::ClearChangesMask().

◆ Set()

◆ SetAll()

template<uint32 Bits>
constexpr void UpdateMask< Bits >::SetAll ( )
inlineconstexpr

Definition at line 98 of file UpdateMask.h.

References UpdateMask< Bits >::_blocks, UpdateMask< Bits >::_blocksMask, and UpdateMask< Bits >::BlockCount.

Referenced by UF::OverrideCurve::WriteUpdate(), UF::VisualAnim::WriteUpdate(), UF::AreaTriggerActionSetPeriodModifier::WriteUpdate(), UF::AreaTriggerSplineCalculator::WriteUpdate(), UF::AreaTriggerOrbit::WriteUpdate(), UF::AreaTriggerMovementScript::WriteUpdate(), UF::AreaTriggerSphere::WriteUpdate(), UF::AreaTriggerBox::WriteUpdate(), UF::AreaTriggerPolygon::WriteUpdate(), UF::AreaTriggerCylinder::WriteUpdate(), UF::AreaTriggerDisk::WriteUpdate(), UF::AreaTriggerBoundedPlane::WriteUpdate(), UF::SelectedAzeriteEssences::WriteUpdate(), UF::DecorStoragePersistedData::WriteUpdate(), UF::HousingDoorData::WriteUpdate(), UF::MirroredMeshObjectData::WriteUpdate(), UF::ItemEnchantment::WriteUpdate(), UF::ItemModList::WriteUpdate(), UF::SocketedGem::WriteUpdate(), UF::DecorPetInfo::WriteUpdate(), UF::QuestLog::WriteUpdate(), UF::ArenaCooldown::WriteUpdate(), UF::ZonePlayerForcedReaction::WriteUpdate(), UF::PetCreatureName::WriteUpdate(), UF::DeclinedNames::WriteUpdate(), UF::CustomTabardInfo::WriteUpdate(), UF::SkillInfo::WriteUpdate(), UF::BitVector::WriteUpdate(), UF::BitVectors::WriteUpdate(), UF::RestInfo::WriteUpdate(), UF::PVPInfo::WriteUpdate(), UF::CompletedProject::WriteUpdate(), UF::ResearchHistory::WriteUpdate(), UF::QuestSession::WriteUpdate(), UF::ReplayedQuest::WriteUpdate(), UF::LevelLinkInfo::WriteUpdate(), UF::TraitConfig::WriteUpdate(), UF::CraftingOrderItem::WriteUpdate(), UF::CraftingOrderCustomer::WriteUpdate(), UF::CraftingOrderNpcCustomer::WriteUpdate(), UF::CraftingOrderData::WriteUpdate(), UF::CraftingOrder::WriteUpdate(), UF::PersonalCraftingOrderCount::WriteUpdate(), UF::NPCCraftingOrderInfo::WriteUpdate(), UF::StablePetInfo::WriteUpdate(), UF::StableInfo::WriteUpdate(), UF::CollectableSourceTrackedData::WriteUpdate(), UF::BankTabSettings::WriteUpdate(), UF::TransmogOutfitDataInfo::WriteUpdate(), UF::TransmogOutfitSituationInfo::WriteUpdate(), UF::TransmogOutfitSlotData::WriteUpdate(), UF::TransmogOutfitData::WriteUpdate(), UF::PlayerInitiativeInfo::WriteUpdate(), UF::PlayerInitiativeTaskInfo::WriteUpdate(), UF::VisibleItem::WriteUpdate(), and UF::UnitAssistActionData::WriteUpdate().

Member Data Documentation

◆ _blocks

◆ _blocksMask

◆ BlockCount

template<uint32 Bits>
constexpr uint32 UpdateMask< Bits >::BlockCount = (Bits + 31) / 32
staticconstexpr

◆ BlocksMaskCount

template<uint32 Bits>
constexpr uint32 UpdateMask< Bits >::BlocksMaskCount = (BlockCount + 31) / 32
staticconstexpr

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