1fb726d48Sopenharmony_ci// Copyright (c) 2021 Huawei Device Co., Ltd. 2fb726d48Sopenharmony_ci// Licensed under the Apache License, Version 2.0 (the "License"); 3fb726d48Sopenharmony_ci// you may not use this file except in compliance with the License. 4fb726d48Sopenharmony_ci// You may obtain a copy of the License at 5fb726d48Sopenharmony_ci// 6fb726d48Sopenharmony_ci// http://www.apache.org/licenses/LICENSE-2.0 7fb726d48Sopenharmony_ci// 8fb726d48Sopenharmony_ci// Unless required by applicable law or agreed to in writing, software 9fb726d48Sopenharmony_ci// distributed under the License is distributed on an "AS IS" BASIS, 10fb726d48Sopenharmony_ci// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11fb726d48Sopenharmony_ci// See the License for the specific language governing permissions and 12fb726d48Sopenharmony_ci// limitations under the License. 13fb726d48Sopenharmony_ci 14fb726d48Sopenharmony_ciexport const CHART_OFFSET_LEFT = 248; 15fb726d48Sopenharmony_ciexport enum QueryEnum { 16fb726d48Sopenharmony_ci ClearMemoryCache = -1, 17fb726d48Sopenharmony_ci CpuData = 0, 18fb726d48Sopenharmony_ci CpuStateData = 1, 19fb726d48Sopenharmony_ci CpuFreqData = 2, 20fb726d48Sopenharmony_ci CpuFreqLimitData = 3, 21fb726d48Sopenharmony_ci HangData = 3.5, 22fb726d48Sopenharmony_ci ClockData = 4, 23fb726d48Sopenharmony_ci IrqData = 5, 24fb726d48Sopenharmony_ci ProcessData = 6, 25fb726d48Sopenharmony_ci ProcessMemData = 7, 26fb726d48Sopenharmony_ci ProcessStartupData = 8, 27fb726d48Sopenharmony_ci ProcessSoInitData = 9, 28fb726d48Sopenharmony_ci HiSysEventData = 10, 29fb726d48Sopenharmony_ci HilogData = 11, 30fb726d48Sopenharmony_ci VirtualMemoryData = 12, 31fb726d48Sopenharmony_ci EnergySystemData = 13, 32fb726d48Sopenharmony_ci EnergyStateData = 14, 33fb726d48Sopenharmony_ci EnergyAnomalyData = 15, 34fb726d48Sopenharmony_ci FrameExpectedData = 16, 35fb726d48Sopenharmony_ci FrameActualData = 17, 36fb726d48Sopenharmony_ci FrameAnimationData = 18, 37fb726d48Sopenharmony_ci FrameDynamicData = 19, 38fb726d48Sopenharmony_ci FrameSpacingData = 20, 39fb726d48Sopenharmony_ci EnergyPowerData = 47, 40fb726d48Sopenharmony_ci FileSystemData = 48, 41fb726d48Sopenharmony_ci DiskIoData = 49, 42fb726d48Sopenharmony_ci EBPFVm = 50, 43fb726d48Sopenharmony_ci VmTrackerSmapsData = 81, 44fb726d48Sopenharmony_ci VmTrackerDmaData = 82, 45fb726d48Sopenharmony_ci VmTrackerGpuMemoryData = 83, 46fb726d48Sopenharmony_ci VmTrackerGpuData = 84, 47fb726d48Sopenharmony_ci VmTrackerGpuResourceData = 85, 48fb726d48Sopenharmony_ci VmTrackerGpuTotalData = 86, 49fb726d48Sopenharmony_ci VmTrackerGpuWindowData = 87, 50fb726d48Sopenharmony_ci VmTrackerShmData = 88, 51fb726d48Sopenharmony_ci VmTrackerPurgeableData = 89, 52fb726d48Sopenharmony_ci AbilityMemoryUsedData = 90, 53fb726d48Sopenharmony_ci CpuAbilityUserData = 91, 54fb726d48Sopenharmony_ci CpuAbilitySystemData = 92, 55fb726d48Sopenharmony_ci CpuAbilityMonitorData = 93, 56fb726d48Sopenharmony_ci AbilityBytesReadData = 94, 57fb726d48Sopenharmony_ci AbilityBytesWrittenData = 95, 58fb726d48Sopenharmony_ci AbilityReadOpsData = 96, 59fb726d48Sopenharmony_ci AbilityWrittenOpsData = 97, 60fb726d48Sopenharmony_ci AbilityBytesInTraceData = 98, 61fb726d48Sopenharmony_ci AbilityBytesOutTraceData = 99, 62fb726d48Sopenharmony_ci AbilityPacketInTraceData = 100, 63fb726d48Sopenharmony_ci AbilityPacketsOutTraceData = 101, 64fb726d48Sopenharmony_ci AbilityCachedFilesData, 65fb726d48Sopenharmony_ci AbilityCompressedData, 66fb726d48Sopenharmony_ci AbilityPurgeableData = 151, 67fb726d48Sopenharmony_ci AbilityGpuMemoryData = 152, 68fb726d48Sopenharmony_ci AbilityDmaData = 153, 69fb726d48Sopenharmony_ci ThreadData = 30, 70fb726d48Sopenharmony_ci FuncData = 31, 71fb726d48Sopenharmony_ci HiperfCpuData = 200, 72fb726d48Sopenharmony_ci HiperfProcessData = 201, 73fb726d48Sopenharmony_ci HiperfThreadData = 202, 74fb726d48Sopenharmony_ci HiperfCallChart = 203, 75fb726d48Sopenharmony_ci HiperfCallStack = 204, 76fb726d48Sopenharmony_ci NativeMemoryChartData = 205, 77fb726d48Sopenharmony_ci NativeMemoryChartCacheNormal = 206, 78fb726d48Sopenharmony_ci NativeMemoryChartCacheStatistic = 207, 79fb726d48Sopenharmony_ci processExpectedData = 26, 80fb726d48Sopenharmony_ci processActualData = 27, 81fb726d48Sopenharmony_ci processDeliverInputEventData = 28, 82fb726d48Sopenharmony_ci processTouchEventDispatchData = 29, 83fb726d48Sopenharmony_ci HeapTimelineData = 160, 84fb726d48Sopenharmony_ci HeapSnapshotData = 161, 85fb726d48Sopenharmony_ci CpuProfilerData = 162, 86fb726d48Sopenharmony_ci SearchCpuData = 163, 87fb726d48Sopenharmony_ci LostFrameData = 164, 88fb726d48Sopenharmony_ci HitchTime = 165, 89fb726d48Sopenharmony_ci dmaFenceData = 166, 90fb726d48Sopenharmony_ci SliceData = 300, 91fb726d48Sopenharmony_ci SliceSPTData = 301, 92fb726d48Sopenharmony_ci SliceChildBoxData = 302, 93fb726d48Sopenharmony_ci ThreadNearData = 303, 94fb726d48Sopenharmony_ci XpowerData = 304, 95fb726d48Sopenharmony_ci} 96fb726d48Sopenharmony_ciexport const MAX_COUNT = 2000; 97fb726d48Sopenharmony_ciexport enum TraficEnum { 98fb726d48Sopenharmony_ci Memory, 99fb726d48Sopenharmony_ci SharedArrayBuffer, 100fb726d48Sopenharmony_ci TransferArrayBuffer, 101fb726d48Sopenharmony_ci ProtoBuffer, 102fb726d48Sopenharmony_ci} 103fb726d48Sopenharmony_ci 104fb726d48Sopenharmony_ciexport function threadStateToNumber(state: string): number { 105fb726d48Sopenharmony_ci return threadStateArray.findIndex((it) => it === state); 106fb726d48Sopenharmony_ci} 107fb726d48Sopenharmony_ciexport function threadStateToString(state: number): string { 108fb726d48Sopenharmony_ci if (state === -1) { 109fb726d48Sopenharmony_ci return ''; 110fb726d48Sopenharmony_ci } else { 111fb726d48Sopenharmony_ci return threadStateArray[state]; 112fb726d48Sopenharmony_ci } 113fb726d48Sopenharmony_ci} 114fb726d48Sopenharmony_ciconst threadStateArray = ['D-NIO', 'DK-NIO', 'D-IO', 'DK-IO', 'D', 'DK', 'R', 'R+', 'R-B', 'I', 'Running', 'S']; 115