1 /* 2 * Copyright (c) 2021 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_DISTRIBUTED_CAMERA_CONSTANTS_H 17 #define OHOS_DISTRIBUTED_CAMERA_CONSTANTS_H 18 19 #include <cstdint> 20 #include <string> 21 #include <unistd.h> 22 23 namespace OHOS { 24 namespace DistributedHardware { 25 typedef enum { 26 DCAMERA_SRV_STATE_NOT_START, 27 DCAMERA_SRV_STATE_RUNNING 28 } DCameraServiceState; 29 30 typedef enum { 31 DCAMERA_AUTHORIZATION_DEFAULT = 0, 32 DCAMERA_AUTHORIZATION_AGREE = 1, 33 DCAMERA_AUTHORIZATION_REJECT = 2, 34 DCAMERA_AUTHORIZATION_TIMEOUT = 3, 35 } AuthorizationState; 36 37 typedef enum { 38 DCAMERA_SAME_ACCOUNT = 0, 39 DCAMERA_DIFF_ACCOUNT = 1, 40 DCAMERA_NO_ACCOUNT = 2, 41 } AccessControlType; 42 43 typedef enum { 44 DCAMERA_MESSAGE = 0, 45 DCAMERA_OPERATION = 1, 46 } DCameraEventType; 47 48 typedef enum { 49 DCAMERA_EVENT_CHANNEL_DISCONNECTED = 0, 50 DCAMERA_EVENT_CHANNEL_CONNECTED = 1, 51 DCAMERA_EVENT_CAMERA_SUCCESS = 2, 52 53 DCAMERA_EVENT_CAMERA_ERROR = -1, 54 DCAMERA_EVENT_OPEN_CHANNEL_ERROR = -2, 55 DCAMERA_EVENT_CLOSE_CHANNEL_ERROR = -3, 56 DCAMERA_EVENT_CONFIG_STREAMS_ERROR = -4, 57 DCAMERA_EVENT_RELEASE_STREAMS_ERROR = -5, 58 DCAMERA_EVENT_START_CAPTURE_ERROR = -6, 59 DCAMERA_EVENT_STOP_CAPTURE_ERROR = -7, 60 DCAMERA_EVENT_UPDATE_SETTINGS_ERROR = -8, 61 } DCameraEventResult; 62 63 typedef enum { 64 OHOS_CAMERA_FORMAT_INVALID = 0, 65 OHOS_CAMERA_FORMAT_RGBA_8888, 66 OHOS_CAMERA_FORMAT_YCBCR_420_888, 67 OHOS_CAMERA_FORMAT_YCRCB_420_SP, 68 OHOS_CAMERA_FORMAT_JPEG, 69 } DCameraFormat; 70 71 const uint32_t DCAMERA_MAX_NUM = 1; 72 const uint32_t DCAMERA_PRODUCER_ONE_MINUTE_MS = 1000; 73 const uint32_t DCAMERA_PRODUCER_FPS_DEFAULT = 30; 74 const uint32_t DCAMERA_MAX_RECV_DATA_LEN = 104857600; 75 const uint32_t DISTRIBUTED_HARDWARE_CAMERA_SOURCE_SA_ID = 4803; 76 const uint32_t DISTRIBUTED_HARDWARE_CAMERA_SINK_SA_ID = 4804; 77 const std::string DCAMERA_PKG_NAME = "ohos.dhardware"; 78 const std::string SNAP_SHOT_SESSION_FLAG = "dataSnapshot"; 79 const std::string CONTINUE_SESSION_FLAG = "dataContinue"; 80 81 const std::string DISTRIBUTED_HARDWARE_ID_KEY = "dhID"; 82 const std::string CAMERA_ID_PREFIX = "Camera_"; 83 const std::string CAMERA_PROTOCOL_VERSION_KEY = "ProtocolVer"; 84 const std::string CAMERA_PROTOCOL_VERSION_VALUE = "1.0"; 85 const std::string CAMERA_POSITION_KEY = "Position"; 86 const std::string CAMERA_POSITION_BACK = "BACK"; 87 const std::string CAMERA_POSITION_FRONT = "FRONT"; 88 const std::string CAMERA_POSITION_UNSPECIFIED = "UNSPECIFIED"; 89 const std::string CAMERA_METADATA_KEY = "MetaData"; 90 const std::string CAMERA_CODEC_TYPE_KEY = "CodecType"; 91 const std::string CAMERA_FORMAT_KEY = "OutputFormat"; 92 const std::string CAMERA_FORMAT_PREVIEW = "Preview"; 93 const std::string CAMERA_FORMAT_VIDEO = "Video"; 94 const std::string CAMERA_FORMAT_PHOTO = "Photo"; 95 const std::string CAMERA_RESOLUTION_KEY = "Resolution"; 96 const std::string CAMERA_SURFACE_FORMAT = "CAMERA_SURFACE_FORMAT"; 97 98 const int32_t RESOLUTION_MAX_WIDTH_SNAPSHOT = 4096; 99 const int32_t RESOLUTION_MAX_HEIGHT_SNAPSHOT = 3072; 100 const int32_t RESOLUTION_MAX_WIDTH_CONTINUOUS = 1920; 101 const int32_t RESOLUTION_MAX_HEIGHT_CONTINUOUS = 1080; 102 const int32_t RESOLUTION_MIN_WIDTH = 320; 103 const int32_t RESOLUTION_MIN_HEIGHT = 240; 104 105 const uint32_t DCAMERA_SHIFT_32 = 32; 106 const uint32_t DCAMERA_SHIFT_24 = 24; 107 const uint32_t DCAMERA_SHIFT_16 = 16; 108 const uint32_t DCAMERA_SHIFT_8 = 8; 109 110 const uint32_t UINT32_SHIFT_MASK_24 = 0xff000000; 111 const uint32_t UINT32_SHIFT_MASK_16 = 0x00ff0000; 112 const uint32_t UINT32_SHIFT_MASK_8 = 0x0000ff00; 113 const uint32_t UINT32_SHIFT_MASK_0 = 0x000000ff; 114 const uint16_t UINT16_SHIFT_MASK_0 = 0x00ff; 115 } // namespace DistributedHardware 116 } // namespace OHOS 117 #endif // OHOS_DISTRIBUTED_CAMERA_CONSTANTS_H