Kanzi 4.0.0-beta2
kanzi::qnx Namespace Reference

Classes

class  DefaultQnxEGLGraphicsOutput
 Class representing a default QNX EGL graphics output. More...
 
struct  DefaultQnxEGLGraphicsOutputProperties
 The structure that represents the default QNX EGL graphics output properties. More...
 
struct  DefaultQnxInputEventContext
 Structure representing the default context for an async input event. More...
 
class  DefaultQnxInputEventThread
 Structure representing the default QNX input event thread. More...
 
class  DefaultQnxPulseHandler
 
class  QnxBuffer
 Wrapper for a QNX buffer class. More...
 
class  QnxBufferMethods
 Class representing QNX buffer methods. More...
 
class  QnxChannelID
 Class representing QNX communication channel ID. More...
 
class  QnxConnectionID
 Class representing QNX connection ID. More...
 
class  QnxContext
 Wrapper for a QNX context class. More...
 
class  QnxContextMethods
 Class representing QNX context methods. More...
 
class  QnxDisplay
 Wrapper for a QNX display class. More...
 
class  QnxDisplayMethods
 Class representing QNX display methods. More...
 
struct  QnxEGLPBufferGraphicsOutputProperties
 Properties required to construct a QnxEGLPBufferGraphicsOutput. More...
 
class  QnxEGLWindow
 Class representing a QNX EGL window. More...
 
class  QnxEvent
 Wrapper for a QNX event class. More...
 
class  QnxEventMethods
 Class representing QNX event methods. More...
 
struct  QnxNativeWindowHandles
 Represents native handles that can be used by this graphics output. More...
 
class  QnxPixmap
 Wrapper for a QNX pixmap class. More...
 
class  QnxPixmapMethods
 Class representing QNX pixmap methods. More...
 
class  QnxPropertyHost
 An interface to access and set QNX properties. More...
 
class  QnxSigEvent
 Class representing QNX sig event. More...
 
class  QnxStream
 Wrapper for a QNX stream class. More...
 
struct  QnxStreamEGLGraphicsOutputProperties
 The structure that represents the QNX Stream EGL graphics output properties. More...
 
class  QnxStreamMethods
 Class representing QNX stream methods. More...
 
class  QnxWindow
 Wrapper for a QNX window class. More...
 
class  QnxWindowMethods
 Class representing QNX window methods. More...
 
struct  QnxWindowProperties
 Represents properties that are used to construct QnxWindow. More...
 
struct  TouchPoint
 Structure representing an individual touch point (cursor). More...
 

Enumerations

enum class  QnxBufferCleanupStrategy { CreateDestroy , AcquireRelease , None }
 Enumerator that represents QNX buffer resource management strategy. More...
 
enum class  QnxPulseCode : int { Disconnect , Input }
 QNX pulse codes. More...
 

Functions

KZ_NO_DISCARD int chooseWindowFormat (const EGLDisplay &eglDisplay, const EGLConfig &eglConfig, optional< int > paddingSize) noexcept
 Chooses a QNX window pixel format that matches a given EGL configuration.
 
KZ_NO_DISCARD int chooseWindowFormat (int bufferSize, optional< int > alphaSize, optional< int > paddingSize) noexcept
 Chooses a QNX window pixel format based on the specified criteria.
 
UniqueEventPtr composeTouchEvent (const DefaultQnxInputEventContext::TouchPointContainer &touchPoints)
 Composes a touch event from the given container of touch points.
 
bool isKeyReleased (int keyFlags) noexcept
 Tests if key is released for a keyboard event.
 
KZ_NO_DISCARD kanzi::KeyModifier qnxKeyModifiersToLogicalKeyModifiers (unsigned int qnxKeyModifiers) noexcept
 Maps native QNX key modifiers to Kanzi logical key modifiers.
 
KZ_NO_DISCARD kanzi::LogicalKey qnxKeyToLogicalKey (unsigned int qnxKey) noexcept
 Maps native QNX key to Kanzi logical key.
 
KZ_NO_DISCARD int queryScreenUsageFlags (const EGLDisplay &eglDisplay, const EGLConfig &eglConfig) noexcept
 Queries the screen usage flags for the given display and EGL config.
 
void registerTouchPoint (DefaultQnxInputEventContext::TouchPointContainer &touchPoints, const QnxEvent &event, TouchPointState state)
 Registers a touch point for use in the next touch event.
 
KZ_NO_DISCARD PointerButton translateQnxPointerButtonsToKanzi (int qnxPointerButtons) noexcept
 Translates QNX pointer buttons to Kanzi pointer buttons.
 
void updateTouchPoints (DefaultQnxInputEventContext::TouchPointContainer &touchPoints)
 Updates the states of touch points in the provided container in preparation of the next touch event.
 

Variables

constexpr int QnxMouseButtonsBitMask
 Bitmask for QNX mouse button events.
 

Enumeration Type Documentation

◆ QnxPulseCode

QNX pulse codes.

Enumerator
Disconnect 
Input 

◆ QnxBufferCleanupStrategy

Enumerator that represents QNX buffer resource management strategy.

Since
Kanzi 4.0.0
Enumerator
CreateDestroy 

Used for creating and destroying buffers manually.

AcquireRelease 

