1/* 2* Copyright (C) 2023 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 16import type image from '@ohos.multimedia.image'; 17 18export class PixelMapWrapper { 19 pixelMap: image.PixelMap = undefined; 20 width: number = 0; 21 height: number = 0; 22 23 constructor(pixelMap: image.PixelMap, width: number, height: number) { 24 this.pixelMap = pixelMap; 25 this.width = width; 26 this.height = height; 27 } 28 29 release(): void { 30 if (this.pixelMap !== null && this.pixelMap !== undefined) { 31 this.pixelMap.release(); 32 } 33 this.pixelMap = undefined; 34 this.width = 0; 35 this.height = 0; 36 } 37} 38 39export class Size { 40 width: number = 0 41 height: number = 0 42} 43 44export enum CircleAngle { 45 ONE_QUARTER_CIRCLE_ANGLE = 90, 46 HALF_CIRCLE_ANGEL = 180, 47 THREE_QUARTER_CIRCLE_ANGLE = 270, 48 CIRCLE_ANGLE = 360 49} 50 51export class GlobalContext { 52 private constructor() {}; 53 private static instance: GlobalContext; 54 private _objects = new Map<string, Object>(); 55 56 public static getContext(): GlobalContext { 57 if (!GlobalContext.instance) { 58 GlobalContext.instance = new GlobalContext(); 59 } 60 return GlobalContext.instance; 61 } 62 63 getObject(value: string): Object | undefined { 64 return this._objects.get(value); 65 } 66 67 setObject(key: string, objectClass: Object): void { 68 this._objects.set(key, objectClass); 69 } 70}