Interface to be implemented by all permission manager modules (IPermissionManager.sol)
View Source: contracts/modules/PermissionManager/IPermissionManager.sol
↘ Derived Contracts: GeneralPermissionManager
IPermissionManager
Functions
checkPermission
⤿ Overridden Implementation(s): GeneralPermissionManager.checkPermission
Used to check the permission on delegate corresponds to module contract address
function checkPermission(address _delegate, address _module, bytes32 _perm) external view
returns(bool)
Returns
bool
Arguments
Name
Type
Description
_delegate
address
Ethereum address of the delegate
_module
address
Ethereum contract address of the module
_perm
bytes32
Permission flag
addDelegate
⤿ Overridden Implementation(s): GeneralPermissionManager.addDelegate
Used to add a delegate
function addDelegate(address _delegate, bytes32 _details) external nonpayable
Arguments
Name
Type
Description
_delegate
address
Ethereum address of the delegate
_details
bytes32
Details about the delegate i.e Belongs to financial firm
deleteDelegate
⤿ Overridden Implementation(s): GeneralPermissionManager.deleteDelegate
Used to delete a delegate
function deleteDelegate(address _delegate) external nonpayable
Arguments
Name
Type
Description
_delegate
address
Ethereum address of the delegate
checkDelegate
⤿ Overridden Implementation(s): GeneralPermissionManager.checkDelegate
Used to check if an address is a delegate or not
function checkDelegate(address _potentialDelegate) external view
returns(bool)
Returns
bool
Arguments
Name
Type
Description
_potentialDelegate
address
the address of potential delegate
changePermission
⤿ Overridden Implementation(s): GeneralPermissionManager.changePermission
Used to provide/change the permission to the delegate corresponds to the module contract
function changePermission(address _delegate, address _module, bytes32 _perm, bool _valid) external nonpayable
Returns
bool
Arguments
Name
Type
Description
_delegate
address
Ethereum address of the delegate
_module
address
Ethereum contract address of the module
_perm
bytes32
Permission flag
_valid
bool
Bool flag use to switch on/off the permission
changePermissionMulti
⤿ Overridden Implementation(s): GeneralPermissionManager.changePermissionMulti
Used to change one or more permissions for a single delegate at once
function changePermissionMulti(address _delegate, address[] _modules, bytes32[] _perms, bool[] _valids) external nonpayable
Returns
nothing
Arguments
Name
Type
Description
_delegate
address
Ethereum address of the delegate
_modules
address[]
Multiple module matching the multiperms, needs to be same length
_perms
bytes32[]
Multiple permission flag needs to be changed
_valids
bool[]
Bool array consist the flag to switch on/off the permission
getAllDelegatesWithPerm
⤿ Overridden Implementation(s): GeneralPermissionManager.getAllDelegatesWithPerm
Used to return all delegates with a given permission and module
function getAllDelegatesWithPerm(address _module, bytes32 _perm) external view
returns(address[])
Returns
address[]
Arguments
Name
Type
Description
_module
address
Ethereum contract address of the module
_perm
bytes32
Permission flag
getAllModulesAndPermsFromTypes
⤿ Overridden Implementation(s): GeneralPermissionManager.getAllModulesAndPermsFromTypes
Used to return all permission of a single or multiple module
function getAllModulesAndPermsFromTypes(address _delegate, uint8[] _types) external view
returns(address[], bytes32[])
Returns
address[] the address array of Modules this delegate has permission
Arguments
Name
Type
Description
_delegate
address
Ethereum address of the delegate
_types
uint8[]
uint8[] of types
getPermissions
⤿ Overridden Implementation(s): BlacklistTransferManager.getPermissions,CappedSTO.getPermissions,CountTransferManager.getPermissions,DividendCheckpoint.getPermissions,DummySTO.getPermissions,GeneralPermissionManager.getPermissions,GeneralTransferManager.getPermissions,IModule.getPermissions,KYCTransferManager.getPermissions,LockUpTransferManager.getPermissions,ManualApprovalTransferManager.getPermissions,PercentageTransferManager.getPermissions,PLCRVotingCheckpoint.getPermissions,PreSaleSTO.getPermissions,ScheduledCheckpoint.getPermissions,SignedTransferManager.getPermissions,TrackedRedemption.getPermissions,USDTieredSTO.getPermissions,VestingEscrowWallet.getPermissions,VolumeRestrictionTM.getPermissions,WeightedVoteCheckpoint.getPermissions
Used to get the Permission flag related the this
contract
function getPermissions() external view
returns(bytes32[])
Returns
Array of permission flags
Arguments
Name
Type
Description
getAllDelegates
⤿ Overridden Implementation(s): GeneralPermissionManager.getAllDelegates
Used to get all delegates
function getAllDelegates() external view
returns(address[])
Returns
address[]
Arguments
Name
Type
Description
Last updated
Was this helpful?