Files
lumberyard-employee-dm b9824ed172 Updated all array_view uses with the C++20 span. (#7157)
* Updated all array_view uses with the C++20 span.

The updates were done in the following order
1. `AZStd::array_view<([^>].+)\* ?>`  -> `AZStd::span<\1 const>`
2. `AZStd::array_view<(?:const )(.+)>` -> `AZStd::span<const \1>`
3. `AZStd::array_view` -> `AZStd::span`

Removed the implementation of array_view.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added missing whitespace between `const` and the typename for spans.

Updated the ShaderTest comparison of the ShaderResourceGroupLayout span
to compare the sizes as well

Updated comments on some of the methods that stated that they return "an
array" to mention they return "a span".

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2022-01-26 16:15:47 -06:00

48 lines
1.5 KiB
C++

/*
* Copyright (c) Contributors to the Open 3D Engine Project.
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
*
* SPDX-License-Identifier: Apache-2.0 OR MIT
*
*/
#pragma once
#include <Atom/RPI.Public/Pass/ParentPass.h>
#include <AzCore/std/containers/span.h>
#include <AzCore/std/containers/fixed_vector.h>
namespace AZ
{
namespace Render
{
//! HairParentPass owns the hair passes.
//! Currently they are all defined via the pipeline configuration, making the HairParent
//! class somewhat redundant, but moving forward, such class can be required to control
//! passes activation and usage based on user activation options.
class HairParentPass final
: public RPI::ParentPass
{
using Base = RPI::ParentPass;
AZ_RPI_PASS(HairParentPass);
public:
AZ_RTTI(HairParentPass, "80C7E869-2513-4201-8C1E-D2E39DDE1244", Base);
AZ_CLASS_ALLOCATOR(HairParentPass, SystemAllocator, 0);
virtual ~HairParentPass();
static RPI::Ptr<HairParentPass> Create(const RPI::PassDescriptor& descriptor);
private:
HairParentPass() = delete;
explicit HairParentPass(const RPI::PassDescriptor& descriptor);
// RPI::Pass overrides...
void BuildAttachmentsInternal() override;
void UpdateChildren();
bool m_updateChildren = true;
};
} // namespace Render
} // namespace AZ