com.azalient.api.sim.agents
Interface IPerson

All Superinterfaces:
IAgent, IBlocker, IChangingDrawable, IDrawable, ILoopOccupier, IObstacle, IRecord, IUserData, RecordR, RecordRW, RecordW, SortableData, StoreRecordRW

public interface IPerson
extends IAgent

A person is a type of agent used to model a person-trip


Field Summary
 
Fields inherited from interface com.azalient.api.sim.agents.IObstacle
ZERO_OBSTACLES
 
Fields inherited from interface com.azalient.api.a.tables.IRecord
DELETED, KEY_SEP, KEY_SEP_CHAR
 
Method Summary
 boolean aboard()
          Returns true if the person is aboard a private vehicle or public transport
 IMotor aboardMotor()
          Returns a reference to a private vehicle or public transport if the person is aboard(), or null if it is not aboard
 boolean canDrive()
          Returns true if the person can drive (if it has not yet driven: a single person may only undertake one driving section per person-trip)
 Distance cycleDistance()
          Returns the total distance travelled by this person cycling
 UTime cycleTime()
          Returns the total time this person spent cycling
 Distance driveDistance()
          Returns the total distance travelled by this person driving themselves
 UTime driveTime()
          Returns the total time this person spent driving
 Distance dropOffDistance()
          Returns the total distance travelled by this person as a drop-off passenger
 UTime dropOffTime()
          Returns the total time this person spent as a drop-off passenger
 boolean inTransition()
          Returns true if the person is currently in transition from or to a parked car
 void kill()
          Called when the person is finished, to tidy up references and resources
 IParkingHop nextParking()
          Returns a reference to a parking-hop if this person is using drive-park
 IWalkway nextWalkway()
          Returns the next walkway, which may be null
 IOccupant occupant()
          Returns a reference to an occupant, if this person is in/on a private vehicle
 IPassenger passenger()
          The current passenger object, which may be null
 Distance pickUpDistance()
          Returns the total distance travelled by this person as a pick-up passenger
 UTime pickUpTime()
          Returns the total time this person spent as a pick-up passenger
 Distance rideDistance()
          Returns the total distance travelled by this person riding on public transport
 UTime rideTime()
          Returns the total time this person spent riding on public transport
 Distance taxiDistance()
          Returns the total distance travelled by this person as a taxi passenger
 UTime taxiTime()
          Returns the total time this person spent as a passenger in a taxi
 IPersonTrip trip()
          [Return type specialisation] Returns the person trip
 IPersonType type()
          [Return type specialisation] Returns the person type
 UTime waitTime()
          Returns the total time this person spent waiting for public transport
 Distance walkDistance()
          Returns the total distance travelled by this person walking
 UTime walkTime()
          Returns the total time this person spent walking
 IWalkway walkway()
          Returns the current walkway, which may be null
 double walkwayEndDelayCountdown()
          Returns the countdown value for a prescribed delay at the end of the current walkway.
 double walkwayTime()
          Time in seconds on current walkway
 
Methods inherited from interface com.azalient.api.sim.agents.IAgent
acceleration, age, age, agentVision, arrived, attached, basePolygon, behaviour, blockedBy, blocker, centre, creationTime, emissionGrams, exclude, finished, followingAlgorithm, forward, freeMovingAlgorithm, frozen, gradient, halfLength, halfLengthHead, halfLengthTail, halfWidth, halted, halted, head, headDistance, headGroup, height, include, isAttached, keepSide, keepSide, leader, length, maxAcceleration, maxDeceleration, maxSpeedMPS, minimumGap, next, nextPathway, nextPathwayForward, pathPosition, pathway, pathwayFarthest, pathwayForward, perceivedHalfLengthHead, perceivedHalfWidth, reactionTime, reselectExit, selected, selected, specialMaxSpeed, speedMPS, steerFunction, steerToPathNow, stoppingDistance, tail, tailDistance, tailGroup, targetSpeedMPS, timeOnPathway, totalDistanceTravelled, totalTravelDistanceMetres, totalTravelStopsCount, totalTravelTimeSeconds, trackingMe, tripDetailRecord, twig, unblock, uniqueID, velocity, weightKG, width, zombie
 
