obs-StreamFX/source/nvidia/cv/nvidia-cv-image.hpp

41 lines
1.2 KiB
C++
Raw Normal View History

// AUTOGENERATED COPYRIGHT HEADER START
// Copyright (C) 2021-2023 Michael Fabian 'Xaymar' Dirks <info@xaymar.com>
// AUTOGENERATED COPYRIGHT HEADER END
2021-05-02 20:34:28 +00:00
#pragma once
#include "nvidia/cv/nvidia-cv.hpp"
#include "warning-disable.hpp"
#include <cinttypes>
#include "warning-enable.hpp"
2021-05-02 20:34:28 +00:00
namespace streamfx::nvidia::cv {
using ::streamfx::nvidia::cv::component_layout;
using ::streamfx::nvidia::cv::component_type;
using ::streamfx::nvidia::cv::memory_location;
using ::streamfx::nvidia::cv::pixel_format;
class image {
protected:
std::shared_ptr<::streamfx::nvidia::cv::cv> _cv;
image_t _image;
2021-09-07 03:11:04 +00:00
uint32_t _alignment;
2021-05-02 20:34:28 +00:00
public:
virtual ~image();
protected:
image();
public:
image(uint32_t width, uint32_t height, pixel_format pix_fmt, component_type cmp_type, component_layout cmp_layout, memory_location location, uint32_t alignment);
2021-05-02 20:34:28 +00:00
virtual void reallocate(uint32_t width, uint32_t height, pixel_format pix_fmt, component_type cmp_type, component_layout cmp_layout, memory_location location, uint32_t alignment);
2021-05-02 20:34:28 +00:00
virtual void resize(uint32_t width, uint32_t height);
virtual ::streamfx::nvidia::cv::image_t* get_image();
};
} // namespace streamfx::nvidia::cv