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