summaryrefslogtreecommitdiff
path: root/src/KingSystem/Resource/resResourceArchive.h
blob: 34b0c16d531392c7b9cf6ef9045f8d51a41147de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include <resource/seadSharcArchiveRes.h>
#include "KingSystem/Resource/resResource.h"
#include "KingSystem/Utils/Types.h"

namespace ksys::res {

struct ArchiveOffset {
    u32 mDataOffset = 0;
};

class Archive : public sead::SharcArchiveRes, public IResource, public ArchiveOffset {
    SEAD_RTTI_OVERRIDE(Archive, sead::SharcArchiveRes)
public:
    Archive();
    ~Archive() override;

    void doCreate_(u8* data, u32 size, sead::Heap* heap) override;

    static constexpr size_t cLoadDataAlignment = 0x80;
};
KSYS_CHECK_SIZE_NX150(Archive, 0x68);

}  // namespace ksys::res