2.2.7.85 MILCMD_CACHEDVISUALIMAGE

The MILCMD_CACHEDVISUALIMAGE message updates all properties of a resource of type TYPE_CACHEDVISUALIMAGE. This resource represents a bitmap that contains a rasterization of a visual tree. The rasterization is cached from frame to frame, such that if the contained visual tree does not change then it does not need to be traversed in subsequent frames.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

messageSize

controlCode

targetResource

Viewbox (32 bytes)

...

...

RealizationSize (16 bytes)

...

...

hViewboxAnimations

hRealizationSizeAnimations

hVisual

ViewboxUnits

unused0

unused1

unused2

messageSize (4 bytes): A 32-bit unsigned integer. The size of this message in bytes. The value of this field MUST be set to 0x00000058.

controlCode (4 bytes): A 32-bit unsigned integer containing the control code for this message. The value of this field MUST be equal to 0x00000083.

targetResource (4 bytes): A 32-bit unsigned integer. This field MUST be set to a valid resource handle referencing a resource of type TYPE_CACHEDVISUALIMAGE. This handle identifies the resource that is the target for this message.

Viewbox (32 bytes): A MilRect structure. The position and dimensions of the content in this cached visual image.

RealizationSize (16 bytes): A MilSize structure. The size in pixels of the intermediate render target used to realize this cached visual image. If this value is zero, the size of the Viewbox is used instead.

hViewboxAnimations (4 bytes): A 32-bit unsigned integer. The value of this field MUST either be set to zero or set to a valid resource handle referencing a resource of type TYPE_RECTRESOURCE. If the value of this field is nonzero, the referenced resource animates the value of the Viewbox property; otherwise, the property is not animated.

hRealizationSizeAnimations (4 bytes): A 32-bit unsigned integer. The value of this field MUST either be set to zero or set to a valid resource handle referencing a resource of type TYPE_SIZERESOURCE. If the value of this field is nonzero, the referenced resource animates the value of the RealizationSize property; otherwise, the property is not animated.

hVisual (4 bytes): A 32-bit unsigned integer. The value of this field MUST either be set to zero or set to a valid resource handle referencing a resource of type TYPE_VISUAL or TYPE_WINDOWNODE. This resource represents the root of the subtree whose rasterization is cached. If the value of this field is zero, rendering MUST NOT be done into the cached visual image.

ViewboxUnits (4 bytes): A MilBrushMappingMode enumeration. Specifies whether the Viewbox field value is relative to the bounding box of the tile brush contents or whether the value is absolute.

unused0 (4 bytes): A 32-bit unsigned integer. The value of this field is unused and MUST be set to zero.

unused1 (4 bytes): A 32-bit unsigned integer. The value of this field is unused and MUST be set to zero.

unused2 (4 bytes): A 32-bit unsigned integer. The value of this field is unused and MUST be set to zero.