#include "tensorstore/index_space/transformed_array.h"
template <ArrayOriginKind OriginKind = offset_origin, typename A>
  
requires IsTransformedArray<A>
Result<SharedArray<std::remove_const_t<typename A::Element>,
                  
 A::static_rank,
                  
 OriginKind>>
tensorstore::MakeCopy(const Atransformed_array,
                      
IterationConstraints constraints = {
                          
c_order, include_repeated_elements}
);

Returns a copy of a transformed array as a strided array.

This behaves similarly to the MakeCopy function defined in array.h for Array instances.

Template Parameters:
ArrayOriginKind OriginKind = offset_origin

Origin kind of the returned array. If equal to offset_origin (the default), the returned array has the same origin as transformed_array. If equal to zero_origin, the origin of each dimension is translated to zero.

Parameters:
const A &transformed_array

The transformed array to copy.

IterationConstraints constraints = {c_order, include_repeated_elements}

The constraints on the layout of the returned array.