100600bfbSopenharmony_ci/*
200600bfbSopenharmony_ci * Copyright (C) 2021 Huawei Device Co., Ltd.
300600bfbSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
400600bfbSopenharmony_ci * you may not use this file except in compliance with the License.
500600bfbSopenharmony_ci * You may obtain a copy of the License at
600600bfbSopenharmony_ci *
700600bfbSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
800600bfbSopenharmony_ci *
900600bfbSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1000600bfbSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1100600bfbSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1200600bfbSopenharmony_ci * See the License for the specific language governing permissions and
1300600bfbSopenharmony_ci * limitations under the License.
1400600bfbSopenharmony_ci */
1500600bfbSopenharmony_ci#ifndef HIDUMPER_SERVICES_CONFIG_DATA_H
1600600bfbSopenharmony_ci#define HIDUMPER_SERVICES_CONFIG_DATA_H
1700600bfbSopenharmony_ci#include <string>
1800600bfbSopenharmony_cinamespace OHOS {
1900600bfbSopenharmony_cinamespace HiviewDFX {
2000600bfbSopenharmony_ciclass ConfigData {
2100600bfbSopenharmony_cipublic:
2200600bfbSopenharmony_ci    ConfigData();
2300600bfbSopenharmony_ci    ~ConfigData();
2400600bfbSopenharmony_ci    static const std::string CONFIG_NAME_SPLIT;
2500600bfbSopenharmony_ci    static const std::string CONFIG_GROUP;
2600600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_;
2700600bfbSopenharmony_ci    static const std::string CONFIG_MINIGROUP;
2800600bfbSopenharmony_ci    static const std::string CONFIG_MINIGROUP_;
2900600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER;
3000600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_;
3100600bfbSopenharmony_ci    static const std::string CONFIG_NAME_BASE;
3200600bfbSopenharmony_ci    static const std::string CONFIG_NAME_SYSTEM;
3300600bfbSopenharmony_ci    static const std::string CONFIG_NAME_ABILITY;
3400600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_CPU_FREQ;
3500600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_CPU_USAGE;
3600600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_LOG;
3700600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_LOG_;
3800600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_LOG_KERNEL;
3900600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_LOG_HILOG;
4000600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_LOG_INIT;
4100600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_MEMORY;
4200600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_STORAGE;
4300600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_NET;
4400600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_SERVICE;
4500600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_ABILITY;
4600600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_SYSTEM;
4700600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_SYSTEM_;
4800600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_SYSTEM_BASE;
4900600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_SYSTEM_SYSTEM;
5000600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_STORAGE_IO;
5100600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_NET_TRAFFIC;
5200600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_IPC_STAT;
5300600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_PROCESSES;
5400600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_PROCESSES_ENG;
5500600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_PROCESSES_PID;
5600600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_PROCESSES_PID_ENG;
5700600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_FAULT_LOG;
5800600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_STACK;
5900600bfbSopenharmony_ci    static const std::string CONFIG_GROUP_TEST;
6000600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_LIST;
6100600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_LIST_;
6200600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_LIST_SERVICE;
6300600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_LIST_SYSTEM_ABILITY;
6400600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_LIST_SYSTEM;
6500600bfbSopenharmony_ci    static const std::string CONFIG_DUMPER_JSHEAP_MEMORY;
6600600bfbSopenharmony_ci    static const std::string STR_ABILITY;
6700600bfbSopenharmony_ci    static const std::string STR_BASE;
6800600bfbSopenharmony_ci    static const std::string STR_SERVICE;
6900600bfbSopenharmony_ci    static const std::string STR_SYSTEM;
7000600bfbSopenharmony_ciprotected:
7100600bfbSopenharmony_ci    struct ItemCfg {
7200600bfbSopenharmony_ci        const std::string &name_;
7300600bfbSopenharmony_ci        const std::string &desc_;
7400600bfbSopenharmony_ci        const std::string &target_;
7500600bfbSopenharmony_ci        const std::string &section_;
7600600bfbSopenharmony_ci        const int &class_;
7700600bfbSopenharmony_ci        const int &level_;
7800600bfbSopenharmony_ci        const int &loop_;
7900600bfbSopenharmony_ci        const std::string &filterCfg_;
8000600bfbSopenharmony_ci    };
8100600bfbSopenharmony_ci    struct DumperCfg {
8200600bfbSopenharmony_ci        const std::string &name_;
8300600bfbSopenharmony_ci        const std::string &desc_;
8400600bfbSopenharmony_ci        const ItemCfg * const &list_;
8500600bfbSopenharmony_ci        const int &size_;
8600600bfbSopenharmony_ci    };
8700600bfbSopenharmony_ci    struct GroupCfg {
8800600bfbSopenharmony_ci        const std::string &name_;
8900600bfbSopenharmony_ci        const std::string &desc_;
9000600bfbSopenharmony_ci        const std::string * const &list_;
9100600bfbSopenharmony_ci        const int &size_;
9200600bfbSopenharmony_ci        const int type_; // DumperConstant::NONE, GROUPTYPE_PID, GROUPTYPE_CPUID
9300600bfbSopenharmony_ci        const bool expand_; // true: expand; false: non-expand
9400600bfbSopenharmony_ci    };
9500600bfbSopenharmony_ci    static const GroupCfg groups_[];
9600600bfbSopenharmony_ci    static const int groupSum_;
9700600bfbSopenharmony_ci    static const DumperCfg dumpers_[];
9800600bfbSopenharmony_ci    static const int dumperSum_;
9900600bfbSopenharmony_ci    static const int NEST_MAX;
10000600bfbSopenharmony_ciprivate:
10100600bfbSopenharmony_ci    static const ItemCfg baseInfoDumper_[];
10200600bfbSopenharmony_ci    static const ItemCfg versionDumper_[];
10300600bfbSopenharmony_ci    static const ItemCfg kernelVersionDumper_[];
10400600bfbSopenharmony_ci    static const ItemCfg cmdlineDumper_[];
10500600bfbSopenharmony_ci    static const ItemCfg kernelWakeSourcesDumper_[];
10600600bfbSopenharmony_ci    static const ItemCfg kernelCpufreqDumper_[];
10700600bfbSopenharmony_ci    static const ItemCfg uptimeDumper_[];
10800600bfbSopenharmony_ci    static const ItemCfg cpuUsageDumper_[];
10900600bfbSopenharmony_ci    static const ItemCfg cpuFreqDumper_[];
11000600bfbSopenharmony_ci    static const ItemCfg memDumper_[];
11100600bfbSopenharmony_ci    static const ItemCfg jsHeapMemDumper_[];
11200600bfbSopenharmony_ci    static const ItemCfg envDumper_[];
11300600bfbSopenharmony_ci    static const ItemCfg kernelModuleDumper_[];
11400600bfbSopenharmony_ci    static const ItemCfg dumpFormatVersionDumper_[];
11500600bfbSopenharmony_ci    static const ItemCfg slabinfoDumper_[];
11600600bfbSopenharmony_ci    static const ItemCfg ldkslabinfoDumper_[];
11700600bfbSopenharmony_ci    static const ItemCfg zoneinfoDumper_[];
11800600bfbSopenharmony_ci    static const ItemCfg vmStatDumper_[];
11900600bfbSopenharmony_ci    static const ItemCfg vmAllocInfoDumper_[];
12000600bfbSopenharmony_ci    static const ItemCfg crashDumper_[];
12100600bfbSopenharmony_ci    static const ItemCfg tombStoneDumper_[];
12200600bfbSopenharmony_ci    static const ItemCfg kernelLogDumper_[];
12300600bfbSopenharmony_ci    static const ItemCfg hilogDumper_[];
12400600bfbSopenharmony_ci    static const ItemCfg portDumper_[];
12500600bfbSopenharmony_ci    static const ItemCfg packetDumper_[];
12600600bfbSopenharmony_ci    static const ItemCfg ipDumper_[];
12700600bfbSopenharmony_ci    static const ItemCfg ipTableDumper_[];
12800600bfbSopenharmony_ci    static const ItemCfg routeTableDumper_[];
12900600bfbSopenharmony_ci    static const ItemCfg ipcDumper_[];
13000600bfbSopenharmony_ci    static const ItemCfg ipRulesDumper_[];
13100600bfbSopenharmony_ci    static const ItemCfg storageStateDumper_[];
13200600bfbSopenharmony_ci    static const ItemCfg blockDumper_[];
13300600bfbSopenharmony_ci    static const ItemCfg fileDumper_[];
13400600bfbSopenharmony_ci    static const ItemCfg topIoDumper_[];
13500600bfbSopenharmony_ci    static const ItemCfg ioDumper_[];
13600600bfbSopenharmony_ci    static const ItemCfg trafficDumper_[];
13700600bfbSopenharmony_ci    static const ItemCfg ipcStatDumper_[];
13800600bfbSopenharmony_ci    static const ItemCfg mountsDumper_[];
13900600bfbSopenharmony_ci    static const ItemCfg threadsDumper_[];
14000600bfbSopenharmony_ci    static const ItemCfg threadsPidDumper_[];
14100600bfbSopenharmony_ci    static const ItemCfg smapDumper_[];
14200600bfbSopenharmony_ci    static const ItemCfg mapDumper_[];
14300600bfbSopenharmony_ci    static const ItemCfg blockChannelDumper_[];
14400600bfbSopenharmony_ci    static const ItemCfg excuteTimeDumper_[];
14500600bfbSopenharmony_ci    static const ItemCfg mountInfoDumper_[];
14600600bfbSopenharmony_ci    static const ItemCfg systemAbilityDumper_[];
14700600bfbSopenharmony_ci    static const ItemCfg stackDumper_[];
14800600bfbSopenharmony_ci    static const ItemCfg listServiceDumper_[];
14900600bfbSopenharmony_ci    static const ItemCfg listSystemAbilityDumper_[];
15000600bfbSopenharmony_ci    static const ItemCfg listSystemDumper_[];
15100600bfbSopenharmony_ci    static const ItemCfg testDumper_[];
15200600bfbSopenharmony_ci    static const std::string cpuFreqGroup_[];
15300600bfbSopenharmony_ci    static const std::string cpuUsageGroup_[];
15400600bfbSopenharmony_ci    static const std::string logKernelGroup_[];
15500600bfbSopenharmony_ci    static const std::string logHilogGroup_[];
15600600bfbSopenharmony_ci    static const std::string logInitGroup_[];
15700600bfbSopenharmony_ci    static const std::string memoryGroup_[];
15800600bfbSopenharmony_ci    static const std::string storageGroup_[];
15900600bfbSopenharmony_ci    static const std::string netGroup_[];
16000600bfbSopenharmony_ci    static const std::string serviceGroup_[];
16100600bfbSopenharmony_ci    static const std::string systemAbilityGroup_[];
16200600bfbSopenharmony_ci    static const std::string systemBaseGroup_[];
16300600bfbSopenharmony_ci    static const std::string storageIoGroup_[];
16400600bfbSopenharmony_ci    static const std::string systemSystemGroup_[];
16500600bfbSopenharmony_ci    static const std::string netTrafficGroup_[];
16600600bfbSopenharmony_ci    static const std::string ipcStatGroup_[];
16700600bfbSopenharmony_ci    static const std::string processesGroup_[];
16800600bfbSopenharmony_ci    static const std::string processesGroup_eng_[];
16900600bfbSopenharmony_ci    static const std::string processesPidGroup_[];
17000600bfbSopenharmony_ci    static const std::string processesPidGroup_eng_[];
17100600bfbSopenharmony_ci    static const std::string faultLogGroup_[];
17200600bfbSopenharmony_ci    static const std::string stackGroup_[];
17300600bfbSopenharmony_ci    static const std::string testGroup_[];
17400600bfbSopenharmony_ci    static const std::string processesGroupMini_[];
17500600bfbSopenharmony_ci    static const std::string processesGroupMini_eng_[];
17600600bfbSopenharmony_ci    static const std::string processesPidGroupMini_[];
17700600bfbSopenharmony_ci    static const std::string processesPidGroupMini_eng_[];
17800600bfbSopenharmony_ci    static const std::string systemBaseCpuIdGroupMini_[];
17900600bfbSopenharmony_ci    static const std::string systemSystemCpuIdGroupMini_[];
18000600bfbSopenharmony_ci    static const std::string systemSystemPidGroupMini_[];
18100600bfbSopenharmony_ci};
18200600bfbSopenharmony_ci} // namespace HiviewDFX
18300600bfbSopenharmony_ci} // namespace OHOS
18400600bfbSopenharmony_ci#endif // HIDUMPER_SERVICES_CONFIG_DATA_H
185