C# Class CSL_Traffic.DefaultPathFind

This is the (almost) vanilla code found in the PathFind default class. What is changed: 1. IExtendedPathFind implementation 2. private -> protected 3. CalculatePath signature (uint unit, bool skipQueue, ExtendedVehicleType vehicleType)
Inheritance: IExtendedPathFind
Afficher le fichier Open project: Katalyst6/CSL.TransitAddonMod

Protected Properties

Свойство Type Description
m_buffer BufferItem[]
m_bufferLock object
m_bufferMax int[]
m_bufferMaxPos int
m_bufferMin int[]
m_bufferMinPos int
m_calculating uint
m_endLaneA uint
m_endLaneB uint
m_ignoreBlocked bool
m_isHeavyVehicle bool
m_laneLocation uint[]
m_laneTarget PathUnit.Position[]
m_laneTypes NetInfo.LaneType
m_maxLength float
m_pathFindIndex uint
m_pathFindThread Thread
m_pathRandomizer Randomizer
m_pathUnits Array32
m_queueFirst uint
m_queueLast uint
m_queueLock object
m_stablePath bool
m_startLaneA uint
m_startLaneB uint
m_startOffsetA byte
m_startOffsetB byte
m_terminated bool
m_transportVehicle bool
m_vehicleLane uint
m_vehicleOffset byte
m_vehicleTypes VehicleInfo.VehicleType

Private Properties

Свойство Type Description

Méthodes publiques

Méthode Description
CalculatePath ( uint unit, bool skipQueue, ExtendedVehicleType vehicleType ) : bool
OnAwake ( ) : void
OnDestroy ( ) : void
WaitForAllPaths ( ) : void

Méthodes protégées

Méthode Description
AddBufferItem ( BufferItem item, PathUnit target ) : void
CalculateLaneSpeed ( byte startOffset, byte endOffset, NetSegment &segment, NetInfo laneInfo ) : float
GetLaneDirection ( PathUnit pathPos, NetInfo &direction, NetInfo &type ) : void
PathFindImplementation ( uint unit, PathUnit &data ) : void
PathFindThread ( ) : void
ProcessItem ( BufferItem item, ushort targetNode, ushort segmentID, NetSegment &segment, int &currentTargetIndex, byte connectOffset, bool enableVehicle, bool enablePedestrian ) : bool
ProcessItem ( BufferItem item, ushort nodeID, NetNode &node, byte connectOffset, bool isMiddle ) : void
ProcessItem ( BufferItem item, ushort targetNode, bool targetDisabled, ushort segmentID, NetSegment &segment, uint lane, byte offset, byte connectOffset ) : void
ProcessItem ( BufferItem item, ushort targetNode, ushort segmentID, NetSegment &segment, byte connectOffset, int laneIndex, uint lane ) : void

Method Details

AddBufferItem() protected méthode

protected AddBufferItem ( BufferItem item, PathUnit target ) : void
item BufferItem
target PathUnit
Résultat void

CalculateLaneSpeed() protected méthode

protected CalculateLaneSpeed ( byte startOffset, byte endOffset, NetSegment &segment, NetInfo laneInfo ) : float
startOffset byte
endOffset byte
segment NetSegment
laneInfo NetInfo
Résultat float

CalculatePath() public méthode

public CalculatePath ( uint unit, bool skipQueue, ExtendedVehicleType vehicleType ) : bool
unit uint
skipQueue bool
vehicleType ExtendedVehicleType
Résultat bool

GetLaneDirection() protected méthode

protected GetLaneDirection ( PathUnit pathPos, NetInfo &direction, NetInfo &type ) : void
pathPos PathUnit
direction NetInfo
type NetInfo
Résultat void

OnAwake() public méthode

public OnAwake ( ) : void
Résultat void

OnDestroy() public méthode

public OnDestroy ( ) : void
Résultat void

PathFindImplementation() protected méthode

protected PathFindImplementation ( uint unit, PathUnit &data ) : void
unit uint
data PathUnit
Résultat void

PathFindThread() protected méthode

protected PathFindThread ( ) : void
Résultat void

ProcessItem() protected méthode

