Table of Contents

Class TrainCargoLoaderSimulation<TItem>

Namespace
Root
Assembly
Game.Content.dll
public class TrainCargoLoaderSimulation<TItem> : ICargoExchanger<LayeredWagonCargo<CargoContainer<TItem>>>, IItemBundleSimulation, IUpdatableSimulation, ISimulation, ICargoLoadUnloadStation<TItem>, ICargoExchanger where TItem : unmanaged, IEquatable<TItem>

Type Parameters

TItem
Inheritance
object
TrainCargoLoaderSimulation<TItem>
Implements
Extension Methods

Constructors

TrainCargoLoaderSimulation(TrainCargoExchangerState<TItem>, ICargoContainerCapacityConfigProvider, int, IBeltSpeed, IBeltSpeed, IBeltToCargoItemConverter<TItem>)

public TrainCargoLoaderSimulation(TrainCargoExchangerState<TItem> state, ICargoContainerCapacityConfigProvider containerCapacityProvider, int maxContainersOnTrack, IBeltSpeed trackSpeed, IBeltSpeed bridgeSpeed, IBeltToCargoItemConverter<TItem> cargoConverter)

Parameters

state TrainCargoExchangerState<TItem>
containerCapacityProvider ICargoContainerCapacityConfigProvider
maxContainersOnTrack int
trackSpeed IBeltSpeed
bridgeSpeed IBeltSpeed
cargoConverter IBeltToCargoItemConverter<TItem>

Properties

BridgeLanes

public IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>> BridgeLanes { get; }

Property Value

IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>>

ContainerTracks

public IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>> ContainerTracks { get; }

Property Value

IReadOnlyList<CargoPackageTrack<CargoPackage<TItem>>>

FillingContainersPerLayer

public IReadOnlyList<TrainBeltToCargoFillingContainer<TItem>> FillingContainersPerLayer { get; }

Property Value

IReadOnlyList<TrainBeltToCargoFillingContainer<TItem>>

NumItemProviderBundles

public int NumItemProviderBundles { get; }

Property Value

int

NumItemReceiverBundles

public int NumItemReceiverBundles { get; }

Property Value

int

State

public ISyncable State { get; }

Property Value

ISyncable

Methods

CanExchangeImmediatelyWithCargo(IWagonCargoData)

public bool CanExchangeImmediatelyWithCargo(IWagonCargoData wagonCargo)

Parameters

wagonCargo IWagonCargoData

Returns

bool

CancelExchange()

public void CancelExchange()

ClearContent()

public void ClearContent()

CouldExchangeWithCargo(IWagonCargoData)

public bool CouldExchangeWithCargo(IWagonCargoData wagonCargo)

Parameters

wagonCargo IWagonCargoData

Returns

bool

Exchange(CargoExchangeHandle<LayeredWagonCargo<CargoContainer<TItem>>>)

public void Exchange(CargoExchangeHandle<LayeredWagonCargo<CargoContainer<TItem>>> exchangeHandle)

Parameters

exchangeHandle CargoExchangeHandle<LayeredWagonCargo<CargoContainer<TItem>>>

FillingContainerAtLayer(short)

public CargoPackage<TItem> FillingContainerAtLayer(short layer)

Parameters

layer short

Returns

CargoPackage<TItem>

GetItemReceiverBundle(int)

public IItemReceiverBundle GetItemReceiverBundle(int inputIndex)

Parameters

inputIndex int

Returns

IItemReceiverBundle

IsActivelyExchangingWithTrain()

public bool IsActivelyExchangingWithTrain()

Returns

bool

IsLayerActive(int)

public bool IsLayerActive(int layer)

Parameters

layer int

Returns

bool

TraverseLanes<TTraverser>(TTraverser)

public void TraverseLanes<TTraverser>(TTraverser traverser) where TTraverser : IItemLaneTraverser

Parameters

traverser TTraverser

Type Parameters

TTraverser

Update(Ticks, Ticks)

public void Update(Ticks startTicks, Ticks deltaTicks)

Parameters

startTicks Ticks
deltaTicks Ticks