• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2024 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 LIBEXIF_MNOTE_HUAWEI_TAG_H
17 #define LIBEXIF_MNOTE_HUAWEI_TAG_H
18 
19 #include <libexif/exif-data.h>
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif /* __cplusplus */
24 
25 enum _MnoteHuaweiTag {
26 	MNOTE_HUAWEI_INFO				= 0xFFFF,
27 	MNOTE_HUAWEI_CAPTURE_MODE		= 0x0200,
28 	MNOTE_HUAWEI_BURST_NUMBER		= 0x0201,
29 	MNOTE_HUAWEI_FRONT_CAMERA		= 0x0202,
30 	MNOTE_HUAWEI_ROLL_ANGLE			= 0x0203,
31 	MNOTE_HUAWEI_PITCH_ANGLE		= 0x0204,
32 	MNOTE_HUAWEI_PHYSICAL_APERTURE	= 0x0205,
33     MNOTE_HUAWEI_IS_XMAGE_SUPPORTED   = 0x0206,
34     MNOTE_HUAWEI_XMAGE_MODE         = 0x0207,
35     MNOTE_HUAWEI_XMAGE_LEFT         = 0x0208,
36     MNOTE_HUAWEI_XMAGE_TOP          = 0x0209,
37     MNOTE_HUAWEI_XMAGE_RIGHT        = 0x020a,
38     MNOTE_HUAWEI_XMAGE_BOTTOM       = 0x020b,
39     MNOTE_HUAWEI_CLOUD_ENHANCEMENT_MODE = 0x020c,
40 	MNOTE_HUAWEI_FOCUS_MODE			= 0x020d,
41     MNOTE_HUAWEI_WIND_SNAPSHOT_MODE = 0x020e,
42 	MNOTE_MOVING_PHOTO_VERSION		= 0x020f,
43 	MNOTE_MICRO_VIDEO_PRESENTATION_TIMESTAMP_US	= 0x0210,
44     MNOTE_MOVING_PHOTO_ID			= 0x0211,
45     MNOTE_HUAWEI_AI_EDIT			= 0x0212,
46 
47 	MNOTE_HUAWEI_SCENE_INFO			= 0x0000, /* subtree */
48 	MNOTE_HUAWEI_SCENE_VERSION		= 0x0001,
49 	MNOTE_HUAWEI_SCENE_FOOD_CONF	= 0x0002,
50 	MNOTE_HUAWEI_SCENE_STAGE_CONF	= 0x0003,
51 	MNOTE_HUAWEI_SCENE_BLUESKY_CONF	= 0x0004,
52 	MNOTE_HUAWEI_SCENE_GREENPLANT_CONF	= 0x0005,
53 	MNOTE_HUAWEI_SCENE_BEACH_CONF	= 0x0006,
54 	MNOTE_HUAWEI_SCENE_SNOW_CONF	= 0x0007,
55 	MNOTE_HUAWEI_SCENE_SUNSET_CONF	= 0x0008,
56 	MNOTE_HUAWEI_SCENE_FLOWERS_CONF	= 0x0009,
57 	MNOTE_HUAWEI_SCENE_NIGHT_CONF	= 0x000a,
58 	MNOTE_HUAWEI_SCENE_TEXT_CONF	= 0x000b,
59 
60 	MNOTE_HUAWEI_FACE_INFO			= 0x0100, /* subtree */
61 	MNOTE_HUAWEI_FACE_VERSION 		= 0x0101,
62 	MNOTE_HUAWEI_FACE_COUNT 		= 0x0102,
63 	MNOTE_HUAWEI_FACE_CONF 			= 0x0103,
64 	MNOTE_HUAWEI_FACE_SMILE_SCORE 	= 0x0104,
65 	MNOTE_HUAWEI_FACE_RECT		 	= 0x0105,
66 	MNOTE_HUAWEI_FACE_LEYE_CENTER 	= 0x0106,
67 	MNOTE_HUAWEI_FACE_REYE_CENTER 	= 0x0107,
68 	MNOTE_HUAWEI_FACE_MOUTH_CENTER 	= 0x0108,
69 };
70 typedef enum _MnoteHuaweiTag MnoteHuaweiTag;
71 
72 enum _MnoteHuaweiTagType {
73 	MNOTE_HUAWEI_TAG_TYPE_UNKONW,
74 	MNOTE_HUAWEI_TAG_TYPE_TAG,
75 	MNOTE_HUAWEI_TAG_TYPE_IFD,
76 	MNOTE_HUAWEI_TAG_TYPE_STRUCT,
77 };
78 typedef enum _MnoteHuaweiTagType MnoteHuaweiTagType;
79 
80 MnoteHuaweiTag mnote_huawei_tag_from_name(const char *name);
81 const char *mnote_huawei_tag_get_name(MnoteHuaweiTag);
82 const char *mnote_huawei_tag_get_title(MnoteHuaweiTag);
83 const char *mnote_huawei_tag_get_description(MnoteHuaweiTag);
84 MnoteHuaweiTagType mnote_huawei_tag_type(MnoteHuaweiTag);
85 MnoteHuaweiTag get_tag_owner_tag(MnoteHuaweiTag tag);
86 int is_ifd_tag(MnoteHuaweiTag tag);
87 
88 #ifdef __cplusplus
89 }
90 #endif /* __cplusplus */
91 
92 #endif /* !defined(LIBEXIF_MNOTE_HUAWEI_TAG_H) */
93