Nebula
Loading...
Searching...
No Matches
framepass.h
Go to the documentation of this file.
1#pragma once
2//------------------------------------------------------------------------------
10//------------------------------------------------------------------------------
11#include "frameop.h"
12#include "framesubpass.h"
13#include "coregraphics/pass.h"
14namespace Threading
15{
16class Event;
17}
18
19namespace Frame
20{
21class FramePass : public FrameOp
22{
23public:
25 FramePass();
27 virtual ~FramePass();
28
30 void Discard() override;
32 void OnWindowResized() override;
33
35 {
36 void Run(const CoreGraphics::CmdBufferId cmdBuf, const IndexT frameIndex, const IndexT bufferIndex) override;
37 void Discard() override;
38
39#if NEBULA_GRAPHICS_DEBUG
41#endif
44 };
45
48
50
51private:
52 friend class FrameScript;
53
54 void Build(const BuildContext& ctx) override;
55};
56
57} // namespace Frame2
Definition frameop.h:32
Util::StringAtom name
Definition frameop.h:187
Definition framepass.h:22
void OnWindowResized() override
handle display resizing
Definition framepass.cc:93
FramePass()
constructor
Definition framepass.cc:17
virtual ~FramePass()
destructor
Definition framepass.cc:25
CoreGraphics::PassId pass
Definition framepass.h:49
void Discard() override
discard operation
Definition framepass.cc:34
void Build(const BuildContext &ctx) override
build operation
Definition framepass.cc:121
FrameOp::Compiled * AllocCompiled(Memory::ArenaAllocator< BIG_CHUNK > &allocator) override
allocate new instance
Definition framepass.cc:109
A FrameScript describes render operations being done to produce a single frame.
Definition framescript.h:41
Allocates memory in chunks.
Definition arenaallocator.h:36
Nebula's dynamic array class.
Definition array.h:60
A StringAtom.
Definition stringatom.h:22
ImGUI debug interface for inspecting frame scripts.
Definition shaderserverbase.h:52
The Jobs2 system provides a set of threads and a pool of jobs from which threads can pickup work.
Definition jobs2.h:16
Definition commandbuffer.h:155
Definition pass.h:28
Definition frameop.h:162
Definition frameop.h:94
Definition framepass.h:35
CoreGraphics::PassId pass
Definition framepass.h:43
Util::Array< FrameOp::Compiled * > subpasses
Definition framepass.h:42
void Run(const CoreGraphics::CmdBufferId cmdBuf, const IndexT frameIndex, const IndexT bufferIndex) override
Run operation on a specific command buffer.
Definition framepass.cc:51
void Discard() override
Discard operation.
Definition framepass.cc:81
int IndexT
Definition types.h:48