mirror of
https://github.com/MonsterDruide1/OdysseyDecomp
synced 2026-04-29 20:14:41 +00:00
* Add script to verify formatting * Add newline to end of files * Add `#pragma once` to top of headers * Add own header to includes at top of source files * Remove useless namespace qualifiers * Sort visibility modifiers correctly * Format `#include`s in three blocks * Remove `;` after namespaces * Add for custom style checking to `lint`-GitHub-Action * Format: No "// 0x" offset comments * Remove macros from padding
47 lines
1.1 KiB
C++
47 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include <basis/seadTypes.h>
|
|
|
|
#include "Library/HostIO/HioNode.h"
|
|
|
|
namespace agl {
|
|
class DrawContext;
|
|
}
|
|
|
|
namespace al {
|
|
class GraphicsSystemInfo;
|
|
class ModelDrawBufferCounter;
|
|
class ModelKeeper;
|
|
class ModelDrawDisplayList;
|
|
class ModelCtrl;
|
|
|
|
class ModelDrawerBase : public HioNode {
|
|
public:
|
|
void createTable();
|
|
|
|
virtual void registerModel(ModelCtrl*);
|
|
virtual void addModel(ModelCtrl*);
|
|
virtual void removeModel(ModelCtrl*);
|
|
virtual void updateModel(ModelCtrl*);
|
|
|
|
void setDrawInfo(agl::DrawContext*, const GraphicsSystemInfo*, const ModelDrawBufferCounter*,
|
|
const ModelKeeper*);
|
|
void addModelToTable(ModelCtrl*);
|
|
void getDrawBufferIndex();
|
|
void createModelDrawDisplayList(s32);
|
|
bool isDraw() const;
|
|
|
|
private:
|
|
const char* mName;
|
|
agl::DrawContext* mDrawCtx;
|
|
const ModelKeeper* mModelKeeper;
|
|
const GraphicsSystemInfo* mGraphicsSystemInfo;
|
|
const ModelDrawBufferCounter* mModelDrawBufferCounter;
|
|
ModelDrawDisplayList* mDrawDisplayList;
|
|
s32 mCapacity;
|
|
s32 mSize;
|
|
ModelCtrl** mMdlCtrls;
|
|
void* field_48;
|
|
};
|
|
} // namespace al
|