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_CONTEXT_PB_H_INCLUDED
5 : #define PB_ORG_SOLANA_SEALEVEL_V1_CONTEXT_PB_H_INCLUDED
6 :
7 : #include "../../../../ballet/nanopb/pb_firedancer.h"
8 :
9 : #if PB_PROTO_HEADER_VERSION != 40
10 : #error Regenerate this file with the current version of nanopb generator.
11 : #endif
12 :
13 : /* Struct definitions */
14 : /* A set of feature flags. */
15 : typedef struct fd_exec_test_feature_set {
16 : /* Every item in this list marks an enabled feature. The value of
17 : each item is the first 8 bytes of the feature ID as a little-
18 : endian integer. */
19 : pb_size_t features_count;
20 : uint64_t *features;
21 : } fd_exec_test_feature_set_t;
22 :
23 : /* The complete state of an account excluding its public key. */
24 : typedef struct fd_exec_test_acct_state {
25 : /* The account address. (32 bytes) */
26 : pb_byte_t address[32];
27 : uint64_t lamports;
28 : /* Account data is limited to 10 MiB on Solana mainnet as of 2024-Feb. */
29 : pb_bytes_array_t *data;
30 : bool executable;
31 : /* Address of the program that owns this account. (32 bytes) */
32 : pb_byte_t owner[32];
33 : } fd_exec_test_acct_state_t;
34 :
35 : /* Fee rate governor parameters */
36 : typedef struct fd_exec_test_fee_rate_governor {
37 : uint64_t target_lamports_per_signature;
38 : uint64_t target_signatures_per_slot;
39 : uint64_t min_lamports_per_signature;
40 : uint64_t max_lamports_per_signature;
41 : uint32_t burn_percent;
42 : } fd_exec_test_fee_rate_governor_t;
43 :
44 : typedef struct fd_exec_test_epoch_schedule {
45 : /* The maximum number of slots in each epoch. */
46 : uint64_t slots_per_epoch;
47 : /* A number of slots before beginning of an epoch to calculate
48 : a leader schedule for that epoch. */
49 : uint64_t leader_schedule_slot_offset;
50 : /* Whether epochs start short and grow. */
51 : bool warmup;
52 : /* The first epoch after the warmup period. */
53 : uint64_t first_normal_epoch;
54 : /* The first slot after the warmup period. */
55 : uint64_t first_normal_slot;
56 : } fd_exec_test_epoch_schedule_t;
57 :
58 : /* A single entry in the blockhash queue. */
59 : typedef struct fd_exec_test_blockhash_queue_entry {
60 : pb_byte_t blockhash[32];
61 : uint64_t lamports_per_signature;
62 : } fd_exec_test_blockhash_queue_entry_t;
63 :
64 :
65 : #ifdef __cplusplus
66 : extern "C" {
67 : #endif
68 :
69 : /* Initializer values for message structs */
70 0 : #define FD_EXEC_TEST_FEATURE_SET_INIT_DEFAULT {0, NULL}
71 : #define FD_EXEC_TEST_ACCT_STATE_INIT_DEFAULT {{0}, 0, NULL, 0, {0}}
72 0 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_DEFAULT {0, 0, 0, 0, 0}
73 0 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_INIT_DEFAULT {0, 0, 0, 0, 0}
74 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_INIT_DEFAULT {{0}, 0}
75 0 : #define FD_EXEC_TEST_FEATURE_SET_INIT_ZERO {0, NULL}
76 : #define FD_EXEC_TEST_ACCT_STATE_INIT_ZERO {{0}, 0, NULL, 0, {0}}
77 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_ZERO {0, 0, 0, 0, 0}
78 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_INIT_ZERO {0, 0, 0, 0, 0}
79 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_INIT_ZERO {{0}, 0}
80 :
81 : /* Field tags (for use in manual encoding/decoding) */
82 : #define FD_EXEC_TEST_FEATURE_SET_FEATURES_TAG 1
83 : #define FD_EXEC_TEST_ACCT_STATE_ADDRESS_TAG 1
84 : #define FD_EXEC_TEST_ACCT_STATE_LAMPORTS_TAG 2
85 : #define FD_EXEC_TEST_ACCT_STATE_DATA_TAG 3
86 : #define FD_EXEC_TEST_ACCT_STATE_EXECUTABLE_TAG 4
87 : #define FD_EXEC_TEST_ACCT_STATE_OWNER_TAG 6
88 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_TARGET_LAMPORTS_PER_SIGNATURE_TAG 1
89 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_TARGET_SIGNATURES_PER_SLOT_TAG 2
90 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_MIN_LAMPORTS_PER_SIGNATURE_TAG 3
91 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_MAX_LAMPORTS_PER_SIGNATURE_TAG 4
92 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_BURN_PERCENT_TAG 5
93 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_SLOTS_PER_EPOCH_TAG 1
94 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_LEADER_SCHEDULE_SLOT_OFFSET_TAG 2
95 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_WARMUP_TAG 3
96 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_FIRST_NORMAL_EPOCH_TAG 4
97 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_FIRST_NORMAL_SLOT_TAG 5
98 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_BLOCKHASH_TAG 1
99 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_LAMPORTS_PER_SIGNATURE_TAG 2
100 :
101 : /* Struct field encoding specification for nanopb */
102 : #define FD_EXEC_TEST_FEATURE_SET_FIELDLIST(X, a) \
103 : X(a, POINTER, REPEATED, FIXED64, features, 1)
104 : #define FD_EXEC_TEST_FEATURE_SET_CALLBACK NULL
105 : #define FD_EXEC_TEST_FEATURE_SET_DEFAULT NULL
106 :
107 : #define FD_EXEC_TEST_ACCT_STATE_FIELDLIST(X, a) \
108 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, address, 1) \
109 : X(a, STATIC, SINGULAR, UINT64, lamports, 2) \
110 : X(a, POINTER, SINGULAR, BYTES, data, 3) \
111 : X(a, STATIC, SINGULAR, BOOL, executable, 4) \
112 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, owner, 6)
113 : #define FD_EXEC_TEST_ACCT_STATE_CALLBACK NULL
114 : #define FD_EXEC_TEST_ACCT_STATE_DEFAULT NULL
115 :
116 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_FIELDLIST(X, a) \
117 : X(a, STATIC, SINGULAR, UINT64, target_lamports_per_signature, 1) \
118 : X(a, STATIC, SINGULAR, UINT64, target_signatures_per_slot, 2) \
119 : X(a, STATIC, SINGULAR, UINT64, min_lamports_per_signature, 3) \
120 : X(a, STATIC, SINGULAR, UINT64, max_lamports_per_signature, 4) \
121 : X(a, STATIC, SINGULAR, UINT32, burn_percent, 5)
122 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_CALLBACK NULL
123 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_DEFAULT NULL
124 :
125 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_FIELDLIST(X, a) \
126 : X(a, STATIC, SINGULAR, UINT64, slots_per_epoch, 1) \
127 : X(a, STATIC, SINGULAR, UINT64, leader_schedule_slot_offset, 2) \
128 : X(a, STATIC, SINGULAR, BOOL, warmup, 3) \
129 : X(a, STATIC, SINGULAR, UINT64, first_normal_epoch, 4) \
130 : X(a, STATIC, SINGULAR, UINT64, first_normal_slot, 5)
131 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_CALLBACK NULL
132 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_DEFAULT NULL
133 :
134 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_FIELDLIST(X, a) \
135 : X(a, STATIC, SINGULAR, FIXED_LENGTH_BYTES, blockhash, 1) \
136 : X(a, STATIC, SINGULAR, UINT64, lamports_per_signature, 2)
137 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_CALLBACK NULL
138 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_DEFAULT NULL
139 :
140 : extern const pb_msgdesc_t fd_exec_test_feature_set_t_msg;
141 : extern const pb_msgdesc_t fd_exec_test_acct_state_t_msg;
142 : extern const pb_msgdesc_t fd_exec_test_fee_rate_governor_t_msg;
143 : extern const pb_msgdesc_t fd_exec_test_epoch_schedule_t_msg;
144 : extern const pb_msgdesc_t fd_exec_test_blockhash_queue_entry_t_msg;
145 :
146 : /* Defines for backwards compatibility with code written before nanopb-0.4.0 */
147 : #define FD_EXEC_TEST_FEATURE_SET_FIELDS &fd_exec_test_feature_set_t_msg
148 : #define FD_EXEC_TEST_ACCT_STATE_FIELDS &fd_exec_test_acct_state_t_msg
149 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_FIELDS &fd_exec_test_fee_rate_governor_t_msg
150 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_FIELDS &fd_exec_test_epoch_schedule_t_msg
151 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_FIELDS &fd_exec_test_blockhash_queue_entry_t_msg
152 :
153 : /* Maximum encoded size of messages (where known) */
154 : /* fd_exec_test_FeatureSet_size depends on runtime parameters */
155 : /* fd_exec_test_AcctState_size depends on runtime parameters */
156 : #define FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_SIZE 45
157 : #define FD_EXEC_TEST_EPOCH_SCHEDULE_SIZE 46
158 : #define FD_EXEC_TEST_FEE_RATE_GOVERNOR_SIZE 50
159 : #define ORG_SOLANA_SEALEVEL_V1_CONTEXT_PB_H_MAX_SIZE FD_EXEC_TEST_FEE_RATE_GOVERNOR_SIZE
160 :
161 : /* Mapping from canonical names (mangle_names or overridden package name) */
162 : #define org_solana_sealevel_v1_FeatureSet fd_exec_test_FeatureSet
163 : #define org_solana_sealevel_v1_AcctState fd_exec_test_AcctState
164 : #define org_solana_sealevel_v1_FeeRateGovernor fd_exec_test_FeeRateGovernor
165 : #define org_solana_sealevel_v1_EpochSchedule fd_exec_test_EpochSchedule
166 : #define org_solana_sealevel_v1_BlockhashQueueEntry fd_exec_test_BlockhashQueueEntry
167 : #define ORG_SOLANA_SEALEVEL_V1_FEATURE_SET_INIT_DEFAULT FD_EXEC_TEST_FEATURE_SET_INIT_DEFAULT
168 : #define ORG_SOLANA_SEALEVEL_V1_ACCT_STATE_INIT_DEFAULT FD_EXEC_TEST_ACCT_STATE_INIT_DEFAULT
169 : #define ORG_SOLANA_SEALEVEL_V1_FEE_RATE_GOVERNOR_INIT_DEFAULT FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_DEFAULT
170 : #define ORG_SOLANA_SEALEVEL_V1_EPOCH_SCHEDULE_INIT_DEFAULT FD_EXEC_TEST_EPOCH_SCHEDULE_INIT_DEFAULT
171 : #define ORG_SOLANA_SEALEVEL_V1_BLOCKHASH_QUEUE_ENTRY_INIT_DEFAULT FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_INIT_DEFAULT
172 : #define ORG_SOLANA_SEALEVEL_V1_FEATURE_SET_INIT_ZERO FD_EXEC_TEST_FEATURE_SET_INIT_ZERO
173 : #define ORG_SOLANA_SEALEVEL_V1_ACCT_STATE_INIT_ZERO FD_EXEC_TEST_ACCT_STATE_INIT_ZERO
174 : #define ORG_SOLANA_SEALEVEL_V1_FEE_RATE_GOVERNOR_INIT_ZERO FD_EXEC_TEST_FEE_RATE_GOVERNOR_INIT_ZERO
175 : #define ORG_SOLANA_SEALEVEL_V1_EPOCH_SCHEDULE_INIT_ZERO FD_EXEC_TEST_EPOCH_SCHEDULE_INIT_ZERO
176 : #define ORG_SOLANA_SEALEVEL_V1_BLOCKHASH_QUEUE_ENTRY_INIT_ZERO FD_EXEC_TEST_BLOCKHASH_QUEUE_ENTRY_INIT_ZERO
177 :
178 : #ifdef __cplusplus
179 : } /* extern "C" */
180 : #endif
181 :
182 : #endif
|