TARAXA
slashing_manager.hpp
Go to the documentation of this file.
1 #pragma once
2 
6 
7 namespace taraxa {
9  public:
10  SlashingManager(const FullNodeConfig &config, std::shared_ptr<final_chain::FinalChain> final_chain,
11  std::shared_ptr<TransactionManager> trx_manager, std::shared_ptr<GasPricer> gas_pricer);
12  SlashingManager(const SlashingManager &) = delete;
16 
17  bool submitDoubleVotingProof(const std::shared_ptr<PbftVote> &vote_a, const std::shared_ptr<PbftVote> &vote_b);
18 
19  private:
20  std::shared_ptr<final_chain::FinalChain> final_chain_;
21  std::shared_ptr<TransactionManager> trx_manager_;
22  std::shared_ptr<GasPricer> gas_pricer_;
23 
24  // Already processed double voting proofs
26 
30 };
31 } // namespace taraxa
Definition: util.hpp:202
Definition: FixedHash.h:35
Definition: slashing_manager.hpp:8
SlashingManager(const FullNodeConfig &config, std::shared_ptr< final_chain::FinalChain > final_chain, std::shared_ptr< TransactionManager > trx_manager, std::shared_ptr< GasPricer > gas_pricer)
Definition: slashing_manager.cpp:13
std::shared_ptr< final_chain::FinalChain > final_chain_
Definition: slashing_manager.hpp:20
const addr_t kAddress
Definition: slashing_manager.hpp:28
SlashingManager(SlashingManager &&)=delete
SlashingManager(const SlashingManager &)=delete
std::shared_ptr< TransactionManager > trx_manager_
Definition: slashing_manager.hpp:21
const secret_t kPrivateKey
Definition: slashing_manager.hpp:29
SlashingManager & operator=(const SlashingManager &)=delete
bool submitDoubleVotingProof(const std::shared_ptr< PbftVote > &vote_a, const std::shared_ptr< PbftVote > &vote_b)
Definition: slashing_manager.cpp:23
std::shared_ptr< GasPricer > gas_pricer_
Definition: slashing_manager.hpp:22
const FullNodeConfig & kConfig
Definition: slashing_manager.hpp:27
ExpirationCache< dev::h256 > double_voting_proofs_
Definition: slashing_manager.hpp:25
SlashingManager & operator=(SlashingManager &&)=delete
Definition: config.hpp:8
Definition: config.hpp:24