15 #include <vsg/app/Window.h>
16 #include <vsg/core/Object.h>
17 #include <vsg/nodes/Bin.h>
18 #include <vsg/nodes/Group.h>
19 #include <vsg/state/BufferInfo.h>
20 #include <vsg/state/Descriptor.h>
21 #include <vsg/state/ResourceHints.h>
22 #include <vsg/vk/CommandPool.h>
23 #include <vsg/vk/Context.h>
24 #include <vsg/vk/DescriptorPool.h>
25 #include <vsg/vk/Fence.h>
26 #include <vsg/vk/ResourceRequirements.h>
59 virtual bool record();
60 virtual void waitForCompletion();
66 object->accept(*
this);
67 if (record() && wait) waitForCompletion();
71 void apply(
Object&
object)
override;
72 void apply(
Command& command)
override;
73 void apply(
Commands& commands)
override;
75 void apply(
Geometry& geometry)
override;
78 void apply(
View& view)
override;
CommandGraph is a group node that sits at the top of the scene graph and manages the recording of it'...
Definition: CommandGraph.h:27
Command base class from encapsualting vkCmd* calls and associated settings.
Definition: Command.h:25
Definition: Commands.h:29
CompileTraversal traverses a scene graph invoke all the StateCommand/Command::compile(....
Definition: CompileTraversal.h:33
void add(Framebuffer &framebuffer, ref_ptr< View > view, const ResourceRequirements &resourceRequirements={})
add a compile Context for Framebuffer and associated View
void compile(T object, bool wait=true)
convenience method that compiles a object/subgraph
Definition: CompileTraversal.h:64
void add(const Viewer &viewer, const ResourceRequirements &resourceRequirements={})
add a compile Context for all the Views assigned to a Viewer
std::list< ref_ptr< Context > > contexts
list of Context that Vulkan objects should be compiled for.
Definition: CompileTraversal.h:42
void add(Window &window, ref_ptr< ViewportState > viewport={}, const ResourceRequirements &resourceRequirements={})
add a compile Context for Window and associated viewport.
void add(Window &window, ref_ptr< View > view, const ResourceRequirements &resourceRequirements={})
add a compile Context for Window and associated View
void add(ref_ptr< Device > device, const ResourceRequirements &resourceRequirements={})
add a compile Context for device
Framebuffer encapsulates vkFramebuffer used a rendering target associated with Window or for render t...
Definition: Framebuffer.h:23
Definition: Geometry.h:30
Definition: RenderGraph.h:28
ResourceRequirements provides a container for various Vulkan resource requirements that be used to he...
Definition: ResourceRequirements.h:30
Definition: StateGroup.h:32
View class is Group class that pairs a Camera that defines the view with a subgraph that defines the ...
Definition: View.h:25