Used for managing buffers provided by QnxStream for stream consumer.

None 

Used for buffers that are managed elsewhere.

Function Documentation

◆ queryScreenUsageFlags()

KZ_NO_DISCARD int kanzi::qnx::queryScreenUsageFlags ( const EGLDisplay & eglDisplay,
const EGLConfig & eglConfig )
noexcept

Queries the screen usage flags for the given display and EGL config.

Parameters
eglDisplayThe EGL display to use.
eglConfigThe EGL config to use.
Returns
The compatible screen usage flags. Zero for failure.
Since
Kanzi 4.0.0 renamed from tryGetScreenUsageFlags.

◆ chooseWindowFormat() [1/2]

KZ_NO_DISCARD int kanzi::qnx::chooseWindowFormat ( int bufferSize,
optional< int > alphaSize,
optional< int > paddingSize )
noexcept

Chooses a QNX window pixel format based on the specified criteria.

When several pixel formats match, this function prioritizes the format with the widest alpha channel and the widest padding size, in that order.

Parameters
bufferSizeThe number of bits per pixel, excluding inter-pixel padding.
alphaSizeThe exact size of the alpha channel in bits.
paddingSizeThe exact size of the inter-pixel padding in bits.
Returns
A window pixel format that matches the criteria.
Since
Kanzi 4.0.0

◆ chooseWindowFormat() [2/2]

KZ_NO_DISCARD int kanzi::qnx::chooseWindowFormat ( const EGLDisplay & eglDisplay,
const EGLConfig & eglConfig,
optional< int > paddingSize )
noexcept

Chooses a QNX window pixel format that matches a given EGL configuration.

When several pixel formats match, this function prioritizes the format with the widest alpha channel and the widest padding size, in that order.

Parameters
eglDisplayThe EGL display of the EGL configuration.
eglConfigThe EGL configuration to match.
paddingSizeThe exact size of the inter-pixel padding in bits.
Returns
A window pixel format that matches the EGL configuration.
Since
Kanzi 4.0.0

◆ registerTouchPoint()

void kanzi::qnx::registerTouchPoint ( DefaultQnxInputEventContext::TouchPointContainer & touchPoints,
const QnxEvent & event,
TouchPointState state )

Registers a touch point for use in the next touch event.

If a touch point with the same ID as the QNX event already exists in the container, the function overrides the existing touch point.

Parameters
touchPointsThe container holding all active touch points.
eventThe QNX event from which the function gets touch point information.
stateThe state of the touch point. For example, Pressed, Moved, Released.
Since
Kanzi 4.0.0

◆ composeTouchEvent()

UniqueEventPtr kanzi::qnx::composeTouchEvent ( const DefaultQnxInputEventContext::TouchPointContainer & touchPoints)

Composes a touch event from the given container of touch points.

This function determines the type of touch event based on the state of all provided touch points. It creates a list of cursors representing individual touch points and packages them into a touch event.

Parameters
touchPointsA container of touch points that the function uses to compose the touch event.
Returns
A unique pointer to the created touch event. If the container is empty, an empty unique pointer.
Since
Kanzi 4.0.0

◆ updateTouchPoints()

void kanzi::qnx::updateTouchPoints ( DefaultQnxInputEventContext::TouchPointContainer & touchPoints)

Updates the states of touch points in the provided container in preparation of the next touch event.

This method performs these main tasks:

  1. Removes touch points that are in the Released state.
  2. Sets the state of all remaining touch points to Stationary.
    Parameters
    touchPointsThe container holding all active touch points to update.
    Since
    Kanzi 4.0.0

◆ qnxKeyToLogicalKey()

KZ_NO_DISCARD kanzi::LogicalKey kanzi::qnx::qnxKeyToLogicalKey ( unsigned int qnxKey)
noexcept

Maps native QNX key to Kanzi logical key.

Parameters
qnxKeyThe QNX key to map.
Returns
Logical key.

◆ qnxKeyModifiersToLogicalKeyModifiers()

KZ_NO_DISCARD kanzi::KeyModifier kanzi::qnx::qnxKeyModifiersToLogicalKeyModifiers ( unsigned int qnxKeyModifiers)
noexcept

Maps native QNX key modifiers to Kanzi logical key modifiers.

Parameters
qnxKeyModifiersThe QNX key modifiers to map.
Returns
Logical key modifiers.

◆ translateQnxPointerButtonsToKanzi()

KZ_NO_DISCARD PointerButton kanzi::qnx::translateQnxPointerButtonsToKanzi ( int qnxPointerButtons)
noexcept

Translates QNX pointer buttons to Kanzi pointer buttons.

Parameters
qnxPointerButtonsQNX pointer buttons to translate.
Precondition
qnxPointerButtons must not be greater than the QNX pointer button bitmask.
Returns
Translated Kanzi pointer buttons.

◆ isKeyReleased()

bool kanzi::qnx::isKeyReleased ( int keyFlags)
noexcept

Tests if key is released for a keyboard event.

Parameters
keyFlagsScreen property flags.
Returns
True if released, otherwise false.

Variable Documentation

◆ QnxMouseButtonsBitMask

constexpr int kanzi::qnx::QnxMouseButtonsBitMask
constexpr

Bitmask for QNX mouse button events.