pub async fn create_vote_accumulator<TYPES, VOTE, CERT, V>(
info: &AccumulatorInfo<TYPES>,
event: Arc<HotShotEvent<TYPES>>,
sender: &Sender<Arc<HotShotEvent<TYPES>>>,
upgrade_lock: UpgradeLock<TYPES, V>,
transition_indicator: EpochTransitionIndicator,
) -> Result<VoteCollectionTaskState<TYPES, VOTE, CERT, V>>where
TYPES:
NodeType,
VOTE:
Vote<TYPES> +
AggregatableVote<TYPES, VOTE, CERT> +
Send +
Sync + 'static,
CERT:
Certificate<TYPES, VOTE::
Commitment, Voteable = VOTE::
Commitment> +
Debug +
Send +
Sync + 'static,
V:
Versions,
VoteCollectionTaskState<TYPES, VOTE, CERT, V>:
HandleVoteEvent<TYPES, VOTE, CERT>,
Expand description
Generic function for spawning a vote task. Returns the event stream id of the spawned task if created
§Errors
If we failed to create the accumulator
§Panics
Calls unwrap but should never panic.