1fb726d48Sopenharmony_ci/*
2fb726d48Sopenharmony_ci * Copyright (C) 2022 Huawei Device Co., Ltd.
3fb726d48Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4fb726d48Sopenharmony_ci * you may not use this file except in compliance with the License.
5fb726d48Sopenharmony_ci * You may obtain a copy of the License at
6fb726d48Sopenharmony_ci *
7fb726d48Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8fb726d48Sopenharmony_ci *
9fb726d48Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10fb726d48Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11fb726d48Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12fb726d48Sopenharmony_ci * See the License for the specific language governing permissions and
13fb726d48Sopenharmony_ci * limitations under the License.
14fb726d48Sopenharmony_ci */
15fb726d48Sopenharmony_ciimport { LtpoStruct } from './../ui-worker/ProcedureWorkerLTPO';
16fb726d48Sopenharmony_ciimport { query } from '../SqlLite';
17fb726d48Sopenharmony_ci
18fb726d48Sopenharmony_ciexport const queryPresentInfo = (): Promise<Array<LtpoStruct>> =>
19fb726d48Sopenharmony_ci  query(
20fb726d48Sopenharmony_ci    'queryPresentInfo',
21fb726d48Sopenharmony_ci    `SELECT ts,dur,name FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('Present%'))
22fb726d48Sopenharmony_ci  AND name LIKE('H:Waiting for Present Fence%')`
23fb726d48Sopenharmony_ci  );
24fb726d48Sopenharmony_ci
25fb726d48Sopenharmony_ciexport const queryFanceNameList = (): Promise<Array<LtpoStruct>> =>
26fb726d48Sopenharmony_ci  query(
27fb726d48Sopenharmony_ci    'queryFanceNameList',
28fb726d48Sopenharmony_ci    `SELECT ts,dur,name FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('RSHardwareThrea%'))
29fb726d48Sopenharmony_ci  AND name LIKE('H:Present Fence%')`
30fb726d48Sopenharmony_ci  );
31fb726d48Sopenharmony_ci
32fb726d48Sopenharmony_ciexport const queryFpsNameList = (): Promise<Array<LtpoStruct>> =>
33fb726d48Sopenharmony_ci  query(
34fb726d48Sopenharmony_ci    'queryFpsNameList',
35fb726d48Sopenharmony_ci    `SELECT ts,dur,name FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('RSHardwareThrea%'))
36fb726d48Sopenharmony_ci  AND name LIKE('%Layers rate%')`
37fb726d48Sopenharmony_ci  );
38fb726d48Sopenharmony_ciexport const queryRealFpsList = (): Promise<Array<LtpoStruct>> =>
39fb726d48Sopenharmony_ci  query(
40fb726d48Sopenharmony_ci    'queryRealFpsList',
41fb726d48Sopenharmony_ci    `SELECT ts,dur,name FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('RSHardwareThrea%'))
42fb726d48Sopenharmony_ci  AND name LIKE('H:RSHardwareThread::PerformSetActiveMode%')`
43fb726d48Sopenharmony_ci  );
44fb726d48Sopenharmony_ciexport const querySignaledList = (): Promise<Array<LtpoStruct>> =>
45fb726d48Sopenharmony_ci  query(
46fb726d48Sopenharmony_ci    'querySignaledList',
47fb726d48Sopenharmony_ci    `SELECT ts,dur,name FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('RSHardwareThrea%'))
48fb726d48Sopenharmony_ci    AND name LIKE('%has signaled')`
49fb726d48Sopenharmony_ci  );
50fb726d48Sopenharmony_ciexport const queryRSNowTimeList = (): Promise<Array<LtpoStruct>> =>
51fb726d48Sopenharmony_ci  query(
52fb726d48Sopenharmony_ci    'queryRSNowTimeList',
53fb726d48Sopenharmony_ci    `SELECT ts,dur,name FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('render_service%'))
54fb726d48Sopenharmony_ci    AND (name LIKE('H:ReceiveVsync dataCount:24bytes%'))
55fb726d48Sopenharmony_ci    OR (name LIKE('H:ReceiveVsync dataCount: 24bytes%'))`
56fb726d48Sopenharmony_ci  );
57fb726d48Sopenharmony_ciexport const querySkipDataList = (): Promise<Array<LtpoStruct>> =>
58fb726d48Sopenharmony_ci  query(
59fb726d48Sopenharmony_ci    'querySkipDataList',
60fb726d48Sopenharmony_ci    `SELECT ts FROM "callstack" WHERE callid in (SELECT id FROM "thread" WHERE name LIKE('render_service%'))
61fb726d48Sopenharmony_ci    AND name LIKE('H:DisplayNodeSkip skip commit')`
62fb726d48Sopenharmony_ci  );
63