24#ifndef PXR_IMAGING_HDX_SHADOW_MATRIX_COMPUTATION_H
25#define PXR_IMAGING_HDX_SHADOW_MATRIX_COMPUTATION_H
28#include "pxr/imaging/hdx/api.h"
29#include "pxr/imaging/hdx/version.h"
30#include "pxr/imaging/cameraUtil/conformWindow.h"
33PXR_NAMESPACE_OPEN_SCOPE
39class HdxShadowMatrixComputation
43 virtual std::vector<GfMatrix4d> Compute(
const GfVec4f &viewport, CameraUtilConformWindowPolicy policy) = 0;
46 virtual std::vector<GfMatrix4d> Compute(
const CameraUtilFraming &framing, CameraUtilConformWindowPolicy policy) = 0;
49 HdxShadowMatrixComputation() =
default;
50 virtual ~HdxShadowMatrixComputation() =
default;
53 HdxShadowMatrixComputation(
const HdxShadowMatrixComputation &) =
delete;
54 HdxShadowMatrixComputation &operator =(
const HdxShadowMatrixComputation &) =
delete;
58PXR_NAMESPACE_CLOSE_SCOPE
Basic type for a vector of 4 float components.