27 namespace graphene {
namespace protocol {
30 template<
typename ...T>
37 template<
typename Operation>
40 const typename Operation::fee_parameters_type&
cget(
const fee_parameters::flat_set_type& parameters)
const 42 auto itr = parameters.find(
typename Operation::fee_parameters_type() );
44 return itr->template get<typename Operation::fee_parameters_type>();
71 if ( itr != parameters.end() )
76 return bid_collateral_dummy;
86 if ( itr != parameters.end() )
101 if ( itr != parameters.end() )
106 return asset_claim_pool_dummy;
136 if ( itr != parameters.end() )
140 return htlc_create_operation_fee_dummy;
150 if ( itr != parameters.end() )
154 return htlc_redeem_operation_fee_dummy;
163 if ( itr != parameters.end() )
167 return htlc_extend_operation_fee_dummy;
193 void zero_all_fees();
200 template<
typename Operation>
201 const typename Operation::fee_parameters_type&
get()
const 205 template<
typename Operation>
206 typename Operation::fee_parameters_type&
get()
210 template<
typename Operation>
213 auto itr = parameters.find(
typename Operation::fee_parameters_type());
214 return itr != parameters.end();
#define FC_REFLECT(TYPE, MEMBERS)
Specializes fc::reflector for TYPE.
const bid_collateral_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
const htlc_create_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
contains all of the parameters necessary to calculate the fee for any operation
const asset_update_issuer_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
transform_to_fee_parameters< operation >::type fee_parameters
Updates an existing ticket.
const asset_claim_pool_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
const htlc_redeem_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
FC_REFLECT_TYPENAME(fc::log_message)
#define GRAPHENE_DECLARE_EXTERNAL_SERIALIZATION(type)
const ticket_update_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
The price struct stores asset prices in the BitShares system.
#define GRAPHENE_100_PERCENT
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
Transfers BTS from the fee pool of a specified asset back to the issuer's balance.
const ticket_create_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
const account_create_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
static price unit_price(asset_id_type a=asset_id_type())
The unit price for an asset type A is defined to be a price such that for any asset m...
const htlc_extend_operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
Update issuer of an assetAn issuer has general administrative power of an asset and in some cases als...
const Operation::fee_parameters_type & cget(const fee_parameters::flat_set_type ¶meters) const
fee_parameters::flat_set_type parameters