• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 * Copyright (C) 2025 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 #ifndef _ADLT_TEST_BACKTRACE2_BT_TEST_H_
16 #define _ADLT_TEST_BACKTRACE2_BT_TEST_H_
17 
18 #include <string>
19 
20 namespace testbt {
21 struct TestVer {
TestVerTestVer22     TestVer(std::string &verA, std::string &verB) :
23                     verA(verA), verB(verB) {}
24 
25     const char *symbolNameA;
26     const char *fileNameA;
27     std::string &verA;
28     const char *symbolNameB;
29     const char *fileNameB;
30     std::string &verB;
31 
32     std::string test();
33 };
34 
35 struct TestVerBT {
TestVerBTTestVerBT36     TestVerBT(std::string &btA, std::string &btB) :
37                         btA(btA), btB(btB) {}
38 
39     const char *symbolNameA;
40     const char *fileNameA;
41     std::string &btA;
42     const char *symbolNameB;
43     const char *fileNameB;
44     std::string &btB;
45 
46     std::string test();
47 };
48 
49 struct TestMaxMin {
TestMaxMinTestMaxMin50     TestMaxMin(int &valA, int &valB) :
51                         valA(valA), valB(valB) {}
52 
53     const char *symbolNameA;
54     const char *fileNameA;
55     int aa;
56     int ab;
57     int &valA;
58     const char *symbolNameB;
59     const char *fileNameB;
60     int ba;
61     int bb;
62     int &valB;
63 
64     std::string test();
65 };
66 
67 struct TestMaxMinBT {
TestMaxMinBTTestMaxMinBT68     TestMaxMinBT(std::string &btA, std::string &btB) :
69                             btA(btA), btB(btB) {}
70 
71     const char *symbolNameA;
72     const char *fileNameA;
73     std::string &btA;
74     const char *symbolNameB;
75     const char *fileNameB;
76     std::string &btB;
77 
78     std::string test();
79 };
80 } // namespace testbt
81 
82 #endif