Line data Source code
1 : #ifndef HEADER_fd_src_choreo_tower_fd_tower_voters_h 2 : #define HEADER_fd_src_choreo_tower_fd_tower_voters_h 3 : 4 : #include "../fd_choreo_base.h" 5 : 6 0 : #define FD_VOTE_STATE_DATA_MAX 3762UL 7 : 8 : /* fd_tower_voters describes the set of vote accounts that feed into 9 : TowerBFT rules. This is fixed for each epoch, and each acct is 10 : associated with a 3-tuple of (vote account address, vote account 11 : stake, and vote account data). All the accts in the deque are 12 : intended to be as of the same slot. */ 13 : 14 : struct fd_tower_voters { 15 : fd_pubkey_t id; /* validator identity */ 16 : fd_pubkey_t vote_acc; /* vote account address */ 17 : ulong stake; /* vote account stake */ 18 : uchar data[FD_VOTE_STATE_DATA_MAX]; /* vote account data (max 3762 bytes) */ 19 : }; 20 : typedef struct fd_tower_voters fd_tower_voters_t; 21 : 22 : #define DEQUE_NAME fd_tower_voters 23 : #define DEQUE_T fd_tower_voters_t 24 : #include "../../util/tmpl/fd_deque_dynamic.c" 25 : 26 : #endif /* HEADER_fd_src_choreo_tower_fd_tower_voters_h */