| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- #ifndef DEPTHGUIDE_VERSATILE_CONVERTOR_H
- #define DEPTHGUIDE_VERSATILE_CONVERTOR_H
- #include "core/cuda_helper.hpp"
- #include "core/object_manager.h"
- #include <memory>
- enum convert_options {
- CVT_RGB_BGRA,
- CVT_NV12_RGB,
- CVT_FAKE_ENCODE_888I,
- CVT_FAKE_ENCODE_555P,
- CVT_FAKE_ENCODE_800P,
- CVT_FAKE_DECODE_888I,
- CVT_FAKE_DECODE_555P,
- CVT_FAKE_DECODE_800P,
- CVT_HALF_SPLIT
- };
- class versatile_convertor {
- public:
- struct create_config {
- obj_name_type in_name;
- obj_name_type ext_in = invalid_obj_name;
- obj_name_type out_name;
- obj_name_type ext_out = invalid_obj_name;
- convert_options cvt_opt;
- smart_cuda_stream *stream = nullptr;
- };
- explicit versatile_convertor(create_config conf);
- ~versatile_convertor();
- private:
- struct impl;
- std::unique_ptr<impl> pimpl;
- };
- #endif //DEPTHGUIDE_VERSATILE_CONVERTOR_H
|