Constructor
new BlockTemplate(options)
Create a block template.
Parameters:
| Name | Type | Description | 
|---|---|---|
| options | Object | 
- Source:
Methods
(static) fromOptions(options) → {BlockTemplate}
Instantiate block template from options.
Parameters:
| Name | Type | Description | 
|---|---|---|
| options | Object | 
- Source:
Returns:
- Type
- BlockTemplate
addTX(tx, view)
Add a transaction to the template.
Parameters:
| Name | Type | Description | 
|---|---|---|
| tx | TX | |
| view | CoinView | 
- Source:
commit(proof) → {Block}
Create block from calculated proof.
Parameters:
| Name | Type | Description | 
|---|---|---|
| proof | BlockProof | 
- Source:
Returns:
- Type
- Block
createCoinbase(hash) → {TX}
Initialize the default coinbase.
Parameters:
| Name | Type | Description | 
|---|---|---|
| hash | Buffer | Witness commitment hash. | 
- Source:
Returns:
- Type
- TX
(private) fromOptions(options) → {BlockTemplate}
Inject properties from options.
Parameters:
| Name | Type | Description | 
|---|---|---|
| options | Object | 
- Source:
Returns:
- Type
- BlockTemplate
getCoinbase(nonce1, nonce2) → {TX}
Create coinbase from given parameters.
Parameters:
| Name | Type | Description | 
|---|---|---|
| nonce1 | Number | |
| nonce2 | Number | 
- Source:
Returns:
- Type
- TX
getDifficulty() → {Number}
Calculate the target difficulty.
- Source:
Returns:
- Type
- Number
getHeader(root, time, nonce) → {Buffer}
Create raw block header with given parameters.
Parameters:
| Name | Type | Description | 
|---|---|---|
| root | Buffer | |
| time | Number | |
| nonce | Number | 
- Source:
Returns:
- Type
- Buffer
getProof(nonce1, nonce2, time, nonce) → {BlockProof}
Calculate proof with given parameters.
Parameters:
| Name | Type | Description | 
|---|---|---|
| nonce1 | Number | |
| nonce2 | Number | |
| time | Number | |
| nonce | Number | 
- Source:
Returns:
- Type
- BlockProof
getRawCoinbase(nonce1, nonce2) → {Buffer}
Get raw coinbase with desired nonces.
Parameters:
| Name | Type | Description | 
|---|---|---|
| nonce1 | Number | |
| nonce2 | Number | 
- Source:
Returns:
- Type
- Buffer
getReward() → {Amount}
Calculate the block reward.
- Source:
Returns:
- Type
- Amount
getRoot(nonce1, nonce2) → {Buffer}
Calculate the merkle root with given nonces.
Parameters:
| Name | Type | Description | 
|---|---|---|
| nonce1 | Number | |
| nonce2 | Number | 
- Source:
Returns:
- Type
- Buffer
getWitnessHash() → {Buffer}
Create witness commitment hash.
- Source:
Returns:
- Type
- Buffer
getWitnessScript() → {Script}
Create witness commitment script.
- Source:
Returns:
- Type
- Script
pushTX(tx, viewnullable)
Add a transaction to the template (less verification than addTX).
Parameters:
| Name | Type | Attributes | Description | 
|---|---|---|---|
| tx | TX | ||
| view | CoinView | <nullable> | 
- Source:
refresh()
Refresh the coinbase and merkle tree.
- Source:
setAddress(address)
Set the reward output address and refresh.
Parameters:
| Name | Type | Description | 
|---|---|---|
| address | Address | 
- Source:
setBits(bits)
Set the target (bits).
Parameters:
| Name | Type | Description | 
|---|---|---|
| bits | Number | 
- Source:
setTarget(target)
Set the target (uint256le).
Parameters:
| Name | Type | Description | 
|---|---|---|
| target | Buffer | 
- Source:
toBlock() → {Block}
Quick and dirty way to get a block object (most likely to be an invalid one).
- Source:
Returns:
- Type
- Block
toCoinbase() → {TX}
Quick and dirty way to get a coinbase tx object.
- Source:
Returns:
- Type
- TX