BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
Go to the documentation of this file.
27 #include <graphene/chain/hardfork.hpp>
38 namespace graphene {
namespace chain {
63 "Account ${acct} '${name}' attempted to pay fee by using asset ${a} '${sym}', "
64 "which is unauthorized due to whitelist / blacklist",
75 FC_ASSERT( core_fee_paid <= fee_asset_dyn_data->fee_pool,
"Fee pool balance of '${b}' is less than the ${r} required to convert ${c}",
share_type fee_pool
in core asset
#define FC_CAPTURE_AND_RETHROW(...)
typename impl::apply< List, Delegate >::type apply
Apply a list of types as arguments to another template.
std::string to_pretty_string(int64_t)
tracks the blockchain state in an extensible manner
const T & get(const object_id_type &id) const
const account_statistics_object * fee_paying_account_statistics
const asset_object * fee_asset
chain_parameters parameters
virtual operation_result apply(const operation &op)=0
void adjust_balance(account_id_type account, asset delta)
Adjust a particular account's balance in a given asset by a delta.
string symbol
Ticker symbol for this asset, i.e. "USD".
asset_dynamic_data_id_type dynamic_asset_data_id
Current supply, fee pool, and collected fees are stored in a separate object as they change frequentl...
bool is_configured(const database &db) const
share_type accumulated_fees
fees accumulate to be paid out over time
void pay_fba_fee(uint64_t fba_id)
virtual void convert_fee()
const fee_schedule & current_fee_schedule() const
tracks the asset information that changes frequently
void db_adjust_balance(const account_id_type &fee_payer, asset fee_from_account)
share_type accumulated_fba_fees
const asset_dynamic_data_object * fee_asset_dyn_data
bool is_authorized_asset(const database &d, const account_object &acct, const asset_object &asset_obj)
share_type cashback_vesting_threshold
the maximum cashback that can be received without vesting
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
string name
The account's name. This name must be unique among all account names on the graph....
share_type calculate_fee_for_operation(const operation &op) const
virtual operation_result evaluate(const operation &op)=0
account_statistics_id_type statistics
object_id< SpaceID, TypeID > get_id() const
const global_property_object & get_global_properties() const
asset calculate_fee(const operation &op) const
void prepare_fee(account_id_type account_id, asset fee)
Fetch objects relevant to fee payer and set pointer members.
const account_object * fee_paying_account
virtual operation_result start_evaluate(transaction_evaluation_state &eval_state, const operation &op, bool apply)
void pay_fee(share_type core_fee, share_type cashback_vesting_threshold)
void modify(const T &obj, const Lambda &m)
transaction_evaluation_state * trx_state