7#ifndef PXR_IMAGING_HDX_RENDER_TASK_H
8#define PXR_IMAGING_HDX_RENDER_TASK_H
11#include "pxr/imaging/hdx/api.h"
12#include "pxr/imaging/hdx/version.h"
13#include "pxr/imaging/hdx/task.h"
14#include "pxr/imaging/hdx/renderSetupTask.h"
15#include "pxr/imaging/hdSt/renderPassState.h"
19PXR_NAMESPACE_OPEN_SCOPE
25using HdRenderPassStateSharedPtr = std::shared_ptr<class HdRenderPassState>;
26using HdRenderPassSharedPtr = std::shared_ptr<class HdRenderPass>;
27using HdxRenderSetupTaskSharedPtr = std::shared_ptr<class HdxRenderSetupTask>;
70 void Execute(HdTaskContext* ctx)
override;
81 HdDirtyBits* dirtyBits)
override;
84 HdRenderPassStateSharedPtr _GetRenderPassState(HdTaskContext *ctx)
const;
96 bool _HasDrawItems()
const;
99 HdRenderPassSharedPtr _pass;
103 HdxRenderSetupTaskSharedPtr _setupTask;
107 void _SetHdStRenderPassState(HdTaskContext *ctx,
111 bool _NeedToClearAovs(HdRenderPassStateSharedPtr
const &renderPassState)
120PXR_NAMESPACE_CLOSE_SCOPE
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
Adapter class providing data exchange with the client scene graph.
A set of rendering parameters used among render passes.
A task for rendering geometry to pixels.
HDX_API const TfTokenVector & GetRenderTags() const override
Collect Render Tags used by the task.
HDX_API void _Sync(HdSceneDelegate *delegate, HdTaskContext *ctx, HdDirtyBits *dirtyBits) override
Sync the render pass resources.
HDX_API void Prepare(HdTaskContext *ctx, HdRenderIndex *renderIndex) override
Prepare the tasks resources.
HDX_API void Execute(HdTaskContext *ctx) override
Execute render pass task.
HDX_API bool IsConverged() const override
Hooks for progressive rendering (delegated to renderpasses).
Base class for (some) tasks in Hdx that provides common progressive rendering and Hgi functionality.
A path value used to locate objects in layers or scenegraphs.
RenderTask parameters (renderpass state).
std::vector< TfToken > TfTokenVector
Convenience types.