whoa/src/object/client/CGObject.hpp
fallenoak 87ae3b512b
Some checks are pending
Push / ${{ matrix.build.system_name }} / ${{ matrix.build.build_type }} / ${{ matrix.build.compiler_name }} (map[build_type:Release cc:cl compiler_name:MSVC cxx:cl os:windows-latest system_name:Windows test_path:WhoaTest]) (push) Waiting to run
Push / ${{ matrix.build.system_name }} / ${{ matrix.build.build_type }} / ${{ matrix.build.compiler_name }} (map[build_type:Release cc:clang compiler_name:Clang cxx:clang++ os:macos-latest system_name:macOS test_path:WhoaTest]) (push) Waiting to run
Push / ${{ matrix.build.system_name }} / ${{ matrix.build.build_type }} / ${{ matrix.build.compiler_name }} (map[build_type:Release cc:gcc compiler_name:GCC cxx:g++ os:ubuntu-latest system_name:Linux test_path:WhoaTest]) (push) Waiting to run
feat(object): clean up data struct visibility
2026-02-02 08:47:50 -06:00

46 lines
1.1 KiB
C++

#ifndef OBJECT_CLIENT_CG_OBJECT_HPP
#define OBJECT_CLIENT_CG_OBJECT_HPP
#include "object/Types.hpp"
#include "util/GUID.hpp"
#include <cstdint>
struct CGObjectData {
WOWGUID m_guid;
OBJECT_TYPE m_type;
int32_t m_entryID;
float m_scale;
uint32_t pad;
};
class CGObject {
public:
// Public static functions
static uint32_t GetBaseOffset();
static uint32_t GetBaseOffsetSaved();
static uint32_t GetDataSize();
static uint32_t GetDataSizeSaved();
static uint32_t TotalFields();
static uint32_t TotalFieldsSaved();
// Public member variables
uint32_t uint0; // TODO what is this?
uint32_t m_memHandle;
// Public member functions
WOWGUID GetGUID() const;
OBJECT_TYPE GetType() const;
OBJECT_TYPE_ID GetTypeID() const;
protected:
// Protected member variables
CGObjectData* m_obj;
uint32_t* m_objSaved;
OBJECT_TYPE_ID m_typeID;
// Protected member functions
CGObjectData* Obj() const;
};
#endif