41 #include <VisionX/gui-plugins/ImageRecorder/ui_ImageProviderConfigWidget.h>
42 #include <VisionX/interface/core/ImageProviderInterface.h>
49 class ChannelConfigWidget;
50 class ImageRecorderWidgetController;
65 Ui::image_provider_config_widget m_widget;
66 QPointer<armarx::IceProxyFinder<RecordingImageProviderInterfacePrx>> m_ice_proxy_finder;
67 QPointer<QTimer> m_blink_timer;
69 std::string m_image_provider_name;
70 std::vector<ChannelConfigWidget*> m_channel_config_widgets;
71 bool m_icon_blink =
false;
72 std::string m_current_icon_name;
73 std::optional<imrec::State> m_current_state;
74 imrec::Status m_current_status;
94 void build_ui_from_configs(
const std::vector<imrec::ChannelConfig>& configs,
const std::vector<imrec::ChannelPreferences>& prefs_list);
96 void add_channel_conf_widget(
const imrec::ChannelConfig& channel_config,
const imrec::ChannelPreferences& channel_prefs);
98 void update_channel_list();
100 std::vector<imrec::ChannelPreferences> get_channel_prefs();
102 bool is_channel_name_unique(
const std::string& name);
114 void state_changed(std::optional<imrec::State> old_state, std::optional<imrec::State> new_state);
118 void channel_renamed(
const std::string& old_name,
const std::string& new_name);
120 void image_provider_renamed(
const QString& name);
122 void image_provider_removed();