Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

Engine.AutoTestManager

Extends
Info
Modifiers
native config ( Game )

Core.Object
|   
+-- Engine.Actor
   |   
   +-- Engine.Info
      |   
      +-- Engine.AutoTestManager

Constants Summary
Inherited Contants from Engine.Actor
ACTORMAXSTEPHEIGHT, MINFLOORZ, RBSTATE_ANGVELSCALE, RBSTATE_LINVELSCALE, RB_NeedsUpdate, RB_None, RB_Sleeping, REP_RBLOCATION_ERROR_TOLERANCE_SQ, TRACEFLAG_Blocking, TRACEFLAG_Bullet, TRACEFLAG_PhysicsVolumes, TRACEFLAG_SkipMovers

Variables Summary
array<string>AutomatedMapTestingList
stringAutomatedMapTestingTransitionMap
intAutomatedPerfRemainingTime
stringAutomatedTestingExecCommandToRunAtStartMatch
intAutomatedTestingMapIndex
boolbAutoContinueToNextRound
boolbAutomatedPerfTesting
boolbAutomatedTestingWithOpen
boolbCheckingForFragmentation
boolbCheckingForMemLeaks
boolbDoingASentinelRun
boolbExitOnCyclesComplete
boolbSentinelStreamingLevelStillLoading
boolbUsingAutomatedTestingMapList
array<String>CommandsToRunAtEachTravelTheWorldNode
StringCommandStringToExec
intNumAutomatedMapTestingCycles
intNumberOfMatchesPlayed
intNumMapListCyclesDone
intNumMinutesPerMap
intNumRotationsIncrement
intSentinelIdx
intSentinelNavigationIdx
PlayerControllerSentinelPC
StringSentinelTagDesc
StringSentinelTaskDescription
StringSentinelTaskParameter
array<vector>SentinelTravelArray
intTravelPointsIncrement
Inherited Variables from Engine.Actor
Acceleration, AllComponents, AngularVelocity, Attached, bAllowFluidSurfaceInteraction, bAlwaysEncroachCheck, bAlwaysRelevant, bAlwaysTick, Base, BaseBoneName, BaseSkelComponent, bBlockActors, bBlocksNavigation, bBlocksTeleport, bBounce, bCallRigidBodyWakeEvents, bCanBeAdheredTo, bCanBeDamaged, bCanBeFrictionedTo, bCanStepUpOn, bCanTeleport, bCollideActors, bCollideAsEncroacher, bCollideComplex, bCollideWhenPlacing, bCollideWorld, bComponentOutsideWorld, bConsiderAllStaticMeshComponentsForStreaming, bDebug, bDebugEffectIsRelevant, bDeleteMe, bDemoOwner, bDemoRecording, bDestroyedByInterpActor, bDestroyInPainVolume, bEditable, bEdShouldSnap, bExchangedRoles, bForceAllowKismetModification, bForceDemoRelevant, bForceNetUpdate, bForceOctreeSNFilter, bGameRelevant, bHardAttach, bHasAlternateTargetLocation, bHidden, bHiddenEd, bHiddenEdCustom, bHiddenEdGroup, bHiddenEdLevel, bHiddenEdTemporary, bHurtEntry, bIgnoreBaseRotation, bIgnoreEncroachers, bIgnoreRigidBodyPawns, bIsMoving, bJustTeleported, bKillDuringLevelTransition, bLockLocation, BlockRigidBody, bMovable, bMoveIgnoresDestruction, bNetDirty, bNetInitial, bNetInitialRotation, bNetOwner, bNetTemporary, bNoDelete, bNoEncroachCheck, bOnlyDirtyReplication, bOnlyOwnerSee, bOnlyRelevantToOwner, bOrientOnSlope, bPathColliding, bPathTemp, bPendingDelete, bPendingNetUpdate, bPhysRigidBodyOutOfWorldCheck, bPostRenderIfNotVisible, bProjTarget, bPushedByEncroachers, bReplicateInstigator, bReplicateMovement, bReplicateRigidBodyLocation, bRigidBodyWasAwake, bRouteBeginPlayEvenIfStatic, bScriptInitialized, bShadowParented, bShouldBaseAtStartup, bSkipActorPropertyReplication, bStatic, bTearOff, bTempEditor, bTicked, bTickIsDisabled, bUpdateSimulatedPosition, bWorldGeometry, Children, CollisionComponent, CollisionType, Components, CreationTime, CustomTimeDilation, DetachFence, DrawScale3D, DrawScale, EditorIconColor, GeneratedEvents, Group, HiddenEditorViews, InitialState, Instigator, LastNetUpdateTime, LastRenderTime, LatentActions, LatentFloat, LatentSeqNode, LifeSpan, Location, MessageClass, NetPriority, NetTag, NetUpdateFrequency, NetUpdateTime, OverlapTag, Owner, PendingTouch, Physics, PhysicsVolume, PrePivot, RelativeLocation, RelativeRotation, RemoteRole, ReplicatedCollisionType, Role, Rotation, RotationRate, SupportedEvents, Tag, TickFrequency, TickFrequencyAtEndDistance, TickFrequencyDecreaseDistanceEnd, TickFrequencyDecreaseDistanceStart, TickFrequencyLastSeenTimeBeforeForcingMaxTickFrequency, TickGroup, Timers, TimeSinceLastTick, Touching, Velocity, WorldInfo

