From 4bfe51e2f8a6b5efd71e9a6ee24f34fa17e55e01 Mon Sep 17 00:00:00 2001 From: MisterE Date: Tue, 13 May 2025 09:52:58 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=85=B7=E8=BA=AB=E6=9C=BA=E6=A2=B0?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MisterE --- ...s.distributedHardware.mechanicManager.d.ts | 883 ++++++++++++++++++ api/device-define/default.json | 7 +- api/device-define/tablet.json | 6 +- .../api_check_plugin/code_style_rule.json | 3 +- kits/@kit.MechanicKit.d.ts | 23 + 5 files changed, 918 insertions(+), 4 deletions(-) create mode 100644 api/@ohos.distributedHardware.mechanicManager.d.ts create mode 100644 kits/@kit.MechanicKit.d.ts diff --git a/api/@ohos.distributedHardware.mechanicManager.d.ts b/api/@ohos.distributedHardware.mechanicManager.d.ts new file mode 100644 index 0000000000..e5a5eed669 --- /dev/null +++ b/api/@ohos.distributedHardware.mechanicManager.d.ts @@ -0,0 +1,883 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit MechanicKit + * @arkts 1.1&1.2 + */ + +import type { Callback } from './@ohos.base'; + +/** + * Provides capabilities for controlling and interacting with mechanical devices connected to this device. + * The capabilities cover connection management, control, and monitoring. + * + * @namespace mechanicManager + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + +declare namespace mechanicManager { + + /** + * Subscribes to device attachment state change events. + * @param { 'attachStateChange' } type Event type. + * @param { Callback } callback Callback used to return the state change. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + function on(type: 'attachStateChange', callback: Callback): void; + + /** + * Unsubscribes from device attachment state change events. + * @param { 'attachStateChange' } type Event type. + * @param { Callback } [callback] Callback used to return the state change. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + function off(type: 'attachStateChange', callback?: Callback): void; + + /** + * Obtain the list of connected mechanical devices. + * @returns { MechInfo[] } List of connected mechanical devices. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + function getAttachedMechDevices(): MechInfo[]; + + /** + * Sets a user operation. + * @param { Operation } operation Operation type. + * @param { string } mac MAC address. + * @param { string } params Operation parameters. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function setUserOperation(operation: Operation, mac: string, params: string): void; + + /** + * Enables or disables camera tracking. + * @param { boolean } isEnabled Whether to enable camera tracking. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @throws { BusinessError } 33300003 - Device not supported. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + + function setCameraTrackingEnabled(isEnabled: boolean): void; + + /** + * Checks whether camera tracking is enabled for this mechanical device. + * @returns { boolean } Enabled status. The value true means that camera tracking is enabled, and false means + * the opposite. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + + function getCameraTrackingEnabled(): boolean; + + /** + * Subscribes to tracking events. + * @param { 'trackingStateChange' } type Event type. + * @param { Callback } callback Callback used to return the tracking event information. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + function on(type: 'trackingStateChange', callback: Callback): void; + + /** + * Unsubscribes from tracking events. + * @param { 'trackingStateChange' } type Event type. + * @param { Callback } [callback] Callback used to return the tracking event information. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + function off(type: 'trackingStateChange', callback?: Callback): void; + + /** + * Sets the camera tracking layout for this mechanical device. + * @param { CameraTrackingLayout } trackingLayout Camera tracking layout. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @throws { BusinessError } 33300003 - Device not supported. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + function setCameraTrackingLayout(trackingLayout: CameraTrackingLayout): void; + + /** + * Obtains the camera tracking layout of this mechanical device. + * @returns { CameraTrackingLayout } Camera tracking layout obtained. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + function getCameraTrackingLayout(): CameraTrackingLayout; + + /** + * Rotates a mechanical device to the relative angles. + * @param { int } mechId ID of the mechanical device. + * @param { RotationAngles } angles Relative angles. + * @param { int } duration Rotation duration. Unit: millisecond. + * @returns { Promise } Promise that return the execution result. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + function rotate(mechId: int, angles: RotationAngles, duration: int): Promise; + + /** + * Rotates a mechanical device to the absolute angles. + * @param { int } mechId ID of the mechanical device. + * @param { EulerAngles } angles Absolute angles. + * @param { int } duration Rotation duration. Unit: millisecond. + * @returns { Promise } Promise that return the execution result. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + function rotateToEulerAngles(mechId: int, angles: EulerAngles, duration: int): Promise; + + /** + * Obtains the maximum continuous rotation duration of a mechanical device. + * + * @param { int } mechId ID of the mechanical device. + * @returns { int } Maximum rotation duration. Unit: millisecond. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function getMaxRotationTime(mechId: int): int; + + /** + * Obtains the maximum rotation speed of a mechanical device. + * + * @param { int } mechId ID of the mechanical device. + * @returns { RotationSpeed } Maximum speed. Only the absolute value of the speed is returned. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function getMaxRotationSpeed(mechId: int): RotationSpeed; + + /** + * Rotates a mechanical device at the specified speed. + * @param { int } mechId ID of the mechanical device. + * @param { RotationSpeed } speed Rotation speed. + * @param { int } duration Rotation duration. Unit: millisecond. + * @returns { Promise } Promise that return the execution result. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function rotateBySpeed(mechId: int, speed: RotationSpeed, duration: int): Promise; + + /** + * Stops a mechanical device from moving. + * @param { int } mechId ID of the mechanical device. + * @returns { Promise } Promise that returns no value. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function stopMoving(mechId: int): Promise; + + /** + * Obtains the current angles of a mechanical device. + * @param { int } mechId ID of the mechanical device. + * @returns { EulerAngles } Rotation angles. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + function getCurrentAngles(mechId: int): EulerAngles; + + /** + * Obtains the maximum rotation angles relative to the reference point for the specified mechanical device. + * + * @param { int } mechId ID of the mechanical device. + * @returns { RotationLimits } Maximum rotation angles. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + function getRotationLimits(mechId: int): RotationLimits; + + /** + * Obtains the status of the rotation axes. + * @param { int } mechId ID of the mechanical device. + * @returns { RotationAxesStatus } Rotation axis status. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @throws { BusinessError } 33300002 - Device not connected. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function getRotationAxesStatus(mechId: int): RotationAxesStatus; + + + /** + * Register a listener for axis state changes. + * The status of the rotation axis changes dynamically, which needs to be monitored. + * + * @param { 'rotationAxesStatusChange' } type - Event type. + * @param { Callback } callback - Rotate axis state changes callback. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function on(type: 'rotationAxesStatusChange', callback: Callback): void; + + /** + * Unregister a listener for axis state changes. + * + * @param { 'rotationAxesStatusChange' } type - Event type. + * @param { Callback } [callback] - Rotate axis state changes callback. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 33300001 - Service exception. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + function off(type: 'rotationAxesStatusChange', callback?: Callback): void; + + /** + * Mechanical device information. + * @typedef MechInfo + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + export interface MechInfo { + /** + * ID of the mechanical device. + * @type { int } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + mechId: int; + + + /** + * Type of the mechanical device. + * @type { MechDeviceType } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + mechDeviceType: MechDeviceType; + + /** + * Name of the mechanical device. + * @type { string } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + mechName: string; + } + + + /** + * The rotion angles, relative to the current position. + * @typedef RotationAngles + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export interface RotationAngles { + /** + * Yaw angle, ranging from -2π to 2*π, measured in radians. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + yaw?: double; + + /** + * Roll angle, ranging from -2π to 2*π, measured in radians. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + roll?: double; + + /** + * Pitch angle, ranging from -2π to 2*π, measured in radians. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + pitch?: double; + } + + /** + * Absolute euler angles relative to the home position. + * + * @typedef EulerAngles + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export interface EulerAngles { + /** + * Yaw angle, ranging from -π to π, measured in radians. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + yaw?: double; + + /** + * Roll angle, ranging from -π to π, measured in radians. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + roll?: double; + + /** + * Pitch angle, ranging from -π to π, measured in radians. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + pitch?: double; + } + + /** + * Rotational speed. A negative value indicates a clockwise rotation, and a positive value indicates a + * counterclockwise rotation. + * @typedef RotationSpeed + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + export interface RotationSpeed { + /** + * Yaw speed, measured in radians per second. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + yawSpeed?: double; + + /** + * Roll speed, measured in radians per second. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + rollSpeed?: double; + + /** + * Pitch speed, measured in radians per second. + * @type { ?double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + pitchSpeed?: double; + } + + + /** + * Rotation angle limits relative to the reference point. + * @typedef RotationLimits + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + + export interface RotationLimits { + /** + * Maximum yaw rotation angles in the negative direction, ranging from -2*Math.PI to 0, measured in radians. + * If the value is less than or equal to -2*Math.PI, there is no restriction. + * @type { double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + negativeYawMax: double; + + /** + * Maximum yaw rotation angles in the positive direction, ranging from 0 to 2*Math.PI, measured in radians. + * If the value is greater than or equal to 2*Math.PI, there is no restriction. + * @type { double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + positiveYawMax: double; + + /** + * Maximum roll rotation angles in the negative direction, ranging from -2*Math.PI to 0, measured in radians. + * If the value is less than or equal to -2*Math.PI, there is no restriction. + * @type { double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + negativeRollMax: double; + + /** + * Maximum roll rotation angles in the positive direction, ranging from 0 to 2*Math.PI, measured in radians. + * If the value is greater than or equal to 2*Math.PI, there is no restriction. + * @type { double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + positiveRollMax: double; + + /** + * Maximum pitch rotation angles in the negative direction, ranging from -2*Math.PI to 0, measured in radians. + * If the value is less than or equal to -2*Math.PI, there is no restriction. + * @type { double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + negativePitchMax: double; + + /** + * Maximum pitch rotation angles in the positive direction, ranging from 0 to 2*Math.PI, measured in radians. + * If the value is greater than or equal to 2*Math.PI, there is no restriction. + * @type { double } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + positivePitchMax: double; + } + + /** + * Rotation axes status + * + * @typedef RotationAxesStatus + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export interface RotationAxesStatus { + /** + * Whether the yaw axis is enabled. + * @type { boolean } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + yawEnabled: boolean; + + /** + * Whether the roll axis is enabled. + * @type { boolean } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + rollEnabled: boolean; + + /** + * Whether the pitch axis is enabled. + * @type { boolean } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + pitchEnabled: boolean; + + /** + * Whether the yaw axis is limited. + * @type { ?RotationAxisLimited } RotationAxisLimited + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + yawLimited?: RotationAxisLimited; + + /** + * Whether the roll axis is limited. + * @type { ?RotationAxisLimited } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + rollLimited?: RotationAxisLimited; + + /** + * Whether the pitch axis is limited. + * @type { ?RotationAxisLimited } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + pitchLimited?: RotationAxisLimited; + } + + /** + * Enumerates the rotation axis limit states. + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export enum RotationAxisLimited { + /** + * Not limited. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + NOT_LIMITED = 0, + + /** + * Negative limited. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + NEGATIVE_LIMITED = 1, + + /** + * Positive limited. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + POSITIVE_LIMITED = 2, + } + + /** + * Rotation axes state change information. + * @typedef RotationAxesStateChangeInfo + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export interface RotationAxesStateChangeInfo { + /** + * ID of the mechanical device. + * @type { int } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + mechId: int; + + /** + * Rotate axis status. + * @type { RotationAxesStatus } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + status: RotationAxesStatus, + } + + /** + * Tracking event callback info. + * + * @typedef TrackingEventInfo + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + export interface TrackingEventInfo { + /** + * Tracking event. + * @type { TrackingEvent } Tracking event. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + event: TrackingEvent; + } + + /** + * Callback information about the device attachment state change. + * @typedef AttachStateChangeInfo + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + export interface AttachStateChangeInfo { + + /** + * Device attachment state. + * @type { AttachState } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + state: AttachState; + + /** + * Mechanical device information. + * @type { MechInfo } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + mechInfo: MechInfo, + } + + /** + * Enumerates the user operations. + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export enum Operation { + /** + * Connection operation. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + CONNECT = 0, + + /** + * Disconnection operation. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + DISCONNECT = 1 + } + + /** + * Enumerates the tracking events. + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + + export enum TrackingEvent { + /** + * Camera tracking enabled by user. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + CAMERA_TRACKING_USER_ENABLED = 0, + + /** + * Camera tracking disabled by user. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + CAMERA_TRACKING_USER_DISABLED = 1, + + /** + * Camera tracking layout changed. You can call getCameraTrackingLayout to obtain the new layout. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + CAMERA_TRACKING_LAYOUT_CHANGED = 2, + } + + /** + * Rotation execution results. + * + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export enum Result { + /** + * Rotation completed. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + COMPLETED = 0, + + /** + * Rotation was interrupted. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + INTERRUPTED = 1, + + /** + * Device reached limitation. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + LIMITED = 2, + + /** + * Rotation time out. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + TIMEOUT = 3, + + /** + * Rotation failed due to system error. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + SYSTEM_ERROR = 100 + } + + /** + * Enumerates the mechanical device types. + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + + export enum MechDeviceType { + /** + * Gimbal device. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + + GIMBAL_DEVICE = 0 + } + + /** + * Device attach states. + * + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + export enum AttachState { + + /** + * Device attached. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + ATTACHED = 0, + + /** + * Device detached. + * @syscap SystemCapability.Mechanic.Core + * @since 20 + */ + DETACHED = 1 + } + + /** + * Enumerates the camera tracking layouts. + * @enum { number } + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + export enum CameraTrackingLayout { + /** + * Default layout. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + DEFAULT = 0, + + /** + * Left-side layout. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + LEFT = 1, + + /** + * Middle layout. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + MIDDLE = 2, + + /** + * Right-side layout. + * @syscap SystemCapability.Mechanic.Core + * @systemapi + * @since 20 + */ + RIGHT = 3 + } + +} + +export default mechanicManager; \ No newline at end of file diff --git a/api/device-define/default.json b/api/device-define/default.json index e7e2311b89..9db411bbdc 100644 --- a/api/device-define/default.json +++ b/api/device-define/default.json @@ -95,7 +95,6 @@ "SystemCapability.Multimedia.SystemSound.Core", "SystemCapability.Telephony.CoreService", "SystemCapability.Telephony.CallManager", - "SystemCapability.Telephony.CellularCall", "SystemCapability.Telephony.CellularData", "SystemCapability.Telephony.SmsMms", "SystemCapability.Telephony.StateRegistry", @@ -223,6 +222,7 @@ "SystemCapability.Multimedia.AudioHaptic.Core", "SystemCapability.ArkUi.Graphics3D", "SystemCapability.Graphics.Drawing", + "SystemCapability.Graphic.Graphic2D.HyperGraphicManager", "SystemCapability.Graphic.Graphic2D.NativeDrawing", "SystemCapability.Developtools.Syscap", "SystemCapability.Resourceschedule.Ffrt.Core", @@ -233,6 +233,9 @@ "SystemCapability.Graphic.Vulkan", "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension" + "SystemCapability.Ability.AppExtension.PhotoEditorExtension", + "SystemCapability.Resourceschedule.BackgroundProcessManager", + "SystemCapability.Test.PerfTest", + "SystemCapability.Mechanic.Core" ] } diff --git a/api/device-define/tablet.json b/api/device-define/tablet.json index 153f694bfb..34dfcbda61 100644 --- a/api/device-define/tablet.json +++ b/api/device-define/tablet.json @@ -13,6 +13,7 @@ "SystemCapability.Graphic.Graphic2D.EGL", "SystemCapability.Graphic.Graphic2D.GLES2", "SystemCapability.Graphic.Graphic2D.GLES3", + "SystemCapability.Graphic.Graphic2D.HyperGraphicManager", "SystemCapability.Graphic.Graphic2D.WebGL", "SystemCapability.Window.SessionManager", "SystemCapability.WindowManager.WindowManager.Core", @@ -223,6 +224,9 @@ "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Graphic.Graphic2D.WebGL2", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension" + "SystemCapability.Ability.AppExtension.PhotoEditorExtension", + "SystemCapability.Resourceschedule.BackgroundProcessManager", + "SystemCapability.Test.PerfTest", + "SystemCapability.Mechanic.Core" ] } diff --git a/build-tools/api_check_plugin/code_style_rule.json b/build-tools/api_check_plugin/code_style_rule.json index 1a591601fd..e27b5ced4a 100644 --- a/build-tools/api_check_plugin/code_style_rule.json +++ b/build-tools/api_check_plugin/code_style_rule.json @@ -375,7 +375,8 @@ "SystemCapability.Security.CryptoFramework.MessageDigest", "SystemCapability.Security.CryptoFramework.Mac", "SystemCapability.Security.CryptoFramework.Kdf", - "SystemCapability.Security.CryptoFramework.Rand" + "SystemCapability.Security.CryptoFramework.Rand", + "SystemCapability.Mechanic.Core" ] }, "administrators": [ diff --git a/kits/@kit.MechanicKit.d.ts b/kits/@kit.MechanicKit.d.ts new file mode 100644 index 0000000000..8f70c78e11 --- /dev/null +++ b/kits/@kit.MechanicKit.d.ts @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit MechanicKit + */ + +import mechanicManager from '@ohos.distributedHardware.mechanicManager'; + +export { mechanicManager }; \ No newline at end of file -- Gitee From 6040d363a81470fba75e63dba68e1738c5f4740b Mon Sep 17 00:00:00 2001 From: MisterE Date: Tue, 13 May 2025 09:52:58 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=85=B7=E8=BA=AB=E6=9C=BA=E6=A2=B0?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MisterE --- api/device-define/default.json | 4 +--- api/device-define/tablet.json | 3 --- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/api/device-define/default.json b/api/device-define/default.json index 9db411bbdc..aa1e1f5954 100644 --- a/api/device-define/default.json +++ b/api/device-define/default.json @@ -95,6 +95,7 @@ "SystemCapability.Multimedia.SystemSound.Core", "SystemCapability.Telephony.CoreService", "SystemCapability.Telephony.CallManager", + "SystemCapability.Telephony.CellularCall", "SystemCapability.Telephony.CellularData", "SystemCapability.Telephony.SmsMms", "SystemCapability.Telephony.StateRegistry", @@ -222,7 +223,6 @@ "SystemCapability.Multimedia.AudioHaptic.Core", "SystemCapability.ArkUi.Graphics3D", "SystemCapability.Graphics.Drawing", - "SystemCapability.Graphic.Graphic2D.HyperGraphicManager", "SystemCapability.Graphic.Graphic2D.NativeDrawing", "SystemCapability.Developtools.Syscap", "SystemCapability.Resourceschedule.Ffrt.Core", @@ -234,8 +234,6 @@ "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Ability.AppStartup", "SystemCapability.Ability.AppExtension.PhotoEditorExtension", - "SystemCapability.Resourceschedule.BackgroundProcessManager", - "SystemCapability.Test.PerfTest", "SystemCapability.Mechanic.Core" ] } diff --git a/api/device-define/tablet.json b/api/device-define/tablet.json index 34dfcbda61..381edd04e0 100644 --- a/api/device-define/tablet.json +++ b/api/device-define/tablet.json @@ -13,7 +13,6 @@ "SystemCapability.Graphic.Graphic2D.EGL", "SystemCapability.Graphic.Graphic2D.GLES2", "SystemCapability.Graphic.Graphic2D.GLES3", - "SystemCapability.Graphic.Graphic2D.HyperGraphicManager", "SystemCapability.Graphic.Graphic2D.WebGL", "SystemCapability.Window.SessionManager", "SystemCapability.WindowManager.WindowManager.Core", @@ -225,8 +224,6 @@ "SystemCapability.Graphic.Graphic2D.WebGL2", "SystemCapability.Ability.AppStartup", "SystemCapability.Ability.AppExtension.PhotoEditorExtension", - "SystemCapability.Resourceschedule.BackgroundProcessManager", - "SystemCapability.Test.PerfTest", "SystemCapability.Mechanic.Core" ] } -- Gitee From fba3b68aaf86f3959cc3f49b0c428f2f99635437 Mon Sep 17 00:00:00 2001 From: MisterE Date: Thu, 3 Jul 2025 14:17:40 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E5=85=B7=E8=BA=AB=E6=9C=BA=E6=A2=B0?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MisterE --- api/@ohos.distributedHardware.mechanicManager.d.ts | 5 ----- api/device-define/default.json | 3 +-- api/device-define/tablet.json | 5 +---- build-tools/api_check_plugin/code_style_rule.json | 3 +-- 4 files changed, 3 insertions(+), 13 deletions(-) diff --git a/api/@ohos.distributedHardware.mechanicManager.d.ts b/api/@ohos.distributedHardware.mechanicManager.d.ts index e5a5eed669..5703aac774 100644 --- a/api/@ohos.distributedHardware.mechanicManager.d.ts +++ b/api/@ohos.distributedHardware.mechanicManager.d.ts @@ -841,14 +841,12 @@ declare namespace mechanicManager { * Enumerates the camera tracking layouts. * @enum { number } * @syscap SystemCapability.Mechanic.Core - * @systemapi * @since 20 */ export enum CameraTrackingLayout { /** * Default layout. * @syscap SystemCapability.Mechanic.Core - * @systemapi * @since 20 */ DEFAULT = 0, @@ -856,7 +854,6 @@ declare namespace mechanicManager { /** * Left-side layout. * @syscap SystemCapability.Mechanic.Core - * @systemapi * @since 20 */ LEFT = 1, @@ -864,7 +861,6 @@ declare namespace mechanicManager { /** * Middle layout. * @syscap SystemCapability.Mechanic.Core - * @systemapi * @since 20 */ MIDDLE = 2, @@ -872,7 +868,6 @@ declare namespace mechanicManager { /** * Right-side layout. * @syscap SystemCapability.Mechanic.Core - * @systemapi * @since 20 */ RIGHT = 3 diff --git a/api/device-define/default.json b/api/device-define/default.json index aa1e1f5954..e7e2311b89 100644 --- a/api/device-define/default.json +++ b/api/device-define/default.json @@ -233,7 +233,6 @@ "SystemCapability.Graphic.Vulkan", "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension", - "SystemCapability.Mechanic.Core" + "SystemCapability.Ability.AppExtension.PhotoEditorExtension" ] } diff --git a/api/device-define/tablet.json b/api/device-define/tablet.json index ae52076311..153f694bfb 100644 --- a/api/device-define/tablet.json +++ b/api/device-define/tablet.json @@ -223,9 +223,6 @@ "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Graphic.Graphic2D.WebGL2", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension", - "SystemCapability.MultimodalAwareness.RoomLocation", - "SystemCapability.Mechanic.Core" - + "SystemCapability.Ability.AppExtension.PhotoEditorExtension" ] } diff --git a/build-tools/api_check_plugin/code_style_rule.json b/build-tools/api_check_plugin/code_style_rule.json index e27b5ced4a..1a591601fd 100644 --- a/build-tools/api_check_plugin/code_style_rule.json +++ b/build-tools/api_check_plugin/code_style_rule.json @@ -375,8 +375,7 @@ "SystemCapability.Security.CryptoFramework.MessageDigest", "SystemCapability.Security.CryptoFramework.Mac", "SystemCapability.Security.CryptoFramework.Kdf", - "SystemCapability.Security.CryptoFramework.Rand", - "SystemCapability.Mechanic.Core" + "SystemCapability.Security.CryptoFramework.Rand" ] }, "administrators": [ -- Gitee From f4994f4bc20f3584c6769ec9d64f8bade88841bf Mon Sep 17 00:00:00 2001 From: MisterE Date: Thu, 3 Jul 2025 14:19:49 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=85=B7=E8=BA=AB=E6=9C=BA=E6=A2=B0?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MisterE --- api/device-define/tablet.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/api/device-define/tablet.json b/api/device-define/tablet.json index 153f694bfb..aab906b499 100644 --- a/api/device-define/tablet.json +++ b/api/device-define/tablet.json @@ -223,6 +223,7 @@ "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Graphic.Graphic2D.WebGL2", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension" + "SystemCapability.Ability.AppExtension.PhotoEditorExtension", + "SystemCapability.MultimodalAwareness.RoomLocation" ] } -- Gitee