LCOV - code coverage report
Current view: top level - src/governance - net_governance.h (source / functions) Hit Total Coverage
Test: test_dash_coverage.info Lines: 0 8 0.0 %
Date: 2026-06-25 07:23:51 Functions: 0 5 0.0 %

          Line data    Source code
       1             : // Copyright (c) 2025 The Dash 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_GOVERNANCE_NET_GOVERNANCE_H
       6             : #define BITCOIN_GOVERNANCE_NET_GOVERNANCE_H
       7             : 
       8             : #include <net_processing.h>
       9             : 
      10             : class CGovernanceManager;
      11             : class CMasternodeSync;
      12             : class CNetFulfilledRequestManager;
      13             : 
      14             : class NetGovernance final : public NetHandler
      15             : {
      16             : public:
      17           0 :     NetGovernance(PeerManagerInternal* peer_manager, CGovernanceManager& gov_manager, CMasternodeSync& node_sync, CNetFulfilledRequestManager& netfulfilledman,
      18             :                   CConnman& connman) :
      19           0 :         NetHandler(peer_manager),
      20           0 :         m_gov_manager(gov_manager),
      21           0 :         m_node_sync(node_sync),
      22           0 :         m_netfulfilledman(netfulfilledman),
      23           0 :         m_connman(connman)
      24           0 :     {
      25           0 :     }
      26             :     void Schedule(CScheduler& scheduler) override;
      27             : 
      28             :     void ProcessMessage(CNode& peer, const std::string& msg_type, CDataStream& vRecv) override;
      29             : 
      30             :     bool AlreadyHave(const CInv& inv) override;
      31             :     bool ProcessGetData(CNode& pfrom, const CInv& inv, CConnman& connman, const CNetMsgMaker& msgMaker) override;
      32             : 
      33             : private:
      34             :     CGovernanceManager& m_gov_manager;
      35             :     CMasternodeSync& m_node_sync;
      36             :     CNetFulfilledRequestManager& m_netfulfilledman;
      37             :     CConnman& m_connman;
      38             : };
      39             : 
      40             : #endif // BITCOIN_GOVERNANCE_NET_GOVERNANCE_H

Generated by: LCOV version 1.16