LCOV - code coverage report
Current view: top level - src/zmq - zmqabstractnotifier.h (source / functions) Hit Total Coverage
Test: total_coverage.info Lines: 7 7 100.0 %
Date: 2025-02-23 09:33:43 Functions: 4 4 100.0 %

          Line data    Source code
       1             : // Copyright (c) 2015 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 PIVX_ZMQ_ZMQABSTRACTNOTIFIER_H
       6             : #define PIVX_ZMQ_ZMQABSTRACTNOTIFIER_H
       7             : 
       8             : #include "zmqconfig.h"
       9             : 
      10             : class CBlockIndex;
      11             : class CZMQAbstractNotifier;
      12             : 
      13             : typedef CZMQAbstractNotifier* (*CZMQNotifierFactory)();
      14             : 
      15             : class CZMQAbstractNotifier
      16             : {
      17             : public:
      18           4 :     CZMQAbstractNotifier() : psocket(0) { }
      19             :     virtual ~CZMQAbstractNotifier();
      20             : 
      21             :     template <typename T>
      22           4 :     static CZMQAbstractNotifier* Create()
      23             :     {
      24           4 :         return new T();
      25             :     }
      26             : 
      27          16 :     std::string GetType() const { return type; }
      28           4 :     void SetType(const std::string &t) { type = t; }
      29           8 :     std::string GetAddress() const { return address; }
      30           4 :     void SetAddress(const std::string &a) { address = a; }
      31             : 
      32             :     virtual bool Initialize(void *pcontext) = 0;
      33             :     virtual void Shutdown() = 0;
      34             : 
      35             :     virtual bool NotifyBlock(const CBlockIndex *pindex);
      36             :     virtual bool NotifyTransaction(const CTransaction &transaction);
      37             : 
      38             : protected:
      39             :     void *psocket;
      40             :     std::string type;
      41             :     std::string address;
      42             : };
      43             : 
      44             : #endif // PIVX_ZMQ_ZMQABSTRACTNOTIFIER_H

Generated by: LCOV version 1.14