Skip to content

sgns::evmwatcher::BridgeCatchupWatcher::Config

Configuration for the catch-up scan watcher.

#include <bridge_catchup_watcher.hpp>

Public Types

Name
using std::function< std::unique_ptr< eth::rpc::JsonRpcTransport >(const std::string &url)> TransportFactory

Public Attributes

Name
std::chrono::seconds poll_interval
Interval between polling cycles.
uint64_t start_block
Earliest block to scan (0 = genesis). Test-injected (D-20).
uint64_t max_blocks_per_query
Max block range per eth_getLogs call (matches provider limit).
uint64_t max_chunks
Max backward chunks per poll (0 = unlimited). Tests use 3.
TransportFactory transport_factory
null = use default RpcHttpTransport.

Public Types Documentation

using TransportFactory

using sgns::evmwatcher::BridgeCatchupWatcher::Config::TransportFactory =  std::function<std::unique_ptr<eth::rpc::JsonRpcTransport>( const std::string &url )>;

Optional factory for RPC transport. When set, poll_once() calls this instead of constructing a default RpcHttpTransport. Used by tests to inject mock / fake transports without needing friend-class access.

Public Attributes Documentation

variable poll_interval

std::chrono::seconds poll_interval { 15 };

Interval between polling cycles.

variable start_block

uint64_t start_block = 0;

Earliest block to scan (0 = genesis). Test-injected (D-20).

variable max_blocks_per_query

uint64_t max_blocks_per_query = 10000;

Max block range per eth_getLogs call (matches provider limit).

variable max_chunks

uint64_t max_chunks = 0;

Max backward chunks per poll (0 = unlimited). Tests use 3.

variable transport_factory

TransportFactory transport_factory;

null = use default RpcHttpTransport.


Updated on 2026-08-11 at 21:18:04 +0000