Burn module for burning tokens and keeping track of burnt amounts (ScheduledCheckpoint.sol)

View Source: contracts/modules/Experimental/Mixed/ScheduledCheckpoint.sol

↗ Extends: ICheckpoint, TransferManager

ScheduledCheckpoint

Enums

TimeUnit

enum TimeUnit {
 SECONDS,
 DAYS,
 WEEKS,
 MONTHS,
 YEARS
}

Structs

Schedule

struct Schedule {
 bytes32 name,
 uint256 startTime,
 uint256 nextTime,
 uint256 interval,
 enum ScheduledCheckpoint.TimeUnit timeUnit,
 uint256 index,
 uint256[] checkpointIds,
 uint256[] timestamps,
 uint256[] periods,
 uint256 totalPeriods
}

Contract Members

Constants & Variables

Events

Functions

Constructor

Arguments

Name

Type

Description

_securityToken

address

Address of the security token

_polyToken

address

getInitFunction

⤾ overrides IModule.getInitFunction

This function returns the signature of configure function

Arguments

Name

Type

Description

addSchedule

adds a new schedule for checkpoints

Arguments

Name

Type

Description

_name

bytes32

name of the new schedule (must be unused)

_startTime

uint256

start time of the schedule (first checkpoint)

_interval

uint256

interval at which checkpoints should be created

_timeUnit

enum ScheduledCheckpoint.TimeUnit

unit of time at which checkpoints should be created

removeSchedule

removes a schedule for checkpoints

Arguments

Name

Type

Description

_name

bytes32

name of the schedule to be removed

executeTransfer

⤾ overrides ITransferManager.executeTransfer

Used to create checkpoints that correctly reflect balances

Returns

always returns Result.NA

Arguments

Name

Type

Description

address

address

uint256

bytes

verifyTransfer

⤾ overrides ITransferManager.verifyTransfer

Used to create checkpoints that correctly reflect balances

Returns

always returns Result.NA

Arguments

Name

Type

Description

address

address

uint256

bytes

getSchedule

gets schedule details

Arguments

Name

Type

Description

_name

bytes32

name of the schedule

update

manually triggers update outside of transfer request for named schedule (can be used to reduce user gas costs)

Arguments

Name

Type

Description

_name

bytes32

name of the schedule

_update

Arguments

Name

Type

Description

_name

bytes32

updateAll

manually triggers update outside of transfer request for all schedules (can be used to reduce user gas costs)

Arguments

Name

Type

Description

_updateAll

Arguments

Name

Type

Description

getPermissions

⤾ overrides IModule.getPermissions

Return the permissions flag that are associated with CountTransferManager

Arguments

Name

Type

Description

Last updated

Was this helpful?