При программировании с Wayland, на C, как я могу получить функциональность xcb и Xlib? [закрыто]

Я понимаю, что Wayland - это композитор, который каким-то образом связан с событиями, поэтому программное обеспечение следующего уровня может зарегистрироваться в Wayland для получения событий и т. д. Но Wayland не предоставляет окна, просто поверхности для рендеринга окон и другой графики.

Я потратил много времени на обучение программированию на C и создание очень простой графики со смесью xcb и Xlib , которые легко смешиваются: #include <Xlib-xcb.h>. Я хотел бы продолжить программирование на этом уровне, используя xcb-события, xcb-графические примитивы, pixmaps, XImages или xcb_image_t и расширение MIT-Shm для создания растровых изображений разделяемой памяти и ximages. 'ed surface привлекательны, потому что они позволят мне улучшить гибкость, чем MIT-Shm, что зависит от общей памяти SysV.

Существует ли программный уровень, обеспечивающий уровень функциональности xcb? Могу ли я зависеть от поддержки xcb и Xlib, поэтому программа X11 может работать как клиент Wayland?

Я не заинтересован в использовании GTK + или Qt в качестве альтернативы функциональности, подобной xcb. Они предназначены для сложного программирования графического интерфейса, и это не то, что я хочу - я хочу программировать на низком уровне.

Я вижу Wayland-egl.h, используемый в примерах. Предоставляет ли egl функциональность, аналогичную той, что я нахожу в xcb? Где я могу найти простые, но всесторонние учебники? Имеются ли какие-либо документы Xlib? Документация Xcb ужасна, но с руководствами и учебниками Xlib под рукой я научился собирать полезный код.

Как программист-хобби, информация, которую я нахожу в Интернете, очень загадочна, но всегда получается чтобы быть знакомым с различными терминами и соответствующими библиотеками. На самом деле программирование xcb не является сложным, это просто многословное и незнакомое.

Доступная информация настолько тяжела для меня, чтобы просеивать и, кажется, не хватает большого количества деталей, или она написана на языке слишком неясным и незнакомый мне для понимания. У кого-нибудь есть некоторые указания для непосвященного, но достаточно хорошего программиста?

3
задан 3 April 2018 в 00:38

2 ответа

Это неловко: я должен был несколько раз проверять часто задаваемые вопросы X.Org's Wayland. Я нашел ответ на свой вопрос правильно, где я его впервые увидел ... [wayland.freedesktop.org/faq][1]

... есть некоторые клиенты, которые полагаются на X11, и всегда будет. С этой целью XWayland предоставляет плагин для компоновщиков Wayland, работающих под управлением реального X-сервера. Это дает унаследованным клиентам реальную и совместимую платформу X11 для запуска, отображаемую рядом с родными клиентами Wayland на вашем сеансе Wayland

Извиняюсь за формулировку моего вопроса: «будут ли Xlib и XCB вокруг еще долго? Фраза «долгое время все еще» требует мнения, и я имел в виду фактическое знание.

Где он говорит, что здесь включена цитата, что «всегда будут» клиенты, полагающиеся на X11, я интерпретирую это как означающие «еще долгое время». Я знаю, что это расплывчато. Возможно, в качестве программиста я ожидаю слишком много точности от естественных языков.

Еще одна хорошая часть неточных новостей, которая имеет отношение к тому, стоит ли писать код, который использует X11, заключается в том, что накладные штрафы практически отсутствуют накладные расходы на запуск X на Wayland. "

Это все я решил: я продолжу #include <Xlib-xcb.h> и не буду беспокоиться об этом.

0
ответ дан 17 July 2018 в 17:36

Это неловко: я должен был несколько раз проверять часто задаваемые вопросы X.Org's Wayland. Я нашел ответ на свой вопрос правильно, где я его впервые увидел ... [wayland.freedesktop.org/faq][1]

... есть некоторые клиенты, которые полагаются на X11, и всегда будет. С этой целью XWayland предоставляет плагин для компоновщиков Wayland, работающих под управлением реального X-сервера. Это дает унаследованным клиентам реальную и совместимую платформу X11 для запуска, отображаемую рядом с родными клиентами Wayland на вашем сеансе Wayland

Извиняюсь за формулировку моего вопроса: «будут ли Xlib и XCB вокруг еще долго? Фраза «долгое время все еще» требует мнения, и я имел в виду фактическое знание.

Где он говорит, что здесь включена цитата, что «всегда будут» клиенты, полагающиеся на X11, я интерпретирую это как означающие «еще долгое время». Я знаю, что это расплывчато. Возможно, в качестве программиста я ожидаю слишком много точности от естественных языков.

Еще одна хорошая часть неточных новостей, которая имеет отношение к тому, стоит ли писать код, который использует X11, заключается в том, что накладные штрафы практически отсутствуют накладные расходы на запуск X на Wayland. "

Это все я решил: я продолжу #include <Xlib-xcb.h> и не буду беспокоиться об этом.

0
ответ дан 23 July 2018 в 18:27

Другие вопросы по тегам:

Похожие вопросы: