3#include <container/seadBuffer.h>
4#include <gfx/seadCamera.h>
5#include <gfx/seadColor.h>
6#include <gfx/seadProjection.h>
7#include <gfx/seadViewport.h>
8#include <heap/seadDisposer.h>
9#include <heap/seadHeap.h>
10#include <layer/aglLayerEnum.h>
11#include <layer/aglRenderStep.h>
12#include <prim/seadBitFlag.h>
13#include <prim/seadSafeString.h>
15namespace agl {
namespace lyr {
34 return (ClearFlag)((u32)lhs | (u32)rhs);
126 return mRenderStep[i];
151static_assert(
sizeof(
Layer) == 0x41C,
"agl::lyr::Layer size mismatch");
Definition aglDrawMethod.h:12
void setClearFlag(ClearFlag flag)
Definition aglLayer.h:84
virtual u32 getRenderStepNum() const =0
bool getClearColorEnable() const
Definition aglLayer.h:99
friend ClearFlag operator|(const ClearFlag &lhs, const ClearFlag &rhs)
Definition aglLayer.h:32
sead::BitFlag32 mClearFlag
Definition aglLayer.h:142
virtual void postDraw(const RenderInfo &render_info) const
Definition aglLayer.h:54
friend ClearFlag & operator|=(ClearFlag &lhs, const ClearFlag &rhs)
Definition aglLayer.h:37
virtual bool isRenderStepGPUCalc(s32 idx)
Definition aglLayer.h:55
sead::Buffer< RenderStep > mRenderStep
Definition aglLayer.h:147
sead::BitFlag32 _50
Definition aglLayer.h:138
DrawMethod * pushBackDrawMethod(DrawMethod *p_method)
Definition aglLayer.cpp:16
u32 _68
Definition aglLayer.h:144
sead::BitFlag32 _4c
Definition aglLayer.h:137
DrawMethod * pushBackDrawMethod(u32 render_step, DrawMethod *p_method)
Definition aglLayer.cpp:7
DisplayType mDisplayType
Definition aglLayer.h:139
bool getClearAlphaEnable() const
Definition aglLayer.h:109
void setClearDepthEnable(bool enable)
Definition aglLayer.h:114
f32 mClearDepth
Definition aglLayer.h:146
sead::Projection * mpProjection
Definition aglLayer.h:136
sead::Projection * getProjection() const
Definition aglLayer.h:79
void removeDrawMethod(u32 render_step, const DrawMethod *p_draw_method)
Definition aglLayer.cpp:34
s32 mIndex
Definition aglLayer.h:143
u32 mRenderDisplayFlag
Definition aglLayer.h:140
void setClearAlphaEnable(bool enable)
Definition aglLayer.h:104
u32 _88
Definition aglLayer.h:148
ClearFlag getClearFlag() const
Definition aglLayer.h:89
virtual void calc()
Definition aglLayer.h:52
sead::Camera * mpCamera
Definition aglLayer.h:135
ClearFlag
Definition aglLayer.h:25
@ cClearFlag_Unk
Definition aglLayer.h:29
@ cClearFlag_Color
Definition aglLayer.h:26
@ cClearFlag_Depth
Definition aglLayer.h:28
@ cClearFlag_Alpha
Definition aglLayer.h:27
void setCamera(sead::Camera *p_camera)
Definition aglLayer.h:64
virtual void preDraw(const RenderInfo &render_info) const
Definition aglLayer.h:53
void setClearColorEnable(bool enable)
Definition aglLayer.h:94
sead::Camera * getCamera() const
Definition aglLayer.h:69
s32 removeDrawMethod(const DrawMethod *p_draw_method)
Definition aglLayer.cpp:25
sead::Viewport mViewport
Definition aglLayer.h:133
sead::Viewport mScissor
Definition aglLayer.h:134
Renderer * mpRenderer
Definition aglLayer.h:132
u32 mDisplayType2
Definition aglLayer.h:141
sead::Color4f mClearColor
Definition aglLayer.h:145
virtual sead::SafeString getRenderStepName(s32 idx) const =0
virtual void initialize(sead::Heap *heap)
Definition aglLayer.h:51
u32 mDebugInfo[0x390/sizeof(u32)]
Definition aglLayer.h:149
virtual bool isRenderStepNoDependency(s32 idx)
Definition aglLayer.h:56
RenderStep & getRenderStep(s32 i)
Definition aglLayer.h:124
void setProjection(sead::Projection *p_projection)
Definition aglLayer.h:74
bool getClearDepthEnable() const
Definition aglLayer.h:119
Definition aglRenderInfo.h:23
Definition aglRenderStep.h:12
Definition aglRenderer.h:28
Definition seadBuffer.h:13
Definition seadCamera.h:16
Definition seadDisposer.h:12
Definition seadProjection.h:19
Definition seadViewport.h:10
Definition aglDrawMethod.cpp:4
DisplayType
Definition aglLayerEnum.h:8
Definition aglDisplayList.cpp:5
Definition seadAssert.h:44
BitFlag< u32 > BitFlag32
Definition seadBitFlag.h:125
SafeStringBase< char > SafeString
Definition seadSafeString.h:409
#define SEAD_RTTI_BASE(CLASS)
Definition seadRuntimeTypeInfo.h:75