Line data Source code
1 : /* Automatically generated nanopb header */
2 : /* Generated by nanopb-0.4.9.1 */
3 :
4 : #ifndef PB_ORG_SOLANA_SEALEVEL_V1_BLOCK_PB_H_INCLUDED
5 : #define PB_ORG_SOLANA_SEALEVEL_V1_BLOCK_PB_H_INCLUDED
6 :
7 : #include "../../../../ballet/nanopb/pb_firedancer.h"
8 : #include "context.pb.h"
9 : #include "txn.pb.h"
10 : #include "metadata.pb.h"
11 :
12 : #if PB_PROTO_HEADER_VERSION != 40
13 : #error Regenerate this file with the current version of nanopb generator.
14 : #endif
15 :
16 : /* Enum definitions */
17 : typedef enum fd_exec_test_vote_account_version {
18 : FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V1_14_11 = 0,
19 : FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V3 = 1,
20 : FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V4 = 2
21 : } fd_exec_test_vote_account_version_t;
22 :
23 : typedef enum fd_exec_test_warmup_cooldown_rate {
24 : FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_025 = 0, /* 0.25 */
25 : FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_009 = 1 /* 0.09 */
26 : } fd_exec_test_warmup_cooldown_rate_t;
27 :
28 : /* Struct definitions */
29 : typedef struct fd_exec_test_cost_tracker {
30 : uint64_t block_cost;
31 : uint64_t vote_cost;
32 : } fd_exec_test_cost_tracker_t;
33 :
34 : typedef struct fd_exec_test_inflation {
35 : double initial;
36 : double terminal;
37 : double taper;
38 : double foundation;
39 : double foundation_term;
40 : } fd_exec_test_inflation_t;
41 :
42 : typedef struct fd_exec_test_epoch_credit {
43 : uint64_t epoch;
44 : uint64_t credits;
45 : uint64_t prev_credits;
46 : } fd_exec_test_epoch_credit_t;
47 :
48 : typedef struct fd_exec_test_prev_vote_account {
49 : pb_byte_t address[32];
50 : pb_byte_t node_pubkey[32];
51 : uint64_t stake;
52 : uint32_t commission_bps;
53 : /* Epoch credits are only needed for recalculating partitioned
54 : epoch rewards during the distribution phase. */
55 : pb_size_t epoch_credits_count;
56 : struct fd_exec_test_epoch_credit *epoch_credits;
57 : fd_exec_test_vote_account_version_t version;
58 : } fd_exec_test_prev_vote_account_t;
59 :
60 : typedef struct fd_exec_test_block_bank {
61 : /* Up to 300 (actually 301) most recent blockhashes (ordered from oldest to newest) */
62 : pb_size_t blockhash_queue_count;
63 : struct fd_exec_test_blockhash_queue_entry *blockhash_queue;
64 : uint32_t rbh_lamports_per_signature;
65 : bool has_fee_rate_governor;
66 : fd_exec_test_fee_rate_governor_t fee_rate_governor;
67 : /* The slot number of the block being executed */
68 : uint64_t slot;
69 : /* 0 <= parent_slot < slot */
70 : uint64_t parent_slot;
71 : uint64_t capitalization;
72 : /* uint128: nanoseconds per slot */
73 : pb_byte_t ns_per_slot[16];
74 : /* Constraints (all f64, must be finite and non-negative):
75 : initial: 0.0 - 0.15 (mainnet: 0.08)
76 : terminal: 0.0 - initial (mainnet: 0.015)
77 : taper: 0.0 - 1.0 (mainnet: 0.15)
78 : foundation: 0.0 - 1.0 (mainnet: 0.05)
79 : foundation_term: 0.0 - 100.0 (mainnet: 7.0) */
80 : bool has_inflation;
81 : fd_exec_test_inflation_t inflation;
82 : /* 0 <= block_height <= slot */
83 : uint64_t block_height;
84 : /* POH (computed right before block execution) */
85 : pb_byte_t poh[32];
86 : /* Parent bank hash */
87 : pb_byte_t parent_bank_hash[32];
88 : /* Parent LT hash */
89 : pb_byte_t parent_lt_hash[2048];
90 : uint64_t parent_signature_count;
91 : bool has_features;
92 : fd_exec_test_feature_set_t features;
93 : pb_size_t vote_accounts_t_1_count;
94 : struct fd_exec_test_prev_vote_account *vote_accounts_t_1;
95 : pb_size_t vote_accounts_t_2_count;
96 : struct fd_exec_test_prev_vote_account *vote_accounts_t_2;
97 : } fd_exec_test_block_bank_t;
98 :
99 : typedef struct fd_exec_test_block_context {
100 : /* All transactions in this microblock (can be 0) */
101 : pb_size_t txns_count;
102 : struct fd_exec_test_sanitized_transaction *txns;
103 : /* Input account states */
104 : pb_size_t acct_states_count;
105 : struct fd_exec_test_acct_state *acct_states;
106 : /* Bank fields for the block fuzzer */
107 : bool has_bank;
108 : fd_exec_test_block_bank_t bank;
109 : } fd_exec_test_block_context_t;
110 :
111 : typedef struct fd_exec_test_leader_schedule_effects {
112 : /* Epoch number for which this leader schedule applies */
113 : uint64_t leaders_epoch;
114 : /* First slot number covered by this leader schedule */
115 : uint64_t leaders_slot0;
116 : /* Total number of slots covered by this leader schedule */
117 : uint64_t leaders_slot_cnt;
118 : /* Number of unique validator public keys in the leader schedule */
119 : uint64_t leader_pub_cnt;
120 : /* Number of entries in the leader schedule (slots with assigned leaders) */
121 : uint64_t leaders_sched_cnt;
122 : /* Hash of the leader schedule */
123 : pb_byte_t leader_schedule_hash[16];
124 : } fd_exec_test_leader_schedule_effects_t;
125 :
126 : typedef struct fd_exec_test_block_effects {
127 : /* If block execution failed */
128 : bool has_error;
129 : /* Slot capitalization */
130 : uint64_t slot_capitalization;
131 : /* Bank hash */
132 : pb_byte_t bank_hash[32];
133 : /* The cost tracker */
134 : bool has_cost_tracker;
135 : fd_exec_test_cost_tracker_t cost_tracker;
136 : /* Leader schedule */
137 : bool has_leader_schedule;
138 : fd_exec_test_leader_schedule_effects_t leader_schedule;
139 : } fd_exec_test_block_effects_t;
140 :
141 : typedef struct fd_exec_test_block_fixture {
142 : bool has_metadata;
143 : fd_exec_test_fixture_metadata_t metadata;
144 : /* The block input */
145 : bool has_input;
146 : fd_exec_test_block_context_t input;
147 : /* The output */
148 : bool has_output;
149 : fd_exec_test_block_effects_t output;
150 : } fd_exec_test_block_fixture_t;
151 :
152 :
153 : #ifdef __cplusplus
154 : extern "C" {
155 : #endif
156 :
157 : /* Helper constants for enums */
158 : #define _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V1_14_11
159 : #define _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MAX FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V4
160 : #define _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_ARRAYSIZE ((fd_exec_test_vote_account_version_t)(FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_V4+1))
161 :
162 : #define _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MIN FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_025
163 : #define _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MAX FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_009
164 : #define _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_ARRAYSIZE ((fd_exec_test_warmup_cooldown_rate_t)(FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_RATE_009+1))
165 :
166 :
167 :
168 :
169 : #define fd_exec_test_prev_vote_account_t_version_ENUMTYPE fd_exec_test_vote_account_version_t
170 :
171 :
172 :
173 :
174 :
175 :
176 :
177 : /* Initializer values for message structs */
178 : #define FD_EXEC_TEST_COST_TRACKER_INIT_DEFAULT {0, 0}
179 : #define FD_EXEC_TEST_INFLATION_INIT_DEFAULT {0, 0, 0, 0, 0}
180 : #define FD_EXEC_TEST_EPOCH_CREDIT_INIT_DEFAULT {0, 0, 0}
181 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_DEFAULT {{0}, {0}, 0, 0, 0, NULL, _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN}
182 : #define FD_EXEC_TEST_BLOCK_BANK_INIT_DEFAULT {0, NULL, 0, false, FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_DEFAULT, 0, 0, 0, {0}, false, FD_EXEC_TEST_INFLATION_INIT_DEFAULT, 0, {0}, {0}, {0}, 0, false, FD_EXEC_TEST_FEATURE_SET_INIT_DEFAULT, 0, NULL, 0, NULL}
183 : #define FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT {0, NULL, 0, NULL, false, FD_EXEC_TEST_BLOCK_BANK_INIT_DEFAULT}
184 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT {0, 0, 0, 0, 0, {0}}
185 : #define FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT {0, 0, {0}, false, FD_EXEC_TEST_COST_TRACKER_INIT_DEFAULT, false, FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT}
186 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INIT_DEFAULT {false, FD_EXEC_TEST_FIXTURE_METADATA_INIT_DEFAULT, false, FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT, false, FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT}
187 : #define FD_EXEC_TEST_COST_TRACKER_INIT_ZERO {0, 0}
188 : #define FD_EXEC_TEST_INFLATION_INIT_ZERO {0, 0, 0, 0, 0}
189 : #define FD_EXEC_TEST_EPOCH_CREDIT_INIT_ZERO {0, 0, 0}
190 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_ZERO {{0}, {0}, 0, 0, 0, NULL, _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN}
191 : #define FD_EXEC_TEST_BLOCK_BANK_INIT_ZERO {0, NULL, 0, false, FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_ZERO, 0, 0, 0, {0}, false, FD_EXEC_TEST_INFLATION_INIT_ZERO, 0, {0}, {0}, {0}, 0, false, FD_EXEC_TEST_FEATURE_SET_INIT_ZERO, 0, NULL, 0, NULL}
192 : #define FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO {0, NULL, 0, NULL, false, FD_EXEC_TEST_BLOCK_BANK_INIT_ZERO}
193 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_ZERO {0, 0, 0, 0, 0, {0}}
194 : #define FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO {0, 0, {0}, false, FD_EXEC_TEST_COST_TRACKER_INIT_ZERO, false, FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_ZERO}
195 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INIT_ZERO {false, FD_EXEC_TEST_FIXTURE_METADATA_INIT_ZERO, false, FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO, false, FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO}
196 :
197 : /* Field tags (for use in manual encoding/decoding) */
198 : #define FD_EXEC_TEST_COST_TRACKER_BLOCK_COST_TAG 1
199 : #define FD_EXEC_TEST_COST_TRACKER_VOTE_COST_TAG 2
200 : #define FD_EXEC_TEST_INFLATION_INITIAL_TAG 1
201 : #define FD_EXEC_TEST_INFLATION_TERMINAL_TAG 2
202 : #define FD_EXEC_TEST_INFLATION_TAPER_TAG 3
203 : #define FD_EXEC_TEST_INFLATION_FOUNDATION_TAG 4
204 : #define FD_EXEC_TEST_INFLATION_FOUNDATION_TERM_TAG 5
205 : #define FD_EXEC_TEST_EPOCH_CREDIT_EPOCH_TAG 1
206 : #define FD_EXEC_TEST_EPOCH_CREDIT_CREDITS_TAG 2
207 : #define FD_EXEC_TEST_EPOCH_CREDIT_PREV_CREDITS_TAG 3
208 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_ADDRESS_TAG 1
209 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_NODE_PUBKEY_TAG 2
210 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_STAKE_TAG 3
211 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_COMMISSION_BPS_TAG 4
212 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_EPOCH_CREDITS_TAG 5
213 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_VERSION_TAG 6
214 : #define FD_EXEC_TEST_BLOCK_BANK_BLOCKHASH_QUEUE_TAG 1
215 : #define FD_EXEC_TEST_BLOCK_BANK_RBH_LAMPORTS_PER_SIGNATURE_TAG 2
216 : #define FD_EXEC_TEST_BLOCK_BANK_FEE_RATE_GOVERNOR_TAG 3
217 : #define FD_EXEC_TEST_BLOCK_BANK_SLOT_TAG 4
218 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_SLOT_TAG 5
219 : #define FD_EXEC_TEST_BLOCK_BANK_CAPITALIZATION_TAG 6
220 : #define FD_EXEC_TEST_BLOCK_BANK_NS_PER_SLOT_TAG 7
221 : #define FD_EXEC_TEST_BLOCK_BANK_INFLATION_TAG 8
222 : #define FD_EXEC_TEST_BLOCK_BANK_BLOCK_HEIGHT_TAG 9
223 : #define FD_EXEC_TEST_BLOCK_BANK_POH_TAG 10
224 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_BANK_HASH_TAG 11
225 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_LT_HASH_TAG 12
226 : #define FD_EXEC_TEST_BLOCK_BANK_PARENT_SIGNATURE_COUNT_TAG 13
227 : #define FD_EXEC_TEST_BLOCK_BANK_FEATURES_TAG 16
228 : #define FD_EXEC_TEST_BLOCK_BANK_VOTE_ACCOUNTS_T_1_TAG 17
229 : #define FD_EXEC_TEST_BLOCK_BANK_VOTE_ACCOUNTS_T_2_TAG 18
230 : #define FD_EXEC_TEST_BLOCK_CONTEXT_TXNS_TAG 1
231 : #define FD_EXEC_TEST_BLOCK_CONTEXT_ACCT_STATES_TAG 2
232 : #define FD_EXEC_TEST_BLOCK_CONTEXT_BANK_TAG 6
233 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_EPOCH_TAG 1
234 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_SLOT0_TAG 2
235 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_SLOT_CNT_TAG 3
236 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADER_PUB_CNT_TAG 4
237 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADERS_SCHED_CNT_TAG 5
238 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_LEADER_SCHEDULE_HASH_TAG 6
239 : #define FD_EXEC_TEST_BLOCK_EFFECTS_HAS_ERROR_TAG 1
240 : #define FD_EXEC_TEST_BLOCK_EFFECTS_SLOT_CAPITALIZATION_TAG 2
241 : #define FD_EXEC_TEST_BLOCK_EFFECTS_BANK_HASH_TAG 3
242 : #define FD_EXEC_TEST_BLOCK_EFFECTS_COST_TRACKER_TAG 4
243 : #define FD_EXEC_TEST_BLOCK_EFFECTS_LEADER_SCHEDULE_TAG 5
244 : #define FD_EXEC_TEST_BLOCK_FIXTURE_METADATA_TAG 1
245 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INPUT_TAG 2
246 : #define FD_EXEC_TEST_BLOCK_FIXTURE_OUTPUT_TAG 3
247 :
248 : /* Struct field encoding specification for nanopb */
249 : #define FD_EXEC_TEST_COST_TRACKER_FIELDLIST(X, a) \
250 : X(a, STATIC, SINGULAR, UINT64, block_cost, 1) \
251 : X(a, STATIC, SINGULAR, UINT64, vote_cost, 2)
252 : #define FD_EXEC_TEST_COST_TRACKER_CALLBACK NULL
253 : #define FD_EXEC_TEST_COST_TRACKER_DEFAULT NULL
254 :
255 : #define FD_EXEC_TEST_INFLATION_FIELDLIST(X, a) \
256 : X(a, STATIC, SINGULAR, DOUBLE, initial, 1) \
257 : X(a, STATIC, SINGULAR, DOUBLE, terminal, 2) \
258 : X(a, STATIC, SINGULAR, DOUBLE, taper, 3) \
259 : X(a, STATIC, SINGULAR, DOUBLE, foundation, 4) \
260 : X(a, STATIC, SINGULAR, DOUBLE, foundation_term, 5)
261 : #define FD_EXEC_TEST_INFLATION_CALLBACK NULL
262 : #define FD_EXEC_TEST_INFLATION_DEFAULT NULL
263 :
264 : #define FD_EXEC_TEST_EPOCH_CREDIT_FIELDLIST(X, a) \
265 : X(a, STATIC, SINGULAR, UINT64, epoch, 1) \
266 : X(a, STATIC, SINGULAR, UINT64, credits, 2) \
267 : X(a, STATIC, SINGULAR, UINT64, prev_credits, 3)
268 : #define FD_EXEC_TEST_EPOCH_CREDIT_CALLBACK NULL
269 : #define FD_EXEC_TEST_EPOCH_CREDIT_DEFAULT NULL
270 :
271 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_FIELDLIST(X, a) \
272 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, address, 1) \
273 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, node_pubkey, 2) \
274 : X(a, STATIC, SINGULAR, UINT64, stake, 3) \
275 : X(a, STATIC, SINGULAR, UINT32, commission_bps, 4) \
276 : X(a, POINTER, REPEATED, MESSAGE, epoch_credits, 5) \
277 : X(a, STATIC, SINGULAR, UENUM, version, 6)
278 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_CALLBACK NULL
279 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_DEFAULT NULL
280 : #define fd_exec_test_prev_vote_account_t_epoch_credits_MSGTYPE fd_exec_test_epoch_credit_t
281 :
282 : #define FD_EXEC_TEST_BLOCK_BANK_FIELDLIST(X, a) \
283 : X(a, POINTER, REPEATED, MESSAGE, blockhash_queue, 1) \
284 : X(a, STATIC, SINGULAR, UINT32, rbh_lamports_per_signature, 2) \
285 : X(a, STATIC, OPTIONAL, MESSAGE, fee_rate_governor, 3) \
286 : X(a, STATIC, SINGULAR, UINT64, slot, 4) \
287 : X(a, STATIC, SINGULAR, UINT64, parent_slot, 5) \
288 : X(a, STATIC, SINGULAR, UINT64, capitalization, 6) \
289 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, ns_per_slot, 7) \
290 : X(a, STATIC, OPTIONAL, MESSAGE, inflation, 8) \
291 : X(a, STATIC, SINGULAR, UINT64, block_height, 9) \
292 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, poh, 10) \
293 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, parent_bank_hash, 11) \
294 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, parent_lt_hash, 12) \
295 : X(a, STATIC, SINGULAR, UINT64, parent_signature_count, 13) \
296 : X(a, STATIC, OPTIONAL, MESSAGE, features, 16) \
297 : X(a, POINTER, REPEATED, MESSAGE, vote_accounts_t_1, 17) \
298 : X(a, POINTER, REPEATED, MESSAGE, vote_accounts_t_2, 18)
299 : #define FD_EXEC_TEST_BLOCK_BANK_CALLBACK NULL
300 : #define FD_EXEC_TEST_BLOCK_BANK_DEFAULT NULL
301 : #define fd_exec_test_block_bank_t_blockhash_queue_MSGTYPE fd_exec_test_blockhash_queue_entry_t
302 : #define fd_exec_test_block_bank_t_fee_rate_governor_MSGTYPE fd_exec_test_fee_rate_governor_t
303 : #define fd_exec_test_block_bank_t_inflation_MSGTYPE fd_exec_test_inflation_t
304 : #define fd_exec_test_block_bank_t_features_MSGTYPE fd_exec_test_feature_set_t
305 : #define fd_exec_test_block_bank_t_vote_accounts_t_1_MSGTYPE fd_exec_test_prev_vote_account_t
306 : #define fd_exec_test_block_bank_t_vote_accounts_t_2_MSGTYPE fd_exec_test_prev_vote_account_t
307 :
308 : #define FD_EXEC_TEST_BLOCK_CONTEXT_FIELDLIST(X, a) \
309 : X(a, POINTER, REPEATED, MESSAGE, txns, 1) \
310 : X(a, POINTER, REPEATED, MESSAGE, acct_states, 2) \
311 : X(a, STATIC, OPTIONAL, MESSAGE, bank, 6)
312 : #define FD_EXEC_TEST_BLOCK_CONTEXT_CALLBACK NULL
313 : #define FD_EXEC_TEST_BLOCK_CONTEXT_DEFAULT NULL
314 : #define fd_exec_test_block_context_t_txns_MSGTYPE fd_exec_test_sanitized_transaction_t
315 : #define fd_exec_test_block_context_t_acct_states_MSGTYPE fd_exec_test_acct_state_t
316 : #define fd_exec_test_block_context_t_bank_MSGTYPE fd_exec_test_block_bank_t
317 :
318 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_FIELDLIST(X, a) \
319 : X(a, STATIC, SINGULAR, UINT64, leaders_epoch, 1) \
320 : X(a, STATIC, SINGULAR, UINT64, leaders_slot0, 2) \
321 : X(a, STATIC, SINGULAR, UINT64, leaders_slot_cnt, 3) \
322 : X(a, STATIC, SINGULAR, UINT64, leader_pub_cnt, 4) \
323 : X(a, STATIC, SINGULAR, UINT64, leaders_sched_cnt, 5) \
324 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, leader_schedule_hash, 6)
325 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_CALLBACK NULL
326 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_DEFAULT NULL
327 :
328 : #define FD_EXEC_TEST_BLOCK_EFFECTS_FIELDLIST(X, a) \
329 : X(a, STATIC, SINGULAR, BOOL, has_error, 1) \
330 : X(a, STATIC, SINGULAR, UINT64, slot_capitalization, 2) \
331 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, bank_hash, 3) \
332 : X(a, STATIC, OPTIONAL, MESSAGE, cost_tracker, 4) \
333 : X(a, STATIC, OPTIONAL, MESSAGE, leader_schedule, 5)
334 : #define FD_EXEC_TEST_BLOCK_EFFECTS_CALLBACK NULL
335 : #define FD_EXEC_TEST_BLOCK_EFFECTS_DEFAULT NULL
336 : #define fd_exec_test_block_effects_t_cost_tracker_MSGTYPE fd_exec_test_cost_tracker_t
337 : #define fd_exec_test_block_effects_t_leader_schedule_MSGTYPE fd_exec_test_leader_schedule_effects_t
338 :
339 : #define FD_EXEC_TEST_BLOCK_FIXTURE_FIELDLIST(X, a) \
340 : X(a, STATIC, OPTIONAL, MESSAGE, metadata, 1) \
341 : X(a, STATIC, OPTIONAL, MESSAGE, input, 2) \
342 : X(a, STATIC, OPTIONAL, MESSAGE, output, 3)
343 : #define FD_EXEC_TEST_BLOCK_FIXTURE_CALLBACK NULL
344 : #define FD_EXEC_TEST_BLOCK_FIXTURE_DEFAULT NULL
345 : #define fd_exec_test_block_fixture_t_metadata_MSGTYPE fd_exec_test_fixture_metadata_t
346 : #define fd_exec_test_block_fixture_t_input_MSGTYPE fd_exec_test_block_context_t
347 : #define fd_exec_test_block_fixture_t_output_MSGTYPE fd_exec_test_block_effects_t
348 :
349 : extern const pb_msgdesc_t fd_exec_test_cost_tracker_t_msg;
350 : extern const pb_msgdesc_t fd_exec_test_inflation_t_msg;
351 : extern const pb_msgdesc_t fd_exec_test_epoch_credit_t_msg;
352 : extern const pb_msgdesc_t fd_exec_test_prev_vote_account_t_msg;
353 : extern const pb_msgdesc_t fd_exec_test_block_bank_t_msg;
354 : extern const pb_msgdesc_t fd_exec_test_block_context_t_msg;
355 : extern const pb_msgdesc_t fd_exec_test_leader_schedule_effects_t_msg;
356 : extern const pb_msgdesc_t fd_exec_test_block_effects_t_msg;
357 : extern const pb_msgdesc_t fd_exec_test_block_fixture_t_msg;
358 :
359 : /* Defines for backwards compatibility with code written before nanopb-0.4.0 */
360 : #define FD_EXEC_TEST_COST_TRACKER_FIELDS &fd_exec_test_cost_tracker_t_msg
361 : #define FD_EXEC_TEST_INFLATION_FIELDS &fd_exec_test_inflation_t_msg
362 : #define FD_EXEC_TEST_EPOCH_CREDIT_FIELDS &fd_exec_test_epoch_credit_t_msg
363 : #define FD_EXEC_TEST_PREV_VOTE_ACCOUNT_FIELDS &fd_exec_test_prev_vote_account_t_msg
364 : #define FD_EXEC_TEST_BLOCK_BANK_FIELDS &fd_exec_test_block_bank_t_msg
365 0 : #define FD_EXEC_TEST_BLOCK_CONTEXT_FIELDS &fd_exec_test_block_context_t_msg
366 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_FIELDS &fd_exec_test_leader_schedule_effects_t_msg
367 : #define FD_EXEC_TEST_BLOCK_EFFECTS_FIELDS &fd_exec_test_block_effects_t_msg
368 : #define FD_EXEC_TEST_BLOCK_FIXTURE_FIELDS &fd_exec_test_block_fixture_t_msg
369 :
370 : /* Maximum encoded size of messages (where known) */
371 : /* fd_exec_test_PrevVoteAccount_size depends on runtime parameters */
372 : /* fd_exec_test_BlockBank_size depends on runtime parameters */
373 : /* fd_exec_test_BlockContext_size depends on runtime parameters */
374 : /* fd_exec_test_BlockFixture_size depends on runtime parameters */
375 : #define FD_EXEC_TEST_BLOCK_EFFECTS_SIZE 146
376 : #define FD_EXEC_TEST_COST_TRACKER_SIZE 22
377 : #define FD_EXEC_TEST_EPOCH_CREDIT_SIZE 33
378 : #define FD_EXEC_TEST_INFLATION_SIZE 45
379 : #define FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_SIZE 73
380 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_PB_H_MAX_SIZE FD_EXEC_TEST_BLOCK_EFFECTS_SIZE
381 :
382 : /* Mapping from canonical names (mangle_names or overridden package name) */
383 : #define org_solana_sealevel_v1_VoteAccountVersion fd_exec_test_VoteAccountVersion
384 : #define org_solana_sealevel_v1_WarmupCooldownRate fd_exec_test_WarmupCooldownRate
385 : #define org_solana_sealevel_v1_CostTracker fd_exec_test_CostTracker
386 : #define org_solana_sealevel_v1_Inflation fd_exec_test_Inflation
387 : #define org_solana_sealevel_v1_EpochCredit fd_exec_test_EpochCredit
388 : #define org_solana_sealevel_v1_PrevVoteAccount fd_exec_test_PrevVoteAccount
389 : #define org_solana_sealevel_v1_BlockBank fd_exec_test_BlockBank
390 : #define org_solana_sealevel_v1_BlockContext fd_exec_test_BlockContext
391 : #define org_solana_sealevel_v1_LeaderScheduleEffects fd_exec_test_LeaderScheduleEffects
392 : #define org_solana_sealevel_v1_BlockEffects fd_exec_test_BlockEffects
393 : #define org_solana_sealevel_v1_BlockFixture fd_exec_test_BlockFixture
394 : #define _ORG_SOLANA_SEALEVEL_V1_VOTE_ACCOUNT_VERSION_MIN _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MIN
395 : #define _ORG_SOLANA_SEALEVEL_V1_VOTE_ACCOUNT_VERSION_MAX _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_MAX
396 : #define _ORG_SOLANA_SEALEVEL_V1_VOTE_ACCOUNT_VERSION_ARRAYSIZE _FD_EXEC_TEST_VOTE_ACCOUNT_VERSION_ARRAYSIZE
397 : #define _ORG_SOLANA_SEALEVEL_V1_WARMUP_COOLDOWN_RATE_MIN _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MIN
398 : #define _ORG_SOLANA_SEALEVEL_V1_WARMUP_COOLDOWN_RATE_MAX _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_MAX
399 : #define _ORG_SOLANA_SEALEVEL_V1_WARMUP_COOLDOWN_RATE_ARRAYSIZE _FD_EXEC_TEST_WARMUP_COOLDOWN_RATE_ARRAYSIZE
400 : #define ORG_SOLANA_SEALEVEL_V1_COST_TRACKER_INIT_DEFAULT FD_EXEC_TEST_COST_TRACKER_INIT_DEFAULT
401 : #define ORG_SOLANA_SEALEVEL_V1_INFLATION_INIT_DEFAULT FD_EXEC_TEST_INFLATION_INIT_DEFAULT
402 : #define ORG_SOLANA_SEALEVEL_V1_EPOCH_CREDIT_INIT_DEFAULT FD_EXEC_TEST_EPOCH_CREDIT_INIT_DEFAULT
403 : #define ORG_SOLANA_SEALEVEL_V1_PREV_VOTE_ACCOUNT_INIT_DEFAULT FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_DEFAULT
404 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_BANK_INIT_DEFAULT FD_EXEC_TEST_BLOCK_BANK_INIT_DEFAULT
405 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_CONTEXT_INIT_DEFAULT FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT
406 : #define ORG_SOLANA_SEALEVEL_V1_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_DEFAULT
407 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_EFFECTS_INIT_DEFAULT FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT
408 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_FIXTURE_INIT_DEFAULT FD_EXEC_TEST_BLOCK_FIXTURE_INIT_DEFAULT
409 : #define ORG_SOLANA_SEALEVEL_V1_COST_TRACKER_INIT_ZERO FD_EXEC_TEST_COST_TRACKER_INIT_ZERO
410 : #define ORG_SOLANA_SEALEVEL_V1_INFLATION_INIT_ZERO FD_EXEC_TEST_INFLATION_INIT_ZERO
411 : #define ORG_SOLANA_SEALEVEL_V1_EPOCH_CREDIT_INIT_ZERO FD_EXEC_TEST_EPOCH_CREDIT_INIT_ZERO
412 : #define ORG_SOLANA_SEALEVEL_V1_PREV_VOTE_ACCOUNT_INIT_ZERO FD_EXEC_TEST_PREV_VOTE_ACCOUNT_INIT_ZERO
413 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_BANK_INIT_ZERO FD_EXEC_TEST_BLOCK_BANK_INIT_ZERO
414 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_CONTEXT_INIT_ZERO FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO
415 : #define ORG_SOLANA_SEALEVEL_V1_LEADER_SCHEDULE_EFFECTS_INIT_ZERO FD_EXEC_TEST_LEADER_SCHEDULE_EFFECTS_INIT_ZERO
416 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_EFFECTS_INIT_ZERO FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO
417 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_FIXTURE_INIT_ZERO FD_EXEC_TEST_BLOCK_FIXTURE_INIT_ZERO
418 :
419 : #ifdef __cplusplus
420 : } /* extern "C" */
421 : #endif
422 :
423 : #endif
|