@@ -128,6 +128,7 @@ class uvc_device
128128 virtual void set_power_state ( power_state state ) = 0;
129129 virtual power_state get_power_state () const = 0;
130130
131+ virtual void register_xu ( platform::extension_unit && xu ) = 0;
131132 virtual void init_xu ( const extension_unit & xu ) = 0;
132133 virtual bool set_xu ( const extension_unit & xu, uint8_t ctrl, const uint8_t * data, int len ) = 0;
133134 virtual bool get_xu ( const extension_unit & xu, uint8_t ctrl, uint8_t * data, int len ) const = 0;
@@ -183,6 +184,8 @@ class retry_controls_work_around : public uvc_device
183184
184185 power_state get_power_state () const override { return _dev->get_power_state (); }
185186
187+ void register_xu ( platform::extension_unit && xu ) override { _dev->register_xu ( std::move ( xu ) ); }
188+
186189 void init_xu ( const extension_unit & xu ) override { _dev->init_xu ( xu ); }
187190
188191 bool set_xu ( const extension_unit & xu, uint8_t ctrl, const uint8_t * data, int len ) override
@@ -313,6 +316,8 @@ class multi_pins_uvc_device : public uvc_device
313316
314317 power_state get_power_state () const override { return _dev.front ()->get_power_state (); }
315318
319+ void register_xu ( platform::extension_unit && xu ) override { _dev.front ()->register_xu ( std::move ( xu ) ); }
320+
316321 void init_xu ( const extension_unit & xu ) override { _dev.front ()->init_xu ( xu ); }
317322
318323 bool set_xu ( const extension_unit & xu, uint8_t ctrl, const uint8_t * data, int len ) override
0 commit comments