24 #ifndef HDX_COLORCHANNEL_TASK_H
25 #define HDX_COLORCHANNEL_TASK_H
28 #include "pxr/usd/sdf/path.h"
29 #include "pxr/imaging/hdx/api.h"
30 #include "pxr/imaging/hdx/task.h"
31 #include "pxr/imaging/hdx/tokens.h"
32 #include "pxr/imaging/hgi/graphicsCmds.h"
34 PXR_NAMESPACE_OPEN_SCOPE
47 ~HdxColorChannelTask()
override;
51 void Prepare(HdTaskContext* ctx,
56 void Execute(HdTaskContext* ctx)
override;
63 HdDirtyBits* dirtyBits)
override;
66 HdxColorChannelTask() =
delete;
67 HdxColorChannelTask(
const HdxColorChannelTask &) =
delete;
68 HdxColorChannelTask &operator =(
const HdxColorChannelTask &) =
delete;
72 bool _UpdateParameterBuffer(
float screenSizeX,
float screenSizeY);
75 void _ApplyColorChannel();
79 struct _ParameterBuffer
83 bool operator==(
const _ParameterBuffer& other)
const {
84 return channel == other.channel &&
85 screenSize[0] == other.screenSize[0] &&
86 screenSize[1] == other.screenSize[1];
90 std::unique_ptr<class HdxFullscreenShader> _compositor;
91 _ParameterBuffer _parameterData;
109 TfToken channel = HdxColorChannelTokens->color;
123 PXR_NAMESPACE_CLOSE_SCOPE
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
ColorChannelTask parameters.
AR_API bool operator!=(const ArAssetInfo &lhs, const ArAssetInfo &rhs)
AR_API bool operator==(const ArAssetInfo &lhs, const ArAssetInfo &rhs)
HDX_API void _Sync(HdSceneDelegate *delegate, HdTaskContext *ctx, HdDirtyBits *dirtyBits) override
Sync the render pass resources.
HDX_API void Execute(HdTaskContext *ctx) override
Execute the color channel task.
Token for efficient comparison, assignment, and hashing of known strings.
Adapter class providing data exchange with the client scene graph.
A path value used to locate objects in layers or scenegraphs.
A task for choosing a color channel for display.
Base class for (some) tasks in Hdx that provides common progressive rendering and Hgi functionality...
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
VT_API bool operator==(VtDictionary const &, VtDictionary const &)
Equality comparison.
HDX_API void Prepare(HdTaskContext *ctx, HdRenderIndex *renderIndex) override
Prepare the tasks resources.