27 std::vector<CMutableTransaction> dummyTransactions =
32 t1.vin[0].prevout.hash = dummyTransactions[0].GetHash();
33 t1.vin[0].prevout.n = 1;
34 t1.vin[0].scriptSig << std::vector<unsigned char>(65, 0);
35 t1.vin[1].prevout.hash = dummyTransactions[1].GetHash();
36 t1.vin[1].prevout.n = 0;
37 t1.vin[1].scriptSig << std::vector<unsigned char>(65, 0) << std::vector<unsigned char>(33, 4);
38 t1.vin[2].prevout.hash = dummyTransactions[1].GetHash();
39 t1.vin[2].prevout.n = 1;
40 t1.vin[2].scriptSig << std::vector<unsigned char>(65, 0) << std::vector<unsigned char>(33, 4);
42 t1.vout[0].nValue = 90 *
COIN;
43 t1.vout[0].scriptPubKey <<
OP_1;
static constexpr CAmount COIN
The amount of satoshis in one BTC.
static void CCoinsCaching(benchmark::Bench &bench)
CCoinsView that adds a memory cache for transactions to another CCoinsView.
Abstract view on the open txout dataset.
The basic transaction that is broadcasted on the network and contained in blocks.
Users of this module must hold an ECCVerifyHandle.
Fillable signing provider that keeps keys in an address->secret map.
Main entry point to nanobench's benchmarking facility.
Bench & run(char const *benchmarkName, Op &&op)
Repeatedly calls op() based on the configuration, and performs measurements.
void ECC_Start()
Initialize the elliptic curve support.
void ECC_Stop()
Deinitialize the elliptic curve support.
bool AreInputsStandard(const CTransaction &tx, const CCoinsViewCache &mapInputs, bool taproot_active)
Check transaction inputs to mitigate two potential denial-of-service attacks:
A mutable version of CTransaction.
std::vector< CMutableTransaction > SetupDummyInputs(FillableSigningProvider &keystoreRet, CCoinsViewCache &coinsRet, const std::array< CAmount, 4 > &nValues)