MidlePayQml 0.0.4
MiddlePay QML module
qblock.hpp
1 #pragma once
8 #include <QByteArray>
9 #include <QDataStream>
10 #include <QJsonValue>
11 #include<QJsonObject>
12 #include<QJsonArray>
13 #include "block/carray.hpp"
14 #include "block/qsignatures.hpp"
15 #include "block/qsignatures.hpp"
16 #include "block/qpayloads.hpp"
17 #include "block/qunlocks.hpp"
18 #include "block/qessences.hpp"
19 #include "block/qinputs.hpp"
20 #include "block/qoutputs.hpp"
21 #include "block/qnative_tokens.hpp"
22 #include "block/qunlock_conditions.hpp"
23 #include "block/qfeatures.hpp"
24 #include "block/qaddresses.hpp"
25 #include "block/qoutput_metadata_response.hpp"
26 
27 namespace qiota{
28 
29 namespace qblocks{
30 class Block
31 {
32 public:
33  Block(){};
34  Block(QDataStream &serialized_block);
36  Block(const QJsonValue& val);
37 
38  friend QDataStream & operator < (QDataStream &out, const Block & obj);
40 
41  void serialize(QDataStream &out)const;
42 
43  QJsonObject get_Json(void)const;
44 
45  void set_parents(const std::vector<Block_ID>& parents_m);
46 
47  void set_nonce(const quint64& nonce_m);
48  void set_pv(const quint8& pv);
49  std::shared_ptr<const Payload> payload()const{return payload_;}
50  private:
51 
52  quint8 protocol_version;
53  quint64 nonce_;
55  std::vector<Block_ID> parents_;
56 
57 };
58 
59 };
60 };
Definition: qblock.hpp:31
Block(QDataStream &serialized_block)
Block()
Definition: qblock.hpp:33
QJsonObject get_Json(void) const
static QByteArray get_inputs_Commitment(QByteArray Inputs_hash)
friend QDataStream & operator<(QDataStream &out, const Block &obj)
void set_pv(const quint8 &pv)
std::shared_ptr< const Payload > payload() const
Definition: qblock.hpp:49
void serialize(QDataStream &out) const
Block(const QJsonValue &val)
Block(const std::shared_ptr< const Payload > &pyl)
void set_nonce(const quint64 &nonce_m)
void set_parents(const std::vector< Block_ID > &parents_m)
Definition: qbigint.hpp:7