// This file is part of the 64k demo project. // It provides reusable test helpers for GPU effect testing. // Includes pixel validation utilities. #pragma once #include #include #include // ============================================================================ // Pixel Validation Helpers // ============================================================================ // Validate pixels using a predicate function // Returns true if at least one pixel matches the predicate bool validate_pixels( const std::vector& pixels, int width, int height, std::function predicate); // Check if any pixel is non-black (rendered something) bool has_rendered_content(const std::vector& pixels, int width, int height); // Check if all pixels match a specific color (within tolerance) bool all_pixels_match_color(const std::vector& pixels, int width, int height, uint8_t r, uint8_t g, uint8_t b, uint8_t tolerance = 5); // Compute simple hash of pixel data (for deterministic output checks) uint64_t hash_pixels(const std::vector& pixels);