Administrative source import: native x86 compilation passed for 423 authored units. Source placement and submission states are migrated separately; this commit does not imply peer acceptance.
Previous head: 35d2a8cb36
Payload SHA256: 592f016d2730c5593bb653aa054c1e5f76a6df72c8f5a09e66f74876e2e33dee
42 lines
970 B
C++
42 lines
970 B
C++
#ifndef RAGNAROK_SOURCE_RESOURCE_RESOURCE_H
|
|
#define RAGNAROK_SOURCE_RESOURCE_RESOURCE_H
|
|
|
|
#include "Archive/PakName.h"
|
|
|
|
#include <cstdint>
|
|
|
|
class CRenderSystemBase;
|
|
|
|
struct ResourceName {
|
|
std::uint32_t hash;
|
|
char text[252];
|
|
explicit ResourceName(const char* name = "");
|
|
void Assign(const char* name);
|
|
};
|
|
static_assert(sizeof(ResourceName) == 256);
|
|
|
|
class CRes {
|
|
public:
|
|
CRes();
|
|
virtual ~CRes();
|
|
virtual bool Slot01(int argument1, int argument2, int argument3);
|
|
virtual void Slot02();
|
|
virtual bool IsTransient();
|
|
virtual CRes* Create() = 0;
|
|
virtual bool Load(const char* name) = 0;
|
|
virtual void Unload();
|
|
virtual void MissingFile(CRenderSystemBase* system, const char* name);
|
|
std::uint32_t AddRef();
|
|
void Release();
|
|
|
|
/* 0004 */ std::uint32_t references;
|
|
/* 0008 */ std::uint32_t lastUse;
|
|
/* 000C */ int type;
|
|
/* 0010 */ ResourceName name;
|
|
};
|
|
|
|
#if defined(_WIN32) && !defined(_WIN64)
|
|
static_assert(sizeof(CRes) == 272);
|
|
#endif
|
|
|
|
#endif
|