blob: 5131bd0324049294b67a045e91e7e19d71743d21 [file] [log] [blame]
Karl Zhang3de5ab12021-05-31 11:45:48 +08001/*
Nik Dewallybacae6c2024-07-30 16:58:14 +01002 * Copyright (c) 2019-2024, Arm Limited. All rights reserved.
Karl Zhang3de5ab12021-05-31 11:45:48 +08003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7
8/* The .hpp files in this project being so self-referential, this file forward-
9 declares all classes before any are attempted to be used. */
10
11#ifndef CLASS_FORWARDS_HPP
12#define CLASS_FORWARDS_HPP
13
14using namespace std;
15
16// find_or_create_asset.hpp:
17enum class asset_search;
18enum class psa_asset_usage;
19enum class psa_asset_search;
20enum class psa_asset_type;
21
22// data_blocks.hpp:
23class expect_info;
24class set_data_info;
25class asset_name_id_info;
Karl Zhang3de5ab12021-05-31 11:45:48 +080026// variables.hpp:
27class variable_info;
Karl Zhang3de5ab12021-05-31 11:45:48 +080028// template_line.hpp:
29class template_line;
30class sst_template_line;
31class key_template_line;
32class policy_template_line;
Karl Zhang3de5ab12021-05-31 11:45:48 +080033// sst_template_line.hpp:
34class set_sst_template_line;
35class remove_sst_template_line;
36class read_sst_template_line;
Karl Zhang3de5ab12021-05-31 11:45:48 +080037// crypto_template_line.hpp:
38class set_key_template_line;
39class remove_key_template_line;
40class read_key_template_line;
41class set_policy_template_line;
42class read_policy_template_line;
Karl Zhang3de5ab12021-05-31 11:45:48 +080043// security.hpp:
44class security;
45class security_hash;
Karl Zhang3de5ab12021-05-31 11:45:48 +080046// psa_call.hpp:
47class psa_call;
48class sst_call;
49class crypto_call;
Karl Zhang3de5ab12021-05-31 11:45:48 +080050// sst_call.hpp:
51class sst_set_call;
52class sst_get_call;
53class sst_remove_call;
Karl Zhang3de5ab12021-05-31 11:45:48 +080054// crypto_call.hpp:
55class policy_call;
56class key_call;
57class init_policy_call;
58class reset_policy_call;
59class set_policy_usage_call;
60class add_policy_usage_call;
61class set_policy_lifetime_call;
62class set_policy_algorithm_call;
63class set_policy_size_call;
64class set_policy_type_call;
65class get_policy_lifetime_call;
66class get_policy_size_call;
67class get_policy_type_call;
68class get_policy_algorithm_call;
69class get_policy_usage_call;
70class print_policy_usage_call;
71class get_key_policy_call;
72class generate_key_call;
Nik Dewallyed341b72024-08-20 17:02:30 +010073class import_key_call;
Karl Zhang3de5ab12021-05-31 11:45:48 +080074class copy_key_call;
75class read_key_data_call;
76class remove_key_call;
77
78
79// ************************ INSERT THE NEW STUFF HERE!!
80
81
82class destroy_key_call;
Karl Zhang3de5ab12021-05-31 11:45:48 +080083// psa_asset.hpp:
84class psa_asset;
Karl Zhang3de5ab12021-05-31 11:45:48 +080085// sst_asset.hpp:
86class sst_asset;
Karl Zhang3de5ab12021-05-31 11:45:48 +080087// crypto_asset.hpp:
88class crypto_asset;
89class key_asset;
90class policy_asset;
91class key_asset;
Karl Zhang3de5ab12021-05-31 11:45:48 +080092// boilerplate.hpp"
93//enum class boilerplate_texts; not really a "class," and no need to forward-reference it anyway
94class boilerplate;
Karl Zhang3de5ab12021-05-31 11:45:48 +080095// gibberish.hpp:
96class gibberish;
Karl Zhang3de5ab12021-05-31 11:45:48 +080097// tf_fuzz.hpp:
98class tf_fuzz_info;
99
100#endif // #ifndef CLASS_FORWARDS_HPP