remote_ar_v2.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #ifndef REMOTE_AR_V2_H
  2. #define REMOTE_AR_V2_H
  3. #include "impl/app_base.h"
  4. #include "device/mvs_camera_ui.h"
  5. #include "device/uvc_camera_ui.h"
  6. #include "image_process_v5/image_augment.h"
  7. #include "image_process_v5/image_viewer.h"
  8. #include "image_process_v5/image_process.h"
  9. #include "image_process_v5/image_enhance.h"
  10. #include "image_process_v5/video_stabilization.h"
  11. #include "module/image_streamer.h"
  12. #include "module_v3/registration.h"
  13. #include "module_v5/versatile_saver.h"
  14. #include "module_v5/oblique_calibrator.h"
  15. #include "module/augment_manager_v2.h"
  16. #include "module/image_augment_helper_v2.h"
  17. #include "module/camera_augment_helper_v2.h"
  18. #include "module/sophiar_monitor.h"
  19. class app_remote_ar_v2 final : public app_base {
  20. public:
  21. explicit app_remote_ar_v2(create_config);
  22. ~app_remote_ar_v2() override;
  23. const char *window_name() override { return "RemoteAR V5.-1"; }
  24. void show_ui() override;
  25. void render_background() override;
  26. private:
  27. create_config main_conf;
  28. enum : obj_name_type {
  29. bg_img_id,
  30. left_img_id, left_fix_id, left_aug_id, left_stab_id,
  31. right_img_id, right_fix_id, right_aug_id, right_stab_id,
  32. output_img_id,
  33. uvc_img_id,
  34. };
  35. obj_name_type extra_name = 100;
  36. std::optional<mvs_camera_ui> mvs_cam;
  37. std::optional<uvc_camera_ui> uvc_cam;
  38. std::optional<video_stabilization_ui> video_stab;
  39. std::optional<stereo_output_helper> output_helper;
  40. std::optional<image_viewer_v2> bg_viewer;
  41. std::optional<image_streamer> streamer;
  42. std::optional<versatile_saver> saver;
  43. // std::optional<oblique_calibrator> endo_calib;
  44. std::optional<sophiar_monitor> monitor;
  45. bool enable_reg = false;
  46. std::unique_ptr<registration> reg;
  47. std::optional<augment_manager_v2> aug_manager;
  48. struct {
  49. std::optional<image_enhance_ui> img_isp;
  50. std::optional<image_augment_helper_v2> aug_helper;
  51. } left_cam, right_cam;
  52. // osg::ref_ptr<SceneSP> aug_scene;
  53. // std::optional<image_augment> left_aug;
  54. // std::optional<image_augment> right_aug;
  55. };
  56. #endif //REMOTE_AR_V2_H