1/* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16#ifndef OHOS_HDI_DISPLAY_COMPOSER_V1_0_DISPLAYCOMPOSERTYPE_H 17#define OHOS_HDI_DISPLAY_COMPOSER_V1_0_DISPLAYCOMPOSERTYPE_H 18 19#include <cstdbool> 20#include <cstdint> 21#include <string> 22#include <vector> 23#include "hdifd_parcelable.h" 24 25#ifndef HDI_BUFF_MAX_SIZE 26#define HDI_BUFF_MAX_SIZE (1024 * 200) 27#endif 28 29#ifndef HDI_CHECK_VALUE_RETURN 30#define HDI_CHECK_VALUE_RETURN(lv, compare, rv, ret) do { \ 31 if ((lv) compare (rv)) { \ 32 return ret; \ 33 } \ 34} while (false) 35#endif 36 37#ifndef HDI_CHECK_VALUE_RET_GOTO 38#define HDI_CHECK_VALUE_RET_GOTO(lv, compare, rv, ret, value, table) do { \ 39 if ((lv) compare (rv)) { \ 40 ret = value; \ 41 goto table; \ 42 } \ 43} while (false) 44#endif 45 46namespace OHOS { 47class MessageParcel; 48} 49 50namespace OHOS { 51namespace HDI { 52namespace Display { 53namespace Composer { 54namespace V1_0 { 55 56using namespace OHOS; 57using namespace OHOS::HDI::Display; 58 59enum DispCmd : int32_t { 60 REQUEST_CMD_PREPARE_DISPLAY_LAYERS = 64, 61 REQUEST_CMD_SET_DISPLAY_CLIENT_BUFFER = 65, 62 REQUEST_CMD_SET_DISPLAY_CLIENT_DAMAGE = 66, 63 REQUEST_CMD_COMMIT = 67, 64 REQUEST_CMD_SET_LAYER_ALPHA = 68, 65 REQUEST_CMD_SET_LAYER_REGION = 69, 66 REQUEST_CMD_SET_LAYER_CROP = 70, 67 REQUEST_CMD_SET_LAYER_ZORDER = 71, 68 REQUEST_CMD_SET_LAYER_PREMULTI = 72, 69 REQUEST_CMD_SET_LAYER_TRANSFORM_MODE = 73, 70 REQUEST_CMD_SET_LAYER_DIRTY_REGION = 74, 71 REQUEST_CMD_SET_LAYER_VISIBLE_REGION = 75, 72 REQUEST_CMD_SET_LAYER_BUFFER = 76, 73 REQUEST_CMD_SET_LAYER_COMPOSITION_TYPE = 77, 74 REQUEST_CMD_SET_LAYER_BLEND_TYPE = 78, 75 REQUEST_CMD_SET_LAYER_VISIBLE = 79, 76 REQUEST_CMD_SET_LAYER_MASK_INFO = 80, 77 REQUEST_CMD_SET_LAYER_COLOR = 81, 78 REQUEST_CMD_BUTT, 79 REPLY_CMD_SET_ERROR = 512, 80 REPLY_CMD_PREPARE_DISPLAY_LAYERS = 513, 81 REPLY_CMD_COMMIT = 514, 82 REPLY_CMD_BUTT, 83 CONTROL_CMD_REQUEST_BEGIN = 1024, 84 CONTROL_CMD_REPLY_BEGIN = 1025, 85 CONTROL_CMD_REQUEST_END = 1026, 86 CONTROL_CMD_REPLY_END = 1027, 87 CONTROL_CMD_BUTT, 88}; 89 90enum DispErrCode : int32_t { 91 DISPLAY_SUCCESS = 0, 92 DISPLAY_FAILURE = -1, 93 DISPLAY_FD_ERR = -2, 94 DISPLAY_PARAM_ERR = -3, 95 DISPLAY_NULL_PTR = -4, 96 DISPLAY_NOT_SUPPORT = -5, 97 DISPLAY_NOMEM = -6, 98 DISPLAY_SYS_BUSY = -7, 99 DISPLAY_NOT_PERM = -8, 100}; 101 102enum PixelFormat : int32_t { 103 PIXEL_FMT_CLUT8 = 0, 104 PIXEL_FMT_CLUT1, 105 PIXEL_FMT_CLUT4, 106 PIXEL_FMT_RGB_565, 107 PIXEL_FMT_RGBA_5658, 108 PIXEL_FMT_RGBX_4444, 109 PIXEL_FMT_RGBA_4444, 110 PIXEL_FMT_RGB_444, 111 PIXEL_FMT_RGBX_5551, 112 PIXEL_FMT_RGBA_5551, 113 PIXEL_FMT_RGB_555, 114 PIXEL_FMT_RGBX_8888, 115 PIXEL_FMT_RGBA_8888, 116 PIXEL_FMT_RGB_888, 117 PIXEL_FMT_BGR_565, 118 PIXEL_FMT_BGRX_4444, 119 PIXEL_FMT_BGRA_4444, 120 PIXEL_FMT_BGRX_5551, 121 PIXEL_FMT_BGRA_5551, 122 PIXEL_FMT_BGRX_8888, 123 PIXEL_FMT_BGRA_8888, 124 PIXEL_FMT_YUV_422_I, 125 PIXEL_FMT_YCBCR_422_SP, 126 PIXEL_FMT_YCRCB_422_SP, 127 PIXEL_FMT_YCBCR_420_SP, 128 PIXEL_FMT_YCRCB_420_SP, 129 PIXEL_FMT_YCBCR_422_P, 130 PIXEL_FMT_YCRCB_422_P, 131 PIXEL_FMT_YCBCR_420_P, 132 PIXEL_FMT_YCRCB_420_P, 133 PIXEL_FMT_YUYV_422_PKG, 134 PIXEL_FMT_UYVY_422_PKG, 135 PIXEL_FMT_YVYU_422_PKG, 136 PIXEL_FMT_VYUY_422_PKG, 137 PIXEL_FMT_RGBA_1010102, 138 PIXEL_FMT_VENDER_MASK = 0X7FFF0000, 139 PIXEL_FMT_BUTT = 0X7FFFFFFF, 140}; 141 142enum BufferUsage : uint64_t { 143 HBM_USE_CPU_READ = (1ULL << 0), 144 HBM_USE_CPU_WRITE = (1ULL << 1), 145 HBM_USE_MEM_MMZ = (1ULL << 2), 146 HBM_USE_MEM_DMA = (1ULL << 3), 147 HBM_USE_MEM_SHARE = (1ULL << 4), 148 HBM_USE_MEM_MMZ_CACHE = (1ULL << 5), 149 HBM_USE_MEM_FB = (1ULL << 6), 150 HBM_USE_ASSIGN_SIZE = (1ULL << 7), 151 HBM_USE_HW_RENDER = (1ULL << 8), 152 HBM_USE_HW_TEXTURE = (1ULL << 9), 153 HBM_USE_HW_COMPOSER = (1ULL << 10), 154 HBM_USE_PROTECTED = (1ULL << 11), 155 HBM_USE_CAMERA_READ = (1ULL << 12), 156 HBM_USE_CAMERA_WRITE = (1ULL << 13), 157 HBM_USE_VIDEO_ENCODER = (1ULL << 14), 158 HBM_USE_VIDEO_DECODER = (1ULL << 15), 159 HBM_USE_CPU_READ_OFTEN = (1ULL << 16), 160 HBM_USE_VENDOR_PRI0 = (1ULL << 44), 161 HBM_USE_VENDOR_PRI1 = (1ULL << 45), 162 HBM_USE_VENDOR_PRI2 = (1ULL << 46), 163 HBM_USE_VENDOR_PRI3 = (1ULL << 47), 164 HBM_USE_VENDOR_PRI4 = (1ULL << 48), 165 HBM_USE_VENDOR_PRI5 = (1ULL << 49), 166 HBM_USE_VENDOR_PRI6 = (1ULL << 50), 167 HBM_USE_VENDOR_PRI7 = (1ULL << 51), 168 HBM_USE_VENDOR_PRI8 = (1ULL << 52), 169 HBM_USE_VENDOR_PRI9 = (1ULL << 53), 170 HBM_USE_VENDOR_PRI10 = (1ULL << 54), 171 HBM_USE_VENDOR_PRI11 = (1ULL << 55), 172 HBM_USE_VENDOR_PRI12 = (1ULL << 56), 173 HBM_USE_VENDOR_PRI13 = (1ULL << 57), 174 HBM_USE_VENDOR_PRI14 = (1ULL << 58), 175 HBM_USE_VENDOR_PRI15 = (1ULL << 59), 176 HBM_USE_VENDOR_PRI16 = (1ULL << 60), 177 HBM_USE_VENDOR_PRI17 = (1ULL << 61), 178 HBM_USE_VENDOR_PRI18 = (1ULL << 62), 179 HBM_USE_VENDOR_PRI19 = (1ULL << 63), 180}; 181 182enum TransformType : int32_t { 183 ROTATE_NONE = 0, 184 ROTATE_90, 185 ROTATE_180, 186 ROTATE_270, 187 MIRROR_H, 188 MIRROR_V, 189 MIRROR_H_ROTATE_90, 190 MIRROR_V_ROTATE_90, 191 ROTATE_BUTT, 192}; 193 194enum DispPowerStatus : int32_t { 195 POWER_STATUS_ON = 0, 196 POWER_STATUS_STANDBY = 1, 197 POWER_STATUS_SUSPEND = 2, 198 POWER_STATUS_OFF = 3, 199 POWER_STATUS_BUTT, 200}; 201 202enum CompositionType : int32_t { 203 COMPOSITION_CLIENT, 204 COMPOSITION_DEVICE, 205 COMPOSITION_CURSOR, 206 COMPOSITION_VIDEO, 207 COMPOSITION_DEVICE_CLEAR, 208 COMPOSITION_CLIENT_CLEAR, 209 COMPOSITION_TUNNEL, 210 COMPOSITION_BUTT, 211}; 212 213enum LayerType : int32_t { 214 LAYER_TYPE_GRAPHIC, 215 LAYER_TYPE_OVERLAY, 216 LAYER_TYPE_SDIEBAND, 217 LAYER_TYPE_CURSOR, 218 LAYER_TYPE_BUTT, 219}; 220 221enum BlendType : int32_t { 222 BLEND_NONE = 0, 223 BLEND_CLEAR, 224 BLEND_SRC, 225 BLEND_SRCOVER, 226 BLEND_DSTOVER, 227 BLEND_SRCIN, 228 BLEND_DSTIN, 229 BLEND_SRCOUT, 230 BLEND_DSTOUT, 231 BLEND_SRCATOP, 232 BLEND_DSTATOP, 233 BLEND_ADD, 234 BLEND_XOR, 235 BLEND_DST, 236 BLEND_AKS, 237 BLEND_AKD, 238 BLEND_BUTT, 239}; 240 241enum RopType : int32_t { 242 ROP_BLACK = 0, 243 ROP_NOTMERGEPEN, 244 ROP_MASKNOTPEN, 245 ROP_NOTCOPYPEN, 246 ROP_MASKPENNOT, 247 ROP_NOT, 248 ROP_XORPEN, 249 ROP_NOTMASKPEN, 250 ROP_MASKPEN, 251 ROP_NOTXORPEN, 252 ROP_NOP, 253 ROP_MERGENOTPEN, 254 ROP_COPYPE, 255 ROP_MERGEPENNOT, 256 ROP_MERGEPEN, 257 ROP_WHITE, 258 ROP_BUTT, 259}; 260 261enum ColorKey : int32_t { 262 CKEY_NONE = 0, 263 CKEY_SRC, 264 CKEY_DST, 265 CKEY_BUTT, 266}; 267 268enum MirrorType : int32_t { 269 MIRROR_NONE = 0, 270 MIRROR_LR, 271 MIRROR_TB, 272 MIRROR_BUTT, 273}; 274 275enum Connection : int32_t { 276 CON_INVALID = 0, 277 CONNECTED, 278 DISCONNECTED, 279}; 280 281enum InterfaceType : int32_t { 282 DISP_INTF_HDMI = 0, 283 DISP_INTF_LCD, 284 DISP_INTF_BT1120, 285 DISP_INTF_BT656, 286 DISP_INTF_YPBPR, 287 DISP_INTF_RGB, 288 DISP_INTF_CVBS, 289 DISP_INTF_SVIDEO, 290 DISP_INTF_VGA, 291 DISP_INTF_MIPI, 292 DISP_INTF_PANEL, 293 DISP_INTF_BUTT, 294}; 295 296struct PropertyObject { 297 std::string name; 298 uint32_t propId; 299 uint64_t value; 300}; 301 302struct DisplayCapability { 303 std::string name; 304 OHOS::HDI::Display::Composer::V1_0::InterfaceType type; 305 uint32_t phyWidth; 306 uint32_t phyHeight; 307 uint32_t supportLayers; 308 uint32_t virtualDispCount; 309 bool supportWriteBack; 310 uint32_t propertyCount; 311 std::vector<OHOS::HDI::Display::Composer::V1_0::PropertyObject> props; 312}; 313 314struct DisplayModeInfo { 315 int32_t width; 316 int32_t height; 317 uint32_t freshRate; 318 int32_t id; 319} __attribute__ ((aligned(8))); 320 321struct LayerInfo { 322 int32_t width; 323 int32_t height; 324 OHOS::HDI::Display::Composer::V1_0::LayerType type; 325 int32_t bpp; 326 OHOS::HDI::Display::Composer::V1_0::PixelFormat pixFormat; 327} __attribute__ ((aligned(8))); 328 329struct LayerAlpha { 330 bool enGlobalAlpha; 331 bool enPixelAlpha; 332 uint8_t alpha0; 333 uint8_t alpha1; 334 uint8_t gAlpha; 335} __attribute__ ((aligned(8))); 336 337struct IRect { 338 int32_t x; 339 int32_t y; 340 int32_t w; 341 int32_t h; 342} __attribute__ ((aligned(8))); 343 344struct ISurface { 345 uint64_t phyAddr; 346 int32_t height; 347 int32_t width; 348 int32_t stride; 349 OHOS::HDI::Display::Composer::V1_0::PixelFormat enColorFmt; 350 bool bYCbCrClut; 351 bool bAlphaMax255; 352 bool bAlphaExt1555; 353 uint8_t alpha0; 354 uint8_t alpha1; 355 uint64_t cbcrPhyAddr; 356 int32_t cbcrStride; 357 uint64_t clutPhyAddr; 358} __attribute__ ((aligned(8))); 359 360struct ILine { 361 int32_t x0; 362 int32_t y0; 363 int32_t x1; 364 int32_t y1; 365 uint32_t color; 366} __attribute__ ((aligned(8))); 367 368struct ICircle { 369 int32_t x; 370 int32_t y; 371 int32_t r; 372 uint32_t color; 373} __attribute__ ((aligned(8))); 374 375struct Rectangle { 376 OHOS::HDI::Display::Composer::V1_0::IRect rect; 377 uint32_t color; 378} __attribute__ ((aligned(8))); 379 380struct GfxOpt { 381 bool enGlobalAlpha; 382 uint32_t globalAlpha; 383 bool enPixelAlpha; 384 OHOS::HDI::Display::Composer::V1_0::BlendType blendType; 385 OHOS::HDI::Display::Composer::V1_0::ColorKey colorKeyFrom; 386 bool enableRop; 387 OHOS::HDI::Display::Composer::V1_0::RopType colorRopType; 388 OHOS::HDI::Display::Composer::V1_0::RopType alphaRopType; 389 bool enableScale; 390 OHOS::HDI::Display::Composer::V1_0::TransformType rotateType; 391 OHOS::HDI::Display::Composer::V1_0::MirrorType mirrorType; 392} __attribute__ ((aligned(8))); 393 394enum ColorGamut : int32_t { 395 COLOR_GAMUT_INVALID = -1, 396 COLOR_GAMUT_NATIVE = 0, 397 COLOR_GAMUT_STANDARD_BT601 = 1, 398 COLOR_GAMUT_STANDARD_BT709 = 2, 399 COLOR_GAMUT_DCI_P3 = 3, 400 COLOR_GAMUT_SRGB = 4, 401 COLOR_GAMUT_ADOBE_RGB = 5, 402 COLOR_GAMUT_DISPLAY_P3 = 6, 403 COLOR_GAMUT_BT2020 = 7, 404 COLOR_GAMUT_BT2100_PQ = 8, 405 COLOR_GAMUT_BT2100_HLG = 9, 406 COLOR_GAMUT_DISPLAY_BT2020 = 10, 407}; 408 409enum GamutMap : int32_t { 410 GAMUT_MAP_CONSTANT = 0, 411 GAMUT_MAP_EXPANSION = 1, 412 GAMUT_MAP_HDR_CONSTANT = 2, 413 GAMUT_MAP_HDR_EXPANSION = 3, 414}; 415 416enum ColorDataSpace : int32_t { 417 COLOR_DATA_SPACE_UNKNOWN = 0, 418 GAMUT_BT601 = 0x00000001, 419 GAMUT_BT709 = 0x00000002, 420 GAMUT_DCI_P3 = 0x00000003, 421 GAMUT_SRGB = 0x00000004, 422 GAMUT_ADOBE_RGB = 0x00000005, 423 GAMUT_DISPLAY_P3 = 0x00000006, 424 GAMUT_BT2020 = 0x00000007, 425 GAMUT_BT2100_PQ = 0x00000008, 426 GAMUT_BT2100_HLG = 0x00000009, 427 GAMUT_DISPLAY_BT2020 = 0x0000000a, 428 TRANSFORM_FUNC_UNSPECIFIED = 0x00000100, 429 TRANSFORM_FUNC_LINEAR = 0x00000200, 430 TRANSFORM_FUNC_SRGB = 0x00000300, 431 TRANSFORM_FUNC_SMPTE_170M = 0x00000400, 432 TRANSFORM_FUNC_GM2_2 = 0x00000500, 433 TRANSFORM_FUNC_GM2_6 = 0x00000600, 434 TRANSFORM_FUNC_GM2_8 = 0x00000700, 435 TRANSFORM_FUNC_ST2084 = 0x00000800, 436 TRANSFORM_FUNC_HLG = 0x00000900, 437 PRECISION_UNSPECIFIED = 0x00010000, 438 PRECISION_FULL = 0x00020000, 439 PRESION_LIMITED = 0x00030000, 440 PRESION_EXTENDED = 0x00040000, 441 BT601_SMPTE170M_FULL = 1 | 1024 | 131072, 442 BT601_SMPTE170M_LIMITED = 1 | 1024 | 196608, 443 BT709_LINEAR_FULL = 2 | 512 | 131072, 444 BT709_LINEAR_EXTENDED = 2 | 512 | 262144, 445 BT709_SRGB_FULL = 2 | 768 | 131072, 446 BT709_SRGB_EXTENDED = 2 | 768 | 262144, 447 BT709_SMPTE170M_LIMITED = 2 | 1024 | 196608, 448 DCI_P3_LINEAR_FULL = 3 | 512 | 131072, 449 DCI_P3_GAMMA26_FULL = 3 | 1536 | 131072, 450 DISPLAY_P3_LINEAR_FULL = 6 | 512 | 131072, 451 DCI_P3_SRGB_FULL = 3 | 768 | 131072, 452 ADOBE_RGB_GAMMA22_FULL = 5 | 1280 | 131072, 453 BT2020_LINEAR_FULL = 7 | 512 | 131072, 454 BT2020_SRGB_FULL = 7 | 768 | 131072, 455 BT2020_SMPTE170M_FULL = 7 | 1024 | 131072, 456 BT2020_ST2084_FULL = 7 | 2048 | 131072, 457 BT2020_HLG_FULL = 7 | 2304 | 131072, 458 BT2020_ST2084_LIMITED = 7 | 2048 | 196608, 459}; 460 461enum HDRFormat : int32_t { 462 NOT_SUPPORT_HDR = 0, 463 DOLBY_VISION = 1, 464 HDR10 = 2, 465 HLG = 3, 466 HDR10_PLUS = 4, 467 HDR_VIVID = 5, 468}; 469 470struct HDRCapability { 471 uint32_t formatCount; 472 std::vector<OHOS::HDI::Display::Composer::V1_0::HDRFormat> formats; 473 float maxLum; 474 float maxAverageLum; 475 float minLum; 476}; 477 478enum HDRMetadataKey : int32_t { 479 MATAKEY_RED_PRIMARY_X = 0, 480 MATAKEY_RED_PRIMARY_Y = 1, 481 MATAKEY_GREEN_PRIMARY_X = 2, 482 MATAKEY_GREEN_PRIMARY_Y = 3, 483 MATAKEY_BLUE_PRIMARY_X = 4, 484 MATAKEY_BLUE_PRIMARY_Y = 5, 485 MATAKEY_WHITE_PRIMARY_X = 6, 486 MATAKEY_WHITE_PRIMARY_Y = 7, 487 MATAKEY_MAX_LUMINANCE = 8, 488 MATAKEY_MIN_LUMINANCE = 9, 489 MATAKEY_MAX_CONTENT_LIGHT_LEVEL = 10, 490 MATAKEY_MAX_FRAME_AVERAGE_LIGHT_LEVEL = 11, 491 MATAKEY_HDR10_PLUS = 12, 492 MATAKEY_HDR_VIVID = 13, 493}; 494 495struct HDRMetaData { 496 OHOS::HDI::Display::Composer::V1_0::HDRMetadataKey key; 497 float value; 498} __attribute__ ((aligned(8))); 499 500enum PresentTimestampType : int32_t { 501 HARDWARE_DISPLAY_PTS_UNSUPPORTED = 0, 502 HARDWARE_DISPLAY_PTS_DELAY = 1 << 0, 503 HARDWARE_DISPLAY_PTS_TIMESTAMP = 1 << 1, 504}; 505 506enum MaskInfo : int32_t { 507 LAYER_NORAML = 0, 508 LAYER_HBM_SYNC = 1, 509}; 510 511struct PresentTimestamp { 512 OHOS::HDI::Display::Composer::V1_0::PresentTimestampType type; 513 int64_t time; 514} __attribute__ ((aligned(8))); 515 516struct ExtDataHandle { 517 int32_t fd; 518 uint32_t reserveInts; 519 std::vector<int32_t> reserve; 520}; 521 522struct YUVDescInfo { 523 uint64_t baseAddr; 524 uint32_t yOffset; 525 uint32_t uOffset; 526 uint32_t vOffset; 527 uint32_t yStride; 528 uint32_t uvStride; 529 uint32_t uvStep; 530} __attribute__ ((aligned(8))); 531 532struct HdifdInfo { 533 int32_t id; 534 sptr<OHOS::HDI::Display::HdifdParcelable> hdiFd; 535}; 536 537struct LayerColor { 538 uint8_t r; 539 uint8_t g; 540 uint8_t b; 541 uint8_t a; 542} __attribute__ ((aligned(8))); 543 544bool PropertyObjectBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::PropertyObject& dataBlock); 545 546bool PropertyObjectBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::PropertyObject& dataBlock); 547 548bool DisplayCapabilityBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::DisplayCapability& dataBlock); 549 550bool DisplayCapabilityBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::DisplayCapability& dataBlock); 551 552bool DisplayModeInfoBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::DisplayModeInfo& dataBlock); 553 554bool DisplayModeInfoBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::DisplayModeInfo& dataBlock); 555 556bool LayerInfoBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::LayerInfo& dataBlock); 557 558bool LayerInfoBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::LayerInfo& dataBlock); 559 560bool LayerAlphaBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::LayerAlpha& dataBlock); 561 562bool LayerAlphaBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::LayerAlpha& dataBlock); 563 564bool IRectBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::IRect& dataBlock); 565 566bool IRectBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::IRect& dataBlock); 567 568bool ISurfaceBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::ISurface& dataBlock); 569 570bool ISurfaceBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::ISurface& dataBlock); 571 572bool ILineBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::ILine& dataBlock); 573 574bool ILineBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::ILine& dataBlock); 575 576bool ICircleBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::ICircle& dataBlock); 577 578bool ICircleBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::ICircle& dataBlock); 579 580bool RectangleBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::Rectangle& dataBlock); 581 582bool RectangleBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::Rectangle& dataBlock); 583 584bool GfxOptBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::GfxOpt& dataBlock); 585 586bool GfxOptBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::GfxOpt& dataBlock); 587 588bool HDRCapabilityBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::HDRCapability& dataBlock); 589 590bool HDRCapabilityBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::HDRCapability& dataBlock); 591 592bool HDRMetaDataBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::HDRMetaData& dataBlock); 593 594bool HDRMetaDataBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::HDRMetaData& dataBlock); 595 596bool PresentTimestampBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::PresentTimestamp& dataBlock); 597 598bool PresentTimestampBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::PresentTimestamp& dataBlock); 599 600bool ExtDataHandleBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::ExtDataHandle& dataBlock); 601 602bool ExtDataHandleBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::ExtDataHandle& dataBlock); 603 604bool YUVDescInfoBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::YUVDescInfo& dataBlock); 605 606bool YUVDescInfoBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::YUVDescInfo& dataBlock); 607 608bool HdifdInfoBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::HdifdInfo& dataBlock); 609 610bool HdifdInfoBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::HdifdInfo& dataBlock); 611 612bool LayerColorBlockMarshalling(OHOS::MessageParcel &data, const OHOS::HDI::Display::Composer::V1_0::LayerColor& dataBlock); 613 614bool LayerColorBlockUnmarshalling(OHOS::MessageParcel &data, OHOS::HDI::Display::Composer::V1_0::LayerColor& dataBlock); 615 616} // V1_0 617} // Composer 618} // Display 619} // HDI 620} // OHOS 621 622#endif // OHOS_HDI_DISPLAY_COMPOSER_V1_0_DISPLAYCOMPOSERTYPE_H 623 624