16#include "jzon-c/jzon.h"
Definition framepass.h:22
Definition framescriptloader.h:22
static void ParseSubpassInputList(Frame::FramePass *pass, CoreGraphics::Subpass &subpass, Util::Array< Resources::ResourceName > &attachmentNames, JzonValue *node)
Parse subpass inputs.
Definition framescriptloader.cc:1054
static void ParseReadWriteBufferList(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse image read-write buffer list.
Definition framescriptloader.cc:204
static FrameOp * ParseSubgraph(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse subgraph.
Definition framescriptloader.cc:534
static void ParseSubpassAttachmentList(Frame::FramePass *pass, CoreGraphics::Subpass &subpass, Util::Array< Resources::ResourceName > &attachmentNames, JzonValue *node)
Parse subpass dependencies.
Definition framescriptloader.cc:963
static Frame::FrameSubmission * LastSubmission[2]
Definition framescriptloader.h:90
static FrameOp * ParseCopy(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse subpass copy.
Definition framescriptloader.cc:298
static void ParseShaderState(const Ptr< Frame::FrameScript > &script, JzonValue *node, CoreGraphics::ShaderId &shd, CoreGraphics::ResourceTableId &table, Util::Dictionary< Util::StringAtom, CoreGraphics::BufferId > &constantBuffers, Util::Array< Util::Tuple< IndexT, CoreGraphics::BufferId, CoreGraphics::TextureId > > &textures)
Helper to parse shader state.
Definition framescriptloader.cc:1237
static void ParseResourceDependencies(const Ptr< Frame::FrameScript > &script, Frame::FrameOp *op, JzonValue *node)
Helper to parse resources.
Definition framescriptloader.cc:1380
static Ptr< FrameScript > LoadFrameScript(const IO::URI &path)
Definition framescriptloader.cc:43
static void ParseSubmissionList(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse frame submission phase.
Definition framescriptloader.cc:613
static void ParseFrameScript(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Main parse function.
Definition framescriptloader.cc:97
static FrameOp * ParsePass(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse pass.
Definition framescriptloader.cc:701
static void ParseSubpassSortedBatch(const Ptr< Frame::FrameScript > &script, Frame::FrameSubpass *subpass, JzonValue *node)
Parse subpass sorted batch.
Definition framescriptloader.cc:1169
static void ParseSubpassFullscreenEffect(const Ptr< Frame::FrameScript > &script, Frame::FrameSubpass *subpass, JzonValue *node)
Parse subpass post effect.
Definition framescriptloader.cc:1199
static void ParseShaderVariables(const Ptr< Frame::FrameScript > &script, const CoreGraphics::ShaderId &shd, CoreGraphics::ResourceTableId &table, Util::Dictionary< Util::StringAtom, CoreGraphics::BufferId > &constantBuffers, Util::Array< Util::Tuple< IndexT, CoreGraphics::BufferId, CoreGraphics::TextureId > > &textures, JzonValue *node)
Helper to parse shader variables.
Definition framescriptloader.cc:1262
static FrameOp * ParseBlit(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse blit.
Definition framescriptloader.cc:233
static FrameOp * ParseCompute(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse compute.
Definition framescriptloader.cc:450
static FrameOp * ParsePlugin(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse plugin (custom code execution)
Definition framescriptloader.cc:505
static FrameOp * ParseMipmap(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse subpass copy.
Definition framescriptloader.cc:416
static FrameOp * ParsePresent(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse present.
Definition framescriptloader.cc:598
static void ParseSubpassBatch(const Ptr< Frame::FrameScript > &script, Frame::FrameSubpass *subpass, JzonValue *node)
Parse subpass batch.
Definition framescriptloader.cc:1138
static void ParseSubpassResolves(Frame::FramePass *pass, CoreGraphics::Subpass &subpass, Util::Array< Resources::ResourceName > &attachmentNames, JzonValue *node)
parse subpass dependencies
Definition framescriptloader.cc:1022
static FrameOp * ParseSwap(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse swap.
Definition framescriptloader.cc:574
static void ParseSubpassList(const Ptr< Frame::FrameScript > &script, CoreGraphics::PassCreateInfo &pass, Frame::FramePass *framePass, Util::Array< Resources::ResourceName > &attachmentNames, JzonValue *node)
Parse subpass.
Definition framescriptloader.cc:850
static void ParseTextureList(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse texture list.
Definition framescriptloader.cc:127
static void ParseSubpassPlugin(const Ptr< Frame::FrameScript > &script, Frame::FrameSubpass *subpass, JzonValue *node)
Parse subpass algorithm.
Definition framescriptloader.cc:1086
static void ParseSubpassSubgraph(const Ptr< Frame::FrameScript > &script, Frame::FrameSubpass *subpass, JzonValue *node)
Parse subpass subgraph.
Definition framescriptloader.cc:1112
static void ParseAttachmentList(const Ptr< Frame::FrameScript > &script, CoreGraphics::PassCreateInfo &pass, Util::Array< Resources::ResourceName > &attachmentNames, JzonValue *node)
Parse attachment list.
Definition framescriptloader.cc:760
static void ParseSubpassDependencyList(Frame::FramePass *pass, CoreGraphics::Subpass &subpass, JzonValue *node)
Parse subpass dependencies.
Definition framescriptloader.cc:920
static FrameOp * ParseResolve(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse resolve.
Definition framescriptloader.cc:363
static FrameOp * ParseBarrier(const Ptr< Frame::FrameScript > &script, JzonValue *node)
Parse barrier.
Definition framescriptloader.cc:551
static void ParseSubpassDepthAttachment(Frame::FramePass *pass, CoreGraphics::Subpass &subpass, Util::Array< Resources::ResourceName > &attachmentNames, JzonValue *node)
parse subpass depth attachment
Definition framescriptloader.cc:995
Definition framesubmission.h:17
Definition framesubpass.h:18
An URI object can split a Uniform Resource Identifier string into its components or build a string fr...
Definition uri.h:67
Nebula's smart pointer class which manages the life time of RefCounted objects.
Definition ptr.h:38
Nebula's dynamic array class.
Definition array.h:60
A collection of key/value pairs with quick value retrieval by key at roughly O(log n).
Definition dictionary.h:34
ImGUI debug interface for inspecting frame scripts.
Definition shaderserverbase.h:52
std::tuple< T... > Tuple
Wrap std::tuple.
Definition tupleutility.h:19
A shader represents an entire shader resource, containing several stages and programs.
Definition resourcetable.h:95