161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci* Copyright (C) 2022-2023 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci* Licensed under the Apache License, Version 2.0 (the "License");
461847f8eSopenharmony_ci* you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci* You may obtain a copy of the License at
661847f8eSopenharmony_ci*
761847f8eSopenharmony_ci* http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci*
961847f8eSopenharmony_ci* Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci* distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci* See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci* limitations under the License.
1461847f8eSopenharmony_ci*/
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit ArkGraphics2D
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ci/**
2261847f8eSopenharmony_ci * Color space manager.
2361847f8eSopenharmony_ci *
2461847f8eSopenharmony_ci * @namespace colorSpaceManager
2561847f8eSopenharmony_ci * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
2661847f8eSopenharmony_ci * @since 9
2761847f8eSopenharmony_ci */
2861847f8eSopenharmony_ci/**
2961847f8eSopenharmony_ci * Color space manager.
3061847f8eSopenharmony_ci *
3161847f8eSopenharmony_ci * @namespace colorSpaceManager
3261847f8eSopenharmony_ci * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
3361847f8eSopenharmony_ci * @crossplatform
3461847f8eSopenharmony_ci * @since 11
3561847f8eSopenharmony_ci */
3661847f8eSopenharmony_ci/**
3761847f8eSopenharmony_ci * Color space manager.
3861847f8eSopenharmony_ci *
3961847f8eSopenharmony_ci * @namespace colorSpaceManager
4061847f8eSopenharmony_ci * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
4161847f8eSopenharmony_ci * @crossplatform
4261847f8eSopenharmony_ci * @atomicservice
4361847f8eSopenharmony_ci * @since 12
4461847f8eSopenharmony_ci */
4561847f8eSopenharmony_cideclare namespace colorSpaceManager {
4661847f8eSopenharmony_ci  /**
4761847f8eSopenharmony_ci   * Enumerates color space types.
4861847f8eSopenharmony_ci   * @enum { number } ColorSpace
4961847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
5061847f8eSopenharmony_ci   * @since 9
5161847f8eSopenharmony_ci  */
5261847f8eSopenharmony_ci  /**
5361847f8eSopenharmony_ci   * Enumerates color space types.
5461847f8eSopenharmony_ci   * @enum { number } ColorSpace
5561847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
5661847f8eSopenharmony_ci   * @crossplatform
5761847f8eSopenharmony_ci   * @since 11
5861847f8eSopenharmony_ci   */
5961847f8eSopenharmony_ci  /**
6061847f8eSopenharmony_ci   * Enumerates color space types.
6161847f8eSopenharmony_ci   * @enum { number } ColorSpace
6261847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
6361847f8eSopenharmony_ci   * @crossplatform
6461847f8eSopenharmony_ci   * @atomicservice
6561847f8eSopenharmony_ci   * @since 12
6661847f8eSopenharmony_ci   */
6761847f8eSopenharmony_ci  enum ColorSpace {
6861847f8eSopenharmony_ci    /**
6961847f8eSopenharmony_ci     * Indicates an unknown color space.
7061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
7161847f8eSopenharmony_ci     * @since 9
7261847f8eSopenharmony_ci     */
7361847f8eSopenharmony_ci    /**
7461847f8eSopenharmony_ci     * Indicates an unknown color space.
7561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
7661847f8eSopenharmony_ci     * @crossplatform
7761847f8eSopenharmony_ci     * @since 11
7861847f8eSopenharmony_ci     */
7961847f8eSopenharmony_ci    /**
8061847f8eSopenharmony_ci     * Indicates an unknown color space.
8161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
8261847f8eSopenharmony_ci     * @crossplatform
8361847f8eSopenharmony_ci     * @atomicservice
8461847f8eSopenharmony_ci     * @since 12
8561847f8eSopenharmony_ci     */
8661847f8eSopenharmony_ci    UNKNOWN = 0,
8761847f8eSopenharmony_ci
8861847f8eSopenharmony_ci    /**
8961847f8eSopenharmony_ci     * Indicates the color space based on Adobe RGB (1998).
9061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
9161847f8eSopenharmony_ci     * @since 9
9261847f8eSopenharmony_ci     */
9361847f8eSopenharmony_ci    /**
9461847f8eSopenharmony_ci     * Indicates the color space based on Adobe RGB (1998).
9561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
9661847f8eSopenharmony_ci     * @crossplatform
9761847f8eSopenharmony_ci     * @since 11
9861847f8eSopenharmony_ci     */
9961847f8eSopenharmony_ci    /**
10061847f8eSopenharmony_ci     * Indicates the color space based on Adobe RGB (1998).
10161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
10261847f8eSopenharmony_ci     * @crossplatform
10361847f8eSopenharmony_ci     * @atomicservice
10461847f8eSopenharmony_ci     * @since 12
10561847f8eSopenharmony_ci     */
10661847f8eSopenharmony_ci    ADOBE_RGB_1998 = 1,
10761847f8eSopenharmony_ci
10861847f8eSopenharmony_ci    /**
10961847f8eSopenharmony_ci     * Indicates the color space based on SMPTE RP 431-2-2007 and IEC 61966-2.1:1999.
11061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
11161847f8eSopenharmony_ci     * @since 9
11261847f8eSopenharmony_ci     */
11361847f8eSopenharmony_ci    /**
11461847f8eSopenharmony_ci     * Indicates the color space based on SMPTE RP 431-2-2007 and IEC 61966-2.1:1999.
11561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
11661847f8eSopenharmony_ci     * @crossplatform
11761847f8eSopenharmony_ci     * @since 11
11861847f8eSopenharmony_ci     */
11961847f8eSopenharmony_ci    /**
12061847f8eSopenharmony_ci     * Indicates the color space based on SMPTE RP 431-2-2007 and IEC 61966-2.1:1999.
12161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
12261847f8eSopenharmony_ci     * @crossplatform
12361847f8eSopenharmony_ci     * @atomicservice
12461847f8eSopenharmony_ci     * @since 12
12561847f8eSopenharmony_ci     */
12661847f8eSopenharmony_ci    DCI_P3 = 2,
12761847f8eSopenharmony_ci
12861847f8eSopenharmony_ci    /**
12961847f8eSopenharmony_ci     * Indicates the color space based on SMPTE RP 431-2-2007 and IEC 61966-2.1:1999.
13061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
13161847f8eSopenharmony_ci     * @since 9
13261847f8eSopenharmony_ci     */
13361847f8eSopenharmony_ci    /**
13461847f8eSopenharmony_ci     * Indicates the color space based on SMPTE RP 431-2-2007 and IEC 61966-2.1:1999.
13561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
13661847f8eSopenharmony_ci     * @crossplatform
13761847f8eSopenharmony_ci     * @since 11
13861847f8eSopenharmony_ci     */
13961847f8eSopenharmony_ci    /**
14061847f8eSopenharmony_ci     * Indicates the color space based on SMPTE RP 431-2-2007 and IEC 61966-2.1:1999.
14161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
14261847f8eSopenharmony_ci     * @crossplatform
14361847f8eSopenharmony_ci     * @atomicservice
14461847f8eSopenharmony_ci     * @since 12
14561847f8eSopenharmony_ci     */
14661847f8eSopenharmony_ci    DISPLAY_P3 = 3,
14761847f8eSopenharmony_ci
14861847f8eSopenharmony_ci    /**
14961847f8eSopenharmony_ci     * Indicates the standard red green blue (SRGB) color space based on IEC 61966-2.1:1999.
15061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
15161847f8eSopenharmony_ci     * @since 9
15261847f8eSopenharmony_ci     */
15361847f8eSopenharmony_ci    /**
15461847f8eSopenharmony_ci     * Indicates the standard red green blue (SRGB) color space based on IEC 61966-2.1:1999.
15561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
15661847f8eSopenharmony_ci     * @crossplatform
15761847f8eSopenharmony_ci     * @since 11
15861847f8eSopenharmony_ci     */
15961847f8eSopenharmony_ci    /**
16061847f8eSopenharmony_ci     * Indicates the standard red green blue (SRGB) color space based on IEC 61966-2.1:1999.
16161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
16261847f8eSopenharmony_ci     * @crossplatform
16361847f8eSopenharmony_ci     * @atomicservice
16461847f8eSopenharmony_ci     * @since 12
16561847f8eSopenharmony_ci     */
16661847f8eSopenharmony_ci    SRGB = 4,
16761847f8eSopenharmony_ci
16861847f8eSopenharmony_ci    /**
16961847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.709.
17061847f8eSopenharmony_ci     * PRIMARIES_BT709 | TRANSFUNC_BT709 | RANGE_FULL
17161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
17261847f8eSopenharmony_ci     * @crossplatform
17361847f8eSopenharmony_ci     * @since 11
17461847f8eSopenharmony_ci     */
17561847f8eSopenharmony_ci    /**
17661847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.709.
17761847f8eSopenharmony_ci     * PRIMARIES_BT709 | TRANSFUNC_BT709 | RANGE_FULL
17861847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
17961847f8eSopenharmony_ci     * @crossplatform
18061847f8eSopenharmony_ci     * @atomicservice
18161847f8eSopenharmony_ci     * @since 12
18261847f8eSopenharmony_ci     */
18361847f8eSopenharmony_ci    BT709 = 6,
18461847f8eSopenharmony_ci
18561847f8eSopenharmony_ci    /**
18661847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.601.
18761847f8eSopenharmony_ci     * PRIMARIES_BT601_P | TRANSFUNC_BT709 | RANGE_FULL
18861847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
18961847f8eSopenharmony_ci     * @crossplatform
19061847f8eSopenharmony_ci     * @since 11
19161847f8eSopenharmony_ci     */
19261847f8eSopenharmony_ci    /**
19361847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.601.
19461847f8eSopenharmony_ci     * PRIMARIES_BT601_P | TRANSFUNC_BT709 | RANGE_FULL
19561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
19661847f8eSopenharmony_ci     * @crossplatform
19761847f8eSopenharmony_ci     * @atomicservice
19861847f8eSopenharmony_ci     * @since 12
19961847f8eSopenharmony_ci     */
20061847f8eSopenharmony_ci    BT601_EBU = 7,
20161847f8eSopenharmony_ci
20261847f8eSopenharmony_ci    /**
20361847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.601.
20461847f8eSopenharmony_ci     * PRIMARIES_BT601_N | TRANSFUNC_BT709 | RANGE_FULL
20561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
20661847f8eSopenharmony_ci     * @crossplatform
20761847f8eSopenharmony_ci     * @since 11
20861847f8eSopenharmony_ci     */
20961847f8eSopenharmony_ci    /**
21061847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.601.
21161847f8eSopenharmony_ci     * PRIMARIES_BT601_N | TRANSFUNC_BT709 | RANGE_FULL
21261847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
21361847f8eSopenharmony_ci     * @crossplatform
21461847f8eSopenharmony_ci     * @atomicservice
21561847f8eSopenharmony_ci     * @since 12
21661847f8eSopenharmony_ci     */
21761847f8eSopenharmony_ci    BT601_SMPTE_C = 8,
21861847f8eSopenharmony_ci
21961847f8eSopenharmony_ci    /**
22061847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.2020.
22161847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_HLG | RANGE_FULL
22261847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
22361847f8eSopenharmony_ci     * @crossplatform
22461847f8eSopenharmony_ci     * @since 11
22561847f8eSopenharmony_ci     */
22661847f8eSopenharmony_ci    /**
22761847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.2020.
22861847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_HLG | RANGE_FULL
22961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
23061847f8eSopenharmony_ci     * @crossplatform
23161847f8eSopenharmony_ci     * @atomicservice
23261847f8eSopenharmony_ci     * @since 12
23361847f8eSopenharmony_ci     */
23461847f8eSopenharmony_ci    BT2020_HLG = 9,
23561847f8eSopenharmony_ci
23661847f8eSopenharmony_ci    /**
23761847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.2020.
23861847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_PQ | RANGE_FULL
23961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
24061847f8eSopenharmony_ci     * @crossplatform
24161847f8eSopenharmony_ci     * @since 11
24261847f8eSopenharmony_ci     */
24361847f8eSopenharmony_ci    /**
24461847f8eSopenharmony_ci     * Indicates the color space based on ITU-R BT.2020.
24561847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_PQ | RANGE_FULL
24661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
24761847f8eSopenharmony_ci     * @crossplatform
24861847f8eSopenharmony_ci     * @atomicservice
24961847f8eSopenharmony_ci     * @since 12
25061847f8eSopenharmony_ci     */
25161847f8eSopenharmony_ci    BT2020_PQ = 10,
25261847f8eSopenharmony_ci
25361847f8eSopenharmony_ci    /**
25461847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_HLG | RANGE_FULL
25561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
25661847f8eSopenharmony_ci     * @crossplatform
25761847f8eSopenharmony_ci     * @since 11
25861847f8eSopenharmony_ci     */
25961847f8eSopenharmony_ci    /**
26061847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_HLG | RANGE_FULL
26161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
26261847f8eSopenharmony_ci     * @crossplatform
26361847f8eSopenharmony_ci     * @atomicservice
26461847f8eSopenharmony_ci     * @since 12
26561847f8eSopenharmony_ci     */
26661847f8eSopenharmony_ci    P3_HLG = 11,
26761847f8eSopenharmony_ci
26861847f8eSopenharmony_ci    /**
26961847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_PQ | RANGE_FULL
27061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
27161847f8eSopenharmony_ci     * @crossplatform
27261847f8eSopenharmony_ci     * @since 11
27361847f8eSopenharmony_ci     */
27461847f8eSopenharmony_ci    /**
27561847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_PQ | RANGE_FULL
27661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
27761847f8eSopenharmony_ci     * @crossplatform
27861847f8eSopenharmony_ci     * @atomicservice
27961847f8eSopenharmony_ci     * @since 12
28061847f8eSopenharmony_ci     */
28161847f8eSopenharmony_ci    P3_PQ = 12,
28261847f8eSopenharmony_ci
28361847f8eSopenharmony_ci    /**
28461847f8eSopenharmony_ci     * PRIMARIES_ADOBE_RGB | TRANSFUNC_ADOBE_RGB | RANGE_LIMIT
28561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
28661847f8eSopenharmony_ci     * @crossplatform
28761847f8eSopenharmony_ci     * @since 11
28861847f8eSopenharmony_ci     */
28961847f8eSopenharmony_ci    /**
29061847f8eSopenharmony_ci     * PRIMARIES_ADOBE_RGB | TRANSFUNC_ADOBE_RGB | RANGE_LIMIT
29161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
29261847f8eSopenharmony_ci     * @crossplatform
29361847f8eSopenharmony_ci     * @atomicservice
29461847f8eSopenharmony_ci     * @since 12
29561847f8eSopenharmony_ci     */
29661847f8eSopenharmony_ci    ADOBE_RGB_1998_LIMIT = 13,
29761847f8eSopenharmony_ci
29861847f8eSopenharmony_ci    /**
29961847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_SRGB | RANGE_LIMIT
30061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
30161847f8eSopenharmony_ci     * @crossplatform
30261847f8eSopenharmony_ci     * @since 11
30361847f8eSopenharmony_ci     */
30461847f8eSopenharmony_ci    /**
30561847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_SRGB | RANGE_LIMIT
30661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
30761847f8eSopenharmony_ci     * @crossplatform
30861847f8eSopenharmony_ci     * @atomicservice
30961847f8eSopenharmony_ci     * @since 12
31061847f8eSopenharmony_ci     */
31161847f8eSopenharmony_ci    DISPLAY_P3_LIMIT = 14,
31261847f8eSopenharmony_ci
31361847f8eSopenharmony_ci    /**
31461847f8eSopenharmony_ci     * PRIMARIES_SRGB | TRANSFUNC_SRGB | RANGE_LIMIT
31561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
31661847f8eSopenharmony_ci     * @crossplatform
31761847f8eSopenharmony_ci     * @since 11
31861847f8eSopenharmony_ci     */
31961847f8eSopenharmony_ci    /**
32061847f8eSopenharmony_ci     * PRIMARIES_SRGB | TRANSFUNC_SRGB | RANGE_LIMIT
32161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
32261847f8eSopenharmony_ci     * @crossplatform
32361847f8eSopenharmony_ci     * @atomicservice
32461847f8eSopenharmony_ci     * @since 12
32561847f8eSopenharmony_ci     */
32661847f8eSopenharmony_ci    SRGB_LIMIT = 15,
32761847f8eSopenharmony_ci
32861847f8eSopenharmony_ci    /**
32961847f8eSopenharmony_ci     * PRIMARIES_BT709 | TRANSFUNC_BT709 | RANGE_LIMIT
33061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
33161847f8eSopenharmony_ci     * @crossplatform
33261847f8eSopenharmony_ci     * @since 11
33361847f8eSopenharmony_ci     */
33461847f8eSopenharmony_ci    /**
33561847f8eSopenharmony_ci     * PRIMARIES_BT709 | TRANSFUNC_BT709 | RANGE_LIMIT
33661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
33761847f8eSopenharmony_ci     * @crossplatform
33861847f8eSopenharmony_ci     * @atomicservice
33961847f8eSopenharmony_ci     * @since 12
34061847f8eSopenharmony_ci     */
34161847f8eSopenharmony_ci    BT709_LIMIT = 16,
34261847f8eSopenharmony_ci
34361847f8eSopenharmony_ci    /**
34461847f8eSopenharmony_ci     * PRIMARIES_BT601_P | TRANSFUNC_BT709 | RANGE_LIMIT
34561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
34661847f8eSopenharmony_ci     * @crossplatform
34761847f8eSopenharmony_ci     * @since 11
34861847f8eSopenharmony_ci     */
34961847f8eSopenharmony_ci    /**
35061847f8eSopenharmony_ci     * PRIMARIES_BT601_P | TRANSFUNC_BT709 | RANGE_LIMIT
35161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
35261847f8eSopenharmony_ci     * @crossplatform
35361847f8eSopenharmony_ci     * @atomicservice
35461847f8eSopenharmony_ci     * @since 12
35561847f8eSopenharmony_ci     */
35661847f8eSopenharmony_ci    BT601_EBU_LIMIT = 17,
35761847f8eSopenharmony_ci
35861847f8eSopenharmony_ci    /**
35961847f8eSopenharmony_ci     * PRIMARIES_BT601_N | TRANSFUNC_BT709 | RANGE_LIMIT
36061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
36161847f8eSopenharmony_ci     * @crossplatform
36261847f8eSopenharmony_ci     * @since 11
36361847f8eSopenharmony_ci     */
36461847f8eSopenharmony_ci    /**
36561847f8eSopenharmony_ci     * PRIMARIES_BT601_N | TRANSFUNC_BT709 | RANGE_LIMIT
36661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
36761847f8eSopenharmony_ci     * @crossplatform
36861847f8eSopenharmony_ci     * @atomicservice
36961847f8eSopenharmony_ci     * @since 12
37061847f8eSopenharmony_ci     */
37161847f8eSopenharmony_ci    BT601_SMPTE_C_LIMIT = 18,
37261847f8eSopenharmony_ci
37361847f8eSopenharmony_ci    /**
37461847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_HLG | RANGE_LIMIT
37561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
37661847f8eSopenharmony_ci     * @crossplatform
37761847f8eSopenharmony_ci     * @since 11
37861847f8eSopenharmony_ci     */
37961847f8eSopenharmony_ci    /**
38061847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_HLG | RANGE_LIMIT
38161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
38261847f8eSopenharmony_ci     * @crossplatform
38361847f8eSopenharmony_ci     * @atomicservice
38461847f8eSopenharmony_ci     * @since 12
38561847f8eSopenharmony_ci     */
38661847f8eSopenharmony_ci    BT2020_HLG_LIMIT = 19,
38761847f8eSopenharmony_ci
38861847f8eSopenharmony_ci    /**
38961847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_PQ | RANGE_LIMIT
39061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
39161847f8eSopenharmony_ci     * @crossplatform
39261847f8eSopenharmony_ci     * @since 11
39361847f8eSopenharmony_ci     */
39461847f8eSopenharmony_ci    /**
39561847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_PQ | RANGE_LIMIT
39661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
39761847f8eSopenharmony_ci     * @crossplatform
39861847f8eSopenharmony_ci     * @atomicservice
39961847f8eSopenharmony_ci     * @since 12
40061847f8eSopenharmony_ci     */
40161847f8eSopenharmony_ci    BT2020_PQ_LIMIT = 20,
40261847f8eSopenharmony_ci
40361847f8eSopenharmony_ci    /**
40461847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_HLG | RANGE_LIMIT
40561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
40661847f8eSopenharmony_ci     * @crossplatform
40761847f8eSopenharmony_ci     * @since 11
40861847f8eSopenharmony_ci     */
40961847f8eSopenharmony_ci    /**
41061847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_HLG | RANGE_LIMIT
41161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
41261847f8eSopenharmony_ci     * @crossplatform
41361847f8eSopenharmony_ci     * @atomicservice
41461847f8eSopenharmony_ci     * @since 12
41561847f8eSopenharmony_ci     */
41661847f8eSopenharmony_ci    P3_HLG_LIMIT = 21,
41761847f8eSopenharmony_ci
41861847f8eSopenharmony_ci    /**
41961847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_PQ | RANGE_LIMIT
42061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
42161847f8eSopenharmony_ci     * @crossplatform
42261847f8eSopenharmony_ci     * @since 11
42361847f8eSopenharmony_ci     */
42461847f8eSopenharmony_ci    /**
42561847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_PQ | RANGE_LIMIT
42661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
42761847f8eSopenharmony_ci     * @crossplatform
42861847f8eSopenharmony_ci     * @atomicservice
42961847f8eSopenharmony_ci     * @since 12
43061847f8eSopenharmony_ci     */
43161847f8eSopenharmony_ci    P3_PQ_LIMIT = 22,
43261847f8eSopenharmony_ci
43361847f8eSopenharmony_ci    /**
43461847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_LINEAR
43561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
43661847f8eSopenharmony_ci     * @crossplatform
43761847f8eSopenharmony_ci     * @since 11
43861847f8eSopenharmony_ci     */
43961847f8eSopenharmony_ci    /**
44061847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_LINEAR
44161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
44261847f8eSopenharmony_ci     * @crossplatform
44361847f8eSopenharmony_ci     * @atomicservice
44461847f8eSopenharmony_ci     * @since 12
44561847f8eSopenharmony_ci     */
44661847f8eSopenharmony_ci    LINEAR_P3 = 23,
44761847f8eSopenharmony_ci
44861847f8eSopenharmony_ci    /**
44961847f8eSopenharmony_ci     * PRIMARIES_SRGB | TRANSFUNC_LINEAR
45061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
45161847f8eSopenharmony_ci     * @crossplatform
45261847f8eSopenharmony_ci     * @since 11
45361847f8eSopenharmony_ci     */
45461847f8eSopenharmony_ci    /**
45561847f8eSopenharmony_ci     * PRIMARIES_SRGB | TRANSFUNC_LINEAR
45661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
45761847f8eSopenharmony_ci     * @crossplatform
45861847f8eSopenharmony_ci     * @atomicservice
45961847f8eSopenharmony_ci     * @since 12
46061847f8eSopenharmony_ci     */
46161847f8eSopenharmony_ci    LINEAR_SRGB = 24,
46261847f8eSopenharmony_ci
46361847f8eSopenharmony_ci    /**
46461847f8eSopenharmony_ci     * PRIMARIES_BT709 | TRANSFUNC_LINEAR
46561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
46661847f8eSopenharmony_ci     * @crossplatform
46761847f8eSopenharmony_ci     * @since 11
46861847f8eSopenharmony_ci     */
46961847f8eSopenharmony_ci    /**
47061847f8eSopenharmony_ci     * PRIMARIES_BT709 | TRANSFUNC_LINEAR
47161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
47261847f8eSopenharmony_ci     * @crossplatform
47361847f8eSopenharmony_ci     * @atomicservice
47461847f8eSopenharmony_ci     * @since 12
47561847f8eSopenharmony_ci     */
47661847f8eSopenharmony_ci    LINEAR_BT709 = LINEAR_SRGB,
47761847f8eSopenharmony_ci
47861847f8eSopenharmony_ci    /**
47961847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_LINEAR
48061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
48161847f8eSopenharmony_ci     * @crossplatform
48261847f8eSopenharmony_ci     * @since 11
48361847f8eSopenharmony_ci     */
48461847f8eSopenharmony_ci    /**
48561847f8eSopenharmony_ci     * PRIMARIES_BT2020 | TRANSFUNC_LINEAR
48661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
48761847f8eSopenharmony_ci     * @crossplatform
48861847f8eSopenharmony_ci     * @atomicservice
48961847f8eSopenharmony_ci     * @since 12
49061847f8eSopenharmony_ci     */
49161847f8eSopenharmony_ci    LINEAR_BT2020 = 25,
49261847f8eSopenharmony_ci
49361847f8eSopenharmony_ci    /**
49461847f8eSopenharmony_ci     * PRIMARIES_SRGB | TRANSFUNC_SRGB | RANGE_FULL
49561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
49661847f8eSopenharmony_ci     * @crossplatform
49761847f8eSopenharmony_ci     * @since 11
49861847f8eSopenharmony_ci     */
49961847f8eSopenharmony_ci    /**
50061847f8eSopenharmony_ci     * PRIMARIES_SRGB | TRANSFUNC_SRGB | RANGE_FULL
50161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
50261847f8eSopenharmony_ci     * @crossplatform
50361847f8eSopenharmony_ci     * @atomicservice
50461847f8eSopenharmony_ci     * @since 12
50561847f8eSopenharmony_ci     */
50661847f8eSopenharmony_ci    DISPLAY_SRGB = SRGB,
50761847f8eSopenharmony_ci
50861847f8eSopenharmony_ci    /**
50961847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_SRGB | RANGE_FULL
51061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
51161847f8eSopenharmony_ci     * @crossplatform
51261847f8eSopenharmony_ci     * @since 11
51361847f8eSopenharmony_ci     */
51461847f8eSopenharmony_ci    /**
51561847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_SRGB | RANGE_FULL
51661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
51761847f8eSopenharmony_ci     * @crossplatform
51861847f8eSopenharmony_ci     * @atomicservice
51961847f8eSopenharmony_ci     * @since 12
52061847f8eSopenharmony_ci     */
52161847f8eSopenharmony_ci    DISPLAY_P3_SRGB = DISPLAY_P3,
52261847f8eSopenharmony_ci
52361847f8eSopenharmony_ci    /**
52461847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_HLG | RANGE_FULL
52561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
52661847f8eSopenharmony_ci     * @crossplatform
52761847f8eSopenharmony_ci     * @since 11
52861847f8eSopenharmony_ci     */
52961847f8eSopenharmony_ci    /**
53061847f8eSopenharmony_ci     * PRIMARIES_P3_D65 | TRANSFUNC_HLG | RANGE_FULL
53161847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
53261847f8eSopenharmony_ci     * @crossplatform
53361847f8eSopenharmony_ci     * @atomicservice
53461847f8eSopenharmony_ci     * @since 12
53561847f8eSopenharmony_ci     */
53661847f8eSopenharmony_ci    DISPLAY_P3_HLG = P3_HLG,
53761847f8eSopenharmony_ci
53861847f8eSopenharmony_ci    /**
53961847f8eSopenharmony_ci     * PRIMARIES_DISPLAY_P3 | TRANSFUNC_PQ | RANGE_FULL
54061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
54161847f8eSopenharmony_ci     * @crossplatform
54261847f8eSopenharmony_ci     * @since 11
54361847f8eSopenharmony_ci     */
54461847f8eSopenharmony_ci    /**
54561847f8eSopenharmony_ci     * PRIMARIES_DISPLAY_P3 | TRANSFUNC_PQ | RANGE_FULL
54661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
54761847f8eSopenharmony_ci     * @crossplatform
54861847f8eSopenharmony_ci     * @atomicservice
54961847f8eSopenharmony_ci     * @since 12
55061847f8eSopenharmony_ci     */
55161847f8eSopenharmony_ci    DISPLAY_P3_PQ = P3_PQ,
55261847f8eSopenharmony_ci
55361847f8eSopenharmony_ci    /**
55461847f8eSopenharmony_ci     * Indicates a customized color space.
55561847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
55661847f8eSopenharmony_ci     * @since 9
55761847f8eSopenharmony_ci     */
55861847f8eSopenharmony_ci    /**
55961847f8eSopenharmony_ci     * Indicates a customized color space.
56061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
56161847f8eSopenharmony_ci     * @crossplatform
56261847f8eSopenharmony_ci     * @since 11
56361847f8eSopenharmony_ci     */
56461847f8eSopenharmony_ci    /**
56561847f8eSopenharmony_ci     * Indicates a customized color space.
56661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
56761847f8eSopenharmony_ci     * @crossplatform
56861847f8eSopenharmony_ci     * @atomicservice
56961847f8eSopenharmony_ci     * @since 12
57061847f8eSopenharmony_ci     */
57161847f8eSopenharmony_ci    CUSTOM = 5,
57261847f8eSopenharmony_ci  }
57361847f8eSopenharmony_ci
57461847f8eSopenharmony_ci  /**
57561847f8eSopenharmony_ci   * Describes the primary colors red, green, blue and white point coordinated as (x, y)
57661847f8eSopenharmony_ci   * in color space, in terms of real world chromaticities.
57761847f8eSopenharmony_ci   * @typedef ColorSpacePrimaries
57861847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
57961847f8eSopenharmony_ci   * @since 9
58061847f8eSopenharmony_ci   */
58161847f8eSopenharmony_ci  /**
58261847f8eSopenharmony_ci   * Describes the primary colors red, green, blue and white point coordinated as (x, y)
58361847f8eSopenharmony_ci   * in color space, in terms of real world chromaticities.
58461847f8eSopenharmony_ci   * @typedef ColorSpacePrimaries
58561847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
58661847f8eSopenharmony_ci   * @crossplatform
58761847f8eSopenharmony_ci   * @since 11
58861847f8eSopenharmony_ci   */
58961847f8eSopenharmony_ci  interface ColorSpacePrimaries {
59061847f8eSopenharmony_ci    /**
59161847f8eSopenharmony_ci     * Coordinate value x of red color
59261847f8eSopenharmony_ci     * @type { number }
59361847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
59461847f8eSopenharmony_ci     * @since 9
59561847f8eSopenharmony_ci     */
59661847f8eSopenharmony_ci    /**
59761847f8eSopenharmony_ci     * Coordinate value x of red color
59861847f8eSopenharmony_ci     * @type { number }
59961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
60061847f8eSopenharmony_ci     * @crossplatform
60161847f8eSopenharmony_ci     * @since 11
60261847f8eSopenharmony_ci     */
60361847f8eSopenharmony_ci    redX: number;
60461847f8eSopenharmony_ci
60561847f8eSopenharmony_ci    /**
60661847f8eSopenharmony_ci     * Coordinate value y of red color
60761847f8eSopenharmony_ci     * @type { number }
60861847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
60961847f8eSopenharmony_ci     * @since 9
61061847f8eSopenharmony_ci     */
61161847f8eSopenharmony_ci    /**
61261847f8eSopenharmony_ci     * Coordinate value y of red color
61361847f8eSopenharmony_ci     * @type { number }
61461847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
61561847f8eSopenharmony_ci     * @crossplatform
61661847f8eSopenharmony_ci     * @since 11
61761847f8eSopenharmony_ci     */
61861847f8eSopenharmony_ci    redY: number;
61961847f8eSopenharmony_ci
62061847f8eSopenharmony_ci    /**
62161847f8eSopenharmony_ci     * Coordinate value x of green color
62261847f8eSopenharmony_ci     * @type { number }
62361847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
62461847f8eSopenharmony_ci     * @since 9
62561847f8eSopenharmony_ci     */
62661847f8eSopenharmony_ci    /**
62761847f8eSopenharmony_ci     * Coordinate value x of green color
62861847f8eSopenharmony_ci     * @type { number }
62961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
63061847f8eSopenharmony_ci     * @crossplatform
63161847f8eSopenharmony_ci     * @since 11
63261847f8eSopenharmony_ci     */
63361847f8eSopenharmony_ci    greenX: number;
63461847f8eSopenharmony_ci
63561847f8eSopenharmony_ci    /**
63661847f8eSopenharmony_ci     * Coordinate value y of green color
63761847f8eSopenharmony_ci     * @type { number }
63861847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
63961847f8eSopenharmony_ci     * @since 9
64061847f8eSopenharmony_ci     */
64161847f8eSopenharmony_ci    /**
64261847f8eSopenharmony_ci     * Coordinate value y of green color
64361847f8eSopenharmony_ci     * @type { number }
64461847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
64561847f8eSopenharmony_ci     * @crossplatform
64661847f8eSopenharmony_ci     * @since 11
64761847f8eSopenharmony_ci     */
64861847f8eSopenharmony_ci    greenY: number;
64961847f8eSopenharmony_ci
65061847f8eSopenharmony_ci    /**
65161847f8eSopenharmony_ci     * Coordinate value x of blue color
65261847f8eSopenharmony_ci     * @type { number }
65361847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
65461847f8eSopenharmony_ci     * @since 9
65561847f8eSopenharmony_ci     */
65661847f8eSopenharmony_ci    /**
65761847f8eSopenharmony_ci     * Coordinate value x of blue color
65861847f8eSopenharmony_ci     * @type { number }
65961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
66061847f8eSopenharmony_ci     * @crossplatform
66161847f8eSopenharmony_ci     * @since 11
66261847f8eSopenharmony_ci     */
66361847f8eSopenharmony_ci    blueX: number;
66461847f8eSopenharmony_ci
66561847f8eSopenharmony_ci    /**
66661847f8eSopenharmony_ci     * Coordinate value y of blue color
66761847f8eSopenharmony_ci     * @type { number }
66861847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
66961847f8eSopenharmony_ci     * @since 9
67061847f8eSopenharmony_ci     */
67161847f8eSopenharmony_ci    /**
67261847f8eSopenharmony_ci     * Coordinate value y of blue color
67361847f8eSopenharmony_ci     * @type { number }
67461847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
67561847f8eSopenharmony_ci     * @crossplatform
67661847f8eSopenharmony_ci     * @since 11
67761847f8eSopenharmony_ci     */
67861847f8eSopenharmony_ci    blueY: number;
67961847f8eSopenharmony_ci
68061847f8eSopenharmony_ci    /**
68161847f8eSopenharmony_ci     * Coordinate value x of white point
68261847f8eSopenharmony_ci     * @type { number }
68361847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
68461847f8eSopenharmony_ci     * @since 9
68561847f8eSopenharmony_ci     */
68661847f8eSopenharmony_ci    /**
68761847f8eSopenharmony_ci     * Coordinate value x of white point
68861847f8eSopenharmony_ci     * @type { number }
68961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
69061847f8eSopenharmony_ci     * @crossplatform
69161847f8eSopenharmony_ci     * @since 11
69261847f8eSopenharmony_ci     */
69361847f8eSopenharmony_ci    whitePointX: number;
69461847f8eSopenharmony_ci
69561847f8eSopenharmony_ci    /**
69661847f8eSopenharmony_ci     * Coordinate value y of white point
69761847f8eSopenharmony_ci     * @type { number }
69861847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
69961847f8eSopenharmony_ci     * @since 9
70061847f8eSopenharmony_ci     */
70161847f8eSopenharmony_ci    /**
70261847f8eSopenharmony_ci     * Coordinate value y of white point
70361847f8eSopenharmony_ci     * @type { number }
70461847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
70561847f8eSopenharmony_ci     * @crossplatform
70661847f8eSopenharmony_ci     * @since 11
70761847f8eSopenharmony_ci     */
70861847f8eSopenharmony_ci    whitePointY: number;
70961847f8eSopenharmony_ci  }
71061847f8eSopenharmony_ci
71161847f8eSopenharmony_ci  /**
71261847f8eSopenharmony_ci   * Defines a color space object and manages its key information
71361847f8eSopenharmony_ci   * @interface ColorSpaceManager
71461847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
71561847f8eSopenharmony_ci   * @since 9
71661847f8eSopenharmony_ci   */
71761847f8eSopenharmony_ci  /**
71861847f8eSopenharmony_ci   * Defines a color space object and manages its key information
71961847f8eSopenharmony_ci   * @interface ColorSpaceManager
72061847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
72161847f8eSopenharmony_ci   * @crossplatform
72261847f8eSopenharmony_ci   * @since 11
72361847f8eSopenharmony_ci   */
72461847f8eSopenharmony_ci  interface ColorSpaceManager {
72561847f8eSopenharmony_ci    /**
72661847f8eSopenharmony_ci     * Get the name of color space type.
72761847f8eSopenharmony_ci     * @returns { ColorSpace } Returns the name of color space type.
72861847f8eSopenharmony_ci     * @throws { BusinessError } 18600001 - The parameter value is abnormal.
72961847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
73061847f8eSopenharmony_ci     * @since 9
73161847f8eSopenharmony_ci     */
73261847f8eSopenharmony_ci    /**
73361847f8eSopenharmony_ci     * Get the name of color space type.
73461847f8eSopenharmony_ci     * @returns { ColorSpace } Returns the name of color space type.
73561847f8eSopenharmony_ci     * @throws { BusinessError } 18600001 - The parameter value is abnormal.
73661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
73761847f8eSopenharmony_ci     * @crossplatform
73861847f8eSopenharmony_ci     * @since 11
73961847f8eSopenharmony_ci     */
74061847f8eSopenharmony_ci    getColorSpaceName(): ColorSpace;
74161847f8eSopenharmony_ci
74261847f8eSopenharmony_ci    /**
74361847f8eSopenharmony_ci     * Get white point(x, y) of color space.
74461847f8eSopenharmony_ci     * @returns { Array<number> } Returns the white point value of color space.
74561847f8eSopenharmony_ci     * @throws { BusinessError } 18600001 - The parameter value is abnormal.
74661847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
74761847f8eSopenharmony_ci     * @since 9
74861847f8eSopenharmony_ci     */
74961847f8eSopenharmony_ci    /**
75061847f8eSopenharmony_ci     * Get white point(x, y) of color space.
75161847f8eSopenharmony_ci     * @returns { Array<number> } Returns the white point value of color space.
75261847f8eSopenharmony_ci     * @throws { BusinessError } 18600001 - The parameter value is abnormal.
75361847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
75461847f8eSopenharmony_ci     * @crossplatform
75561847f8eSopenharmony_ci     * @since 11
75661847f8eSopenharmony_ci     */
75761847f8eSopenharmony_ci    getWhitePoint(): Array<number>;
75861847f8eSopenharmony_ci
75961847f8eSopenharmony_ci    /**
76061847f8eSopenharmony_ci     * Get gamma value of color space.
76161847f8eSopenharmony_ci     * @returns { number } Returns the gamma value of color space.
76261847f8eSopenharmony_ci     * @throws { BusinessError } 18600001 - The parameter value is abnormal.
76361847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
76461847f8eSopenharmony_ci     * @since 9
76561847f8eSopenharmony_ci     */
76661847f8eSopenharmony_ci    /**
76761847f8eSopenharmony_ci     * Get gamma value of color space.
76861847f8eSopenharmony_ci     * @returns { number } Returns the gamma value of color space.
76961847f8eSopenharmony_ci     * @throws { BusinessError } 18600001 - The parameter value is abnormal.
77061847f8eSopenharmony_ci     * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
77161847f8eSopenharmony_ci     * @crossplatform
77261847f8eSopenharmony_ci     * @since 11
77361847f8eSopenharmony_ci     */
77461847f8eSopenharmony_ci    getGamma(): number;
77561847f8eSopenharmony_ci  }
77661847f8eSopenharmony_ci
77761847f8eSopenharmony_ci  /**
77861847f8eSopenharmony_ci   * Create a color space manager by provided color space type.
77961847f8eSopenharmony_ci   * @param { ColorSpace } colorSpaceName - Indicates the type of color space
78061847f8eSopenharmony_ci   * @returns { ColorSpaceManager } Returns a color space manager object created by provided type.
78161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type.
78261847f8eSopenharmony_ci   *                                 2.Parameter verification failed.
78361847f8eSopenharmony_ci   * @throws { BusinessError } 18600001 - The parameter value is abnormal.
78461847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
78561847f8eSopenharmony_ci   * @since 9
78661847f8eSopenharmony_ci   */
78761847f8eSopenharmony_ci  /**
78861847f8eSopenharmony_ci   * Create a color space manager by provided color space type.
78961847f8eSopenharmony_ci   * @param { ColorSpace } colorSpaceName - Indicates the type of color space
79061847f8eSopenharmony_ci   * @returns { ColorSpaceManager } Returns a color space manager object created by provided type.
79161847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type.
79261847f8eSopenharmony_ci   *                                 2.Parameter verification failed.
79361847f8eSopenharmony_ci   * @throws { BusinessError } 18600001 - The parameter value is abnormal.
79461847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
79561847f8eSopenharmony_ci   * @crossplatform
79661847f8eSopenharmony_ci   * @since 11
79761847f8eSopenharmony_ci   */
79861847f8eSopenharmony_ci  function create(colorSpaceName: ColorSpace): ColorSpaceManager;
79961847f8eSopenharmony_ci
80061847f8eSopenharmony_ci  /**
80161847f8eSopenharmony_ci   * Create a customized color space manager by its color primaries and gamma value
80261847f8eSopenharmony_ci   * @param { ColorSpacePrimaries } primaries - Indicates the customized color primaries
80361847f8eSopenharmony_ci   * @param { number } gamma - Indicates display gamma value
80461847f8eSopenharmony_ci   * @returns { ColorSpaceManager } Returns a color space manager object created by customized parameters.
80561847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type.
80661847f8eSopenharmony_ci   *                                 2.Parameter verification failed.
80761847f8eSopenharmony_ci   * @throws { BusinessError } 18600001 - The parameter value is abnormal.
80861847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
80961847f8eSopenharmony_ci   * @since 9
81061847f8eSopenharmony_ci   */
81161847f8eSopenharmony_ci  /**
81261847f8eSopenharmony_ci   * Create a customized color space manager by its color primaries and gamma value
81361847f8eSopenharmony_ci   * @param { ColorSpacePrimaries } primaries - Indicates the customized color primaries
81461847f8eSopenharmony_ci   * @param { number } gamma - Indicates display gamma value
81561847f8eSopenharmony_ci   * @returns { ColorSpaceManager } Returns a color space manager object created by customized parameters.
81661847f8eSopenharmony_ci   * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type.
81761847f8eSopenharmony_ci   *                                 2.Parameter verification failed.
81861847f8eSopenharmony_ci   * @throws { BusinessError } 18600001 - The parameter value is abnormal.
81961847f8eSopenharmony_ci   * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core
82061847f8eSopenharmony_ci   * @crossplatform
82161847f8eSopenharmony_ci   * @since 11
82261847f8eSopenharmony_ci   */
82361847f8eSopenharmony_ci  function create(primaries: ColorSpacePrimaries, gamma: number): ColorSpaceManager;
82461847f8eSopenharmony_ci}
82561847f8eSopenharmony_ci
82661847f8eSopenharmony_ciexport default colorSpaceManager;