Enumerations Summary
Inherited Enumerations from Engine.Actor
ECollisionType, EDoubleClickDir, EMoveDir, ENetRole, EPhysics, ETravelType

Structures Summary
Inherited Structures from Engine.Info
KeyValuePair, PlayerResponseLine, ServerResponseLine
Inherited Structures from Engine.Actor
ActorReference, AnimSlotDesc, AnimSlotInfo, BasedPosition, CollisionImpactData, ImpactInfo, NavReference, PhysEffectInfo, RigidBodyContactInfo, RigidBodyState, TimerData, TraceHitInfo

Functions Summary
function AddSentinelPerTimePeriodStats (const vector InLocation, const rotator InRotation)
function BeginSentinelRun (const string TaskDescription, const string TaskParameter, const string TagDesc)
function BeginState (name PreviousStateName ))
TravelTheWorld
functionfloat CalcTravelTheWorldTime (const int NumTravelLocations, const int NumRotations ))
TravelTheWorld
functionbool CheckForSentinelRun ()))
function CloseAutomatedMapTestTimer ()))
function DoMemoryTracking ()
function DoSentinelActionPerLoadedMap ()
function DoSentinel_MemoryAtSpecificLocation (const vector InLocation, const rotator InRotation)
function DoSentinel_PerfAtSpecificLocation (const out vector InLocation, const out rotator InRotation)
function DoSentinel_ViewDependentMemoryAtSpecificLocation (const out vector InLocation, const out rotator InRotation)
function DoTimeBasedSentinelStatGathering ()))
function DoTravelTheWorld ()))
function EndSentinelRun (EAutomatedRunResult RunResult)
functionstring GetNextAutomatedTestingMap ()))
function GetTravelLocations (name LevelName, PlayerController PC, out array<vector> TravelPoints)
function HandlePerLoadedMapAudioStats ()
function IncrementAutomatedTestingMapIndex ()))
function IncrementNumberOfMatchesPlayed ()))
function InitializeOptions (string Options))
event PostBeginPlay ()))
function PrintOutTravelWorldTimes (const int TotalTimeInSeconds ))
TravelTheWorld
function SetIncrementsForLoops (const float NumTravelLocations ))
TravelTheWorld
event StartAutomatedMapTestTimer ()))
function StartAutomatedMapTestTimerWorker ()))
function StartMatch ()))
event Timer ()))
Inherited Functions from Engine.Actor
ActivateEventClass, AllActors, AllOwnedComponents, AnimTreeUpdated, ApplyFluidSurfaceImpact, Attach, AttachComponent, AutonomousPhysics, BaseChange, BasedActors, BecomeViewTarget, BeginAnimControl, bool, BP2Vect, BroadcastLocalizedMessage, BroadcastLocalizedTeamMessage, Bump, CalcCamera, CalculateMinSpeedTrajectory, CanActorPlayFaceFXAnim, CanSplash, ChartData, CheckForErrors, CheckHitInfo, ChildActors, ClampRotation, ClearAllTimers, ClearLatentAction, ClearTimer, Clock, CollidingActors, CollisionChanged, ComponentList, ConsoleCommand, ConstraintBrokenNotify, ContainsPoint, CreateAudioComponent, CreateForceField, DebugFreezeGame, DebugMessagePlayer, Destroyed, Detach, DetachComponent, DisplayDebug, DoKismetAttachment, DrawDebugBox, DrawDebugCone, DrawDebugCoordinateSystem, DrawDebugCylinder, DrawDebugFrustrum, DrawDebugLine, DrawDebugPoint, DrawDebugSphere, DrawDebugStar, DrawDebugString, DynamicActors, EffectIsRelevant, EncroachedBy, EncroachingOn, EndViewTarget, Falling, FastTrace, FellOutOfWorld, FindBase, FindEventsOfClass, FindGoodEndView, FindSpot, FinishAnim, FinishAnimControl, fixedTurn, FlushDebugStrings, FlushPersistentDebugLines, ForceNetRelevant, ForceUpdateComponents, GainedChild, GetActorEyesViewPoint, GetActorFaceFXAsset, GetAggregateBaseVelocity, GetAimAdhesionExtent, GetAimFrictionExtent, GetALocalPlayerController, GetAvoidanceVector, GetBasedPosition, GetBaseMost, GetBoundingCylinder, GetComponentsBoundingBox, GetDebugName, GetDestination, GetFaceFXAudioComponent, GetGravityZ, GetHumanReadableName, GetItemName, GetLocalString, GetPackageGuid, GetPhysicsName, GetRemainingTimeForTimer, GetTargetLocation, GetTeamNum, GetTerminalVelocity, GetTimerCount, GetTimerRate, GetURLMap, HealDamage, HitWall, HurtRadius, InterpolationChanged, InterpolationFinished, InterpolationStarted, IsActorPlayingFaceFXAnim, IsBasedOn, IsBlockedBy, IsInPain, IsInPersistentLevel, IsOverlapping, IsOwnedBy, IsPlayerOwned, IsStationary, IsTimerActive, KilledBy, Landed, LocalPlayerControllers, LostChild, MakeNoise, MatchStarting, ModifyHearSoundComponent, ModifyTimerTimeDilation, Move, MoveSmooth, MovingWhichWay, NativePostRenderFor, NotifyLocalPlayerTeamReceived, NotifySkelControlBeyondLimit, OnAnimEnd, OnAnimPlay, OnAttachToActor, OnChangeCollision, OnDestroy, OnModifyHealth, OnRanOver, OnRigidBodySpringOverextension, OnSetBlockRigidBody, OnSetPhysics, OnSetVelocity, OnSleepRBPhysics, OnTeleport, OnToggleHidden, OnWakeRBPhysics, OutsideWorldBounds, OverlappingActors, OverRotated, PauseTimer, PawnBaseDied, PhysicsVolumeChange, PlayActorFaceFXAnim, PlayerCanSeeMe, PlayParticleEffect, PlaySound, PlayTeleportEffect, PointCheckComponent, PostBeginPlay, PostDemoRewind, PostInitAnimTree, PostRenderFor, PostTeleport, PostTouch, PreBeginPlay, PrestreamTextures, PreTeleport, RanInto, ReattachComponent, ReceivedNewEvent, ReplaceText, ReplicatedEvent, ReplicationEnded, Reset, ResetTimerTimeDilation, RigidBodyCollision, RootMotionExtracted, RootMotionModeChanged, RootMotionProcessed, ScriptGetTeamNum, SetAnimPosition, SetBase, SetBasedPosition, SetCollision, SetCollisionSize, SetCollisionType, SetDrawScale, SetDrawScale3D, SetForcedInitialReplicatedProperty, SetHardAttach, SetHidden, SetHUDLocation, SetInitialState, SetMorphWeight, SetNetUpdateTime, SetOnlyOwnerSee, SetOwner, SetPhysics, SetRelativeLocation, SetRelativeRotation, SetRotation, SetSkelControlScale, SetTickGroup, SetTickIsDisabled, SetTimer, SetZone, ShouldBeHiddenBySHOW_NavigationNodes, ShutDown, Sleep, Spawn, SpawnedByKismet, SpecialHandling, StopActorFaceFXAnim, StopsProjectile, SuggestTossVelocity, SupportsKismetModification, TakeDamage, TakeRadiusDamage, Tick, Timer, TornOff, Touch, TouchingActors, Trace, TraceActors, TraceAllPhysicsAssetInteractions, TraceComponent, TrailsNotify, TrailsNotifyEnd, TrailsNotifyTick, TriggerEventClass, TriggerGlobalEventClass, UnClock, UnTouch, UsedBy, Vect2BP, VisibleActors, VisibleCollidingActors, VolumeBasedDestroy, WillOverlap

