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 "../../../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 : /* Struct definitions */
17 : /* A microblock may or may not contain several transactions. If a microblock
18 : contains no transactions, it's called a "tick" */
19 : typedef struct fd_exec_test_microblock {
20 : /* All transactions in this microblock (can be 0) */
21 : pb_size_t txns_count;
22 : struct fd_exec_test_sanitized_transaction *txns;
23 : } fd_exec_test_microblock_t;
24 :
25 : typedef struct fd_exec_test_block_context {
26 : /* Microblocks in this block */
27 : pb_size_t microblocks_count;
28 : struct fd_exec_test_microblock *microblocks;
29 : /* Input account states */
30 : pb_size_t acct_states_count;
31 : struct fd_exec_test_acct_state *acct_states;
32 : /* The blockhash queue */
33 : pb_size_t blockhash_queue_count;
34 : pb_bytes_array_t **blockhash_queue;
35 : /* Slot context (contains slot number) */
36 : bool has_slot_ctx;
37 : fd_exec_test_slot_context_t slot_ctx;
38 : /* Epoch context (contains feature info) */
39 : bool has_epoch_ctx;
40 : fd_exec_test_epoch_context_t epoch_ctx;
41 : } fd_exec_test_block_context_t;
42 :
43 : typedef struct fd_exec_test_block_effects {
44 : /* If block execution failed */
45 : bool has_error;
46 : /* Resulting account states */
47 : pb_size_t acct_states_count;
48 : struct fd_exec_test_acct_state *acct_states;
49 : /* Slot capitalization */
50 : uint64_t slot_capitalization;
51 : /* Bank hash */
52 : pb_byte_t bank_hash[32];
53 : /* Accounts lattice hash */
54 : pb_byte_t lt_hash[32];
55 : /* Account delta hash */
56 : pb_byte_t account_delta_hash[32];
57 : } fd_exec_test_block_effects_t;
58 :
59 : typedef struct fd_exec_test_block_fixture {
60 : bool has_metadata;
61 : fd_exec_test_fixture_metadata_t metadata;
62 : /* The block input */
63 : bool has_input;
64 : fd_exec_test_block_context_t input;
65 : /* The output */
66 : bool has_output;
67 : fd_exec_test_block_effects_t output;
68 : } fd_exec_test_block_fixture_t;
69 :
70 :
71 : #ifdef __cplusplus
72 : extern "C" {
73 : #endif
74 :
75 : /* Initializer values for message structs */
76 : #define FD_EXEC_TEST_MICROBLOCK_INIT_DEFAULT {0, NULL}
77 : #define FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT {0, NULL, 0, NULL, 0, NULL, false, FD_EXEC_TEST_SLOT_CONTEXT_INIT_DEFAULT, false, FD_EXEC_TEST_EPOCH_CONTEXT_INIT_DEFAULT}
78 : #define FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT {0, 0, NULL, 0, {0}, {0}, {0}}
79 : #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}
80 : #define FD_EXEC_TEST_MICROBLOCK_INIT_ZERO {0, NULL}
81 : #define FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO {0, NULL, 0, NULL, 0, NULL, false, FD_EXEC_TEST_SLOT_CONTEXT_INIT_ZERO, false, FD_EXEC_TEST_EPOCH_CONTEXT_INIT_ZERO}
82 : #define FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO {0, 0, NULL, 0, {0}, {0}, {0}}
83 : #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}
84 :
85 : /* Field tags (for use in manual encoding/decoding) */
86 : #define FD_EXEC_TEST_MICROBLOCK_TXNS_TAG 1
87 : #define FD_EXEC_TEST_BLOCK_CONTEXT_MICROBLOCKS_TAG 1
88 : #define FD_EXEC_TEST_BLOCK_CONTEXT_ACCT_STATES_TAG 2
89 : #define FD_EXEC_TEST_BLOCK_CONTEXT_BLOCKHASH_QUEUE_TAG 3
90 : #define FD_EXEC_TEST_BLOCK_CONTEXT_SLOT_CTX_TAG 4
91 : #define FD_EXEC_TEST_BLOCK_CONTEXT_EPOCH_CTX_TAG 5
92 : #define FD_EXEC_TEST_BLOCK_EFFECTS_HAS_ERROR_TAG 1
93 : #define FD_EXEC_TEST_BLOCK_EFFECTS_ACCT_STATES_TAG 2
94 : #define FD_EXEC_TEST_BLOCK_EFFECTS_SLOT_CAPITALIZATION_TAG 3
95 : #define FD_EXEC_TEST_BLOCK_EFFECTS_BANK_HASH_TAG 4
96 : #define FD_EXEC_TEST_BLOCK_EFFECTS_LT_HASH_TAG 5
97 : #define FD_EXEC_TEST_BLOCK_EFFECTS_ACCOUNT_DELTA_HASH_TAG 6
98 : #define FD_EXEC_TEST_BLOCK_FIXTURE_METADATA_TAG 1
99 : #define FD_EXEC_TEST_BLOCK_FIXTURE_INPUT_TAG 2
100 : #define FD_EXEC_TEST_BLOCK_FIXTURE_OUTPUT_TAG 3
101 :
102 : /* Struct field encoding specification for nanopb */
103 : #define FD_EXEC_TEST_MICROBLOCK_FIELDLIST(X, a) \
104 : X(a, POINTER, REPEATED, MESSAGE, txns, 1)
105 : #define FD_EXEC_TEST_MICROBLOCK_CALLBACK NULL
106 : #define FD_EXEC_TEST_MICROBLOCK_DEFAULT NULL
107 : #define fd_exec_test_microblock_t_txns_MSGTYPE fd_exec_test_sanitized_transaction_t
108 :
109 : #define FD_EXEC_TEST_BLOCK_CONTEXT_FIELDLIST(X, a) \
110 : X(a, POINTER, REPEATED, MESSAGE, microblocks, 1) \
111 : X(a, POINTER, REPEATED, MESSAGE, acct_states, 2) \
112 : X(a, POINTER, REPEATED, BYTES, blockhash_queue, 3) \
113 : X(a, STATIC, OPTIONAL, MESSAGE, slot_ctx, 4) \
114 : X(a, STATIC, OPTIONAL, MESSAGE, epoch_ctx, 5)
115 : #define FD_EXEC_TEST_BLOCK_CONTEXT_CALLBACK NULL
116 : #define FD_EXEC_TEST_BLOCK_CONTEXT_DEFAULT NULL
117 : #define fd_exec_test_block_context_t_microblocks_MSGTYPE fd_exec_test_microblock_t
118 : #define fd_exec_test_block_context_t_acct_states_MSGTYPE fd_exec_test_acct_state_t
119 : #define fd_exec_test_block_context_t_slot_ctx_MSGTYPE fd_exec_test_slot_context_t
120 : #define fd_exec_test_block_context_t_epoch_ctx_MSGTYPE fd_exec_test_epoch_context_t
121 :
122 : #define FD_EXEC_TEST_BLOCK_EFFECTS_FIELDLIST(X, a) \
123 : X(a, STATIC, SINGULAR, BOOL, has_error, 1) \
124 : X(a, POINTER, REPEATED, MESSAGE, acct_states, 2) \
125 : X(a, STATIC, SINGULAR, UINT64, slot_capitalization, 3) \
126 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, bank_hash, 4) \
127 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, lt_hash, 5) \
128 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, account_delta_hash, 6)
129 : #define FD_EXEC_TEST_BLOCK_EFFECTS_CALLBACK NULL
130 : #define FD_EXEC_TEST_BLOCK_EFFECTS_DEFAULT NULL
131 : #define fd_exec_test_block_effects_t_acct_states_MSGTYPE fd_exec_test_acct_state_t
132 :
133 : #define FD_EXEC_TEST_BLOCK_FIXTURE_FIELDLIST(X, a) \
134 : X(a, STATIC, OPTIONAL, MESSAGE, metadata, 1) \
135 : X(a, STATIC, OPTIONAL, MESSAGE, input, 2) \
136 : X(a, STATIC, OPTIONAL, MESSAGE, output, 3)
137 : #define FD_EXEC_TEST_BLOCK_FIXTURE_CALLBACK NULL
138 : #define FD_EXEC_TEST_BLOCK_FIXTURE_DEFAULT NULL
139 : #define fd_exec_test_block_fixture_t_metadata_MSGTYPE fd_exec_test_fixture_metadata_t
140 : #define fd_exec_test_block_fixture_t_input_MSGTYPE fd_exec_test_block_context_t
141 : #define fd_exec_test_block_fixture_t_output_MSGTYPE fd_exec_test_block_effects_t
142 :
143 : extern const pb_msgdesc_t fd_exec_test_microblock_t_msg;
144 : extern const pb_msgdesc_t fd_exec_test_block_context_t_msg;
145 : extern const pb_msgdesc_t fd_exec_test_block_effects_t_msg;
146 : extern const pb_msgdesc_t fd_exec_test_block_fixture_t_msg;
147 :
148 : /* Defines for backwards compatibility with code written before nanopb-0.4.0 */
149 : #define FD_EXEC_TEST_MICROBLOCK_FIELDS &fd_exec_test_microblock_t_msg
150 0 : #define FD_EXEC_TEST_BLOCK_CONTEXT_FIELDS &fd_exec_test_block_context_t_msg
151 : #define FD_EXEC_TEST_BLOCK_EFFECTS_FIELDS &fd_exec_test_block_effects_t_msg
152 : #define FD_EXEC_TEST_BLOCK_FIXTURE_FIELDS &fd_exec_test_block_fixture_t_msg
153 :
154 : /* Maximum encoded size of messages (where known) */
155 : /* fd_exec_test_Microblock_size depends on runtime parameters */
156 : /* fd_exec_test_BlockContext_size depends on runtime parameters */
157 : /* fd_exec_test_BlockEffects_size depends on runtime parameters */
158 : /* fd_exec_test_BlockFixture_size depends on runtime parameters */
159 :
160 : /* Mapping from canonical names (mangle_names or overridden package name) */
161 : #define org_solana_sealevel_v1_Microblock fd_exec_test_Microblock
162 : #define org_solana_sealevel_v1_BlockContext fd_exec_test_BlockContext
163 : #define org_solana_sealevel_v1_BlockEffects fd_exec_test_BlockEffects
164 : #define org_solana_sealevel_v1_BlockFixture fd_exec_test_BlockFixture
165 : #define ORG_SOLANA_SEALEVEL_V1_MICROBLOCK_INIT_DEFAULT FD_EXEC_TEST_MICROBLOCK_INIT_DEFAULT
166 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_CONTEXT_INIT_DEFAULT FD_EXEC_TEST_BLOCK_CONTEXT_INIT_DEFAULT
167 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_EFFECTS_INIT_DEFAULT FD_EXEC_TEST_BLOCK_EFFECTS_INIT_DEFAULT
168 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_FIXTURE_INIT_DEFAULT FD_EXEC_TEST_BLOCK_FIXTURE_INIT_DEFAULT
169 : #define ORG_SOLANA_SEALEVEL_V1_MICROBLOCK_INIT_ZERO FD_EXEC_TEST_MICROBLOCK_INIT_ZERO
170 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_CONTEXT_INIT_ZERO FD_EXEC_TEST_BLOCK_CONTEXT_INIT_ZERO
171 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_EFFECTS_INIT_ZERO FD_EXEC_TEST_BLOCK_EFFECTS_INIT_ZERO
172 : #define ORG_SOLANA_SEALEVEL_V1_BLOCK_FIXTURE_INIT_ZERO FD_EXEC_TEST_BLOCK_FIXTURE_INIT_ZERO
173 :
174 : #ifdef __cplusplus
175 : } /* extern "C" */
176 : #endif
177 :
178 : #endif
|