8 #include"block/carray.hpp"
9 #include"block/qunlock_conditions.hpp"
10 #include"block/qfeatures.hpp"
11 #include"block/qnative_tokens.hpp"
12 #include"block/qtoken_scheme.hpp"
46 const quint32& state_index_m=0,
64 [typ](
const auto& it){return (it->type()==typ);});
71 [typ](
const auto& it){return (it->type()==typ);});
72 return (found==
features_.end())?
nullptr:*found;
77 [typ](
const auto& it){return (it->type()==typ);});
161 const fl_array<quint16> &state_metadata_m=
"",
const quint32& foundry_counter_m=0,
162 const quint32& state_index_m=0,
Definition: qoutputs.hpp:158
Alias_Output(const QJsonValue &val)
void serialize(QDataStream &out) const
c_array get_id(void) const
Definition: qoutputs.hpp:173
void set_id(const c_array &outputid)
Definition: qoutputs.hpp:172
fl_array< quint16 > state_metadata_
Definition: qoutputs.hpp:175
Alias_Output(QDataStream &in)
Alias_Output(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const fl_array< quint16 > &state_metadata_m="", const quint32 &foundry_counter_m=0, const quint32 &state_index_m=0, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={}, const pvector< const Feature > &features_m={})
quint32 foundry_counter_
Definition: qoutputs.hpp:174
quint32 state_index_
Definition: qoutputs.hpp:174
QJsonObject get_Json(void) const
Definition: qoutputs.hpp:96
Basic_Output(const QJsonValue &val)
Basic_Output(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &features_m={})
QJsonObject get_Json(void) const
void serialize(QDataStream &out) const
Basic_Output(QDataStream &in)
types
Definition: qfeatures.hpp:13
Definition: qoutputs.hpp:131
c_array get_id(void) const
Definition: qoutputs.hpp:141
QJsonObject get_Json(void) const
Foundry_Output(QDataStream &in)
std::shared_ptr< Token_Scheme > token_scheme_
Definition: qoutputs.hpp:150
Foundry_Output(const QJsonValue &val)
Foundry_Output(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const std::shared_ptr< Token_Scheme > &token_scheme_m, const quint32 &serial_number_m, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={}, const pvector< const Feature > &features_m={})
quint32 serial_number_
Definition: qoutputs.hpp:151
void serialize(QDataStream &out) const
Definition: qoutputs.hpp:110
void serialize(QDataStream &out) const
void set_id(const c_array &outputid)
Definition: qoutputs.hpp:121
QJsonObject get_Json(void) const
NFT_Output(QDataStream &in)
c_array get_id(void) const
Definition: qoutputs.hpp:122
NFT_Output(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={}, const pvector< const Feature > &features_m={})
NFT_Output(const QJsonValue &val)
Definition: qoutputs.hpp:17
Output(types typ, const QJsonValue &val)
static std::shared_ptr< Output > from_(from_type &val)
Output(types typ)
Definition: qoutputs.hpp:26
static std::shared_ptr< Output > Foundry(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const std::shared_ptr< Token_Scheme > &token_scheme_m, const quint32 &serial_number_m, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={}, const pvector< const Feature > &features_m={})
quint64 min_deposit_of_output(const quint64 &wkey, const quint64 &wdata, const quint64 &v_byte_cost) const
pvector< const Native_Token > native_tokens_
Definition: qoutputs.hpp:86
QBLOCK_EXPORT static const QHash< types, QString > typesstr
Definition: qoutputs.hpp:88
static std::shared_ptr< Output > NFT(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={}, const pvector< const Feature > &features_m={})
virtual QJsonObject get_Json(void) const
types
Definition: qoutputs.hpp:19
@ Foundry_typ
Definition: qoutputs.hpp:19
@ NFT_typ
Definition: qoutputs.hpp:19
@ Basic_typ
Definition: qoutputs.hpp:19
@ Alias_typ
Definition: qoutputs.hpp:19
virtual c_array get_id(void) const
Definition: qoutputs.hpp:56
virtual void serialize(QDataStream &out) const
pvector< const Unlock_Condition > unlock_conditions_
Definition: qoutputs.hpp:83
virtual void consume(void)
std::shared_ptr< const Feature > get_feature_(const Feature::types &typ) const
Definition: qoutputs.hpp:68
std::shared_ptr< const Unlock_Condition > get_unlock_(const Unlock_Condition::types &typ) const
Definition: qoutputs.hpp:61
virtual void set_id(const c_array &id)
types type(void) const
Definition: qoutputs.hpp:87
static std::shared_ptr< Output > Alias(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const fl_array< quint16 > &state_metadata_m="", const quint32 &foundry_counter_m=0, const quint32 &state_index_m=0, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={}, const pvector< const Feature > &features_m={})
std::shared_ptr< const Feature > get_immutable_feature_(const Feature::types &typ) const
Definition: qoutputs.hpp:74
quint64 amount_
Definition: qoutputs.hpp:82
pvector< const Feature > features_
Definition: qoutputs.hpp:84
Output(types typ, const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const pvector< const Feature > &features_m={}, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &immutable_features_m={})
pvector< const Feature > immutable_features_
Definition: qoutputs.hpp:85
static std::shared_ptr< Output > Basic(const quint64 &amount_m, const pvector< const Unlock_Condition > &unlock_conditions_m, const pvector< const Native_Token > &native_tokens_m={}, const pvector< const Feature > &features_m={})
types
Definition: qunlock_conditions.hpp:13
Byte Array that takes care of storing the objects in serialized form.
Definition: carray.hpp:28
void append(const obj_type &obj)
Append obj data to the end. For objects that implement QDataStream & operator <<.
Definition: carray.hpp:62
c_array hash(void) const
Get the hash of the data.
Definition: carray.hpp:71
Definition: qbigint.hpp:7