Louvre
v2.13.0-1
C++ library for Wayland compositors
|
Namespaces. More...
Classes | |
class | LActivationToken |
Token for activating surfaces. More... | |
class | LActivationTokenManager |
Activation Token Manager. More... | |
class | LAnimation |
Time-based animations. More... | |
class | LBitset |
Compact way of storing and managing conditions or states. More... | |
struct | LBox |
Structure representing a 2D box. More... | |
class | LClient |
Representation of a Wayland client. More... | |
class | LClientCursor |
Encapsulates parameters used in a set cursor request. More... | |
class | LClipboard |
Clipboard manager. More... | |
struct | LRGBF |
RGB color with floating-point components. More... | |
struct | LRGBAF |
RGBA color with floating-point components. More... | |
struct | LBlendFunc |
Color blending function. More... | |
class | LCompositor |
Louvre's core and objects factory. More... | |
class | LCursor |
Utility class for rendering cursors. More... | |
class | LDND |
Class for handling drag & drop sessions. More... | |
class | LExclusiveZone |
Exclusive zone within an LOutput. More... | |
class | LFactoryObject |
Base class for Factory objects. More... | |
class | LGammaTable |
Gamma correction table for outputs. More... | |
class | LGlobal |
A Wayland protocol global. More... | |
class | LGPU |
GPU Information. More... | |
class | LIdleListener |
Idle state listener. More... | |
class | LInputDevice |
Input Device. More... | |
class | LKeyboard |
Class for handling keyboard events. More... | |
class | LLauncher |
Utility for launching applications safely. More... | |
class | LLog |
Debugging information. More... | |
struct | LMargins |
Structure representing left, top, right and bottom margins. More... | |
class | LWeak |
Weak reference to an LObject. More... | |
class | LPointTemplate |
Template for 2D vectors. More... | |
class | LRectTemplate |
Template for 4D vectors. More... | |
struct | LVersion |
Structure representing a version in the format major.minor.patch-build. More... | |
class | LObject |
Base class for Louvre objects. More... | |
class | LOpenGL |
OpenGL utility functions. More... | |
class | LOutput |
A display rendering interface. More... | |
class | LOutputMode |
Output resolution and refresh rate. More... | |
class | LPainter |
Basic 2D rendering utility. More... | |
class | LPointer |
Class for handling events generated by pointing devices. More... | |
class | LRegion |
Collection of non-overlapping rectangles. More... | |
class | LResource |
Wrapper for native wl_resource structs. More... | |
class | LScreenshotRequest |
Request to capture an LOutput frame. More... | |
class | LSeat |
Group of input and output devices. More... | |
class | LSessionLockManager |
Manages session lock requests and state changes. More... | |
class | LSurface |
A client "window". More... | |
struct | LDMAFormat |
Structure representing a DMA format and modifier. More... | |
struct | LDMAPlanes |
Direct Memory Access (DMA) planes. More... | |
class | LTexture |
OpenGL texture abstraction. More... | |
class | LTime |
Time utilities. More... | |
class | LTimer |
Delayed callbacks. More... | |
class | LTouch |
Class for handling touch input events. More... | |
class | LTouchPoint |
Touch point within a touch device. More... | |
class | LXCursor |
An XCursor icon. More... | |
class | LEvent |
Base class for events. More... | |
class | LInputEvent |
Base class for input events. More... | |
class | LKeyboardEnterEvent |
Event generated when a surface or view gains keyboard focus. More... | |
class | LKeyboardEvent |
Base class for keyboard events. More... | |
class | LKeyboardKeyEvent |
Keyboard key event. More... | |
class | LKeyboardLeaveEvent |
Event generated when a surface or view loses keyboard focus. More... | |
class | LKeyboardModifiersEvent |
Keyboard modifiers event. More... | |
class | LPointerButtonEvent |
Pointer button event. More... | |
class | LPointerEnterEvent |
Event generated when a surface or view gains pointer focus. More... | |
class | LPointerEvent |
Base class for pointer events. More... | |
class | LPointerHoldBeginEvent |
Pointer hold begin gesture event. More... | |
class | LPointerHoldEndEvent |
Pointer hold end gesture event. More... | |
class | LPointerLeaveEvent |
Event generated when a surface or view loses pointer focus. More... | |
class | LPointerMoveEvent |
Pointer movement event. More... | |
class | LPointerPinchBeginEvent |
Pointer pinch begin gesture event. More... | |
class | LPointerPinchEndEvent |
Pointer pinch end gesture event. More... | |
class | LPointerPinchUpdateEvent |
Pointer pinch update gesture event. More... | |
class | LPointerScrollEvent |
Pointer scroll event. More... | |
class | LPointerSwipeBeginEvent |
Pointer swipe begin gesture event. More... | |
class | LPointerSwipeEndEvent |
Pointer swipe end gesture event. More... | |
class | LPointerSwipeUpdateEvent |
Pointer swipe update gesture event. More... | |
class | LTouchCancelEvent |
Touch cancel event. More... | |
class | LTouchDownEvent |
Touch down event. More... | |
class | LTouchEvent |
Base class for touch events. More... | |
class | LTouchFrameEvent |
Represents a touch frame event. More... | |
class | LTouchMoveEvent |
Touch move event. More... | |
class | LTouchUpEvent |
Touch up event. More... | |
class | LFramebuffer |
Base class for LPainter framebuffers. More... | |
class | LFramebufferWrapper |
Wrapper for a native OpenGL framebuffer. More... | |
class | LOutputFramebuffer |
An output framebuffer. More... | |
class | LRenderBuffer |
Represents a custom render destination framebuffer. More... | |
class | LBaseSurfaceRole |
Base class for surface roles. More... | |
class | LCursorRole |
Cursor role for surfaces. More... | |
class | LDNDIconRole |
Drag & drop icon role for surfaces. More... | |
class | LForeignToplevelController |
Foreign Toplevel Controller. More... | |
class | LLayerRole |
Layer role for surfaces. More... | |
class | LPopupRole |
Popup role for surfaces. More... | |
class | LPositioner |
Positioning rules for LPopupRole surfaces. More... | |
class | LSessionLockRole |
Surface displayed during a session lock. More... | |
class | LSubsurfaceRole |
Subsurface role for surfaces. More... | |
class | LToplevelMoveSession |
Toplevel move session utility. More... | |
class | LToplevelResizeSession |
Toplevel resize session utility. More... | |
class | LToplevelRole |
Toplevel role for surfaces. More... | |
class | LLayerView |
Container of views. More... | |
class | LScene |
Scene. More... | |
class | LSceneTouchPoint |
Touch point managed within an LScene. More... | |
class | LSceneView |
View for rendering other views. More... | |
class | LSolidColorView |
View for displaying solid color rects. More... | |
class | LSurfaceView |
View for displaying surfaces. More... | |
class | LTextureView |
View for displaying textures. More... | |
class | LView |
Base class for LScene views. More... | |
Typedefs | |
typedef uint64_t | UInt64 |
64 bits unsigned integer More... | |
typedef int64_t | Int64 |
64 bits signed integer More... | |
typedef uint32_t | UInt32 |
32 bits unsigned integer More... | |
typedef int32_t | Int32 |
32 bits signed integer More... | |
typedef uint16_t | UInt16 |
16 bits unsigned integer More... | |
typedef int16_t | Int16 |
16 bits signed integer More... | |
typedef uint8_t | UInt8 |
8 bits unsigned integer More... | |
typedef int8_t | Int8 |
8 bits signed integer More... | |
typedef unsigned char | UChar8 |
8 bits unsigned integer More... | |
typedef char | Char8 |
8 bits signed integer More... | |
typedef double | Float64 |
64 bits float More... | |
typedef float | Float32 |
32 bits float More... | |
typedef wl_fixed_t | Float24 |
24 bits Wayland float More... | |
typedef uintptr_t | UIntPtr |
Unsigned integer capable of holding a pointer. More... | |
using | LPoint = LPointTemplate< Int32 > |
2D vector of 32 bits integers More... | |
using | LSize = LPoint |
2D vector of 32 bits integers More... | |
using | LPointF = LPointTemplate< Float32 > |
2D vector of 32 bits floats More... | |
using | LSizeF = LPointF |
2D vector of 32 bits floats More... | |
using | LRect = LRectTemplate< Int32 > |
4D vector of 32 bits integers More... | |
using | LRectF = LRectTemplate< Float32 > |
4D vector of 32 bits floats More... | |
Enumerations | |
enum | LContentType |
Content Type Hint. More... | |
enum | LEdge : UInt32 |
Edge flags. More... | |
enum | LSurfaceLayer |
Surface layers. More... | |
enum | LGraphicBackendID : UInt32 |
Graphic backend IDs. More... | |
enum | LInputBackendID : UInt32 |
Input backend IDs. More... | |
enum class | LImageCaptureSourceType : UInt32 |
Image capture source type. More... | |
enum class | LTransform : Int32 |
Transforms. More... | |
Functions | |
constexpr bool | edgeIsCorner (LBitset< LEdge > edges) noexcept |
Checks if the given edges form a corner by being orthogonal. More... | |
LCompositor * | compositor () noexcept |
Gets the static LCompositor instance. More... | |
LCursor * | cursor () noexcept |
Gets the compositor's cursor. More... | |
LSeat * | seat () noexcept |
Gets the compositor's seat. More... | |
LSessionLockManager * | sessionLockManager () noexcept |
Gets the compositor's session lock manager. More... | |
LActivationTokenManager * | activationTokenManager () noexcept |
Provides access to the activation token manager. More... | |
Namespaces.
struct Louvre::LBox |
Structure representing a 2D box.
The LBox struct defines a 2D box using four integer coordinates (x1, y1, x2, y2). It is typically used to represent bounding boxes or rectangular regions in 2D space.
Class Members | ||
---|---|---|
Int32 | x1 | The x-coordinate of the top-left corner of the box. |
Int32 | y1 | The y-coordinate of the top-left corner of the box. |
Int32 | x2 | The x-coordinate of the bottom-right corner of the box. |
Int32 | y2 | The y-coordinate of the bottom-right corner of the box. |
struct Louvre::LBlendFunc |
Color blending function.
OpenGL blend function. Refer to the documentation of glBlendFuncSeparate() for more information.
struct Louvre::LMargins |
struct Louvre::LVersion |
struct Louvre::LDMAPlanes |
Direct Memory Access (DMA) planes.
Use this struct to import DMA buffers with LTexture.
Class Members | ||
---|---|---|
UInt32 | width | Width of the buffer in pixels. |
UInt32 | height | Height of the buffer in pixels. |
UInt32 | format | DRM format of the buffer. |
UInt32 | num_fds | Number of file descriptors. |
Int32 | fds[4] | Array of file descriptors associated with each DMA plane. |
UInt32 | strides[4] | Array of strides for each DMA plane. |
UInt32 | offsets[4] | Array of offsets for each DMA plane. |
UInt64 | modifiers[4] | Array of modifiers for each DMA plane. |
typedef uint64_t UInt64 |
64 bits unsigned integer
typedef int64_t Int64 |
64 bits signed integer
typedef uint32_t UInt32 |
32 bits unsigned integer
typedef int32_t Int32 |
32 bits signed integer
typedef uint16_t UInt16 |
16 bits unsigned integer
typedef int16_t Int16 |
16 bits signed integer
typedef uint8_t UInt8 |
8 bits unsigned integer
typedef int8_t Int8 |
8 bits signed integer
typedef unsigned char UChar8 |
8 bits unsigned integer
typedef char Char8 |
8 bits signed integer
typedef double Float64 |
64 bits float
typedef float Float32 |
32 bits float
typedef wl_fixed_t Float24 |
24 bits Wayland float
typedef uintptr_t UIntPtr |
Unsigned integer capable of holding a pointer.
using LPoint = LPointTemplate<Int32> |
2D vector of 32 bits integers
using LPointF = LPointTemplate<Float32> |
2D vector of 32 bits floats
using LRect = LRectTemplate<Int32> |
4D vector of 32 bits integers
using LRectF = LRectTemplate<Float32> |
4D vector of 32 bits floats
enum LContentType |
Content Type Hint.
Hint indicating the type of content being displayed by an LSurface or LOutput.
enum LSurfaceLayer |
enum LGraphicBackendID : UInt32 |
Graphic backend IDs.
Use LCompositor::graphicBackendId() to identify the currently loaded backend.
Enumerator | |
---|---|
LGraphicBackendDRM | ID for the DRM graphic backend. |
LGraphicBackendWayland | ID for the Wayland graphic backend. |
enum LInputBackendID : UInt32 |
Input backend IDs.
Use LCompositor::inputBackendId() to identify the currently loaded backend.
Enumerator | |
---|---|
LInputBackendLibinput | ID for the Libinput input backend. |
LInputBackendWayland | ID for the Wayland input backend. |
|
strong |
|
strong |
Transforms.
Checks if the given edges form a corner by being orthogonal.
This function verifies if the provided bitset of edges corresponds to one of the four possible corner configurations: (Top-Left, Top-Right, Bottom-Left, Bottom-Right).
edges | A bitset representing the edges. |
true
if the edges form a corner, false
otherwise.
|
noexcept |
Gets the static LCompositor instance.
This method provides access to the single LCompositor instance that can exist per process.
nullptr
if not yet created.
|
noexcept |
Gets the compositor's cursor.
nullptr
if not yet initialized.
|
noexcept |
Gets the compositor's seat.
The seat provides access to the LClipboard, LDND, LPointer, LKeyboard, LTouch, and LOutput instances.
|
noexcept |
Gets the compositor's session lock manager.
|
noexcept |
Provides access to the activation token manager.