1
- /* Generated by wayland-scanner 1.22.0 */
1
+ /* Generated by wayland-scanner 1.23.1 */
2
2
3
3
#ifndef KDE_OUTPUT_DEVICE_V2_CLIENT_PROTOCOL_H
4
4
#define KDE_OUTPUT_DEVICE_V2_CLIENT_PROTOCOL_H
@@ -53,6 +53,11 @@ struct kde_output_device_v2;
53
53
* This object is published as global during start up for every available
54
54
* display devices, or when one later becomes available, for example by
55
55
* being hotplugged via a physical connector.
56
+ *
57
+ * Warning! The protocol described in this file is a desktop environment
58
+ * implementation detail. Regular clients must not use this protocol.
59
+ * Backward incompatible changes may be added without bumping the major
60
+ * version of the extension.
56
61
* @section page_iface_kde_output_device_v2_api API
57
62
* See @ref iface_kde_output_device_v2.
58
63
*/
@@ -75,6 +80,11 @@ struct kde_output_device_v2;
75
80
* This object is published as global during start up for every available
76
81
* display devices, or when one later becomes available, for example by
77
82
* being hotplugged via a physical connector.
83
+ *
84
+ * Warning! The protocol described in this file is a desktop environment
85
+ * implementation detail. Regular clients must not use this protocol.
86
+ * Backward incompatible changes may be added without bumping the major
87
+ * version of the extension.
78
88
*/
79
89
extern const struct wl_interface kde_output_device_v2_interface ;
80
90
#endif
@@ -199,6 +209,11 @@ enum kde_output_device_v2_capability {
199
209
* @since 5
200
210
*/
201
211
KDE_OUTPUT_DEVICE_V2_CAPABILITY_ICC_PROFILE = 0x40 ,
212
+ /**
213
+ * if this outputdevice supports the brightness setting
214
+ * @since 9
215
+ */
216
+ KDE_OUTPUT_DEVICE_V2_CAPABILITY_BRIGHTNESS = 0x80 ,
202
217
};
203
218
/**
204
219
* @ingroup iface_kde_output_device_v2
@@ -216,6 +231,10 @@ enum kde_output_device_v2_capability {
216
231
* @ingroup iface_kde_output_device_v2
217
232
*/
218
233
#define KDE_OUTPUT_DEVICE_V2_CAPABILITY_ICC_PROFILE_SINCE_VERSION 5
234
+ /**
235
+ * @ingroup iface_kde_output_device_v2
236
+ */
237
+ #define KDE_OUTPUT_DEVICE_V2_CAPABILITY_BRIGHTNESS_SINCE_VERSION 9
219
238
#endif /* KDE_OUTPUT_DEVICE_V2_CAPABILITY_ENUM */
220
239
221
240
#ifndef KDE_OUTPUT_DEVICE_V2_VRR_POLICY_ENUM
@@ -274,6 +293,29 @@ enum kde_output_device_v2_color_profile_source {
274
293
};
275
294
#endif /* KDE_OUTPUT_DEVICE_V2_COLOR_PROFILE_SOURCE_ENUM */
276
295
296
+ #ifndef KDE_OUTPUT_DEVICE_V2_COLOR_POWER_TRADEOFF_ENUM
297
+ #define KDE_OUTPUT_DEVICE_V2_COLOR_POWER_TRADEOFF_ENUM
298
+ /**
299
+ * @ingroup iface_kde_output_device_v2
300
+ * tradeoff between power and accuracy
301
+ *
302
+ * The compositor can do a lot of things that trade between
303
+ * performance, power and color accuracy. This setting describes
304
+ * a high level preference from the user about in which direction
305
+ * that tradeoff should be made.
306
+ */
307
+ enum kde_output_device_v2_color_power_tradeoff {
308
+ /**
309
+ * prefer efficiency and performance
310
+ */
311
+ KDE_OUTPUT_DEVICE_V2_COLOR_POWER_TRADEOFF_EFFICIENCY = 0 ,
312
+ /**
313
+ * prefer accuracy
314
+ */
315
+ KDE_OUTPUT_DEVICE_V2_COLOR_POWER_TRADEOFF_ACCURACY = 1 ,
316
+ };
317
+ #endif /* KDE_OUTPUT_DEVICE_V2_COLOR_POWER_TRADEOFF_ENUM */
318
+
277
319
/**
278
320
* @ingroup iface_kde_output_device_v2
279
321
* @struct kde_output_device_v2_listener
@@ -593,6 +635,29 @@ struct kde_output_device_v2_listener {
593
635
void (* brightness )(void * data ,
594
636
struct kde_output_device_v2 * kde_output_device_v2 ,
595
637
uint32_t brightness );
638
+ /**
639
+ * the preferred color/power tradeoff
640
+ *
641
+ *
642
+ * @since 10
643
+ */
644
+ void (* color_power_tradeoff )(void * data ,
645
+ struct kde_output_device_v2 * kde_output_device_v2 ,
646
+ uint32_t preference );
647
+ /**
648
+ * dimming multiplier
649
+ *
650
+ * This is the dimming multiplier of the output. This is similar
651
+ * to the brightness setting, except it's meant to be a temporary
652
+ * setting only, not persistent and may be implemented differently
653
+ * depending on the display. 0 is the minimum dimming factor (not
654
+ * completely dark) and 10000 means the output is not dimmed.
655
+ * @param multiplier multiplier in 0-10000
656
+ * @since 11
657
+ */
658
+ void (* dimming )(void * data ,
659
+ struct kde_output_device_v2 * kde_output_device_v2 ,
660
+ uint32_t multiplier );
596
661
};
597
662
598
663
/**
@@ -706,34 +771,42 @@ kde_output_device_v2_add_listener(struct kde_output_device_v2 *kde_output_device
706
771
* @ingroup iface_kde_output_device_v2
707
772
*/
708
773
#define KDE_OUTPUT_DEVICE_V2_BRIGHTNESS_SINCE_VERSION 8
774
+ /**
775
+ * @ingroup iface_kde_output_device_v2
776
+ */
777
+ #define KDE_OUTPUT_DEVICE_V2_COLOR_POWER_TRADEOFF_SINCE_VERSION 10
778
+ /**
779
+ * @ingroup iface_kde_output_device_v2
780
+ */
781
+ #define KDE_OUTPUT_DEVICE_V2_DIMMING_SINCE_VERSION 11
709
782
710
783
711
- // / ** @ingroup iface_kde_output_device_v2 */
712
- // static inline void
713
- // kde_output_device_v2_set_user_data(struct kde_output_device_v2 *kde_output_device_v2, void *user_data)
714
- // {
715
- // wl_proxy_set_user_data((struct wl_proxy *) kde_output_device_v2, user_data);
716
- // }
784
+ /** @ingroup iface_kde_output_device_v2 */
785
+ static inline void
786
+ kde_output_device_v2_set_user_data (struct kde_output_device_v2 * kde_output_device_v2 , void * user_data )
787
+ {
788
+ wl_proxy_set_user_data ((struct wl_proxy * ) kde_output_device_v2 , user_data );
789
+ }
717
790
718
- // / ** @ingroup iface_kde_output_device_v2 */
719
- // static inline void *
720
- // kde_output_device_v2_get_user_data(struct kde_output_device_v2 *kde_output_device_v2)
721
- // {
722
- // return wl_proxy_get_user_data((struct wl_proxy *) kde_output_device_v2);
723
- // }
791
+ /** @ingroup iface_kde_output_device_v2 */
792
+ static inline void *
793
+ kde_output_device_v2_get_user_data (struct kde_output_device_v2 * kde_output_device_v2 )
794
+ {
795
+ return wl_proxy_get_user_data ((struct wl_proxy * ) kde_output_device_v2 );
796
+ }
724
797
725
- // static inline uint32_t
726
- // kde_output_device_v2_get_version(struct kde_output_device_v2 *kde_output_device_v2)
727
- // {
728
- // return wl_proxy_get_version((struct wl_proxy *) kde_output_device_v2);
729
- // }
798
+ static inline uint32_t
799
+ kde_output_device_v2_get_version (struct kde_output_device_v2 * kde_output_device_v2 )
800
+ {
801
+ return wl_proxy_get_version ((struct wl_proxy * ) kde_output_device_v2 );
802
+ }
730
803
731
- // / ** @ingroup iface_kde_output_device_v2 */
732
- // static inline void
733
- // kde_output_device_v2_destroy(struct kde_output_device_v2 *kde_output_device_v2)
734
- // {
735
- // wl_proxy_destroy((struct wl_proxy *) kde_output_device_v2);
736
- // }
804
+ /** @ingroup iface_kde_output_device_v2 */
805
+ static inline void
806
+ kde_output_device_v2_destroy (struct kde_output_device_v2 * kde_output_device_v2 )
807
+ {
808
+ wl_proxy_destroy ((struct wl_proxy * ) kde_output_device_v2 );
809
+ }
737
810
738
811
/**
739
812
* @ingroup iface_kde_output_device_mode_v2
@@ -811,32 +884,32 @@ kde_output_device_mode_v2_add_listener(struct kde_output_device_mode_v2 *kde_out
811
884
#define KDE_OUTPUT_DEVICE_MODE_V2_REMOVED_SINCE_VERSION 1
812
885
813
886
814
- // / ** @ingroup iface_kde_output_device_mode_v2 */
815
- // static inline void
816
- // kde_output_device_mode_v2_set_user_data(struct kde_output_device_mode_v2 *kde_output_device_mode_v2, void *user_data)
817
- // {
818
- // wl_proxy_set_user_data((struct wl_proxy *) kde_output_device_mode_v2, user_data);
819
- // }
887
+ /** @ingroup iface_kde_output_device_mode_v2 */
888
+ static inline void
889
+ kde_output_device_mode_v2_set_user_data (struct kde_output_device_mode_v2 * kde_output_device_mode_v2 , void * user_data )
890
+ {
891
+ wl_proxy_set_user_data ((struct wl_proxy * ) kde_output_device_mode_v2 , user_data );
892
+ }
820
893
821
- // / ** @ingroup iface_kde_output_device_mode_v2 */
822
- // static inline void *
823
- // kde_output_device_mode_v2_get_user_data(struct kde_output_device_mode_v2 *kde_output_device_mode_v2)
824
- // {
825
- // return wl_proxy_get_user_data((struct wl_proxy *) kde_output_device_mode_v2);
826
- // }
894
+ /** @ingroup iface_kde_output_device_mode_v2 */
895
+ static inline void *
896
+ kde_output_device_mode_v2_get_user_data (struct kde_output_device_mode_v2 * kde_output_device_mode_v2 )
897
+ {
898
+ return wl_proxy_get_user_data ((struct wl_proxy * ) kde_output_device_mode_v2 );
899
+ }
827
900
828
- // static inline uint32_t
829
- // kde_output_device_mode_v2_get_version(struct kde_output_device_mode_v2 *kde_output_device_mode_v2)
830
- // {
831
- // return wl_proxy_get_version((struct wl_proxy *) kde_output_device_mode_v2);
832
- // }
901
+ static inline uint32_t
902
+ kde_output_device_mode_v2_get_version (struct kde_output_device_mode_v2 * kde_output_device_mode_v2 )
903
+ {
904
+ return wl_proxy_get_version ((struct wl_proxy * ) kde_output_device_mode_v2 );
905
+ }
833
906
834
- // / ** @ingroup iface_kde_output_device_mode_v2 */
835
- // static inline void
836
- // kde_output_device_mode_v2_destroy(struct kde_output_device_mode_v2 *kde_output_device_mode_v2)
837
- // {
838
- // wl_proxy_destroy((struct wl_proxy *) kde_output_device_mode_v2);
839
- // }
907
+ /** @ingroup iface_kde_output_device_mode_v2 */
908
+ static inline void
909
+ kde_output_device_mode_v2_destroy (struct kde_output_device_mode_v2 * kde_output_device_mode_v2 )
910
+ {
911
+ wl_proxy_destroy ((struct wl_proxy * ) kde_output_device_mode_v2 );
912
+ }
840
913
841
914
#ifdef __cplusplus
842
915
}
0 commit comments