Bitshares-Core  2.0.181105
BitShares blockchain implementation and command-line interface software
Public Types | Public Attributes | Static Public Attributes | List of all members
graphene::chain::dynamic_global_property_object Class Reference

Maintains global state information (committee_member list, current fees)This is an implementation detail. The values here are calculated during normal chain operations and reflect the current values of global blockchain properties. More...

#include <global_property_object.hpp>

Inheritance diagram for graphene::chain::dynamic_global_property_object:

Public Types

enum  dynamic_flag_bits { maintenance_flag = 0x01 }
 

Public Attributes

uint32_t head_block_number = 0
 
block_id_type head_block_id
 
time_point_sec time
 
witness_id_type current_witness
 
time_point_sec next_maintenance_time
 
time_point_sec last_budget_time
 
share_type witness_budget
 
uint32_t accounts_registered_this_interval = 0
 
uint32_t recently_missed_count = 0
 
uint64_t current_aslot = 0
 
fc::uint128_t recent_slots_filled
 
uint32_t dynamic_flags = 0
 
uint32_t last_irreversible_block_num = 0
 

Static Public Attributes

static const uint8_t space_id = implementation_ids
 
static const uint8_t type_id = impl_dynamic_global_property_object_type
 

Detailed Description

Maintains global state information (committee_member list, current fees)

This is an implementation detail. The values here are calculated during normal chain operations and reflect the current values of global blockchain properties.

Definition at line 66 of file global_property_object.hpp.

Member Enumeration Documentation

◆ dynamic_flag_bits

Enumerator
maintenance_flag 

If maintenance_flag is set, then the head block is a maintenance block. This means get_time_slot(1) - head_block_time() will have a gap due to maintenance duration.

This flag answers the question, "Was maintenance performed in the last call to apply_block()?"

Definition at line 111 of file global_property_object.hpp.

Member Data Documentation

◆ accounts_registered_this_interval

uint32_t graphene::chain::dynamic_global_property_object::accounts_registered_this_interval = 0

Definition at line 79 of file global_property_object.hpp.

◆ current_aslot

uint64_t graphene::chain::dynamic_global_property_object::current_aslot = 0

The current absolute slot number. Equal to the total number of slots since genesis. Also equal to the total number of missed slots plus head_block_number.

Definition at line 96 of file global_property_object.hpp.

◆ current_witness

witness_id_type graphene::chain::dynamic_global_property_object::current_witness

Definition at line 75 of file global_property_object.hpp.

◆ dynamic_flags

uint32_t graphene::chain::dynamic_global_property_object::dynamic_flags = 0

dynamic_flags specifies chain state properties that can be expressed in one bit.

Definition at line 107 of file global_property_object.hpp.

◆ head_block_id

block_id_type graphene::chain::dynamic_global_property_object::head_block_id

Definition at line 73 of file global_property_object.hpp.

◆ head_block_number

uint32_t graphene::chain::dynamic_global_property_object::head_block_number = 0

Definition at line 72 of file global_property_object.hpp.

◆ last_budget_time

time_point_sec graphene::chain::dynamic_global_property_object::last_budget_time

Definition at line 77 of file global_property_object.hpp.

◆ last_irreversible_block_num

uint32_t graphene::chain::dynamic_global_property_object::last_irreversible_block_num = 0

Definition at line 109 of file global_property_object.hpp.

◆ next_maintenance_time

time_point_sec graphene::chain::dynamic_global_property_object::next_maintenance_time

Definition at line 76 of file global_property_object.hpp.

◆ recent_slots_filled

fc::uint128_t graphene::chain::dynamic_global_property_object::recent_slots_filled

used to compute witness participation.

Definition at line 101 of file global_property_object.hpp.

◆ recently_missed_count

uint32_t graphene::chain::dynamic_global_property_object::recently_missed_count = 0

Every time a block is missed this increases by RECENTLY_MISSED_COUNT_INCREMENT, every time a block is found it decreases by RECENTLY_MISSED_COUNT_DECREMENT. It is never less than 0.

If the recently_missed_count hits 2*UNDO_HISTORY then no new blocks may be pushed.

Definition at line 89 of file global_property_object.hpp.

◆ space_id

const uint8_t graphene::chain::dynamic_global_property_object::space_id = implementation_ids
static

Definition at line 69 of file global_property_object.hpp.

◆ time

time_point_sec graphene::chain::dynamic_global_property_object::time

Definition at line 74 of file global_property_object.hpp.

◆ type_id

const uint8_t graphene::chain::dynamic_global_property_object::type_id = impl_dynamic_global_property_object_type
static

Definition at line 70 of file global_property_object.hpp.

◆ witness_budget

share_type graphene::chain::dynamic_global_property_object::witness_budget

Definition at line 78 of file global_property_object.hpp.


The documentation for this class was generated from the following file: