Skip to content
Snippets Groups Projects
  • George Kiagiadakis's avatar
    bd65517b
    pw-object-mixin: refactor, implement param caching and features for impl objects · bd65517b
    George Kiagiadakis authored
    Now the WpPipewireObject interface is directly implemented by the mixin
    and there is another interface that users of the mixin must implement
    in order for the mixin to work proprely.
    
    A lot of manual stuff that proxy classes had to do before are now
    in the mixin. Also most of the data that would normally reside in Private
    structures is now in the mixin data structure (stored as qdata on the object).
    This is achieving the best amount of code reuse so far.
    
    For impl objects (WpImpl*) there are also default implementations of the
    standard pipewire object methods and the INFO & PARAM_* features are
    more coherently enabled during the whole lifetime of these objects.
    bd65517b
    History
    pw-object-mixin: refactor, implement param caching and features for impl objects
    George Kiagiadakis authored
    Now the WpPipewireObject interface is directly implemented by the mixin
    and there is another interface that users of the mixin must implement
    in order for the mixin to work proprely.
    
    A lot of manual stuff that proxy classes had to do before are now
    in the mixin. Also most of the data that would normally reside in Private
    structures is now in the mixin data structure (stored as qdata on the object).
    This is achieving the best amount of code reuse so far.
    
    For impl objects (WpImpl*) there are also default implementations of the
    standard pipewire object methods and the INFO & PARAM_* features are
    more coherently enabled during the whole lifetime of these objects.