## Uses of Class
net.i2p.router.tunnel.HopConfig

- Packages that use HopConfig
  Package | Description
  --- | ---
  net.i2p.router | The I2P router application handles I2P network communication.
  net.i2p.router.tunnel | Core tunnel management, message processing, and encryption for I2P's anonymous routing system.

- - ### Uses of HopConfig in net.i2p.router

    Methods in net.i2p.router with parameters of type HopConfig
    Modifier and Type | Method and Description
    --- | ---
    `void` | MessageHistory.`tunnelJoined(String state, HopConfig tunnel)` The local router has joined the given tunnel operating in the given state.

  - ### Uses of HopConfig in net.i2p.router.tunnel

    Fields in net.i2p.router.tunnel declared as HopConfig
    Modifier and Type | Field and Description
    --- | ---
    `protected HopConfig` | HopProcessor.`_config`
    `protected HopConfig` | BatchedRouterPreprocessor.`_hopConfig`

    Methods in net.i2p.router.tunnel that return HopConfig
    Modifier and Type | Method and Description
    --- | ---
    `HopConfig` | TunnelCreatorConfig.`getConfig(int hop)` retrieve the config for the given hop.

    Methods in net.i2p.router.tunnel that return types with arguments of type HopConfig
    Modifier and Type | Method and Description
    --- | ---
    `List<HopConfig>` | TunnelDispatcher.`listParticipatingTunnels()` Get a list of participating tunnels (for console display)

    Methods in net.i2p.router.tunnel with parameters of type HopConfig
    Modifier and Type | Method and Description
    --- | ---
    `(package private) static void` | OutboundGatewayProcessor.`decrypt(I2PAppContext ctx, byte[] orig, int offset, int length, HopConfig config)` Undo the crypto for a single hop.
    `boolean` | TunnelDispatcher.`joinInboundGateway(HopConfig cfg)` We are the inbound gateway in this tunnel, and did not create it
    `boolean` | TunnelDispatcher.`joinOutboundEndpoint(HopConfig cfg)` We are the outbound endpoint in this tunnel, and did not create it
    `boolean` | TunnelDispatcher.`joinParticipant(HopConfig cfg)` We are a participant in this tunnel, but not as the endpoint or gateway
    `void` | TunnelDispatcher.`remove(HopConfig cfg)` Remove a tunnel we're participating in

    Constructors in net.i2p.router.tunnel with parameters of type HopConfig
    Constructor and Description
    `BatchedRouterPreprocessor(RouterContext ctx, HopConfig cfg)` for IBGWs
    `HopProcessor(I2PAppContext ctx, HopConfig config)` Deprecated. used only by unit tests
    `HopProcessor(I2PAppContext ctx, HopConfig config, IVValidator validator)`
    `InboundGatewayProcessor(I2PAppContext ctx, HopConfig config)`
    `InboundGatewayReceiver(RouterContext ctx, HopConfig cfg)`
    `InboundSender(I2PAppContext ctx, HopConfig config)`
    `OutboundTunnelEndpoint(RouterContext ctx, HopConfig config, HopProcessor processor)`
    `ThrottledPumpedTunnelGateway(RouterContext context, TunnelGateway.QueuePreprocessor preprocessor, TunnelGateway.Sender sender, TunnelGateway.Receiver receiver, TunnelGatewayPumper pumper, HopConfig config)` Constructs a ThrottledPumpedTunnelGateway with bandwidth throttling.
    `TunnelParticipant(RouterContext ctx, HopConfig config, HopProcessor processor)` Construct for intermediate tunnel participant (not endpoint).