79 str +=
strprintf(
"CMutableTransaction(hash=%s, ver=%d, vin.size=%u, vout.size=%u, nLockTime=%u)\n",
85 for (
unsigned int i = 0; i <
vin.size(); i++)
87 for (
unsigned int i = 0; i <
vout.size(); i++)
105 *const_cast<std::vector<CTxIn>*>(&
vin) = tx.
vin;
106 *
const_cast<std::vector<CTxOut>*
>(&
vout) = tx.
vout;
115 for (std::vector<CTxOut>::const_iterator it(
vout.begin()); it !=
vout.end(); ++it)
117 nValueOut += it->nValue;
119 throw std::runtime_error(
"CTransaction::GetValueOut(): value out of range");
127 if (nTxSize == 0)
return 0.0;
129 return dPriorityInputs / nTxSize;
141 for (std::vector<CTxIn>::const_iterator it(
vin.begin()); it !=
vin.end(); ++it)
143 unsigned int offset = 41U + std::min(110U, (
unsigned int)it->scriptSig.size());
144 if (nTxSize > offset)
158 str +=
strprintf(
"CTransaction(hash=%s, ver=%d, vin.size=%u, vout.size=%u, nLockTime=%u)\n",
164 for (
unsigned int i = 0; i <
vin.size(); i++)
166 for (
unsigned int i = 0; i <
vout.size(); i++)
double ComputePriority(double dPriorityInputs, unsigned int nTxSize=0) const
static const CAmount COIN
bool MoneyRange(const CAmount &nValue)
std::string HexStr(const T itbegin, const T itend, bool fSpaces=false)
static const uint32_t SEQUENCE_FINAL
std::string ToString() const
CAmount GetValueOut() const
uint256 SerializeHash(const T &obj, int nType=SER_GETHASH, int nVersion=PROTOCOL_VERSION)
unsigned int GetTotalSize() const
unsigned int GetSerializeSize(char a, int, int=0)
std::string ToString() const
std::string ToString() const
std::vector< CTxOut > vout
unsigned int CalculateModifiedSize(unsigned int nTxSize=0) const
const std::vector< CTxIn > vin
std::string ToString() const
std::string ToString() const
static const int PROTOCOL_VERSION
const uint256 & GetHash() const
std::string ToString() const
const std::vector< CTxOut > vout
CTransaction & operator=(const CTransaction &tx)
std::string ToStringShort() const