#ifndef DEPTHGUIDE_DEPTH_GUIDE_CONTROLLER_H #define DEPTHGUIDE_DEPTH_GUIDE_CONTROLLER_H #include "core/cuda_helper.hpp" #include "core/object_manager.h" #include class depth_guide_controller { // TODO: currently in passive mode public: struct create_config { obj_name_type img_in; // image_u8c3 obj_name_type depth_in; // image_f32c1 obj_name_type img_out = invalid_obj_name; // can be invalid }; explicit depth_guide_controller(create_config conf); ~depth_guide_controller(); struct render_config { smart_cuda_stream *stream = nullptr; }; void render(render_config conf); void show(); private: struct impl; std::unique_ptr pimpl; }; #endif //DEPTHGUIDE_DEPTH_GUIDE_CONTROLLER_H