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 render index is part of the Hydra 1.0 API and is only used for emulation purposes so that HdScene...
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.