protected ProcessItem ( BufferItem item, ushort targetNode, ushort segmentID, NetSegment &segment, int &currentTargetIndex, byte connectOffset, bool enableVehicle, bool enablePedestrian ) : bool
item BufferItem
targetNode ushort
segmentID ushort
segment NetSegment
currentTargetIndex int
connectOffset byte
enableVehicle bool
enablePedestrian bool
Résultat bool

ProcessItem() protected méthode

protected ProcessItem ( BufferItem item, ushort nodeID, NetNode &node, byte connectOffset, bool isMiddle ) : void
item BufferItem
nodeID ushort
node NetNode
connectOffset byte
isMiddle bool
Résultat void

ProcessItem() protected méthode

protected ProcessItem ( BufferItem item, ushort targetNode, bool targetDisabled, ushort segmentID, NetSegment &segment, uint lane, byte offset, byte connectOffset ) : void
item BufferItem
targetNode ushort
targetDisabled bool
segmentID ushort
segment NetSegment
lane uint
offset byte
connectOffset byte
Résultat void

ProcessItem() protected méthode

protected ProcessItem ( BufferItem item, ushort targetNode, ushort segmentID, NetSegment &segment, byte connectOffset, int laneIndex, uint lane ) : void
item BufferItem
targetNode ushort
segmentID ushort
segment NetSegment
connectOffset byte
laneIndex int
lane uint
Résultat void

WaitForAllPaths() public méthode

public WaitForAllPaths ( ) : void
Résultat void

Property Details

m_buffer protected_oe property

protected BufferItem[] m_buffer
Résultat BufferItem[]

m_bufferLock protected_oe property

protected object m_bufferLock
Résultat object

m_bufferMax protected_oe property

protected int[] m_bufferMax
Résultat int[]

m_bufferMaxPos protected_oe property

protected int m_bufferMaxPos
Résultat int

m_bufferMin protected_oe property

protected int[] m_bufferMin
Résultat int[]

m_bufferMinPos protected_oe property

protected int m_bufferMinPos
Résultat int

m_calculating protected_oe property

protected uint m_calculating
Résultat uint

m_endLaneA protected_oe property

protected uint m_endLaneA
Résultat uint

m_endLaneB protected_oe property

protected uint m_endLaneB
Résultat uint

m_ignoreBlocked protected_oe property

protected bool m_ignoreBlocked
Résultat bool

m_isHeavyVehicle protected_oe property

protected bool m_isHeavyVehicle
Résultat bool

m_laneLocation protected_oe property

protected uint[] m_laneLocation
Résultat uint[]

m_laneTarget protected_oe property

protected PathUnit.Position[] m_laneTarget
Résultat PathUnit.Position[]

m_laneTypes protected_oe property

protected NetInfo.LaneType m_laneTypes
Résultat NetInfo.LaneType

m_maxLength protected_oe property

protected float m_maxLength
Résultat float

m_pathFindIndex protected_oe property

protected uint m_pathFindIndex
Résultat uint

m_pathFindThread protected_oe property

protected Thread m_pathFindThread
Résultat Thread

m_pathRandomizer protected_oe property

protected Randomizer m_pathRandomizer
Résultat Randomizer

m_pathUnits protected_oe property

protected Array32 m_pathUnits
Résultat Array32

m_queueFirst protected_oe property

protected uint m_queueFirst
Résultat uint

m_queueLast protected_oe property

protected uint m_queueLast
Résultat uint

m_queueLock protected_oe property

protected object m_queueLock
Résultat object

m_stablePath protected_oe property

protected bool m_stablePath
Résultat bool

m_startLaneA protected_oe property

protected uint m_startLaneA
Résultat uint

m_startLaneB protected_oe property

protected uint m_startLaneB
Résultat uint

m_startOffsetA protected_oe property

protected byte m_startOffsetA
Résultat byte

m_startOffsetB protected_oe property

protected byte m_startOffsetB
Résultat byte

m_terminated protected_oe property

protected bool m_terminated
Résultat bool

m_transportVehicle protected_oe property

protected bool m_transportVehicle
Résultat bool

m_vehicleLane protected_oe property

protected uint m_vehicleLane
Résultat uint

m_vehicleOffset protected_oe property

protected byte m_vehicleOffset
Résultat byte

m_vehicleTypes protected_oe property

protected VehicleInfo.VehicleType m_vehicleTypes
Résultat VehicleInfo.VehicleType