Nebula
Toggle main menu visibility
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
"
14
namespace
Threading
15
{
16
class
Event;
17
}
18
19
namespace
Frame
20
{
21
class
FramePass
:
public
FrameOp
22
{
23
public
:
25
FramePass
();
27
virtual
~FramePass
();
28
30
void
Discard
()
override
;
32
void
OnWindowResized
()
override
;
33
34
struct
CompiledImpl
:
public
FrameOp::Compiled
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
40
Util::StringAtom
name
;
41
#endif
42
Util::Array<FrameOp::Compiled*>
subpasses
;
43
CoreGraphics::PassId
pass
;
44
};
45
47
FrameOp::Compiled
*
AllocCompiled
(
Memory::ArenaAllocator<BIG_CHUNK>
& allocator)
override
;
48
49
CoreGraphics::PassId
pass
;
50
51
private
:
52
friend
class
FrameScript
;
53
54
void
Build
(
const
BuildContext
& ctx)
override
;
55
};
56
57
}
// namespace Frame2
Frame::FrameOp::name
Util::StringAtom name
Definition
frameop.h:187
Frame::FrameOp::FrameOp
FrameOp()
constructor
Definition
frameop.cc:15
Frame::FramePass::OnWindowResized
void OnWindowResized() override
handle display resizing
Definition
framepass.cc:93
Frame::FramePass::FramePass
FramePass()
constructor
Definition
framepass.cc:17
Frame::FramePass::~FramePass
virtual ~FramePass()
destructor
Definition
framepass.cc:25
Frame::FramePass::pass
CoreGraphics::PassId pass
Definition
framepass.h:49
Frame::FramePass::Discard
void Discard() override
discard operation
Definition
framepass.cc:34
Frame::FramePass::FrameScript
friend class FrameScript
Definition
framepass.h:52
Frame::FramePass::Build
void Build(const BuildContext &ctx) override
build operation
Definition
framepass.cc:121
Frame::FramePass::AllocCompiled
FrameOp::Compiled * AllocCompiled(Memory::ArenaAllocator< BIG_CHUNK > &allocator) override
allocate new instance
Definition
framepass.cc:109
Memory::ArenaAllocator
Allocates memory in chunks.
Definition
arenaallocator.h:36
Util::Array
Nebula's dynamic array class.
Definition
array.h:61
Util::StringAtom
A StringAtom.
Definition
stringatom.h:22
frameop.h
framesubpass.h
Frame
ImGUI debug interface for inspecting frame scripts.
Definition
shaderserverbase.h:52
Threading
The Jobs2 system provides a set of threads and a pool of jobs from which threads can pickup work.
Definition
jobs2.h:16
pass.h
CoreGraphics::CmdBufferId
Definition
commandbuffer.h:176
CoreGraphics::PassId
Definition
pass.h:28
Frame::FrameOp::BuildContext
Definition
frameop.h:162
Frame::FrameOp::Compiled
Definition
frameop.h:94
Frame::FramePass::CompiledImpl
Definition
framepass.h:35
Frame::FramePass::CompiledImpl::pass
CoreGraphics::PassId pass
Definition
framepass.h:43
Frame::FramePass::CompiledImpl::subpasses
Util::Array< FrameOp::Compiled * > subpasses
Definition
framepass.h:42
Frame::FramePass::CompiledImpl::Run
void Run(const CoreGraphics::CmdBufferId cmdBuf, const IndexT frameIndex, const IndexT bufferIndex) override
Run operation on a specific command buffer.
Definition
framepass.cc:51
Frame::FramePass::CompiledImpl::Discard
void Discard() override
Discard operation.
Definition
framepass.cc:81
IndexT
int IndexT
Definition
types.h:41
code
render
frame
framepass.h
Generated on
for Nebula. Dark theme by
Tilen Majerle
. All rights reserved.