JBPayoutRedemptionPaymentTerminal
Generic terminal managing all inflows and outflows of funds into the protocol ecosystem.
Traits
abstract
Code
Interfaces
Name | Description |
---|---|
IJBPayoutRedemptionPaymentTerminal | General interface for the methods in this contract that interact with the blockchain's state according to the protocol's rules. |
Inheritance
Contract | Description |
---|---|
JBSingleTokenPaymentTerminal | Generic terminal managing all inflows of funds into the protocol ecosystem for one token. |
JBOperatable | Includes convenience functionality for checking a message sender's permissions before executing certain transactions. |
Ownable | Includes convenience functionality for checking a message sender's permissions before executing certain transactions. |
ReentrancyGuard | Contract module that helps prevent reentrant calls to a function. |
Constructor
/**
@param _token The token that this terminal manages.
@param _decimals The number of decimals the token fixed point amounts are expected to have.
@param _currency The currency that this terminal's token adheres to for price feeds.
@param _baseWeightCurrency The currency to base token issuance on.
@param _payoutSplitsGroup The group that denotes payout splits from this terminal in the splits store.
@param _operatorStore A contract storing operator assignments.
@param _projects A contract which mints ERC-721's that represent project ownership and transfers.
@param _directory A contract storing directories of terminals and controllers for each project.
@param _splitsStore A contract that stores splits for each project.
@param _prices A contract that exposes price feeds.
@param _store A contract that stores the terminal's data.
@param _owner The address that will own this contract.
*/
constructor( // payable constructor save the gas used to check msg.value==0
address _token,
uint256 _decimals,
uint256 _currency,
uint256 _baseWeightCurrency,
uint256 _payoutSplitsGroup,
IJBOperatorStore _operatorStore,
IJBProjects _projects,
IJBDirectory _directory,
IJBSplitsStore _splitsStore,
IJBPrices _prices,
IJBSingleTokenPaymentTerminalStore _store,
address _owner
) payable JBSingleTokenPaymentTerminal(_token, _decimals, _currency) JBOperatable(_operatorStore) {
baseWeightCurrency = _baseWeightCurrency;
payoutSplitsGroup = _payoutSplitsGroup;
projects = _projects;
directory = _directory;
splitsStore = _splitsStore;
prices = _prices;
store = _store;
transferOwnership(_owner);
}
_token
is the token that this terminal manages._decimals
is the number of decimals the token fixed point amounts are expected to have._currency
is the currency that this terminal's token adheres to for price feeds. FromJBCurrencies
._baseWeightCurrency
is the currency to base token issuance on. FromJBCurrencies
._payoutSplitsGroup
is the group that denotes payout splits from this terminal in the splits store. FromJBSplitGroups
._operatorStore
is anIJBOperatorStore
contract storing operator assignments._projects
is anIJBProjects
contract which mints ERC-721's that represent project ownership and transfers._directory
is anIJBDirectory
contract storing directories of terminals and controllers for each project._splitsStore
is anIJBSplitsStore
contract that stores splits for each project._prices
is anIJBPrices
contract that exposes price feeds._store
is a contract that stores the terminal's data._owner
is the address that will own this contract.
Events
Name | Data |
---|---|
AddToBalance |
|
Migrate |
|
DistributePayouts |
|
UseAllowance |
|
ProcessFee |
|
RefundHeldFees |
|
HoldFee |
|
Pay |
|
DelegateDidPay |
|
RedeemTokens |
|
DelegateDidRedeem |
|
DistributeToPayoutSplit |
|
SetFee |
|
SetFeeGauge |
|
SetFeelessAddress |
|
Modifiers
Function | Definition |
---|---|
isTerminalOf | Params
|
Properties
Function | Definition |
---|---|
projects | Traits
Returns |
directory | Traits
Returns |
splitsStore | Traits
Returns |
prices | Traits
Returns |
store | Traits
Returns |
baseWeightCurrency | Traits
Returns
|
payoutSplitsGroup | Traits
Returns
|
fee | Returns
|
feeGauge | Params
Returns |
isFeelessAddress | returns
|
Read
Function | Definition |
---|---|
currentEthOverflowOf | Params
Returns
|
heldFeesOf | Params
Returns
|
supportsInterface | Params
Returns
|
Write
Function | Definition |
---|---|
pay | Traits
Params
Returns
|
distributePayoutsOf | Traits
Params
Returns
|
useAllowanceOf | Traits
Params
Returns
|
redeemTokensOf | Traits
Params
Returns
|
migrate | Traits
Params
Returns
|
addToBalanceOf | Traits
Params
|
processFees | Traits Params
|
setFee | Traits
Params
|
setFeeGauge | Traits
Params
|
setFeelessAddress | Traits
Params
|
_transferFrom | Traits
Params
|
_beforeTransferTo | Traits
Params
|