States Summary
SentinelHandleCauseEventCommand Source code
state SentinelHandleCauseEventCommand
/** * State code for handling GameInfo CauseEventCommand */
TravelTheWorld Source code
state TravelTheWorld
/** * This our state which allows us to have delayed actions while traveling the world (e.g. waiting for levels to stream in) **/
BeginState, CalcTravelTheWorldTime, PrintOutTravelWorldTimes, SetIncrementsForLoops


Variables Detail

AutomatedMapTestingList Source code

var globalconfig array<string> AutomatedMapTestingList;
List of maps that we are going to be using for the AutomatedMapTesting

AutomatedMapTestingTransitionMap Source code

var string AutomatedMapTestingTransitionMap;
This will be the 'transition' map used w/ OpenMap runs

AutomatedPerfRemainingTime Source code

var int AutomatedPerfRemainingTime;
Amount of time remaining before match ends -- used for auto performance test shutdown

AutomatedTestingExecCommandToRunAtStartMatch Source code

var string AutomatedTestingExecCommandToRunAtStartMatch;
This will be run at the start of each start match

AutomatedTestingMapIndex Source code

var int AutomatedTestingMapIndex;
The index of the current automated testing map. If < 0 we are in the transition map.

bAutoContinueToNextRound Source code

var bool bAutoContinueToNextRound;
This will auto continue to the next round. Very useful doing soak testing and testing traveling to next level

