50 [[nodiscard]]
bool can_write(
const std::string& filepath)
const override;
53 const std::string& filepath,
57 [[nodiscard]] std::vector<std::string> get_supported_extensions()
const override;
58 [[nodiscard]] std::string
get_last_error()
const override {
return m_last_error; }
65 static void register_with_registry();
73 [[nodiscard]] std::vector<std::string> resolve_channel_names(
83 static std::vector<std::vector<float>> deinterleave(
84 const std::vector<float>& src,
85 uint32_t
width, uint32_t height, uint32_t channels,
86 bool flip_vertically);