CCF
Loading...
Searching...
No Matches
consensus_types.h
Go to the documentation of this file.
1// Copyright (c) Microsoft Corporation. All rights reserved.
2// Licensed under the Apache 2.0 License.
3#pragma once
4
9#include "ccf/tx_id.h"
10
11#include <stdint.h>
12
13namespace ccf::consensus
14{
18 Configuration, message_timeout, election_timeout, max_uncommitted_tx_count);
19
20}
21
22namespace consensus
23{
24#pragma pack(push, 1)
25 template <typename T>
27 {
28 ConsensusHeader() = default;
29 ConsensusHeader(T msg_) : msg(msg_) {}
30
31 T msg;
32 };
33
41
42#pragma pack(pop)
43}
#define DECLARE_JSON_REQUIRED_FIELDS(TYPE,...)
Definition json.h:714
#define DECLARE_JSON_TYPE(TYPE)
Definition json.h:663
#define DECLARE_JSON_TYPE_WITH_OPTIONAL_FIELDS(TYPE)
Definition json.h:690
#define DECLARE_JSON_OPTIONAL_FIELDS(TYPE,...)
Definition json.h:786
Definition consensus_config.h:9
uint64_t SeqNo
Definition tx_id.h:36
Definition consensus_types.h:23
Definition consensus_config.h:11
Definition consensus_types.h:35
ccf::SeqNo prev_idx
Definition consensus_types.h:37
ccf::SeqNo idx
Definition consensus_types.h:36
Definition consensus_types.h:27
ConsensusHeader(T msg_)
Definition consensus_types.h:29
T msg
Definition consensus_types.h:31