BasePool
OpenGuild's Base Pool contract
This is the BasePool contract that the IndividualPool and AggregatePool contracts inherit from
Methods
DEFAULT_ADMIN_ROLE
Returns
Name | Type | Description |
---|---|---|
_0 | bytes32 | undefined |
OWNER_ROLE
Returns
Name | Type | Description |
---|---|---|
_0 | bytes32 | undefined |
PAUSER_ROLE
Returns
Name | Type | Description |
---|---|---|
_0 | bytes32 | undefined |
PERCENTAGE_DECIMAL
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | undefined |
__BasePool__init
Run only once, on initialization
Parameters
Name | Type | Description |
---|---|---|
_owner | address | The address of who should have the "OWNER_ROLE" of this contract |
_config | contract ProtocolConfig | The address of the OpenGuild ProtocolConfig contract |
_poolToken | contract IERC20Upgradeable | The ERC20 token denominating investments, withdrawals and contributions |
_poolType | enum ProtocolConfig.PoolType | The pool type of the BasePool |
__BaseUpgradeablePausable__init
Parameters
Name | Type | Description |
---|---|---|
owner | address | undefined |
__PauserPausable__init
applyFee
Parameters
Name | Type | Description |
---|---|---|
amount | uint256 | Amount to subtract the fee from |
takeRate | uint256 | Rate to calculate the fee |
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | Tuple of OpenGuild's take + remainder |
_1 | uint256 | a tuple where the first value is the fee taken from the amount and the second is the remainder (amount without the fee) |
getCumulativeDividends
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | The sum of all dividends returned to this pool |
getFirstWithdrawalTime
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | First withdrawal timestamp in this pool |
getInvestorClaimedDividends
Parameters
Name | Type | Description |
---|---|---|
investor | address | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | Total dividends claimed by the investor |
getRoleAdmin
Returns the admin role that controls role
. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | bytes32 | undefined |
getRoleMember
Returns one of the accounts that have role
. index
must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
index | uint256 | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | address | undefined |
getRoleMemberCount
Returns the number of accounts that have role
. Can be used together with {getRoleMember} to enumerate all bearers of a role.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | undefined |
getTotalDeployedAmount
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | Total deployed amount in the pool |
getTotalUndeployedAmount
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | Total undeployed amount in the pool |
grantRole
Grants role
to account
. If account
had not been already granted role
, emits a {RoleGranted} event. Requirements: - the caller must have role
's admin role.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
account | address | undefined |
hasRole
Returns true
if account
has been granted role
.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
account | address | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | bool | undefined |
isAdmin
Returns
Name | Type | Description |
---|---|---|
_0 | bool | undefined |
pause
Pauses all functions guarded by Pause See {Pausable-_pause}. Requirements: - the caller must have the PAUSER_ROLE.
paused
Returns true if the contract is paused, and false otherwise.
Returns
Name | Type | Description |
---|---|---|
_0 | bool | undefined |
poolToken
Returns
Name | Type | Description |
---|---|---|
_0 | contract IERC20Upgradeable | undefined |
poolType
Returns
Name | Type | Description |
---|---|---|
_0 | enum ProtocolConfig.PoolType | undefined |
renounceRole
Revokes role
from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked role
, emits a {RoleRevoked} event. Requirements: - the caller must be account
.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
account | address | undefined |
revokeRole
Revokes role
from account
. If account
had been granted role
, emits a {RoleRevoked} event. Requirements: - the caller must have role
's admin role.
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
account | address | undefined |
supportsInterface
See {IERC165-supportsInterface}.
Parameters
Name | Type | Description |
---|---|---|
interfaceId | bytes4 | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | bool | undefined |
totalInvestedAmountForInvestor
Parameters
Name | Type | Description |
---|---|---|
_0 | address | undefined |
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | undefined |
unpause
Unpauses the contract See {Pausable-_unpause}. Requirements: - the caller must have the Pauser role
Events
Claim
Parameters
Name | Type | Description |
---|---|---|
from | address | undefined |
amount | uint256 | undefined |
Contribute
Parameters
Name | Type | Description |
---|---|---|
from | address | undefined |
amount | uint256 | undefined |
Invest
Parameters
Name | Type | Description |
---|---|---|
from | address | undefined |
amount | uint256 | undefined |
Paused
Parameters
Name | Type | Description |
---|---|---|
account | address | undefined |
RemoveUndeployedCapital
Parameters
Name | Type | Description |
---|---|---|
remover | address | undefined |
RoleAdminChanged
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
previousAdminRole | bytes32 | undefined |
newAdminRole | bytes32 | undefined |
RoleGranted
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
account | address | undefined |
sender | address | undefined |
RoleRevoked
Parameters
Name | Type | Description |
---|---|---|
role | bytes32 | undefined |
account | address | undefined |
sender | address | undefined |
Unpaused
Parameters
Name | Type | Description |
---|---|---|
account | address | undefined |
Withdraw
Parameters
Name | Type | Description |
---|---|---|
from | address | undefined |
amount | uint256 | undefined |
Last updated