bAutomatedPerfTesting Source code

var bool bAutomatedPerfTesting;
Whether the game is currently in automated perf test mode.

bAutomatedTestingWithOpen Source code

var bool bAutomatedTestingWithOpen;
If TRUE, use OpenMap to transition; if FALSE, use SeamlessTravel

bCheckingForFragmentation Source code

var bool bCheckingForFragmentation;
Whether or not this game should check for fragmentation. This can be used to have a specific game type check for fragmentation at some point (e.g. start/end of match, time period)

bCheckingForMemLeaks Source code

var bool bCheckingForMemLeaks;
Whether or not this game should check for memory leaks

bDoingASentinelRun Source code

var bool bDoingASentinelRun;
Whether or this game is doing a bDoingASentinelRun test

bExitOnCyclesComplete Source code

var globalconfig bool bExitOnCyclesComplete;
Whether to exit when NumAutomatedMapTestingCycles is reached

bSentinelStreamingLevelStillLoading Source code

var transient bool bSentinelStreamingLevelStillLoading;
Used to delay until streaming levels are fully loaded

bUsingAutomatedTestingMapList Source code

var bool bUsingAutomatedTestingMapList;
Whether or not we are using the Automated Testing Map list

CommandsToRunAtEachTravelTheWorldNode Source code

