C
Qul::PlatformInterface::LayerEngine Class
class Qul::PlatformInterface::LayerEngineこのクラスは、ハードウェア層を管理するための抽象インターフェースを提供します。詳細...
| Header: | #include <platforminterface/layerengine.h> |
| Since: | Qt Quick Ultralite (Platform) 1.7 |
パブリック型
| struct | ImageLayer |
| struct | ImageLayerProperties |
| struct | ItemLayer |
| struct | ItemLayerProperties |
| struct | LayerPropertiesBase |
| struct | SizedLayerPropertiesBase |
| struct | SpriteLayer |
| struct | SpriteLayerProperties |
| enum | ColorDepth { Bpp8, Bpp16, Bpp16Alpha, Bpp24, Bpp32, Bpp32Alpha } |
| enum | RenderingHints { NoRenderingHint, OptimizeForSpeed, OptimizeForSize } |
パブリック関数
| virtual Qul::PlatformInterface::LayerEngine::ImageLayer * | allocateImageLayer(const Qul::PlatformInterface::Screen *screen, const Qul::PlatformInterface::LayerEngine::ImageLayerProperties &properties, Qul::PlatformInterface::LayerEngine::SpriteLayer *spriteLayer = NULL) |
| virtual Qul::PlatformInterface::LayerEngine::ItemLayer * | allocateItemLayer(const Qul::PlatformInterface::Screen *screen, const Qul::PlatformInterface::LayerEngine::ItemLayerProperties &properties, Qul::PlatformInterface::LayerEngine::SpriteLayer *spriteLayer = NULL) |
| virtual Qul::PlatformInterface::LayerEngine::SpriteLayer * | allocateSpriteLayer(const Qul::PlatformInterface::Screen *screen, const Qul::PlatformInterface::LayerEngine::SpriteLayerProperties &properties) |
| virtual void | deallocateImageLayer(Qul::PlatformInterface::LayerEngine::ImageLayer *layer) |
| virtual void | deallocateItemLayer(Qul::PlatformInterface::LayerEngine::ItemLayer *layer) |
| virtual void | deallocateSpriteLayer(Qul::PlatformInterface::LayerEngine::SpriteLayer *layer) |
| virtual void | updateImageLayer(Qul::PlatformInterface::LayerEngine::ImageLayer *layer, const Qul::PlatformInterface::LayerEngine::ImageLayerProperties &properties) |
| virtual void | updateItemLayer(Qul::PlatformInterface::LayerEngine::ItemLayer *layer, const Qul::PlatformInterface::LayerEngine::ItemLayerProperties &properties) |
| virtual void | updateSpriteLayer(Qul::PlatformInterface::LayerEngine::SpriteLayer *layer, const Qul::PlatformInterface::LayerEngine::SpriteLayerProperties &properties) |
詳細な説明
このクラスのインスタンスを使用すると、ハードウェアレイヤーの割り当て、更新、および解放を行うことができます。ハードウェアレイヤーには、画像レイヤー、アイテムレイヤー、スプライトレイヤーの 3 種類があります。 イメージレイヤーは静的な画像コンテンツに使用され、アイテムレイヤーはDrawingEngine を使用して動的にレンダリングされるコンテンツに使用され、スプライトレイヤーは複数のイメージまたはアイテムのサブレイヤーを含むことができる集約レイヤーです。
レイヤーの位置や不透明度は個別に更新できます。また、レイヤーには任意の変換行列を適用することも可能です。
注: 特定の LayerEngine インスタンスが 、必ずしもこれらすべてのレイヤータイプや任意のトランスフォームをサポートしているとは限りません。
メンバ型のドキュメント
enum LayerEngine::ColorDepth
この列挙型は、レイヤーで使用される色深度と、アルファチャンネルを使用するかどうかを指定します。
注: 特定の色深度およびアルファチャンネルの設定に対して、どのピクセルフォーマットを使用するかは、プラットフォームによって 決定される場合があります。
| 定数 | 値 | 説明 |
|---|---|---|
Qul::PlatformInterface::LayerEngine::Bpp8 | 0 | 1 ピクセルあたり 8 ビットの色深度、アルファチャンネルなし |
Qul::PlatformInterface::LayerEngine::Bpp16 | 1 | 1 ピクセルあたり 16 ビットの色深度、アルファチャンネルなし |
Qul::PlatformInterface::LayerEngine::Bpp16Alpha | 2 | 1ピクセルあたり16ビットの色深度、アルファチャンネルあり |
Qul::PlatformInterface::LayerEngine::Bpp24 | 3 | 1ピクセルあたり24ビットの色深度、アルファチャンネルなし |
Qul::PlatformInterface::LayerEngine::Bpp32 | 4 | 1ピクセルあたり32ビットの色深度、アルファチャンネルなし |
Qul::PlatformInterface::LayerEngine::Bpp32Alpha | 5 | 1ピクセルあたり32ビットの色深度、アルファチャンネルあり |
enum LayerEngine::RenderingHints
そのレイヤーに対するレンダリング最適化のヒント。
これらのヒントは、プラットフォームのレイヤーエンジンによって、アプリケーションにとって最も最適な方法でレイヤーを設定するために使用されます。
取り得る値:
| 定数 | 値 | 説明 |
|---|---|---|
Qul::PlatformInterface::LayerEngine::NoRenderingHint | 0 | レンダリングヒントが指定されていない |
Qul::PlatformInterface::LayerEngine::OptimizeForSpeed | 1U << 0 | レイヤーは高速なレンダリング向けに最適化されています |
Qul::PlatformInterface::LayerEngine::OptimizeForSize | 1U << 1 | レイヤーは、メモリ使用量の低減に最適化されています(デフォルト) |
メンバ関数のドキュメント
[virtual] Qul::PlatformInterface::LayerEngine::ImageLayer *LayerEngine::allocateImageLayer(const Qul::PlatformInterface::Screen *screen, const Qul::PlatformInterface::LayerEngine::ImageLayerProperties &properties, Qul::PlatformInterface::LayerEngine::SpriteLayer *spriteLayer = NULL)
静止画コンテンツを表示するための画像レイヤーを割り当てます。
このメソッドは、指定されたscreen に対して画像レイヤーを割り当てます。このレイヤーは、特定のメモリアドレスから静的画像データを表示するために使用されます。指定されたproperties は、画像レイヤーの位置、Z順、変形、不透明度、画像ソース、および画像レイヤーを有効にするかどうかを指定します。
spriteLayer が設定されている場合、それは画像レイヤーが属すべきスプライトレイヤーを表します。スプライトレイヤーも、画像レイヤーと同じscreen 上で作成されたものとみなすことができます。
注:プラットフォームによっては 、スプライトレイヤー内のアイテムレイヤーおよび画像レイヤーが、すべてスプライトレイヤー自体と同じ色深度を使用する必要がある場合があります。
「 updateImageLayer 」および「deallocateImageLayer 」も参照してください 。
[virtual] Qul::PlatformInterface::LayerEngine::ItemLayer *LayerEngine::allocateItemLayer(const Qul::PlatformInterface::Screen *screen, const Qul::PlatformInterface::LayerEngine::ItemLayerProperties &properties, Qul::PlatformInterface::LayerEngine::SpriteLayer *spriteLayer = NULL)
動的コンテンツをレンダリングするためのアイテムレイヤーを割り当てます。
このメソッドは、指定されたscreen に対してアイテムレイヤーを割り当てます。このアイテムレイヤーは、動的コンテンツを表示するためにDrawingEngine を使用してレンダリングされます。指定されたproperties は、アイテムレイヤーの位置、Z順、サイズ、色深度、トランスフォーム、不透明度、およびアイテムレイヤーを有効にするかどうかを指定します。
spriteLayer が設定されている場合、それはアイテムレイヤーが属すべきスプライトレイヤーを表します。このスプライトレイヤーも、アイテムレイヤーと同じscreen 上で作成されたものとみなされます。
注:プラットフォームによっては 、スプライトレイヤー内のアイテムレイヤーおよび画像レイヤーが、すべてスプライトレイヤー自体と同じ色深度を使用する必要がある場合があります。
「 updateItemLayer 」および「deallocateItemLayer 」も参照してください 。
[virtual] Qul::PlatformInterface::LayerEngine::SpriteLayer *LayerEngine::allocateSpriteLayer(const Qul::PlatformInterface::Screen *screen, const Qul::PlatformInterface::LayerEngine::SpriteLayerProperties &properties)
スプライトを表示するためのスプライトレイヤーを割り当てます。
このメソッドは、指定されたscreen に対して、スプライトの表示に使用されるスプライトレイヤーを割り当てます。各スプライトの画像内容は、アイテムレイヤーまたは画像レイヤーのいずれかであるサブレイヤーによって提供されます。2つのスプライトが重なっている場合、最上層のスプライトのみが表示されることがあります。
指定されたproperties は、スプライトレイヤーの位置、Z順序、サイズ、色深度、およびスプライトレイヤーを有効にするかどうかを指定します。
関連項目: ItemLayer 、ImageLayer 、updateSpriteLayer 、およびdeallocateSpriteLayer 。
[virtual] void LayerEngine::deallocateImageLayer(Qul::PlatformInterface::LayerEngine::ImageLayer *layer)
画像レイヤーの割り当てを解除します。
このメソッドは、画像レイヤーの割り当てを解除し、そのレイヤーを表示不可にします。
このメソッドを呼び出した後、layer ポインタは無効になります。
「 allocateImageLayer 」および「updateImageLayer 」も参照してください 。
[virtual] void LayerEngine::deallocateItemLayer(Qul::PlatformInterface::LayerEngine::ItemLayer *layer)
アイテムレイヤーの割り当てを解除します。
このメソッドは、アイテムレイヤーの割り当てを解除し、そのレイヤーを表示不可にします。
このメソッドを呼び出した後、layer ポインタは無効になります。
「 allocateItemLayer 」および「updateItemLayer 」も参照してください 。
[virtual] void LayerEngine::deallocateSpriteLayer(Qul::PlatformInterface::LayerEngine::SpriteLayer *layer)
スプライトレイヤーの割り当てを解除します。
このメソッドは、スプライトレイヤーの割り当てを解除し、そのレイヤーを表示不可にします。
このメソッドを呼び出した後、layer ポインタは無効になります。
「 allocateSpriteLayer 」および「updateSpriteLayer 」も参照してください 。
[virtual] void LayerEngine::updateImageLayer(Qul::PlatformInterface::LayerEngine::ImageLayer *layer, const Qul::PlatformInterface::LayerEngine::ImageLayerProperties &properties)
画像レイヤーのプロパティを更新します。
このメソッドは、指定されたproperties を使用して、layer のプロパティを更新します。
properties は、画像レイヤーの位置、Z順序、変形、不透明度、画像ソース、および画像レイヤーを有効にするかどうかを指定します。
「allocateImageLayer」も参照してください 。
[virtual] void LayerEngine::updateItemLayer(Qul::PlatformInterface::LayerEngine::ItemLayer *layer, const Qul::PlatformInterface::LayerEngine::ItemLayerProperties &properties)
アイテムレイヤーのプロパティを更新します。
このメソッドは、指定されたproperties を使用して、layer のプロパティを更新します。
properties は、アイテムレイヤーの位置、Z順序、サイズ、色深度、変形、不透明度、およびアイテムレイヤーを有効にするかどうかを指定します。
「allocateItemLayer」も参照してください 。
[virtual] void LayerEngine::updateSpriteLayer(Qul::PlatformInterface::LayerEngine::SpriteLayer *layer, const Qul::PlatformInterface::LayerEngine::SpriteLayerProperties &properties)
スプライトレイヤーのプロパティを更新します。
このメソッドは、指定されたproperties を使用して、layer のプロパティを更新します。
properties は、スプライトレイヤーの位置、Z順序、サイズ、色深度、およびスプライトレイヤーを有効にするかどうかを指定します。
「allocateSpriteLayer」も参照してください 。
特定のQtライセンスの下で利用可能です。
詳細はこちらをご覧ください。