Container System 0.1.0
High-performance C++20 type-safe container framework with SIMD-accelerated serialization
Loading...
Searching...
No Matches
kcenon::container::simd::SimdPolicy Concept Reference

Concept for SIMD policy classes. More...

#include <simd_policies.h>

Concept definition

template<typename T>
concept kcenon::container::simd::SimdPolicy = requires(const T& policy, const float* data, size_t count) {
{ T::name() } -> std::convertible_to<std::string_view>;
{ T::simd_width } -> std::convertible_to<size_t>;
{ policy.sum_floats(data, count) } -> std::same_as<float>;
{ policy.min_float(data, count) } -> std::same_as<float>;
{ policy.max_float(data, count) } -> std::same_as<float>;
}
Concept for SIMD policy classes.

Detailed Description

Concept for SIMD policy classes.

A valid SIMD policy must provide:

  • name() -> string_view: Returns the policy name
  • simd_width -> size_t: SIMD register width in floats
  • sum_floats(data, count) -> float: Sum float array
  • min_float(data, count) -> float: Find minimum
  • max_float(data, count) -> float: Find maximum

Definition at line 91 of file simd_policies.h.