/* * Copyright (C) 2022 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. */ import { CpuFreqLimitsStruct } from '../database/ui-worker/ProcedureWorkerCpuFreqLimits.js'; import { ClockStruct } from '../database/ui-worker/ProcedureWorkerClock.js'; import { IrqStruct } from '../database/ui-worker/ProcedureWorkerIrq.js'; import { FuncStruct } from '../database/ui-worker/ProcedureWorkerFunc.js'; export class SelectionParam { recordStartNs: number = 0; leftNs: number = 0; rightNs: number = 0; hasFps: boolean = false; statisticsSelectData: any = undefined; fileSystemVMData: any = undefined; fileSystemIoData: any = undefined; fileSystemFsData: any = undefined; perfAll: boolean = false; fileSysVirtualMemory: boolean = false; diskIOLatency: boolean = false; fsCount: number = 0; vmCount: number = 0; isCurrentPane: boolean = false; startup: boolean = false; staticInit: boolean = false; cpus: Array = []; cpuStateFilterIds: Array = []; cpuFreqFilterIds: Array = []; cpuFreqLimitDatas: Array> = []; threadIds: Array = []; processIds: Array = []; processTrackIds: Array = []; virtualTrackIds: Array = []; clockMapData: Map> = new Map>(); irqMapData: Map> = new Map>(); funTids: Array = []; funAsync: Array<{ name: string; pid: number }> = []; nativeMemory: Array = []; nativeMemoryStatistic: Array = []; cpuAbilityIds: Array = []; memoryAbilityIds: Array = []; diskAbilityIds: Array = []; networkAbilityIds: Array = []; perfSampleIds: Array = []; perfCpus: Array = []; perfProcess: Array = []; perfThread: Array = []; fileSystemType: Array = []; sdkCounterIds: Array = []; sdkSliceIds: Array = []; diskIOipids: Array = []; diskIOReadIds: Array = []; diskIOWriteIds: Array = []; systemEnergy: Array = []; powerEnergy: Array = []; anomalyEnergy: Array = []; smapsType: Array = []; promiseList: Array> = []; jankFramesData: Array = []; jsMemory: Array = []; taskFramesData: Array> = []; } export class BoxJumpParam { leftNs: number = 0; rightNs: number = 0; state: string = ''; processId: number = 0; threadId: number = 0; } export class SelectionData { name: string = ''; process: string = ''; pid: string = ''; thread: string = ''; tid: string = ''; wallDuration: number = 0; wallDurationFormat: string = ''; avgDuration: string = ''; occurrences: number = 0; state: string = ''; trackId: number = 0; delta: string = ''; rate: string = ''; avgWeight: string = ''; count: string = ''; first: string = ''; last: string = ''; min: string = ''; max: string = ''; stateJX: string = ''; cpu: number = 0; } export class Counter { id: number = 0; trackId: number = 0; name: string = ''; value: number = 0; startTime: number = 0; } export class Fps { startNS: number = 0; timeStr: string = ''; fps: number = 0; }