Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
UpdateData.h
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#ifndef SF_UPDATEDATA_H
7#define SF_UPDATEDATA_H
8
9#include "ByteBuffer.h"
10#include <set>
11
12class WorldPacket;
13
21
40
42{
43public:
44 UpdateData(uint16 map);
45
46 void AddOutOfRangeGUID(std::set<uint64>& guids);
47 void AddOutOfRangeGUID(uint64 guid);
48 void AddUpdateBlock(const ByteBuffer& block);
49 bool BuildPacket(WorldPacket* packet);
50 bool HasData() const { return m_blockCount > 0 || !m_outOfRangeGUIDs.empty(); }
51 void Clear();
52
53 std::set<uint64> const& GetOutOfRangeGUIDs() const { return m_outOfRangeGUIDs; }
54
55protected:
58 std::set<uint64> m_outOfRangeGUIDs;
60};
61#endif
std::uint32_t uint32
Definition Define.h:77
std::uint64_t uint64
Definition Define.h:76
std::uint16_t uint16
Definition Define.h:78
OBJECT_UPDATE_TYPE
Definition UpdateData.h:15
@ UPDATETYPE_VALUES
Definition UpdateData.h:16
@ UPDATETYPE_CREATE_OBJECT
Definition UpdateData.h:17
@ UPDATETYPE_OUT_OF_RANGE_OBJECTS
Definition UpdateData.h:19
@ UPDATETYPE_CREATE_OBJECT2
Definition UpdateData.h:18
OBJECT_UPDATE_FLAGS
Definition UpdateData.h:23
@ UPDATEFLAG_LIVING
Definition UpdateData.h:30
@ UPDATEFLAG_ROTATION
Definition UpdateData.h:34
@ UPDATEFLAG_UNK5
Definition UpdateData.h:37
@ UPDATEFLAG_ANIMKITS
Definition UpdateData.h:36
@ UPDATEFLAG_LOWGUID
Definition UpdateData.h:29
@ UPDATEFLAG_VEHICLE
Definition UpdateData.h:32
@ UPDATEFLAG_TRANSPORT
Definition UpdateData.h:26
@ UPDATEFLAG_UNKNOWN
Definition UpdateData.h:28
@ UPDATEFLAG_NONE
Definition UpdateData.h:24
@ UPDATEFLAG_UNK6
Definition UpdateData.h:38
@ UPDATEFLAG_UNK3
Definition UpdateData.h:35
@ UPDATEFLAG_SELF
Definition UpdateData.h:25
@ UPDATEFLAG_STATIONARY_POSITION
Definition UpdateData.h:31
@ UPDATEFLAG_HAS_TARGET
Definition UpdateData.h:27
@ UPDATEFLAG_GO_TRANSPORT_POSITION
Definition UpdateData.h:33
bool HasData() const
Definition UpdateData.h:50
uint16 m_map
Definition UpdateData.h:56
void AddUpdateBlock(const ByteBuffer &block)
uint32 m_blockCount
Definition UpdateData.h:57
void AddOutOfRangeGUID(std::set< uint64 > &guids)
UpdateData(uint16 map)
bool BuildPacket(WorldPacket *packet)
ByteBuffer m_data
Definition UpdateData.h:59
std::set< uint64 > m_outOfRangeGUIDs
Definition UpdateData.h:58
void Clear()
std::set< uint64 > const & GetOutOfRangeGUIDs() const
Definition UpdateData.h:53