network

package
v2.0.0-b2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2024 License: GPL-3.0 Imports: 12 Imported by: 11

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BalancesUpdated

type BalancesUpdated struct {
	BlockNumber    uint64    `json:"blockNumber"`
	SlotTimestamp  time.Time `json:"slotTimestamp"`
	TotalEth       *big.Int  `json:"totalEth"`
	StakingEth     *big.Int  `json:"stakingEth"`
	RethSupply     *big.Int  `json:"rethSupply"`
	BlockTimestamp time.Time `json:"blockTimestamp"`
}

Info for a balances updated event

type NetworkManager

type NetworkManager struct {
	// The block number which network balances are current for
	BalancesBlock *core.FormattedUint256Field[uint64]

	// The current network total ETH balance
	TotalEthBalance *core.SimpleField[*big.Int]

	// The current network staking ETH balance
	StakingEthBalance *core.SimpleField[*big.Int]

	// The current network total rETH supply
	TotalRethSupply *core.SimpleField[*big.Int]

	// The current network ETH utilization rate
	EthUtilizationRate *core.FormattedUint256Field[float64]

	// The current network node demand in ETH
	NodeDemand *core.SimpleField[*big.Int]

	// The current network node commission rate
	NodeFee *core.FormattedUint256Field[float64]

	// The block number which network prices are current for
	PricesBlock *core.FormattedUint256Field[uint64]

	// The current network RPL price in ETH
	RplPrice *core.FormattedUint256Field[float64]

	// The latest block number that oracles should be reporting prices for
	LatestReportablePricesBlock *core.FormattedUint256Field[uint64]
	// contains filtered or unexported fields
}

Binding for the Network Manager

func NewNetworkManager

func NewNetworkManager(rp *rocketpool.RocketPool) (*NetworkManager, error)

Creates a new NetworkManager

func (*NetworkManager) GetBalancesSubmissions

func (c *NetworkManager) GetBalancesSubmissions(nodeAddress common.Address, fromBlock uint64, intervalSize *big.Int, opts *bind.CallOpts) (*[]uint64, error)

Returns an array of block numbers for balances submissions the given trusted node has submitted since fromBlock

func (*NetworkManager) GetBalancesUpdatedEvent

func (c *NetworkManager) GetBalancesUpdatedEvent(blockNumber uint64, intervalSize *big.Int, balanceAddresses []common.Address, opts *bind.CallOpts) (bool, BalancesUpdated, error)

Get the event emitted when the network balances were updated

func (*NetworkManager) GetLatestBalancesSubmissions

func (c *NetworkManager) GetLatestBalancesSubmissions(fromBlock uint64, intervalSize *big.Int, opts *bind.CallOpts) ([]common.Address, error)

Returns an array of members who submitted a balance since fromBlock

func (*NetworkManager) GetLatestPricesSubmissions

func (c *NetworkManager) GetLatestPricesSubmissions(fromBlock uint64, intervalSize *big.Int, opts *bind.CallOpts) ([]common.Address, error)

Returns an array of members who submitted prices since fromBlock

func (*NetworkManager) GetNodeFeeByDemand

func (c *NetworkManager) GetNodeFeeByDemand(mc *batch.MultiCaller, out **big.Int, demand *big.Int)

Get the network node fee for a node demand value

func (*NetworkManager) GetNodeVotingInfo

func (c *NetworkManager) GetNodeVotingInfo(blockNumber uint32, nodeAddresses []common.Address, opts *bind.CallOpts) ([]types.NodeVotingInfo, error)

Gets the voting power and delegation info for every node at the specified block using multicall

func (*NetworkManager) GetPriceUpdatedEvent

func (c *NetworkManager) GetPriceUpdatedEvent(blockNumber uint64, intervalSize *big.Int, priceAddresses []common.Address, opts *bind.CallOpts) (bool, PriceUpdated, error)

Get the event info for a price update

func (*NetworkManager) GetPricesSubmissions

func (c *NetworkManager) GetPricesSubmissions(nodeAddress common.Address, fromBlock uint64, intervalSize *big.Int, opts *bind.CallOpts) (*[]uint64, error)

Returns an array of block numbers for prices submissions the given trusted node has submitted since fromBlock

func (*NetworkManager) GetVotingNodeCountAtBlock

func (c *NetworkManager) GetVotingNodeCountAtBlock(mc *batch.MultiCaller, out **big.Int, blockNumber uint32)

Get the number of nodes that were present in the network at the provided block

func (*NetworkManager) SubmitBalances

func (c *NetworkManager) SubmitBalances(block uint64, slotTimestamp uint64, totalEth *big.Int, stakingEth *big.Int, rethSupply *big.Int, opts *bind.TransactOpts) (*eth.TransactionInfo, error)

Get info for network balance submission

func (*NetworkManager) SubmitPenalty

func (c *NetworkManager) SubmitPenalty(minipoolAddress common.Address, block *big.Int, opts *bind.TransactOpts) (*eth.TransactionInfo, error)

Get info for minipool penalty submission

func (*NetworkManager) SubmitPrices

func (c *NetworkManager) SubmitPrices(block uint64, slotTimestamp uint64, rplPrice *big.Int, opts *bind.TransactOpts) (*eth.TransactionInfo, error)

Get info for network price submission

type PriceUpdated

type PriceUpdated struct {
	BlockNumber   uint64    `json:"blockNumber"`
	SlotTimestamp time.Time `json:"slotTimestamp"`
	RplPrice      *big.Int  `json:"rplPrice"`
	Time          time.Time `json:"time"`
}

Info for a price updated event

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL