Table of Contents

Class CargoExchangingController<TWagonData, TLoader, TUnloader, TTransferrer>

Namespace
Root
Assembly
Game.Content.dll
public class CargoExchangingController<TWagonData, TLoader, TUnloader, TTransferrer> where TWagonData : IWagonCargoData where TLoader : ICargoExchanger<TWagonData> where TUnloader : ICargoExchanger<TWagonData> where TTransferrer : ICargoTransferrer<TWagonData>

Type Parameters

TWagonData
TLoader
TUnloader
TTransferrer
Inheritance
object
CargoExchangingController<TWagonData, TLoader, TUnloader, TTransferrer>
Extension Methods

Constructors

CargoExchangingController(IConnectableExchangerStationSimulationFactory<TLoader>, IConnectableExchangerStationSimulationFactory<TUnloader>, IConnectableExchangerStationSimulationFactory<TTransferrer>, MultiRegisterEvent<IConnectableSimulation>, MultiRegisterEvent<IConnectableSimulation>, TrainsWagonCargo, ILogger)

public CargoExchangingController(IConnectableExchangerStationSimulationFactory<TLoader> loaderFactory, IConnectableExchangerStationSimulationFactory<TUnloader> unloaderFactory, IConnectableExchangerStationSimulationFactory<TTransferrer> transferrerFactory, MultiRegisterEvent<IConnectableSimulation> onSimulationCreated, MultiRegisterEvent<IConnectableSimulation> onBeforeSimulationDestroyed, TrainsWagonCargo trainsWagonCargoSimulator, ILogger logger)

Parameters

loaderFactory IConnectableExchangerStationSimulationFactory<TLoader>
unloaderFactory IConnectableExchangerStationSimulationFactory<TUnloader>
transferrerFactory IConnectableExchangerStationSimulationFactory<TTransferrer>
onSimulationCreated MultiRegisterEvent<IConnectableSimulation>
onBeforeSimulationDestroyed MultiRegisterEvent<IConnectableSimulation>
trainsWagonCargoSimulator TrainsWagonCargo
logger ILogger

Properties

CargoLoaderMap

public IReadOnlyDictionary<GlobalChunkCoordinate, TLoader> CargoLoaderMap { get; }

Property Value

IReadOnlyDictionary<GlobalChunkCoordinate, TLoader>

CargoTransferrerMap

public IReadOnlyDictionary<GlobalChunkCoordinate, TTransferrer> CargoTransferrerMap { get; }

Property Value

IReadOnlyDictionary<GlobalChunkCoordinate, TTransferrer>

CargoUnloaderMap

public IReadOnlyDictionary<GlobalChunkCoordinate, TUnloader> CargoUnloaderMap { get; }

Property Value

IReadOnlyDictionary<GlobalChunkCoordinate, TUnloader>

Simulations

public IEnumerable<IConnectableSimulation> Simulations { get; }

Property Value

IEnumerable<IConnectableSimulation>

Methods

AddLoader(IslandInstance)

public void AddLoader(IslandInstance loaderIsland)

Parameters

loaderIsland IslandInstance

AddSpacer(IslandInstance)

public void AddSpacer(IslandInstance spacerIsland)

Parameters

spacerIsland IslandInstance

AddTransferrer(IslandInstance)

public void AddTransferrer(IslandInstance transferrerIsland)

Parameters

transferrerIsland IslandInstance

AddUnloader(IslandInstance)

public void AddUnloader(IslandInstance unloaderIsland)

Parameters

unloaderIsland IslandInstance

RemoveLoader(IslandInstance)

public void RemoveLoader(IslandInstance loaderIsland)

Parameters

loaderIsland IslandInstance

RemoveSpacer(IslandInstance)

public void RemoveSpacer(IslandInstance spacerIsland)

Parameters

spacerIsland IslandInstance

RemoveTransferrer(IslandInstance)

public void RemoveTransferrer(IslandInstance transferrerIsland)

Parameters

transferrerIsland IslandInstance

RemoveUnloader(IslandInstance)

public void RemoveUnloader(IslandInstance unloaderIsland)

Parameters

unloaderIsland IslandInstance

TryGetSimulation(in GlobalChunkCoordinate, out IConnectableSimulation)

public bool TryGetSimulation(in GlobalChunkCoordinate position, out IConnectableSimulation simulation)

Parameters

position GlobalChunkCoordinate
simulation IConnectableSimulation

Returns

bool

TryGetSimulation(in GlobalChunkPivot, out ILocalizedSimulation)

public bool TryGetSimulation(in GlobalChunkPivot position, out ILocalizedSimulation simulation)

Parameters

position GlobalChunkPivot
simulation ILocalizedSimulation

Returns

bool