C
Qul::PlatformInterface Namespace
Qt Quick のUltraliteコアライブラリから、プラットフォームの実装で使用するためのインターフェースを提供します。詳細...
| Header: | #include <platforminterface/platforminterface.h> |
クラス
(since Qt Quick Ultralite (Platform) 1.8) struct | Allocator |
(since Qt Quick Ultralite (Platform) 1.8) class | Brush |
(since Qt Quick Ultralite (Platform) 2.12) class | DateTime |
(since Qt Quick Ultralite (Platform) 1.8) class | DefaultPathDataStroker |
(since Qt Quick Ultralite (Platform) 1.5) class | DrawingDevice |
(since Qt Quick Ultralite (Platform) 1.5) class | DrawingEngine |
(since Qt Quick Ultralite (Platform) 2.6) class | File |
(since Qt Quick Ultralite (Platform) 2.6) class | Filesystem |
(since Qt Quick Ultralite (Platform) 1.7) struct | GenericMatrix |
(since Qt Quick Ultralite (Platform) 2.7) class | GradientStop |
(since Qt Quick Ultralite (Platform) 2.7) class | GradientStops |
(since Qt Quick Ultralite (Platform) 2.7) class | ImageDecoder |
(since Qt Quick Ultralite (Platform) 1.7) class | LayerEngine |
(since Qt Quick Ultralite (Platform) 2.7) class | LinearGradient |
(since Qt Quick Ultralite (Platform) 1.9) class | MemoryAllocator |
(since Qt Quick Ultralite (Platform) 1.8) class | PathData |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataArcSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataCubicBezierSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataIterator |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataLargeClockWiseArcSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataLargeCounterClockWiseArcSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataLineSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataMoveSegment |
(since Qt Quick Ultralite (Platform) 1.9) class | PathDataPathSeparatorSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataQuadraticBezierSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataSmallClockWiseArcSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataSmallCounterClockWiseArcSegment |
(since Qt Quick Ultralite (Platform) 1.8) class | PathDataStroker |
(since Qt Quick Ultralite (Platform) 1.9) struct | PixelDataPointer |
(since Qt Quick Ultralite (Platform) 1.5) class | Point |
(since Qt Quick Ultralite (Platform) 1.5) class | PointF |
(since Qt Quick Ultralite (Platform) 1.5) class | Rect |
(since Qt Quick Ultralite (Platform) 1.5) class | RectF |
(since Qt Quick Ultralite (Platform) 1.5) struct | Rgba32 |
(since Qt Quick Ultralite (Platform) 1.5) class | Screen |
(since Qt Quick Ultralite (Platform) 1.5) class | Size |
(since Qt Quick Ultralite (Platform) 1.5) class | SizeF |
(since Qt Quick Ultralite (Platform) 1.8) struct | StrokeProperties |
(since Qt Quick Ultralite (Platform) 1.5) class | Texture |
(since Qt Quick Ultralite (Platform) 1.5) struct | TouchPoint |
(since Qt Quick Ultralite (Platform) 1.5) class | Transform |
型
| enum | GradientSpread { PadSpread, RepeatSpread, ReflectSpread } |
(since Qt Quick Ultralite (Platform) 1.5) enum | KeyEventType { KeyPressEvent, KeyReleaseEvent } |
(since Qt Quick Ultralite (Platform) 1.5) enum | KeyboardModifier { NoKeyboardModifier, ShiftKeyboardModifier, ControlKeyboardModifier, AltKeyboardModifier, MetaKeyboardModifier, …, GroupSwitchKeyboardModifier } |
(since Qt Quick Ultralite (Platform) 1.8) enum | LineCapStyle { FlatCap, RoundCap, SquareCap } |
(since Qt Quick Ultralite (Platform) 1.8) enum | LineJoinStyle { MiterJoin, RoundJoin, BevelJoin } |
(since Qt Quick Ultralite (Platform) 1.8) enum | PathFillRule { PathOddEvenFill, PathWindingFill } |
(since Qt Quick Ultralite (Platform) 1.8) enum | PathOptimizationHints { PathOptimizationHints_None, PathOptimizationHints_NotSelfIntersecting, PathOptimizationHints_NoOverlappingSubPaths } |
(since Qt Quick Ultralite 2.12) enum class | RenderHint { SafeRendering } |
(since Qt Quick Ultralite 2.12) | RenderHints |
(since Qt Quick Ultralite (Platform) 1.8) | Vector |
関数
(since Qt Quick Ultralite (Platform) 1.5) void | blendRectTiled(Qul::PlatformInterface::DrawingDevice *buffer, const Qul::PlatformInterface::Rect &rect, Qul::PlatformInterface::Rgba32 color, void (*finish)(), void (*invalidateCache)(void *, int)) |
(since Qt Quick Ultralite (Platform) 1.5) void | blendRectTiledAlphaMap(Qul::PlatformInterface::DrawingDevice *buffer, const Qul::PlatformInterface::Rect &rect, Qul::PlatformInterface::Rgba32 color, void (*finish)(), void (*invalidateCache)(void *, int)) |
| void | deviceLinkBytesReceived(const uint8_t *data, int size) |
(since Qt Quick Ultralite (Platform) 2.2) void | error(unsigned int lineNumber, QulError code, int param1 = 0, int param2 = 0, int param3 = 0) |
(since Qt Quick Ultralite (Platform) 2.7) void | generateGradientColorTable(const Qul::PlatformInterface::GradientStops &gradientStops, float opacity, Qul::PlatformInterface::Rgba32 *colorTable, int size, bool premultipliedAlpha) |
(since Qt Quick Ultralite (Platform) 1.5) void | handleKeyEvent(uint64_t timestamp, Qul::PlatformInterface::KeyEventType type, int key, uint32_t nativeScanCode = 0, unsigned int modifiers = NoKeyboardModifier, const char *textUtf8 = NULL, bool autoRepeat = false, uint32_t ucs4 = 0) |
(since Qt Quick Ultralite (Platform) 1.5) void | handleTouchCancelEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp) |
(since Qt Quick Ultralite (Platform) 1.5) void | handleTouchEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp, const Qul::PlatformInterface::TouchPoint *touchPoints, unsigned int numTouchPoints) |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeArgb32CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeArgb4444CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeBgr888CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeRgb16CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeRgb32CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeRgb332CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 2.9) void | initializeRgb888CpuFallbackDrawingEngine() |
(since Qt Quick Ultralite (Platform) 1.9) int | log(const char *format, ...) |
(since Qt Quick Ultralite (Platform) 1.8) void | pathArcToBeziers(Qul::PlatformInterface::cubicToPath func, void *data, float radiusX, float radiusY, float xAxisRotation, bool useLargeArc, bool clockwise, const Qul::PlatformInterface::PointF &source, const Qul::PlatformInterface::PointF &target) |
| void | qul_delete(T *t) |
| T * | qul_new() |
| T * | qul_new(Arg1 arg1) |
| T * | qul_new(Args &&... args) |
| T * | qul_new(Arg1 arg1, Arg2 arg2) |
| T * | qul_new(Arg1 arg1, Arg2 arg2, Arg3 arg3) |
| T * | qul_new(Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4) |
(since Qt Quick Ultralite (Platform) 2.2) QulErrorHandler * | setErrorHandler(QulErrorHandler *handler) |
(since Qt Quick Ultralite (Platform) 1.5) void | updateEngine(uint64_t timestamp) |
| bool | operator!=(const Qul::PlatformInterface::Rect &r1, const Qul::PlatformInterface::Rect &r2) |
| bool | operator!=(const Qul::PlatformInterface::RectF &r1, const Qul::PlatformInterface::RectF &r2) |
| Qul::PlatformInterface::GenericMatrix<M, N, T2> | operator*(T1 factor, const Qul::PlatformInterface::GenericMatrix<M, N, T2> &matrix) |
| Qul::PlatformInterface::GenericMatrix<M, N2, T> | operator*(const Qul::PlatformInterface::GenericMatrix<M, N1, T> &m1, const Qul::PlatformInterface::GenericMatrix<N1, N2, T> &m2) |
| Qul::PlatformInterface::GenericMatrix<M, N, T> | operator+(const Qul::PlatformInterface::GenericMatrix<M, N, T> &m1, const Qul::PlatformInterface::GenericMatrix<M, N, T> &m2) |
| bool | operator==(const Qul::PlatformInterface::Rect &r1, const Qul::PlatformInterface::Rect &r2) |
| bool | operator==(const Qul::PlatformInterface::RectF &r1, const Qul::PlatformInterface::RectF &r2) |
クラス
classAllocator
C++ 標準コンテナで使用するためのメモリアロケータ。詳細...
classBrush
DrawingEngine を使用して描画される図形の塗りつぶしパターンを表します。詳細...
classDateTime
DateTimeクラスは、データおよび時刻の値をミリ秒単位でネイティブに表現します。詳細...
classDefaultPathDataStroker
DefaultPathDataStroker は、PathDataStroker のデフォルトの実装を提供します。詳細...
classDrawingDevice
DrawingDevice クラスは、描画可能なデバイスを定義します。詳細...
classDrawingEngine
このクラスは、ブレンディング関数のための抽象インターフェースを提供します。詳細...
classFile
File クラスは、ファイルへのアクセスを実装するための抽象 API を提供します。詳細...
classFilesystem
Filesystemクラスは、カスタムファイルシステムを実装するための抽象APIを提供します。詳細...
classGenericMatrix
GenericMatrix クラスは、行列を表すテンプレートクラスです。詳細...
classGradientStop
グラデーション内の単一のグラデーションストップを表します。詳細...
classGradientStops
グラデーションの色の変化を定義するために使用される一連のストップポイントを表します。詳細...
classImageDecoder
ImageDecoder クラスは、カスタム画像デコーダを実装するための抽象 API を提供します。詳細...
classLayerEngine
このクラスは、ハードウェアレイヤーを管理するための抽象インターフェースを提供します。詳細...
classLinearGradient
Brush で使用される線形グラデーションを表します。詳細...
classMemoryAllocator
このクラスは、メモリ割り当てのための抽象インターフェースを提供します。詳細...
classPathData
このクラスは、ベクトルパスデータを表します。詳細...
classPathDataArcSegment
パスデータの円弧セグメントを表します。詳細...
classPathDataCubicBezierSegment
パスデータの3次ベジエセグメントを表します。詳細...
classPathDataIterator
パスデータセグメントを反復処理するための利便性クラスです。詳細...
classPathDataLargeClockWiseArcSegment
パスデータの大きな時計回りの円弧セグメントを表します。詳細...
classPathDataLargeCounterClockWiseArcSegment
パスデータの大きな反時計回りの円弧セグメントを表します。詳細...
classPathDataLineSegment
パスデータの線分を表します。詳細...
classPathDataMoveSegment
パスデータの移動セグメントを表します。詳細...
classPathDataPathSeparatorSegment
パスデータのパス区切りセグメントを表します。詳細...
classPathDataQuadraticBezierSegment
パスデータの2次ベジェセグメントを表します。詳細...
classPathDataSegment
Qul::PlatformInterface::PathData クラスの単一のパスデータセグメントを表します。詳細...
classPathDataSmallClockWiseArcSegment
パスデータの小さな時計回りの円弧セグメントを表します。詳細...
classPathDataSmallCounterClockWiseArcSegment
パスデータの反時計回りの小さな円弧セグメントを表します。詳細...
classPathDataStroker
PathDataStrokerは、図形のストローク表現を生成します。詳細...
classPixelDataPointer
ピクセルデータの正確な(ビットパーフェクトな)位置に関する情報を含む構造体です。詳細...
classPoint
Point クラスは、整数精度を用いて平面上の点を定義します。詳細...
classPointF
PointFクラスは、浮動小数点精度を用いて平面上の点を定義します。点はx座標とy座標によって指定され、これらはx()およびy()関数を使用してアクセスできます。点の座標は、精度を確保するために浮動小数点数で指定されます。isNull() 関数は、x と y の両方が 0.0 に設定されている場合、true を返します。座標は、setX() およびsetY() 関数を使用して設定(または変更)できます。あるいは、座標への参照を返す(直接操作を可能にする)rx() およびry() 関数を使用することもできます。詳細...
classRect
Rectクラスは、整数精度を用いて平面上の矩形を定義します。詳細...
classRectF
RectFクラスは、浮動小数点精度を用いて平面上の長方形を定義します。詳細...
classRgba32
Rgba32 クラスは、RGBA カラーを格納するための領域を提供します。詳細...
classScreen
Screen クラスは、ピクセル単位での表示サイズに関する情報を保持します。詳細...
classSize
Sizeクラスは、整数ポイント精度を用いて2次元オブジェクトのサイズを定義します。詳細...
classSizeF
SizeF クラスは、浮動小数点精度を用いて 2 次元オブジェクトのサイズを定義します。詳細...
classStrokeProperties
パスのストロークプロパティを指定する構造体です。詳細...
classTexture
テクスチャに関する情報を格納するクラスです。詳細...
classTouchPoint
単一のタッチポイントを表します。詳細...
classTransform
Transformクラスは、座標系の2次元変換を指定します。詳細...
型に関するドキュメント
enum PlatformInterface::GradientSpread
サポートされているさまざまなグラデーションの広がりを定義します。
| 定数 | 値 | 説明 |
|---|---|---|
Qul::PlatformInterface::PadSpread | 0 | その領域は、最も近いストップカラーで塗りつぶされます。これがデフォルトです。 |
Qul::PlatformInterface::RepeatSpread | 1 | グラデーションは、グラデーション領域の外側でも繰り返されます。 |
Qul::PlatformInterface::ReflectSpread | 2 | グラデーション領域の外側で、グラデーションが反転表示されます。 |
[since Qt Quick Ultralite (Platform) 1.5] enum KeyEventType
発生しうるキーイベントの種類を表す列挙型。
| 定数 | 値 | 説明 |
|---|---|---|
KeyPressEvent | 0 | キー押下イベントを表します |
KeyReleaseEvent | 1 | キーの離しイベントを表します |
この列挙型は、Qt Quick Ultralite (Platform) 1.5 で導入されました。
[since Qt Quick Ultralite (Platform) 1.5] enum KeyboardModifier
| 定数 | 値 | 説明 |
|---|---|---|
NoKeyboardModifier | 0x00000000 | 修飾キーが押されていない |
ShiftKeyboardModifier | 0x02000000 | キーボードのShiftキーが押されている |
ControlKeyboardModifier | 0x04000000 | キーボードのCtrlキーが押されている |
AltKeyboardModifier | 0x08000000 | キーボードの Alt キーが押されている |
MetaKeyboardModifier | 0x10000000 | キーボードのMetaキーが押されている |
KeypadKeyboardModifier | 0x20000000 | テンキーのボタンが押された |
GroupSwitchKeyboardModifier | 0x40000000 | キーボードの Mode_switch キーが押されました。 |
この列挙型は、Qt Quick Ultralite (Platform) 1.5で導入されました。
[since Qt Quick Ultralite (Platform) 1.8] enum LineCapStyle
この列挙型は、Qul::PlatformInterface::DrawingEngine を使用して描画できる、サポートされている線の先端スタイルを定義します。
| 定数 | 定数値 | 説明 |
|---|---|---|
FlatCap | 0 | 線の端からはみ出さない、正方形の線の端。 |
RoundCap | 1 | 半径が線の幅の半分に等しい、丸みを帯びた線の端。 |
SquareCap | 2 | 線の端から線の幅の半分だけ突き出た角のある線の端。 |
この列挙型は、Qt Quick Ultralite (Platform) 1.8で導入されました。
[since Qt Quick Ultralite (Platform) 1.8] enum LineJoinStyle
この列挙型は、Qul::PlatformInterface::DrawingEngine を使用して描画できる、サポートされている線の結合スタイルを定義します。
| 定数 | 定数 | 説明 |
|---|---|---|
MiterJoin | 0 | 線の外縁が角度を成すように延長され、その領域が塗りつぶされます。 |
RoundJoin | 1 | 2 本の線の間の円弧が塗りつぶされます。 |
BevelJoin | 2 | 2 本の線の間にある三角形の切り欠き部分が塗りつぶされます。 |
この列挙型は、Qt Quick Ultralite (Platform) 1.8 で導入されました。
[since Qt Quick Ultralite (Platform) 1.8] enum PlatformInterface::PathFillRule
この列挙型は、パスの埋め込み方法を定義します。
| 定数 | 値 | 説明 |
|---|---|---|
Qul::PlatformInterface::PathOddEvenFill | 0 | 領域が「奇数・偶数塗りつぶし」ルールを使用して塗りつぶされることを指定します。このルールでは、点が図形の内部にあるかどうかは、次の方法で判定されます。 その点から図形の外側の位置まで水平線を引いて、交点の数を数えます。交点の数が奇数であれば、その点は図形の内側にあります。このモードがデフォルトです。 |
Qul::PlatformInterface::PathWindingFill | 1 | この領域が「非ゼロ巻き数」ルールを使用して塗りつぶされることを指定します。このルールでは、点が図形の内部にあるかどうかは、以下の方法で判定されます。その点から図形の外側の位置まで水平線を引きます。各交点における線の方向が上向きか下向きかを判定します。 巻き数は、各交点の方向を合計することで決定されます。その数値が 0 以外の場合、その点は図形の内部にあります。この塗りつぶしモードは、ほとんどの場合、閉じた図形の交点として考えることもできます。 |
この列挙型は、Qt Quick Ultralite (Platform) 1.8で導入されました。
[since Qt Quick Ultralite (Platform) 1.8] enum PathOptimizationHints
この列挙型は、パスの最適化に関するヒントを定義します。
| 定数 | 値 | 説明 |
|---|---|---|
PathOptimizationHints_None | 0 | パス最適化のヒントはありません。 |
PathOptimizationHints_NotSelfIntersecting | 1 | パスには自己交差する線分が含まれていません。 |
PathOptimizationHints_NoOverlappingSubPaths | 2 | パスには、重複するサブパスが含まれていません。 |
この列挙型は、Qt Quick Ultralite (Platform) 1.8 で導入されました。
[since Qt Quick Ultralite 2.12] enum class PlatformInterface::RenderHint
この列挙型は、利用可能なすべてのレンダリングヒントを指定します。
| 定数 | 値 | 説明 |
|---|---|---|
Qul::PlatformInterface::RenderHint::SafeRendering | (1 << 0) | 安全な項目のレンダリングです。DrawingEngine の実装では、出力がfallbackDrawingEngine によるレンダリングと一致することを保証する必要があります。 |
この列挙型は、Qt Quick Ultralite 2.12 で導入されました。
[since Qt Quick Ultralite 2.12] PlatformInterface::RenderHints
RenderHint の値のセットを含むflag オブジェクト。
このtypedefは、Qt Quick Ultralite 2.12で導入されました。
[alias, since Qt Quick Ultralite (Platform) 1.8] template <typename T> PlatformInterface::Vector
Qul::Platform::qul_malloc およびQul::Platform::qul_free をそれぞれ使用してメモリの割り当てと解放を行う、std::vector のテンプレート特化形です。
C++11以降のバージョンでのみ利用可能です。
この typedef は、Qt Quick Ultralite (Platform) 1.8 で導入されました。
関数のドキュメント
[since Qt Quick Ultralite (Platform) 1.5] void blendRectTiled(Qul::PlatformInterface::DrawingDevice *buffer, const Qul::PlatformInterface::Rect &rect, Qul::PlatformInterface::Rgba32 color, void (*finish)(), void (*invalidateCache)(void *, int))
色を直接ブレンドする機能を持たない2Dアクセラレータ向けの回避策。
color をrect にブレンドします。これには、ソースカラーで適切な大きさのバッファを塗りつぶし、そのバッファをソースとして使用します。出力矩形全体をタイル状にカバーするために、複数回の呼び出しを行う場合があります。
buffer は、ブレンド先の描画デバイスです。finish は、ブレンド操作の終了時に呼び出されます。非同期のブレンド操作を待機するために使用できます。必要ない場合は、NULL を指定してください。invalidateCache は、割り当てられたタイルメモリのキャッシュを無効化するために呼び出されます。必要ない場合は、NULL を指定してください。
この関数は、Qt Quick Ultralite (Platform) 1.5 で導入されました。
[since Qt Quick Ultralite (Platform) 1.5] void blendRectTiledAlphaMap(Qul::PlatformInterface::DrawingDevice *buffer, const Qul::PlatformInterface::Rect &rect, Qul::PlatformInterface::Rgba32 color, void (*finish)(), void (*invalidateCache)(void *, int))
色を直接ブレンドする機能を持たない2Dアクセラレータ向けの回避策。
blendRectTiled と同様ですが、DrawingEngine::blendAlphaMap を使用します
アルファマップのブレンドがハードウェアアクセラレーションされる場合に有用です。ARGB32のブレンドを行う必要がないため、帯域幅を多少節約できます。
color をrect にブレンドします。これには、ソースカラーで適切な大きさのバッファを埋め、そのバッファをソースとして使用します。出力矩形全体をタイル状にカバーするために、複数回の呼び出しが行われる場合があります。
buffer は、ブレンド先の描画デバイスです。ブレンド操作の終了時にfinish が呼び出されます。非同期のブレンド操作を待機するために使用できます。不要な場合は、NULL を指定する必要があります。invalidateCache が呼び出され、割り当てられたタイルメモリのキャッシュを無効化します。不要な場合は、NULL を指定する必要があります。
この関数は、Qt Quick のUltralite (Platform) 1.5で導入されました。
void PlatformInterface::deviceLinkBytesReceived(const uint8_t *data, int size)
シリアルポートで受信したデータをデコード処理へと渡します。
この関数は、ホストから文字を受信した際に、シリアルポートの受信関数によって呼び出される必要があります。data は受信データ、size はその長さを表します。この関数は、データをQul::Platform::DeviceLink::charsReceived に転送します。
「DeviceLink通信の移植」も参照してください 。
[since Qt Quick Ultralite (Platform) 2.2] void error(unsigned int lineNumber, QulError code, int param1 = 0, int param2 = 0, int param3 = 0)
エラーメッセージをデフォルトまたはカスタムのハンドラに報告します。
デフォルトのエラーハンドラは、エラーcode 、lineNumber 、および追加のparam1 、param2 、param3 をQul::Platform::PlatformContext::consoleWrite に出力します。
デフォルトのハンドラは、エラーメッセージを出力した後、プログラムを停止し、デバッグ用のバックトレースを保存するために無限ループに入ります。
Qul::setErrorHandler を使用してカスタムエラーハンドラが設定されている場合は、そのハンドラを呼び出します。
この関数は、Qt Quick Ultralite (Platform) 2.2 で導入されました。
「 エラー処理」および Qt Quick Ultralite error codes、および「QUL_ASSERT 」も参照してください。
[since Qt Quick Ultralite (Platform) 2.7] void generateGradientColorTable(const Qul::PlatformInterface::GradientStops &gradientStops, float opacity, Qul::PlatformInterface::Rgba32 *colorTable, int size, bool premultipliedAlpha)
グラデーションストップからグラデーションカラーテーブルを生成します。
指定されたgradientStops および不透明度値opacity に基づいて、グラデーションカラーテーブルを生成します。
colorTable パラメータはカラーテーブルを指し、size はカラーテーブルのエントリ数を指定します。
premultipliedAlpha パラメータは、出力データにアルファ値を事前に乗算するかどうかを指定します。
この関数は、Qt Quick Ultralite (Platform) 2.7で導入されました。
[since Qt Quick Ultralite (Platform) 1.5] void handleKeyEvent(uint64_t timestamp, Qul::PlatformInterface::KeyEventType type, int key, uint32_t nativeScanCode = 0, unsigned int modifiers = NoKeyboardModifier, const char *textUtf8 = NULL, bool autoRepeat = false, uint32_t ucs4 = 0)
主要なイベントを処理する
プラットフォーム層から受信したキーイベントは、この関数を通じてコアエンジンに渡す必要があります。timestamp は、イベントが発生した時刻です。 これは通常、プラットフォームのネイティブタイムスタンプ関数から読み取られた時刻です。type は、これがキー押下イベントかキー離しイベントかを指定します。key は、Qul::PlatformInterface::Key列挙型の値に基づく、実際のキー識別子です。nativeScanCode はネイティブのスキャンコード識別子であり、プラットフォーム固有のカスタムキーを扱う際に、キー値Qul::Key_unknown と組み合わせて使用すると便利です。modifiers は、Qul::PlatformInterface::KeyModifier の値を論理和(OR)で組み合わせることで、キーイベント発生時にどのキー修飾キーが押されているかを指定します。
textUtf8 は未使用であり、次回のメジャーリリースで削除される予定です。
autoRepeat これは、そのキーが自動リピートキーであるかどうかを指定します。イベントが最初のキー押下によるものである場合は、false にする必要があります。
ucs4 は、キーが生成するテキストの ucs4 表現であり、さまざまな国際キーボードのサポートや文字の大文字・小文字の区別において有用です。コアエンジンはキーボードの状態を保持しないことに注意してください。現在アクティブな修飾キーの状態を追跡し、それに基づいて適切な ucs4 値を選択するのは、プラットフォーム統合の役割です。 コントロールキーの場合、または完全なテキスト入力サポートを必要としない場合は、NULLのままにしておく必要があります(その場合、QMLに送信されるキーイベントのtextプロパティは空になりますが、key およびnativeScanCode の値に基づいてアクションを選択することは依然として可能です)。
この関数は、Qt Quick Ultralite (Platform) 1.5 で導入されました。
Qul::Platform::PlatformContext::currentTimestampも参照してください 。
[since Qt Quick Ultralite (Platform) 1.5] void handleTouchCancelEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp)
タッチイベントをキャンセルします
screen のタッチイベントをキャンセルします。timestamp はイベントが発生した時刻です。これは通常、プラットフォームのネイティブタイムスタンプ関数から読み取られた時刻です。screen がNULL の場合、プラットフォームのプライマリ画面が使用されます。
この関数は、Qt Quick Ultralite (Platform) 1.5 で導入されました。
Qul::Platform::PlatformContext::currentTimestamp およびQul::Platform::PlatformContext::availableScreensも参照してください 。
[since Qt Quick Ultralite (Platform) 1.5] void handleTouchEvent(Qul::PlatformInterface::Screen *screen, uint64_t timestamp, const Qul::PlatformInterface::TouchPoint *touchPoints, unsigned int numTouchPoints)
タッチイベントを処理する
プラットフォーム層から受信したタッチイベントは、この関数を通じてコアエンジンに渡す必要があります。screen は、タッチイベントが発生した画面です。timestamp は、イベントが発生した時刻です。これは通常、プラットフォームのネイティブタイムスタンプ関数から読み取られた時刻です。touchPoints およびnumTouchPoints には、現在アクティブなタッチポイントのリストが含まれています。 タッチポイントの所有権は呼び出し元関数に残ります。screen がNULL の場合、プラットフォームのプライマリ画面が使用されます。
この関数は、Qt Quick Ultralite (Platform) 1.5 で導入されました。
Qul::Platform::PlatformContext::currentTimestamp およびQul::Platform::PlatformContext::availableScreensも参照してください 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeArgb32CpuFallbackDrawingEngine()
ARGB32 形式での 32 BPP レンダリング用に、Qt Quick Ultralite を初期化します。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用されない場合は破棄することができます。
この関数は、ARGB32 形式の 32 BPP 描画デバイス向けにフォールバックレンダラーを設定します。ARGB32 CPU フォールバック描画エンジンは、RGB32 CPU フォールバック描画エンジンと同じ描画エンジンおよびブレンド関数を使用します。
この関数は、Qt Quick Ultralite (Platform) 2.9で導入されました。
関連項目: Qul::PlatformInterface::initializeRgb332CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb16CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb4444CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeRgb32CpuFallbackDrawingEngine 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeArgb4444CpuFallbackDrawingEngine()
ARGB4444形式での16 BPPレンダリング用に、Qt Quick Ultraliteを初期化します。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用されない場合は破棄することができます。
この関数は、ARGB4444形式の16 BPP描画デバイス用にフォールバックレンダラーを設定します。
この関数は、Qt Quick Ultralite (Platform) 2.9 で導入されました。
関連項目: Qul::PlatformInterface::initializeRgb332CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb16CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb32CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeRgb32CpuFallbackDrawingEngine 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeBgr888CpuFallbackDrawingEngine()
Qt Quick Ultralite を初期化し、BGR888 形式での 24 BPP レンダリングに対応させます。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用されない場合は破棄することができます。
この関数は、BGR888 形式の 24 BPP 描画デバイス用にフォールバックレンダラーを設定します。RGB888 形式の場合は、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine を使用してください。
この関数は、Qt Quick Ultralite (Platform) 2.9 で導入されました。
Qul::PlatformInterface::initializeRgb332CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb16CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb4444CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb32CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeRgb32CpuFallbackDrawingEngineも参照してください 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeRgb16CpuFallbackDrawingEngine()
Qt Quick Ultralite を、RGB565 形式での 16 BPP レンダリング用に初期化します。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用されない場合は破棄することができます。
この関数は、RGB565 形式の 16 BPP 描画デバイス用にフォールバック・レンダラーを設定します。
この関数は、Qt Quick Ultralite (Platform) 2.9 で導入されました。
関連項目: Qul::PlatformInterface::initializeRgb332CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb4444CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb32CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeRgb32CpuFallbackDrawingEngine 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeRgb32CpuFallbackDrawingEngine()
Qt Quick Ultralite を、RGB32 形式での 32 BPP レンダリング用に初期化します。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用されない場合は破棄することができます。
この関数は、RGB32 形式の 32 BPP 描画デバイス用のフォールバックレンダラーを設定します。RGB32 CPU フォールバック描画エンジンは、ARGB32 CPU フォールバック描画エンジンと同じ描画エンジンおよびブレンド関数を使用します。
この関数は、Qt Quick Ultralite (Platform) 2.9 で導入されました。
関連項目: Qul::PlatformInterface::initializeRgb332CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb16CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb4444CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeArgb32CpuFallbackDrawingEngine 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeRgb332CpuFallbackDrawingEngine()
Qt Quick Ultralite を、RGB332 形式での 8 BPP レンダリング用に初期化します。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用されない場合は破棄することができます。
この関数は、RGB332 形式の 8 BPP 描画デバイス用にフォールバック・レンダラーを設定します。
この関数は、Qt Quick Ultralite (Platform) 2.9 で導入されました。
関連項目: Qul::PlatformInterface::initializeRgb16CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb4444CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb32CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeRgb32CpuFallbackDrawingEngine 。
[since Qt Quick Ultralite (Platform) 2.9] void initializeRgb888CpuFallbackDrawingEngine()
Qt Quick Ultralite を、RGB888 形式での 24 BPP レンダリング用に初期化します。
デフォルトでは、Qt Quick Ultraliteはフォールバックレンダラーを参照しないため、使用しない場合は破棄することができます。
この関数は、RGB888 形式の 24 BPP 描画デバイス用にフォールバックレンダラーを設定します。BGR888 形式の場合は、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine を使用してください。
この関数は、Qt Quick Ultralite (Platform) 2.9 で導入されました。
Qul::PlatformInterface::initializeRgb332CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeRgb16CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb4444CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeBgr888CpuFallbackDrawingEngine 、Qul::PlatformInterface::initializeArgb32CpuFallbackDrawingEngine 、およびQul::PlatformInterface::initializeRgb32CpuFallbackDrawingEngineも参照してください 。
[since Qt Quick Ultralite (Platform) 1.9] int log(const char *format, ...)
... で定義された引数を、format 文字列に従って出力します。出力はQul::Platform::PlatformContext::consoleWrite に書き込まれます。
format は、データの解釈方法を指定する、ヌル終端されたマルチバイト文字列へのポインタです。
... には、出力するデータを指定する引数が含まれます。
正常に書き込まれた文字数を返します。エラーが発生した場合は負の値を返します。
注:フォーマット 文字列の解析は、C++11のstd::printf と同等です。
この関数は、Qt Quick Ultralite (Platform) 1.9 で導入されました。
Qul::Platform::PlatformContext::consoleWrite()も参照してください 。
[since Qt Quick Ultralite (Platform) 1.8] void pathArcToBeziers(Qul::PlatformInterface::cubicToPath func, void *data, float radiusX, float radiusY, float xAxisRotation, bool useLargeArc, bool clockwise, const Qul::PlatformInterface::PointF &source, const Qul::PlatformInterface::PointF &target)
円弧のセグメントを一連のベジェ曲線に変換します。
指定されたコールバック関数 `func ` は、3次ベジェ曲線のパラメータを引数として、最大4回呼び出されます。また、data ハンドルもコールバック関数の最初の引数として渡され、必要なコンテキスト情報を提供するのに使用できます。
radiusX 、radiusY 、xAxisRotation 、useLargeArc 、clockwise 、source 、およびtarget パラメータは、SVG 標準に従って円弧セグメントを定義します。
この関数は、Qt Quick Ultralite (Platform) 1.8 で導入されました。
Qul::PlatformInterface::PathDataArcSegmentも参照してください 。
template <typename T> void PlatformInterface::qul_delete(T *t)
ある型のメモリを解放し、そのデストラクタを呼び出すためのヘルパー関数です。
t は、以前にqul_new で割り当てられたその型へのポインタです。
template <typename T> T *PlatformInterface::qul_new()
型 `T ` に対して、Qul::Platform::qul_malloc の実装を用いてメモリを割り当て、そのコンストラクタを呼び出すヘルパー関数です。
この関数は、C++03 以前でのみ利用可能です。
template <typename T, typename Arg1> T *PlatformInterface::qul_new(Arg1 arg1)
型 `T ` に対して、Qul::Platform::qul_malloc の実装を用いてメモリを割り当て、引数を指定してそのコンストラクタを呼び出すヘルパー関数です。
この関数は、C++03 以前でのみ利用可能です。
template <typename T, typename... Args> T *PlatformInterface::qul_new(Args &&... args)
型 `T ` に対して、Qul::Platform::qul_malloc 実装を用いてメモリを割り当て、args でそのコンストラクタを呼び出すヘルパー関数です。
この関数は、C++11以降でのみ利用可能です。
template < typename T, typename Arg1, typename Arg2 > T *PlatformInterface::qul_new(Arg1 arg1, Arg2 arg2)
型 `T ` に対して、Qul::Platform::qul_malloc の実装を用いてメモリを割り当て、引数を指定してそのコンストラクタを呼び出すヘルパー関数です。
この関数は、C++03 以前でのみ利用可能です。
template < typename T, typename Arg1, typename Arg2, typename Arg3 > T *PlatformInterface::qul_new(Arg1 arg1, Arg2 arg2, Arg3 arg3)
型 `T ` に対して、Qul::Platform::qul_malloc の実装を用いてメモリを割り当て、引数を指定してそのコンストラクタを呼び出すヘルパー関数です。
この関数は、C++03 以前でのみ利用可能です。
template < typename T, typename Arg1, typename Arg2, typename Arg3, typename Arg4 > T *PlatformInterface::qul_new(Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4)
型 `T ` に対して、Qul::Platform::qul_malloc の実装を用いてメモリを割り当て、引数を指定してそのコンストラクタを呼び出すヘルパー関数です。
この関数は、C++03 以前でのみ利用可能です。
[since Qt Quick Ultralite (Platform) 2.2] QulErrorHandler *setErrorHandler(QulErrorHandler *handler)
エラーハンドラをhandler に設定します。
NULL を引数として渡すと、デフォルトのエラー処理が復元されます。
以前のエラーハンドラへのポインタを返します。デフォルトのエラーハンドラが使用されている場合は、NULL が返されます。
呼び出し元Qul::setErrorHandler
この関数は、Qt Quick Ultralite (Platform) 2.2 で導入されました。
「エラー処理」も参照してください 。
[since Qt Quick Ultralite (Platform) 1.5] void updateEngine(uint64_t timestamp)
Qt Quick Ultraliteエンジンの更新
Qt Quick Ultralite エンジンは、タイマーや表示アニメーションを最新の状態に保つために、定期的に更新する必要があります。
timestamp パラメータは、Qul::Platform::PlatformContext::currentTimestamp()によって報告される、現在のプラットフォームのタイムスタンプ(ミリ秒単位)です。
この例は、メインループからエンジンの更新を行うための典型的なセクションを示しています。
static uint64_t nextUpdate = 0;
void scheduleEngineUpdate(uint64_t timeout) {
nextUpdate = timeout;
}
while_loop {
const uint64_t timestamp = Qul::Platform::PlatformContext::currentTimestamp();
if (timestamp >= nextUpdate) {
Qul::PlatformInterface::updateEngine(timestamp);
} else {
// Device could sleep until time in 'nextUpdate'.
enterSleepMode(nextUpdate);
}
}コールバック `Qul::Platform::PlatformContext::scheduleEngineUpdate ` は、Qt Quick Ultralite エンジンが次に `Qul::PlatformInterface::updateEngine` を通じて更新を必要とするタイミングを、プラットフォーム実装に通知します。
この関数は、Qt Quick Ultralite (Platform) 1.5 で導入されました。
Qul::Platform::PlatformContext::scheduleEngineUpdate およびQul::Platform::PlatformContext::currentTimestampも参照してください 。
bool operator!=(const Qul::PlatformInterface::Rect &r1, const Qul::PlatformInterface::Rect &r2)
矩形r1 とr2 が異なる場合はtrue を返し、そうでない場合はfalse を返します。
bool operator!=(const Qul::PlatformInterface::RectF &r1, const Qul::PlatformInterface::RectF &r2)
矩形r1 とr2 が異なる場合はtrue を返し、そうでない場合はfalse を返します。
template < int M, int N, typename T1, typename T2 > Qul::PlatformInterface::GenericMatrix<M, N, T2> operator*(T1 factor, const Qul::PlatformInterface::GenericMatrix<M, N, T2> &matrix)
matrix のすべての要素とスカラーfactor を乗算した結果を返します。
template < int M, int N1, int N2, typename T > Qul::PlatformInterface::GenericMatrix<M, N2, T> operator*(const Qul::PlatformInterface::GenericMatrix<M, N1, T> &m1, const Qul::PlatformInterface::GenericMatrix<N1, N2, T> &m2)
m1 とm2 のすべての要素を掛け合わせた結果を返します。
template < int M, int N, typename T > Qul::PlatformInterface::GenericMatrix<M, N, T> operator+(const Qul::PlatformInterface::GenericMatrix<M, N, T> &m1, const Qul::PlatformInterface::GenericMatrix<M, N, T> &m2)
m1 とm2 の和を返します。
bool operator==(const Qul::PlatformInterface::Rect &r1, const Qul::PlatformInterface::Rect &r2)
矩形r1 とr2 が等しい場合はtrue を返し、そうでない場合はfalse を返します。
bool operator==(const Qul::PlatformInterface::RectF &r1, const Qul::PlatformInterface::RectF &r2)
矩形r1 とr2 が等しい場合はtrue を返し、そうでない場合はfalse を返します。
特定の Qt ライセンスの下で利用可能です。
詳細はこちらをご覧ください。