このページでは

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::Bpp801 ピクセルあたり 8 ビットの色深度、アルファチャンネルなし
Qul::PlatformInterface::LayerEngine::Bpp1611 ピクセルあたり 16 ビットの色深度、アルファチャンネルなし
Qul::PlatformInterface::LayerEngine::Bpp16Alpha21ピクセルあたり16ビットの色深度、アルファチャンネルあり
Qul::PlatformInterface::LayerEngine::Bpp2431ピクセルあたり24ビットの色深度、アルファチャンネルなし
Qul::PlatformInterface::LayerEngine::Bpp3241ピクセルあたり32ビットの色深度、アルファチャンネルなし
Qul::PlatformInterface::LayerEngine::Bpp32Alpha51ピクセルあたり32ビットの色深度、アルファチャンネルあり

enum LayerEngine::RenderingHints

そのレイヤーに対するレンダリング最適化のヒント。

これらのヒントは、プラットフォームのレイヤーエンジンによって、アプリケーションにとって最も最適な方法でレイヤーを設定するために使用されます。

取り得る値:

定数説明
Qul::PlatformInterface::LayerEngine::NoRenderingHint0レンダリングヒントが指定されていない
Qul::PlatformInterface::LayerEngine::OptimizeForSpeed1U << 0レイヤーは高速なレンダリング向けに最適化されています
Qul::PlatformInterface::LayerEngine::OptimizeForSize1U << 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順序、サイズ、色深度、およびスプライトレイヤーを有効にするかどうかを指定します。

関連項目: ItemLayerImageLayerupdateSpriteLayer 、および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ライセンスの下で利用可能です。
詳細はこちらをご覧ください。