TransformsV2

TransformsV2 is the second generation data transformation library in WhiskerToolbox, designed for high performance, type safety, and composability.

Key Goals

  • Type Safety: Leveraging C++20 concepts and strong typing to prevent runtime errors where possible.
  • Performance: Minimizing allocations through “Fusion” of element-wise operations.
  • Flexibility: Supporting complex pipelines that can be defined at runtime (e.g., via JSON) or compile-time.
  • Lifting: Automatically generalizing element-wise operations (like Mask2D -> Point2D) to work on containers (like MaskData).

Contents