Round

Handles the round information for the events in the Hashgraph

Members

Functions

add
void add(Event event)

Adds the even to round

completed
bool completed()

This function also updated the _valid_witness mask which is marks the witness to collected the events in this round

decided
bool decided()

See if the round has been decided

empty
bool empty()

Check of the round has no events

event
const(Event) event(size_t node_id)

Get the event a the node_id

event_count
size_t event_count()

Counts the number of events which has been set in this round

events
const(Event[]) events()

All the events in the first ooccurrences of this round

events
inout(Event[]) events()
isDecided
bool isDecided()
majority
bool majority()
next
const(Round) next()
node_size
uint node_size()

Normally unchange from round to round

opSlice
Rounder.Range!false opSlice()
Rounder.Range!true opSlice()

Range from this round and down

pattern
Fingerprint pattern(HashNet net)

Generates the voting pattern for this round

previous
Round previous()

Previous round from this round

previous
const(Round) previous()
remove
void remove(const(Event) event)

Remove the event from the round

valid_witness
const(BitMask) valid_witness()

This is the mask for the famous witness

Properties

round_votes
const(immutable(RoundVote)*[]) round_votes [@property getter]

Structs

Rounder
struct Rounder

The rounder takes care of cleaning up old round and keeps track of if an round has been decided or can be decided

Variables

_visit_node_mask
BitMask _visit_node_mask;

Mark if a node has been connected in this round