NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
Loading...
Searching...
No Matches
g3d_resfile.h
1#ifndef NW4R_G3D_RES_RES_FILE_H
2#define NW4R_G3D_RES_RES_FILE_H
3#include <nw4r/types_nw4r.h>
4
5#include <nw4r/g3d/res/g3d_resanmchr.h>
6#include <nw4r/g3d/res/g3d_resanmclr.h>
7#include <nw4r/g3d/res/g3d_resanmscn.h>
8#include <nw4r/g3d/res/g3d_resanmshp.h>
9#include <nw4r/g3d/res/g3d_resanmtexpat.h>
10#include <nw4r/g3d/res/g3d_resanmtexsrt.h>
11#include <nw4r/g3d/res/g3d_resanmvis.h>
12#include <nw4r/g3d/res/g3d_rescommon.h>
13#include <nw4r/g3d/res/g3d_resmdl.h>
14#include <nw4r/g3d/res/g3d_respltt.h>
15#include <nw4r/g3d/res/g3d_restex.h>
16
17#include <nw4r/ut.h>
18
19namespace nw4r {
20namespace g3d {
21
22// Forward declarations
23class ResAnmTexPat;
24
26 ut::BinaryBlockHeader header; // at 0x0
27 ResDicData topLevel; // at 0x8
28};
29
31 ut::BinaryFileHeader fileHeader; // at 0x0
32 ResTopLevelDictData dict; // at 0x10
33};
34
35class ResFile : public ResCommon<ResFileData> {
36public:
37 NW4R_G3D_RESOURCE_FUNC_DEF(ResFile);
38
39 void Init();
40 void Terminate();
41 bool CheckRevision() const;
42
43 bool Bind(const ResFile file);
44 void Release();
45
46 bool Bind() {
47 return Bind(*this);
48 }
49
50 ResMdl GetResMdl(const char* pName) const;
51 ResMdl GetResMdl(int idx) const;
52 ResMdl GetResMdl(ulong idx) const;
53
54 ResPltt GetResPltt(const char* pName) const;
55 ResPltt GetResPltt(const ResName name) const;
56 ResPltt GetResPltt(int idx) const;
57 ResPltt GetResPltt(ulong idx) const;
58
59 ResTex GetResTex(const char* pName) const;
60 ResTex GetResTex(const ResName name) const;
61 ResTex GetResTex(int idx) const;
62 ResTex GetResTex(ulong idx) const;
63
64 ResAnmChr GetResAnmChr(const char* pName) const;
65 ResAnmChr GetResAnmChr(int idx) const;
66 ResAnmChr GetResAnmChr(ulong idx) const;
67
68 ResAnmVis GetResAnmVis(const char* pName) const;
69 ResAnmVis GetResAnmVis(int idx) const;
70 ResAnmVis GetResAnmVis(ulong idx) const;
71
72 ResAnmClr GetResAnmClr(const char* pName) const;
73 ResAnmClr GetResAnmClr(int idx) const;
74 ResAnmClr GetResAnmClr(ulong idx) const;
75
76 ResAnmTexPat GetResAnmTexPat(const char* pName) const;
77 ResAnmTexPat GetResAnmTexPat(int idx) const;
78 ResAnmTexPat GetResAnmTexPat(ulong idx) const;
79
80 ResAnmTexSrt GetResAnmTexSrt(const char* pName) const;
81 ResAnmTexSrt GetResAnmTexSrt(int idx) const;
82 ResAnmTexSrt GetResAnmTexSrt(ulong idx) const;
83
84 ResAnmShp GetResAnmShp(const char* pName) const;
85 ResAnmShp GetResAnmShp(int idx) const;
86 ResAnmShp GetResAnmShp(ulong idx) const;
87
88 ResAnmScn GetResAnmScn(const char* pName) const;
89 ResAnmScn GetResAnmScn(int idx) const;
90 ResAnmScn GetResAnmScn(ulong idx) const;
91
92 ulong GetResMdlNumEntries() const;
93 ulong GetResPlttNumEntries() const;
94 ulong GetResTexNumEntries() const;
95 ulong GetResAnmChrNumEntries() const;
96 ulong GetResAnmVisNumEntries() const;
97 ulong GetResAnmClrNumEntries() const;
98 ulong GetResAnmTexPatNumEntries() const;
99 ulong GetResAnmTexSrtNumEntries() const;
100 ulong GetResAnmShpNumEntries() const;
101 ulong GetResAnmScnNumEntries() const;
102};
103
104} // namespace g3d
105} // namespace nw4r
106
107#endif
3D graphics drawing library.
Definition g3d_3dsmax.h:10