var config array<String> CommandsToRunAtEachTravelTheWorldNode;
At each TravelTheWorld node we fire off all of the commands in this array. This is good for being able to do things like fire off a debug command without having to recook the entire map (e.g. MemLeakCheck at each node).

CommandStringToExec Source code

var transient String CommandStringToExec;
Transient string that we need for our foreach in the TravelTheWorld state code

NumAutomatedMapTestingCycles Source code

var globalconfig int NumAutomatedMapTestingCycles;
Number of times to run through the list. (0 in infinite)

NumberOfMatchesPlayed Source code

var int NumberOfMatchesPlayed;
Number of matches played (maybe remove this before shipping) This is really useful for doing soak testing and such to see how long you lasted! NOTE: This is not replicated out to clients atm.

NumMapListCyclesDone Source code

var int NumMapListCyclesDone;
Keeps track of the current run so when we have repeats and such we know how far along we are

NumMinutesPerMap Source code

var config int NumMinutesPerMap;
How many minutes per map we are allowed to run.

NumRotationsIncrement Source code

var transient int NumRotationsIncrement;
Change increments for iterating through rotations used at sentinel travel locations

SentinelIdx Source code

var transient int SentinelIdx;
Iterator for various sentinel state code loops - for loop is in state code, so can't define locally

SentinelNavigationIdx Source code

var transient int SentinelNavigationIdx;
Iterator for looping through SentinelTravelArray - for loop is in state code, so can't define locally

SentinelPC Source code

var transient PlayerController SentinelPC;
PlayerController used for Sentinel - picked randomly

SentinelTagDesc Source code

var String SentinelTagDesc;
Used for the BeginRun Task___ strings

SentinelTaskDescription Source code

var String SentinelTaskDescription;
Used for the BeginRun Task___ strings, examples "FlyThrough", "FlyThroughSplitScreen", "BVT"

SentinelTaskParameter Source code

var String SentinelTaskParameter;
Used for the BeginRun Task___ strings

SentinelTravelArray Source code

var transient array<vector> SentinelTravelArray;
Locations where sentinel should go to

TravelPointsIncrement Source code

var transient int TravelPointsIncrement;
Change increments for iterating through sentinel travel locations


Functions Detail

AddSentinelPerTimePeriodStats Source code

native function AddSentinelPerTimePeriodStats ( const vector InLocation, const rotator InRotation )
This will output some set of data that we care about when we are doing Sentinel runs while we are doing a MP test or a BVT. Prob just stat unit and some other random stats (streaming fudge factor and such)

BeginSentinelRun Source code

native function BeginSentinelRun ( const string TaskDescription, const string TaskParameter, const string TagDesc )
This will start a SentinelRun in the DB. Setting up the Run table with all of metadata that a run has. This will also set the GSentinelRunID so that the engine knows what the current run is.
@param TaskDescription The name/description of the task that we are running
@param TaskParameter Any Parameters that the task needs
@param TagDesc A specialized tag (e.g. We are doing Task A with Param B and then "MapWithParticlesAdded" so it can be found)

BeginState TravelTheWorld Source code

function BeginState ( name PreviousStateName ) )

CalcTravelTheWorldTime TravelTheWorld Source code

function float CalcTravelTheWorldTime ( const int NumTravelLocations, const int NumRotations ) )

CheckForSentinelRun Source code

function bool CheckForSentinelRun ( ) )
Start Sentinel Run if needed
@return true if normal gameinfo startmatch should be aborted

