2015-04-23 16:07:22 +00:00
|
|
|
// Copyright (c) 2011-2015 The Cryptonote developers
|
|
|
|
// Distributed under the MIT/X11 software license, see the accompanying
|
|
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
2014-06-25 17:21:42 +00:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2015-04-06 16:13:07 +00:00
|
|
|
#include <array>
|
|
|
|
#include <memory>
|
|
|
|
#include <cstdint>
|
2014-06-25 17:21:42 +00:00
|
|
|
|
2015-04-06 16:13:07 +00:00
|
|
|
#include <boost/optional.hpp>
|
|
|
|
|
|
|
|
#include "INode.h"
|
|
|
|
#include "ITransaction.h"
|
2014-06-25 17:21:42 +00:00
|
|
|
|
|
|
|
namespace CryptoNote {
|
|
|
|
|
2015-04-06 16:13:07 +00:00
|
|
|
struct BlockchainInterval {
|
2015-07-30 15:22:07 +00:00
|
|
|
uint32_t startHeight;
|
|
|
|
std::vector<Crypto::Hash> blocks;
|
2015-04-06 16:13:07 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
struct CompleteBlock {
|
2015-07-30 15:22:07 +00:00
|
|
|
Crypto::Hash blockHash;
|
2015-05-27 12:08:46 +00:00
|
|
|
boost::optional<CryptoNote::Block> block;
|
2015-04-06 16:13:07 +00:00
|
|
|
// first transaction is always coinbase
|
|
|
|
std::list<std::shared_ptr<ITransactionReader>> transactions;
|
2014-06-25 17:21:42 +00:00
|
|
|
};
|
|
|
|
|
2015-04-06 16:13:07 +00:00
|
|
|
}
|