Bitcoin Core 22.99.0
P2P Digital Currency
zmqpublishnotifier.h
Go to the documentation of this file.
1// Copyright (c) 2015-2020 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#ifndef BITCOIN_ZMQ_ZMQPUBLISHNOTIFIER_H
6#define BITCOIN_ZMQ_ZMQPUBLISHNOTIFIER_H
7
9
10class CBlockIndex;
11
13{
14private:
15 uint32_t nSequence {0U};
16
17public:
18
19 /* send zmq multipart message
20 parts:
21 * command
22 * data
23 * message sequence number
24 */
25 bool SendZmqMessage(const char *command, const void* data, size_t size);
26
27 bool Initialize(void *pcontext) override;
28 void Shutdown() override;
29};
30
32{
33public:
34 bool NotifyBlock(const CBlockIndex *pindex) override;
35};
36
38{
39public:
40 bool NotifyTransaction(const CTransaction &transaction) override;
41};
42
44{
45public:
46 bool NotifyBlock(const CBlockIndex *pindex) override;
47};
48
50{
51public:
52 bool NotifyTransaction(const CTransaction &transaction) override;
53};
54
56{
57public:
58 bool NotifyBlockConnect(const CBlockIndex *pindex) override;
59 bool NotifyBlockDisconnect(const CBlockIndex *pindex) override;
60 bool NotifyTransactionAcceptance(const CTransaction &transaction, uint64_t mempool_sequence) override;
61 bool NotifyTransactionRemoval(const CTransaction &transaction, uint64_t mempool_sequence) override;
62};
63
64#endif // BITCOIN_ZMQ_ZMQPUBLISHNOTIFIER_H
The block chain is a tree shaped structure starting with the genesis block at the root,...
Definition: chain.h:146
The basic transaction that is broadcasted on the network and contained in blocks.
Definition: transaction.h:260
bool SendZmqMessage(const char *command, const void *data, size_t size)
uint32_t nSequence
upcounting per message sequence number
bool Initialize(void *pcontext) override
bool NotifyBlock(const CBlockIndex *pindex) override
bool NotifyTransaction(const CTransaction &transaction) override
bool NotifyBlock(const CBlockIndex *pindex) override
bool NotifyTransaction(const CTransaction &transaction) override
bool NotifyTransactionAcceptance(const CTransaction &transaction, uint64_t mempool_sequence) override
bool NotifyTransactionRemoval(const CTransaction &transaction, uint64_t mempool_sequence) override
bool NotifyBlockConnect(const CBlockIndex *pindex) override
bool NotifyBlockDisconnect(const CBlockIndex *pindex) override