CloseAutomatedMapTestTimer Source code

function CloseAutomatedMapTestTimer ( ) )
Restart the game when timer pops

DoMemoryTracking Source code

native function DoMemoryTracking ( )
Determine if memory tracking will be triggered

DoSentinelActionPerLoadedMap Source code

native function DoSentinelActionPerLoadedMap ( )
This will run on every map load. (e.g. You have P map which consists of N sublevels. For each SubLevel this will run.

DoSentinel_MemoryAtSpecificLocation Source code

native function DoSentinel_MemoryAtSpecificLocation ( const vector InLocation, const rotator InRotation )
This will write out the Sentinel data at this location / rotation

DoSentinel_PerfAtSpecificLocation Source code

native function DoSentinel_PerfAtSpecificLocation ( const out vector InLocation, const out rotator InRotation )

DoSentinel_ViewDependentMemoryAtSpecificLocation Source code

native function DoSentinel_ViewDependentMemoryAtSpecificLocation ( const out vector InLocation, const out rotator InRotation )

DoTimeBasedSentinelStatGathering Source code

function DoTimeBasedSentinelStatGathering ( ) )
This function should be triggered via SetTimer ever few seconds to do the Per Time Period stats gathering

DoTravelTheWorld Source code

function DoTravelTheWorld ( ) )
function to start the world traveling

EndSentinelRun Source code

native function EndSentinelRun ( EAutomatedRunResult RunResult )
This will tell the DB to end the current Sentinel run (i.e. GSentinelRunID) and set that Run's RunResult to the passed in var.
@param RunResult The result of this Sentinel run (e.g. OOM, Passed, etc.)

GetNextAutomatedTestingMap Source code

function string GetNextAutomatedTestingMap ( ) )

@return the map we should travel to during automated testing

GetTravelLocations Source code

native function GetTravelLocations ( name LevelName, PlayerController PC, out array<vector> TravelPoints )
This will look at the levels and then gather all of the travel points we are interested in

HandlePerLoadedMapAudioStats Source code

native function HandlePerLoadedMapAudioStats ( )
Add the audio related stats to the database

IncrementAutomatedTestingMapIndex Source code

function IncrementAutomatedTestingMapIndex ( ) )

IncrementNumberOfMatchesPlayed Source code

function IncrementNumberOfMatchesPlayed ( ) )

InitializeOptions Source code

function InitializeOptions ( string Options) )
Initialize AutoTestManager based on command line options
@param Options is the full command line options string passed to GameInfo

PostBeginPlay Source code

event PostBeginPlay ( ) )

PrintOutTravelWorldTimes TravelTheWorld Source code

function PrintOutTravelWorldTimes ( const int TotalTimeInSeconds ) )

SetIncrementsForLoops TravelTheWorld Source code

function SetIncrementsForLoops ( const float NumTravelLocations ) )
Modify our Increments so that we get the most number of nodes traveled to best is to travel to all doing 8 directions next is to travel to all and do 4 directions next is to travel to as many as possible across the map doing 4 directions
@param NumTravelLocations is the total number of destination positions

StartAutomatedMapTestTimer Source code

event StartAutomatedMapTestTimer ( ) )
Start the AutomatedMapTest transition timer which will sit there and poll the status of the streaming levels. When we are doing malloc profiling and such loading is a lot slower so we can't just assume some time limit before moving on.

StartAutomatedMapTestTimerWorker Source code

function StartAutomatedMapTestTimerWorker ( ) )
This will look to make certain that all of the streaming levels are finished streaming

StartMatch Source code

function StartMatch ( ) )
Used to initialize automated testing as needed when match starts. Called from GameInfo.StartMatch().

Timer Source code

event Timer ( ) )
Base AutoTestManager timer ticks once per second Checks if perf test timer has run out



Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Creation time: ti 22-3-2011 19:56:47.684 - Created with UnCodeX