1# native_color_space_manager.h 2 3## 概述 4 5定义创建和使用色彩空间的相关函数。 6 7**引用文件:** <native_color_space_manager/native_color_space_manager.h> 8 9**库:** libnative_color_space_manager.so 10 11**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 12 13**起始版本:** 13 14 15**相关模块:** [NativeColorSpaceManager](capi-nativecolorspacemanager.md) 16 17## 汇总 18 19### 结构体 20 21| 名称 | typedef关键字 | 描述 | 22| -- | -- | -- | 23| [ColorSpacePrimaries](capi-nativecolorspacemanager-colorspaceprimaries.md) | ColorSpacePrimaries | 提供色彩原色结构体声明。 | 24| [WhitePointArray](capi-nativecolorspacemanager-whitepointarray.md) | - | 提供白点数组结构体,白点是指在当前色域中表示白色的坐标。 | 25| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md) | OH_NativeColorSpaceManager | 提供OH_NativeColorSpaceManager结构体声明。 | 26 27### 枚举 28 29| 名称 | typedef关键字 | 描述 | 30| -- | -- | -- | 31| [ColorSpaceName](#colorspacename) | ColorSpaceName | 色彩空间枚举。 | 32 33### 函数 34 35| 名称 | 描述 | 36| -- | -- | 37| [OH_NativeColorSpaceManager* OH_NativeColorSpaceManager_CreateFromName(ColorSpaceName colorSpaceName)](#oh_nativecolorspacemanager_createfromname) | 通过colorSpaceName创建OH_NativeColorSpaceManager实例。<br>每次调用此函数时,都会创建一个新的OH_NativeColorSpaceManager实例。 | 38| [OH_NativeColorSpaceManager* OH_NativeColorSpaceManager_CreateFromPrimariesAndGamma(ColorSpacePrimaries primaries, float gamma)](#oh_nativecolorspacemanager_createfromprimariesandgamma) | 通过原色和伽马值创建OH_NativeColorSpaceManager实例。<br>每次调用此函数时,都会创建一个新的OH_NativeColorSpaceManager实例。 | 39| [void OH_NativeColorSpaceManager_Destroy(OH_NativeColorSpaceManager* nativeColorSpaceManager)](#oh_nativecolorspacemanager_destroy) | 销毁OH_NativeColorSpaceManager实例。 | 40| [int OH_NativeColorSpaceManager_GetColorSpaceName(OH_NativeColorSpaceManager* nativeColorSpaceManager)](#oh_nativecolorspacemanager_getcolorspacename) | 获取色彩空间名称。 | 41| [WhitePointArray OH_NativeColorSpaceManager_GetWhitePoint(OH_NativeColorSpaceManager* nativeColorSpaceManager)](#oh_nativecolorspacemanager_getwhitepoint) | 获取白点。 | 42| [float OH_NativeColorSpaceManager_GetGamma(OH_NativeColorSpaceManager* nativeColorSpaceManager)](#oh_nativecolorspacemanager_getgamma) | 获取伽马值。 | 43 44## 枚举类型说明 45 46### ColorSpaceName 47 48``` 49enum ColorSpaceName 50``` 51 52**描述** 53 54色彩空间枚举。 55 56**起始版本:** 13 57 58| 枚举项 | 描述 | 59| -- | -- | 60| NONE = 0 | 表示未知的色彩空间。 | 61| ADOBE_RGB = 1 | 表示基于Adobe RGB的色彩空间。 | 62| DCI_P3 = 2 | 表示基于SMPTE RP 431-2-2007和IEC 61966-2.1:1999的色彩空间。 | 63| DISPLAY_P3 = 3 | 表示基于SMPTE RP 431-2-2007和IEC 61966-2.1:1999的色彩空间。 | 64| SRGB = 4 | 表示基于IEC 61966-2.1:1999的标准红绿蓝(SRGB)色彩空间。 | 65| BT709 = 6 | 表示基于ITU-R BT.709的色彩空间。 | 66| BT601_EBU = 7 | 表示基于ITU-R BT.601的色彩空间。 | 67| BT601_SMPTE_C = 8 | 表示基于ITU-R BT.601的色彩空间。 | 68| BT2020_HLG = 9 | 表示基于ITU-R BT.2020的色彩空间。 | 69| BT2020_PQ = 10 | 表示基于ITU-R BT.2020的色彩空间。 | 70| P3_HLG = 11 | 表示色彩原色为P3_D65,传输特性为HLG,色彩范围为FUll的色彩空间。 | 71| P3_PQ = 12 | 表示色彩原色为P3_D65,传输特性为PQ,色彩范围为FUll的色彩空间。 | 72| ADOBE_RGB_LIMIT = 13 | 表示色彩原色为ADOBE_RGB,传输特性为ADOBE_RGB,色彩范围为LIMIT的色彩空间。 | 73| DISPLAY_P3_LIMIT = 14 | 表示色彩原色为P3_D65,传输特性为SRGB,色彩范围为LIMIT的色彩空间。 | 74| SRGB_LIMIT = 15 | 表示色彩原色为SRGB,传输特性为SRGB,色彩范围为LIMIT的色彩空间。 | 75| BT709_LIMIT = 16 | 表示色彩原色为BT709,传输特性为BT709,色彩范围为LIMIT的色彩空间。 | 76| BT601_EBU_LIMIT = 17 | 表示色彩原色为BT601_P,传输特性为BT709,色彩范围为LIMIT的色彩空间。 | 77| BT601_SMPTE_C_LIMIT = 18 | 表示色彩原色为BT601_N,传输特性为BT709,色彩范围为LIMIT的色彩空间。 | 78| BT2020_HLG_LIMIT = 19 | 表示色彩原色为BT2020,传输特性为HLG,色彩范围为LIMIT的色彩空间。 | 79| BT2020_PQ_LIMIT = 20 | 表示色彩原色为BT2020,传输特性为PQ,色彩范围为LIMIT的色彩空间。 | 80| P3_HLG_LIMIT = 21 | 表示色彩原色为P3_D65,传输特性为HLG,色彩范围为LIMIT的色彩空间。 | 81| P3_PQ_LIMIT = 22 | 表示色彩原色为P3_D65,传输特性为PQ,色彩范围为LIMIT的色彩空间。 | 82| LINEAR_P3 = 23 | 表示色彩原色为P3_D65,传输特性为LINEAR的色彩空间。 | 83| LINEAR_SRGB = 24 | 表示色彩原色为SRGB,传输特性为LINEAR的色彩空间。 | 84| LINEAR_BT709 = LINEAR_SRGB | 表示色彩原色为BT709,传输特性为LINEAR的色彩空间。 | 85| LINEAR_BT2020 = 25 | 表示色彩原色为BT2020,传输特性为LINEAR的色彩空间。 | 86| DISPLAY_SRGB = SRGB | 表示色彩原色为SRGB,传输特性为SRGB,色彩范围为FUll的色彩空间。 | 87| DISPLAY_P3_SRGB = DISPLAY_P3 | 表示色彩原色为P3_D65,传输特性为SRGB,色彩范围为FUll的色彩空间。 | 88| DISPLAY_P3_HLG = P3_HLG | 表示色彩原色为P3_D65,传输特性为HLG,色彩范围为FUll的色彩空间。 | 89| DISPLAY_P3_PQ = P3_PQ | 表示色彩原色为P3_D65,传输特性为PQ,色彩范围为FUll的色彩空间。 | 90| CUSTOM = 5 | 表示自定义色彩空间。 | 91 92 93## 函数说明 94 95### OH_NativeColorSpaceManager_CreateFromName() 96 97``` 98OH_NativeColorSpaceManager* OH_NativeColorSpaceManager_CreateFromName(ColorSpaceName colorSpaceName) 99``` 100 101**描述** 102 103通过colorSpaceName创建OH_NativeColorSpaceManager实例。<br>每次调用此函数时,都会创建一个新的OH_NativeColorSpaceManager实例。 104 105**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 106 107**起始版本:** 13 108 109 110**参数:** 111 112| 参数项 | 描述 | 113| -- | -- | 114| [ColorSpaceName](#colorspacename) colorSpaceName | 表示创建[OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)的色彩空间名称。 | 115 116**返回:** 117 118| 类型 | 说明 | 119| -- | -- | 120| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)* | 返回一个指向[OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)实例的指针。内存不足时,会导致创建OH_NativeColorSpaceManager实例失败。 | 121 122### OH_NativeColorSpaceManager_CreateFromPrimariesAndGamma() 123 124``` 125OH_NativeColorSpaceManager* OH_NativeColorSpaceManager_CreateFromPrimariesAndGamma(ColorSpacePrimaries primaries, float gamma) 126``` 127 128**描述** 129 130通过原色和伽马值创建OH_NativeColorSpaceManager实例。<br>每次调用此函数时,都会创建一个新的OH_NativeColorSpaceManager实例。 131 132**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 133 134**起始版本:** 13 135 136 137**参数:** 138 139| 参数项 | 描述 | 140| -- | -- | 141| [ColorSpacePrimaries](capi-nativecolorspacemanager-colorspaceprimaries.md) primaries | 表示创建[OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)的色彩原色。 | 142| float gamma | 表示创建[OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)的伽马值,伽马值为一个浮点数,用于矫正亮度范围。<br>伽马值通常为正值,负值会使弱光区域更亮,强光区域变暗,伽马值为0表示线性色彩空间。 | 143 144**返回:** 145 146| 类型 | 说明 | 147| -- | -- | 148| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)* | 返回一个指向[OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)实例的指针。<br> 内存不足时,会导致创建OH_NativeColorSpaceManager实例失败。 | 149 150### OH_NativeColorSpaceManager_Destroy() 151 152``` 153void OH_NativeColorSpaceManager_Destroy(OH_NativeColorSpaceManager* nativeColorSpaceManager) 154``` 155 156**描述** 157 158销毁OH_NativeColorSpaceManager实例。 159 160**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 161 162**起始版本:** 13 163 164 165**参数:** 166 167| 参数项 | 描述 | 168| -- | -- | 169| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)* nativeColorSpaceManager | 表示指向OH_NativeColorSpaceManager实例的指针。 | 170 171### OH_NativeColorSpaceManager_GetColorSpaceName() 172 173``` 174int OH_NativeColorSpaceManager_GetColorSpaceName(OH_NativeColorSpaceManager* nativeColorSpaceManager) 175``` 176 177**描述** 178 179获取色彩空间名称。 180 181**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 182 183**起始版本:** 13 184 185 186**参数:** 187 188| 参数项 | 描述 | 189| -- | -- | 190| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)* nativeColorSpaceManager | 表示指向OH_NativeColorSpaceManager实例的指针。 | 191 192**返回:** 193 194| 类型 | 说明 | 195| -- | -- | 196| int | 返回色彩空间枚举[ColorSpaceName](capi-native-color-space-manager-h.md#colorspacename)对应的值。其中,当返回值为0时,表示接口操作失败。 | 197 198### OH_NativeColorSpaceManager_GetWhitePoint() 199 200``` 201WhitePointArray OH_NativeColorSpaceManager_GetWhitePoint(OH_NativeColorSpaceManager* nativeColorSpaceManager) 202``` 203 204**描述** 205 206获取白点。 207 208**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 209 210**起始版本:** 13 211 212 213**参数:** 214 215| 参数项 | 描述 | 216| -- | -- | 217| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)* nativeColorSpaceManager | 表示指向OH_NativeColorSpaceManager实例的指针。 | 218 219**返回:** 220 221| 类型 | 说明 | 222| -- | -- | 223| [WhitePointArray](capi-nativecolorspacemanager-whitepointarray.md) | 返回值为float数组,返回值为<0.0, 0.0>表示接口操作失败,其余返回值表示操作成功。 | 224 225### OH_NativeColorSpaceManager_GetGamma() 226 227``` 228float OH_NativeColorSpaceManager_GetGamma(OH_NativeColorSpaceManager* nativeColorSpaceManager) 229``` 230 231**描述** 232 233获取伽马值。 234 235**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 236 237**起始版本:** 13 238 239 240**参数:** 241 242| 参数项 | 描述 | 243| -- | -- | 244| [OH_NativeColorSpaceManager](capi-nativecolorspacemanager-oh-nativecolorspacemanager.md)* nativeColorSpaceManager | 表示指向OH_NativeColorSpaceManager实例的指针。 | 245 246**返回:** 247 248| 类型 | 说明 | 249| -- | -- | 250| float | 返回值为float类型,返回值为0.0表示接口操作失败,其余返回值表示操作成功。 | 251 252 253