mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-20 11:05:54 +00:00
45 lines
1.1 KiB
C++
45 lines
1.1 KiB
C++
//------------------------------------------------------------------------------
|
|
/*
|
|
Copyright (c) 2011-2013, OpenCoin, Inc.
|
|
*/
|
|
//==============================================================================
|
|
|
|
#ifndef RIPPLE_IFEEVOTE_H
|
|
#define RIPPLE_IFEEVOTE_H
|
|
|
|
/** Manager to process fee votes.
|
|
*/
|
|
class IFeeVote
|
|
{
|
|
public:
|
|
/** Create a new fee vote manager.
|
|
|
|
@param targetBaseFee
|
|
@param targetReserveBase
|
|
@param targetReserveIncrement
|
|
*/
|
|
static IFeeVote* New (uint64 targetBaseFee,
|
|
uint32 targetReserveBase,
|
|
uint32 targetReserveIncrement);
|
|
|
|
virtual ~IFeeVote () { }
|
|
|
|
/** Add local fee preference to validation.
|
|
|
|
@param lastClosedLedger
|
|
@param baseValidation
|
|
*/
|
|
virtual void doValidation (Ledger::ref lastClosedLedger,
|
|
STObject& baseValidation) = 0;
|
|
|
|
/** Cast our local vote on the fee.
|
|
|
|
@param lastClosedLedger
|
|
@param initialPosition
|
|
*/
|
|
virtual void doVoting (Ledger::ref lastClosedLedger,
|
|
SHAMap::ref initialPosition) = 0;
|
|
};
|
|
|
|
#endif
|