Methods inherited from interface com.azalient.api.sim.detection.ILoopOccupier
loops
 
Methods inherited from interface com.azalient.api.sim.agents.IObstacle
annotationPoint
 
Methods inherited from interface com.azalient.api.a.IUserData
userData, userData, userDataHashCode
 
Methods inherited from interface com.azalient.api.file.StoreRecordRW
canRename, rename, store
 
Methods inherited from interface com.azalient.api.file.RecordR
extraSet, finished, isApplicable, isEditable, set
 
Methods inherited from interface com.azalient.api.a.tables.IRecord
name
 
Methods inherited from interface com.azalient.api.file.RecordW
extraCols, extraGet, extraGetB, extraGetD, extraGetI, extraGetS, extraGetT, get, isVolatile
 
Methods inherited from interface com.azalient.api.sim.agents.IBlocker
blocked, blockerDescription, blockPointDistance, doneBlocking, nowBlocking
 
Methods inherited from interface com.azalient.api.draw.IChangingDrawable
drawChangeables
 
Methods inherited from interface com.azalient.api.draw.IDrawable
canExplode, centroid, destroy, draw, isTransparent, name, remove, removed
 

Method Detail

trip

IPersonTrip trip()
[Return type specialisation] Returns the person trip

Specified by:
trip in interface IAgent

passenger

IPassenger passenger()
The current passenger object, which may be null


type

IPersonType type()
[Return type specialisation] Returns the person type

Specified by:
type in interface IAgent

kill

void kill()
Called when the person is finished, to tidy up references and resources


aboard

boolean aboard()
Returns true if the person is aboard a private vehicle or public transport


aboardMotor

IMotor aboardMotor()
Returns a reference to a private vehicle or public transport if the person is aboard(), or null if it is not aboard


occupant

IOccupant occupant()
Returns a reference to an occupant, if this person is in/on a private vehicle


nextParking

IParkingHop nextParking()
Returns a reference to a parking-hop if this person is using drive-park


walkway

IWalkway walkway()
Returns the current walkway, which may be null


nextWalkway

IWalkway nextWalkway()
Returns the next walkway, which may be null


walkwayEndDelayCountdown

double walkwayEndDelayCountdown()
Returns the countdown value for a prescribed delay at the end of the current walkway. This may be zero


inTransition

boolean inTransition()
Returns true if the person is currently in transition from or to a parked car


canDrive

boolean canDrive()
Returns true if the person can drive (if it has not yet driven: a single person may only undertake one driving section per person-trip)


walkTime

UTime walkTime()
Returns the total time this person spent walking


driveTime

UTime driveTime()
Returns the total time this person spent driving


cycleTime

UTime cycleTime()
Returns the total time this person spent cycling


rideTime

UTime rideTime()
Returns the total time this person spent riding on public transport


waitTime

UTime waitTime()
Returns the total time this person spent waiting for public transport


taxiTime

UTime taxiTime()
Returns the total time this person spent as a passenger in a taxi


dropOffTime

UTime dropOffTime()
Returns the total time this person spent as a drop-off passenger


pickUpTime

UTime pickUpTime()
Returns the total time this person spent as a pick-up passenger


walkDistance

Distance walkDistance()
Returns the total distance travelled by this person walking


driveDistance

Distance driveDistance()
Returns the total distance travelled by this person driving themselves


cycleDistance

Distance cycleDistance()
Returns the total distance travelled by this person cycling


rideDistance

Distance rideDistance()
Returns the total distance travelled by this person riding on public transport


taxiDistance

Distance taxiDistance()
Returns the total distance travelled by this person as a taxi passenger


dropOffDistance

Distance dropOffDistance()
Returns the total distance travelled by this person as a drop-off passenger


pickUpDistance

Distance pickUpDistance()
Returns the total distance travelled by this person as a pick-up passenger


walkwayTime

double walkwayTime()
Time in seconds on current walkway