#ifndef REMOTE_AR_V2_H #define REMOTE_AR_V2_H #include "device/mvs_camera_ui.h" #include "device/uvc_camera_ui.h" #include "image_process_v5/image_augment.h" #include "image_process_v5/image_enhance.h" #include "image_process_v5/image_process.h" #include "image_process_v5/image_viewer.h" #include "image_process_v5/video_stabilization.h" #include "impl/app_base.h" #include "module/augment_manager_v2.h" #include "module/camera_augment_helper_v2.h" #include "module/guidance/acl_guide.h" #include "module/image_augment_helper_v2.h" #include "module/image_streamer.h" #include "module/sophiar_monitor.h" #include "module_v3/registration.h" #include "module_v5/oblique_calibrator.h" #include "module_v5/versatile_saver.h" class app_remote_ar_v2 final: public app_base { public: explicit app_remote_ar_v2(create_config); ~app_remote_ar_v2() override; const char *window_name() override { return "RemoteAR V5.-1"; } void show_ui() override; void render_background() override; private: create_config main_conf; std::optional mvs_cam; std::optional uvc_cam; // std::optional video_stab; std::optional output_helper; std::optional bg_viewer; std::optional streamer; std::optional saver; std::optional endo_calib; std::optional monitor; std::optional acl; bool enable_reg = false; std::unique_ptr reg; std::optional aug_manager; struct { std::optional img_isp; std::optional aug_helper; } left_cam, right_cam; std::optional uvc_aug_helper; }; #endif // REMOTE_AR_V2_H