BtcExplorer/Models/TxInput.cpp
2021-05-06 16:58:11 +03:00

22 lines
581 B
C++

#include "TxInput.h"
#include "VarInt.h"
#include <algorithm>
TxInput::TxInput(const std::byte *data) {
std::copy_n(data, _txId.size(), _txId.begin());
data += _txId.size();
_vOut = *reinterpret_cast<const uint32_t*>(data);
data += sizeof(_vOut);
VarInt scriptSigSize(data);
// TODO: save ScriptSig
data += scriptSigSize.size();
_sequence = *reinterpret_cast<const uint32_t*>(data);
_size = _txId.size() + sizeof(_vOut) + scriptSigSize.size() + scriptSigSize.value() + sizeof(_sequence);
}
size_t TxInput::size() const {
return _size;
}