Electroneum
daemon_messages.h File Reference
#include <unordered_map>
#include <vector>
#include "message.h"
#include "cryptonote_protocol/cryptonote_protocol_defs.h"
#include "rpc/message_data_structs.h"
#include "rpc/daemon_rpc_version.h"
#include "cryptonote_basic/cryptonote_basic.h"
Include dependency graph for daemon_messages.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 cryptonote
 Holds cryptonote related classes and helpers.
 
 cryptonote::rpc
 

Macros

#define BEGIN_RPC_MESSAGE_CLASS(classname)
 
#define BEGIN_RPC_MESSAGE_REQUEST
 
#define BEGIN_RPC_MESSAGE_RESPONSE
 
#define END_RPC_MESSAGE_REQUEST   };
 
#define END_RPC_MESSAGE_RESPONSE   };
 
#define END_RPC_MESSAGE_CLASS   };
 
#define RPC_MESSAGE_MEMBER(type, name)   type name = {}
 

Typedefs

using cryptonote::rpc::txes_map = std::unordered_map< crypto::hash, transaction_info >
 
using cryptonote::rpc::Response = SendRawTx::Response
 

Enumerations

enum  cryptonote::rpc::STATUS { cryptonote::rpc::UNSPENT = 0, cryptonote::rpc::SPENT_IN_BLOCKCHAIN = 1, cryptonote::rpc::SPENT_IN_POOL = 2 }
 

Functions

 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetHeight)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, height)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlocksFast)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::list< crypto::hash >, block_ids)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, start_height)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, prune)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< cryptonote::rpc::block_with_transactions >, blocks)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, current_height)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< cryptonote::rpc::block_output_indices >, output_indices)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetHashesFast)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::list< crypto::hash >, known_hashes)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< crypto::hash >, hashes)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetTransactions)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< crypto::hash >, tx_hashes)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (txes_map, txs)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< crypto::hash >, missed_hashes)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (KeyImagesSpent)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< crypto::key_image >, key_images)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< uint64_t >, spent_status)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetTxGlobalOutputIndices)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (crypto::hash, tx_hash)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< uint64_t >, output_indices)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetRandomOutputsForAmounts)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< uint64_t >, amounts)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, count)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< amount_with_random_outputs >, amounts_with_outputs)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SendRawTx)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (cryptonote::transaction, tx)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, relay)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, relayed)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SendRawTxHex)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::string, tx_as_hex)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (StartMining)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::string, miner_address)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, threads_count)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, do_background_mining)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, ignore_battery)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetInfo)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (DaemonInfo, info)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (StopMining)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (MiningStatus)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, active)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, speed)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::string, address)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, is_background_mining_enabled)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SaveBC)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlockHash)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (crypto::hash, hash)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlockTemplate)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SubmitBlock)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetLastBlockHeader)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (cryptonote::rpc::BlockHeaderResponse, header)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlockHeaderByHash)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlockHeaderByHeight)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlockHeadersByHeight)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< uint64_t >, heights)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< cryptonote::rpc::BlockHeaderResponse >, headers)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlock)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetPeerList)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< peer >, white_list)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< peer >, gray_list)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SetLogHashRate)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SetLogLevel)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (int8_t, level)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetTransactionPool)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< cryptonote::rpc::tx_in_pool >, transactions)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (key_images_with_tx_hashes, key_images)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetConnections)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBlockHeadersRange)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (StopDaemon)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (StartSaveGraph)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (StopSaveGraph)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (HardForkInfo)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint8_t, version)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (hard_fork_info, info)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetBans)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (SetBans)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (FlushTransactionPool)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetOutputHistogram)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, min_count)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, max_count)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, unlocked)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, recent_cutoff)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< output_amount_count >, histogram)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetOutputKeys)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< output_amount_and_index >, outputs)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< output_key_mask_unlocked >, keys)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetRPCVersion)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint32_t, version)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetFeeEstimate)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, num_grace_blocks)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, estimated_base_fee)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, fee_mask)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint32_t, size_scale)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint8_t, hard_fork_version)
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_CLASS (GetOutputDistribution)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, from_height)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (uint64_t, to_height)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (bool, cumulative)
 
 cryptonote::rpc::RPC_MESSAGE_MEMBER (std::vector< output_distribution >, distributions)
 

Variables

 cryptonote::rpc::BEGIN_RPC_MESSAGE_REQUEST
 
 cryptonote::rpc::END_RPC_MESSAGE_REQUEST
 
 cryptonote::rpc::BEGIN_RPC_MESSAGE_RESPONSE
 
 cryptonote::rpc::END_RPC_MESSAGE_RESPONSE
 
 cryptonote::rpc::END_RPC_MESSAGE_CLASS
 

Macro Definition Documentation

◆ BEGIN_RPC_MESSAGE_CLASS

#define BEGIN_RPC_MESSAGE_CLASS (   classname)
Value:
class classname \
{ \
public: \
static const char* const name;
const char * name

Definition at line 40 of file daemon_messages.h.

◆ BEGIN_RPC_MESSAGE_REQUEST

#define BEGIN_RPC_MESSAGE_REQUEST
Value:
class Request : public Message \
{ \
public: \
Request() { } \
~Request() { } \
void fromJson(rapidjson::Value& val);
GenericValue< UTF8<> > Value
GenericValue with UTF8 encoding.
Definition: document.h:2116
GenericDocument< UTF8<> > Document
GenericDocument with UTF8 encoding.
Definition: document.h:2512

Definition at line 46 of file daemon_messages.h.

◆ BEGIN_RPC_MESSAGE_RESPONSE

#define BEGIN_RPC_MESSAGE_RESPONSE
Value:
class Response : public Message \
{ \
public: \
Response() { } \
~Response() { } \
void fromJson(rapidjson::Value& val);
SendRawTx::Response Response
GenericValue< UTF8<> > Value
GenericValue with UTF8 encoding.
Definition: document.h:2116
GenericDocument< UTF8<> > Document
GenericDocument with UTF8 encoding.
Definition: document.h:2512

Definition at line 55 of file daemon_messages.h.

◆ END_RPC_MESSAGE_CLASS

#define END_RPC_MESSAGE_CLASS   };

Definition at line 66 of file daemon_messages.h.

◆ END_RPC_MESSAGE_REQUEST

#define END_RPC_MESSAGE_REQUEST   };

Definition at line 64 of file daemon_messages.h.

◆ END_RPC_MESSAGE_RESPONSE

#define END_RPC_MESSAGE_RESPONSE   };

Definition at line 65 of file daemon_messages.h.

◆ RPC_MESSAGE_MEMBER

#define RPC_MESSAGE_MEMBER (   type,
  name 
)    type name = {}

Definition at line 71 of file daemon_messages.h.