18#ifndef elxSupportedImageDimensions_h
19#define elxSupportedImageDimensions_h
21#include <elxSupportedImageTypes.h>
35template <
unsigned VDimension, std::size_t... VIndex>
41 for (
const bool isDimensionFound : foundEntries)
53template <
unsigned VDimension>
57 return SupportsFixedDimensionByImageTypeIndexSequence<VDimension>(
58 std::make_index_sequence<NrOfSupportedImageTypes>());
62template <
unsigned VDimension = minSupportedImageDimension>
66 template <std::size_t... VIndex>
70 using AddDimensionIfSupported = std::conditional_t<SupportsFixedDimension<VDimension>(),
71 std::index_sequence<VDimension, VIndex...>,
72 std::index_sequence<VIndex...>>;
82 template <std::size_t... VIndex>
86 return dimensionSequence;
constexpr unsigned minSupportedImageDimension
constexpr unsigned maxSupportedImageDimension
constexpr bool SupportsFixedDimensionByImageTypeIndexSequence(std::index_sequence< VIndex... >)
const auto SupportedFixedImageDimensionSequence
constexpr bool SupportsFixedDimension()
static constexpr auto AddSupportedDimensions(std::index_sequence< VIndex... > dimensionSequence)
static constexpr auto AddSupportedDimensions(std::index_sequence< VIndex... > dimensionSequence)