diff options
Diffstat (limited to 'include/hardware/hwcomposer.h')
-rw-r--r-- | include/hardware/hwcomposer.h | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/include/hardware/hwcomposer.h b/include/hardware/hwcomposer.h index 3dfb4fd..aa466b3 100644 --- a/include/hardware/hwcomposer.h +++ b/include/hardware/hwcomposer.h @@ -299,8 +299,29 @@ typedef struct hwc_layer_1 { */ uint8_t planeAlpha; - /* reserved for future use */ + /* Pad to 32 bits */ uint8_t _pad[3]; + + /* + * Availability: HWC_DEVICE_API_VERSION_1_5 + * + * This defines the region of the source buffer that has been + * modified since the last frame. + * + * If surfaceDamage.numRects > 0, then it may be assumed that any + * portion of the source buffer not covered by one of the rects has + * not been modified this frame. If surfaceDamage.numRects == 0, + * then the whole source buffer must be treated as if it had been + * modified. + * + * If the layer's contents are not modified relative to the prior + * prepare/set cycle, surfaceDamage will contain exactly one empty + * rect ([0, 0, 0, 0]). + * + * The damage rects are relative to the pre-transformed buffer, and + * their origin is the top-left corner. + */ + hwc_region_t surfaceDamage; }; }; @@ -309,13 +330,13 @@ typedef struct hwc_layer_1 { * For 64-bit mode, this struct is 120 bytes (and 8-byte aligned), and needs * to be padded as such to maintain binary compatibility. */ - uint8_t reserved[120 - 96]; + uint8_t reserved[120 - 112]; #else /* * For 32-bit mode, this struct is 96 bytes, and needs to be padded as such * to maintain binary compatibility. */ - uint8_t reserved[96 - 76]; + uint8_t reserved[96 - 84]; #endif } hwc_layer_1_t; |