public class MainActivity
extends androidx.appcompat.app.AppCompatActivity
implements android.widget.SeekBar.OnSeekBarChangeListener
Modifier and Type | Field and Description |
---|---|
static float |
defaultBrakeProb
default value of brake probability
|
static int |
defaultDelay
default value of the delay between two
simulation steps
|
static int |
defaultFrameskip
default value of the number of vehicles on
the track
|
static int |
defaultHistoryLength
default value of the number of vehicles on
the track
|
static float |
defaultMaxVelocity
default value of the maximum velocity of the
vehicles
|
static int |
defaultNoOfVehicles
default value of the number of vehicles on
the track
|
static int |
defaultTrackLength
default value of the length of the track
|
protected Renderer |
renderer
the renderer instance drawing the track
history
|
protected Track |
track
the track to show in the activity
|
protected TimeRecordView
|
trackView
the surface view on which the renderer draws
the track history
|
protected
android.widget.LinearLayout |
viewStack
the layout which keeps the surface view
|
protected Worker |
worker
the thread which runs the simulation and
visualization
|
DEFAULT_KEYS_DIALER, DEFAULT_KEYS_DISABLE,
DEFAULT_KEYS_SEARCH_GLOBAL, DEFAULT_KEYS_SEARCH_LOCAL,
DEFAULT_KEYS_SHORTCUT, FOCUSED_STATE_SET, RESULT_CANCELED,
RESULT_FIRST_USER, RESULT_OK
ACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE,
ALARM_SERVICE, APP_OPS_SERVICE, APPWIDGET_SERVICE,
AUDIO_SERVICE, BATTERY_SERVICE, BIND_ABOVE_CLIENT,
BIND_ADJUST_WITH_ACTIVITY, BIND_ALLOW_OOM_MANAGEMENT,
BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, BIND_EXTERNAL_SERVICE,
BIND_IMPORTANT, BIND_INCLUDE_CAPABILITIES, BIND_NOT_FOREGROUND,
BIND_NOT_PERCEPTIBLE, BIND_WAIVE_PRIORITY, BIOMETRIC_SERVICE,
BLOB_STORE_SERVICE, BLUETOOTH_SERVICE, CAMERA_SERVICE,
CAPTIONING_SERVICE, CARRIER_CONFIG_SERVICE, CLIPBOARD_SERVICE,
COMPANION_DEVICE_SERVICE, CONNECTIVITY_DIAGNOSTICS_SERVICE,
CONNECTIVITY_SERVICE, CONSUMER_IR_SERVICE,
CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE,
CONTEXT_RESTRICTED, CROSS_PROFILE_APPS_SERVICE,
DEVICE_POLICY_SERVICE, DISPLAY_SERVICE, DOWNLOAD_SERVICE,
DROPBOX_SERVICE, EUICC_SERVICE, FILE_INTEGRITY_SERVICE,
FINGERPRINT_SERVICE, HARDWARE_PROPERTIES_SERVICE,
INPUT_METHOD_SERVICE, INPUT_SERVICE, IPSEC_SERVICE,
JOB_SCHEDULER_SERVICE, KEYGUARD_SERVICE, LAUNCHER_APPS_SERVICE,
LAYOUT_INFLATER_SERVICE, LOCATION_SERVICE,
MEDIA_PROJECTION_SERVICE, MEDIA_ROUTER_SERVICE,
MEDIA_SESSION_SERVICE, MIDI_SERVICE, MODE_APPEND,
MODE_ENABLE_WRITE_AHEAD_LOGGING, MODE_MULTI_PROCESS,
MODE_NO_LOCALIZED_COLLATORS, MODE_PRIVATE, MODE_WORLD_READABLE,
MODE_WORLD_WRITEABLE, NETWORK_STATS_SERVICE, NFC_SERVICE,
NOTIFICATION_SERVICE, NSD_SERVICE, POWER_SERVICE, PRINT_SERVICE,
RECEIVER_VISIBLE_TO_INSTANT_APPS, RESTRICTIONS_SERVICE,
ROLE_SERVICE, SEARCH_SERVICE, SENSOR_SERVICE, SHORTCUT_SERVICE,
STORAGE_SERVICE, STORAGE_STATS_SERVICE, SYSTEM_HEALTH_SERVICE,
TELECOM_SERVICE, TELEPHONY_IMS_SERVICE, TELEPHONY_SERVICE,
TELEPHONY_SUBSCRIPTION_SERVICE, TEXT_CLASSIFICATION_SERVICE,
TEXT_SERVICES_MANAGER_SERVICE, TV_INPUT_SERVICE,
UI_MODE_SERVICE, USAGE_STATS_SERVICE, USB_SERVICE, USER_SERVICE,
VIBRATOR_SERVICE, VPN_MANAGEMENT_SERVICE, WALLPAPER_SERVICE,
WIFI_AWARE_SERVICE, WIFI_P2P_SERVICE, WIFI_RTT_RANGING_SERVICE,
WIFI_SERVICE, WINDOW_SERVICE
Constructor and Description |
---|
MainActivity()
|
Modifier and Type | Method and Description |
---|---|
void |
onClearButtonClick(android.view.View view)
Handler function for clicks on the "Stop"
button.
|
protected void |
onCreate(android.os.Bundle savedInstanceState)
Constructor for MainActivity
|
void |
onPlayButtonClick(android.view.View view)
Handler function for clicks on the "Play"
button.
|
void |
onProgressChanged(android.widget.SeekBar seekBar,
int progress,
boolean fromUser)
Handler function for changes on the seek
bars.
|
void |
onStartTrackingTouch(android.widget.SeekBar seekBar)
Handler function for beginning touch events
on a seek bar.
|
void |
onStepButtonClick(android.view.View view)
Handler function for clicks on the "Step"
button.
|
void |
onStopButtonClick(android.view.View view)
Handler function for clicks on the "Stop"
button.
|
void |
onStopTrackingTouch(android.widget.SeekBar seekBar)
Handler function for ending touch events on a
seek bar.
|
static float |
round(float number,
int digits)
Utility function to round a float to a given
amount of digits.
|
protected void |
stopWorker()
Stops the current worker thread.
|
void |
updateStats()
Updates the statistics view.
|
protected void |
updateTrack()
Creates a new track with the current
settings.
|
addContentView, attachBaseContext, closeOptionsMenu,
dispatchKeyEvent, findViewById, getDelegate,
getDrawerToggleDelegate, getMenuInflater, getResources,
getSupportActionBar, getSupportParentActivityIntent,
invalidateOptionsMenu, onConfigurationChanged, onContentChanged,
onCreateSupportNavigateUpTaskStack, onDestroy, onKeyDown,
onMenuItemSelected, onMenuOpened, onNightModeChanged,
onPanelClosed, onPostCreate, onPostResume,
onPrepareSupportNavigateUpTaskStack, onSaveInstanceState,
onStart, onStop, onSupportActionModeFinished,
onSupportActionModeStarted, onSupportContentChanged,
onSupportNavigateUp, onTitleChanged,
onWindowStartingSupportActionMode, openOptionsMenu,
setContentView, setContentView, setContentView,
setSupportActionBar, setSupportProgress,
setSupportProgressBarIndeterminate,
setSupportProgressBarIndeterminateVisibility,
setSupportProgressBarVisibility, setTheme,
startSupportActionMode, supportInvalidateOptionsMenu,
supportNavigateUpTo, supportRequestWindowFeature,
supportShouldUpRecreateTask
dump, getSupportFragmentManager, getSupportLoaderManager,
onActivityResult, onAttachFragment, onCreatePanelMenu,
onCreateView, onCreateView, onLowMemory,
onMultiWindowModeChanged, onNewIntent, onPause,
onPictureInPictureModeChanged, onPrepareOptionsPanel,
onPreparePanel, onRequestPermissionsResult, onResume,
onResumeFragments, onStateNotSaved,
setEnterSharedElementCallback, setExitSharedElementCallback,
startActivityForResult, startActivityForResult,
startActivityFromFragment, startActivityFromFragment,
startIntentSenderForResult, startIntentSenderForResult,
startIntentSenderFromFragment, supportFinishAfterTransition,
supportPostponeEnterTransition,
supportStartPostponedEnterTransition,
validateRequestPermissionsRequestCode
getLastCustomNonConfigurationInstance, getLifecycle,
getOnBackPressedDispatcher, getSavedStateRegistry,
getViewModelStore, onBackPressed,
onRetainCustomNonConfigurationInstance,
onRetainNonConfigurationInstance
dispatchKeyShortcutEvent, getExtraData, putExtraData,
superDispatchKeyEvent
closeContextMenu, createPendingResult, dismissDialog,
dismissKeyboardShortcutsHelper, dispatchGenericMotionEvent,
dispatchPopulateAccessibilityEvent, dispatchTouchEvent,
dispatchTrackballEvent, enterPictureInPictureMode,
enterPictureInPictureMode, finish, finishActivity,
finishActivityFromChild, finishAffinity, finishAfterTransition,
finishAndRemoveTask, finishFromChild, getActionBar,
getApplication, getCallingActivity, getCallingPackage,
getChangingConfigurations, getComponentName, getContentScene,
getContentTransitionManager, getCurrentFocus,
getFragmentManager, getIntent, getLastNonConfigurationInstance,
getLayoutInflater, getLoaderManager, getLocalClassName,
getMaxNumPictureInPictureActions, getMediaController, getParent,
getParentActivityIntent, getPreferences, getReferrer,
getRequestedOrientation, getSearchEvent, getSystemService,
getTaskId, getTitle, getTitleColor, getVoiceInteractor,
getVolumeControlStream, getWindow, getWindowManager,
hasWindowFocus, isActivityTransitionRunning,
isChangingConfigurations, isChild, isDestroyed, isFinishing,
isImmersive, isInMultiWindowMode, isInPictureInPictureMode,
isLocalVoiceInteractionSupported, isTaskRoot,
isVoiceInteraction, isVoiceInteractionRoot, managedQuery,
moveTaskToBack, navigateUpTo, navigateUpToFromChild,
onActionModeFinished, onActionModeStarted, onActivityReenter,
onApplyThemeResource, onAttachedToWindow, onAttachFragment,
onChildTitleChanged, onContextItemSelected, onContextMenuClosed,
onCreate, onCreateContextMenu, onCreateDescription,
onCreateDialog, onCreateDialog, onCreateNavigateUpTaskStack,
onCreateOptionsMenu, onCreatePanelView, onCreateThumbnail,
onDetachedFromWindow, onEnterAnimationComplete,
onGenericMotionEvent, onGetDirectActions, onKeyLongPress,
onKeyMultiple, onKeyShortcut, onKeyUp,
onLocalVoiceInteractionStarted, onLocalVoiceInteractionStopped,
onMultiWindowModeChanged, onNavigateUp, onNavigateUpFromChild,
onOptionsItemSelected, onOptionsMenuClosed,
onPerformDirectAction, onPictureInPictureModeChanged,
onPictureInPictureRequested, onPostCreate, onPrepareDialog,
onPrepareDialog, onPrepareNavigateUpTaskStack,
onPrepareOptionsMenu, onProvideAssistContent,
onProvideAssistData, onProvideKeyboardShortcuts,
onProvideReferrer, onRestart, onRestoreInstanceState,
onRestoreInstanceState, onSaveInstanceState, onSearchRequested,
onSearchRequested, onTopResumedActivityChanged, onTouchEvent,
onTrackballEvent, onTrimMemory, onUserInteraction,
onUserLeaveHint, onVisibleBehindCanceled,
onWindowAttributesChanged, onWindowFocusChanged,
onWindowStartingActionMode, onWindowStartingActionMode,
openContextMenu, overridePendingTransition,
postponeEnterTransition, recreate,
registerActivityLifecycleCallbacks, registerForContextMenu,
releaseInstance, removeDialog, reportFullyDrawn,
requestDragAndDropPermissions, requestPermissions,
requestShowKeyboardShortcuts, requestVisibleBehind,
requestWindowFeature, requireViewById, runOnUiThread,
setActionBar, setContentTransitionManager, setDefaultKeyMode,
setEnterSharedElementCallback, setExitSharedElementCallback,
setFeatureDrawable, setFeatureDrawableAlpha,
setFeatureDrawableResource, setFeatureDrawableUri,
setFinishOnTouchOutside, setImmersive, setInheritShowWhenLocked,
setIntent, setLocusContext, setMediaController,
setPictureInPictureParams, setProgress,
setProgressBarIndeterminate,
setProgressBarIndeterminateVisibility, setProgressBarVisibility,
setRequestedOrientation, setResult, setResult,
setSecondaryProgress, setShowWhenLocked, setTaskDescription,
setTitle, setTitle, setTitleColor, setTranslucent,
setTurnScreenOn, setVisible, setVolumeControlStream,
setVrModeEnabled, shouldShowRequestPermissionRationale,
shouldUpRecreateTask, showAssist, showDialog, showDialog,
showLockTaskEscapeMessage, startActionMode, startActionMode,
startActivities, startActivities, startActivity, startActivity,
startActivityFromChild, startActivityFromChild,
startActivityFromFragment, startActivityFromFragment,
startActivityIfNeeded, startActivityIfNeeded, startIntentSender,
startIntentSender, startIntentSenderFromChild,
startIntentSenderFromChild, startLocalVoiceInteraction,
startLockTask, startManagingCursor, startNextMatchingActivity,
startNextMatchingActivity, startPostponedEnterTransition,
startSearch, stopLocalVoiceInteraction, stopLockTask,
stopManagingCursor, takeKeyEvents, triggerSearch,
unregisterActivityLifecycleCallbacks,
unregisterForContextMenu
applyOverrideConfiguration, getAssets, getTheme,
setTheme
bindIsolatedService, bindService, bindService,
bindServiceAsUser, checkCallingOrSelfPermission,
checkCallingOrSelfUriPermission, checkCallingPermission,
checkCallingUriPermission, checkPermission, checkSelfPermission,
checkUriPermission, checkUriPermission, clearWallpaper,
createAttributionContext, createConfigurationContext,
createContextForSplit, createDeviceProtectedStorageContext,
createDisplayContext, createPackageContext, createWindowContext,
databaseList, deleteDatabase, deleteFile,
deleteSharedPreferences, enforceCallingOrSelfPermission,
enforceCallingOrSelfUriPermission, enforceCallingPermission,
enforceCallingUriPermission, enforcePermission,
enforceUriPermission, enforceUriPermission, fileList,
getApplicationContext, getApplicationInfo, getAttributionTag,
getBaseContext, getCacheDir, getClassLoader, getCodeCacheDir,
getContentResolver, getDatabasePath, getDataDir, getDir,
getDisplay, getExternalCacheDir, getExternalCacheDirs,
getExternalFilesDir, getExternalFilesDirs, getExternalMediaDirs,
getFilesDir, getFileStreamPath, getMainExecutor, getMainLooper,
getNoBackupFilesDir, getObbDir, getObbDirs, getOpPackageName,
getPackageCodePath, getPackageManager, getPackageName,
getPackageResourcePath, getSharedPreferences,
getSystemServiceName, getWallpaper,
getWallpaperDesiredMinimumHeight,
getWallpaperDesiredMinimumWidth, grantUriPermission,
isDeviceProtectedStorage, isRestricted, moveDatabaseFrom,
moveSharedPreferencesFrom, openFileInput, openFileOutput,
openOrCreateDatabase, openOrCreateDatabase, peekWallpaper,
registerReceiver, registerReceiver, registerReceiver,
registerReceiver, removeStickyBroadcast,
removeStickyBroadcastAsUser, revokeUriPermission,
revokeUriPermission, sendBroadcast, sendBroadcast,
sendBroadcastAsUser, sendBroadcastAsUser, sendOrderedBroadcast,
sendOrderedBroadcast, sendOrderedBroadcast,
sendOrderedBroadcast, sendOrderedBroadcastAsUser,
sendStickyBroadcast, sendStickyBroadcastAsUser,
sendStickyOrderedBroadcast, sendStickyOrderedBroadcastAsUser,
setWallpaper, setWallpaper, startForegroundService,
startInstrumentation, startService, stopService, unbindService,
unregisterReceiver, updateServiceGroup
getColor, getColorStateList, getDrawable, getString,
getString, getSystemService, getText, obtainStyledAttributes,
obtainStyledAttributes, obtainStyledAttributes,
obtainStyledAttributes, registerComponentCallbacks,
sendBroadcastWithMultiplePermissions,
unregisterComponentCallbacks
public static final int defaultNoOfVehicles
public static final int defaultTrackLength
public static final float defaultBrakeProb
public static final float defaultMaxVelocity
public static final int defaultDelay
public static final int defaultHistoryLength
public static final int defaultFrameskip
protected Track track
protected TimeRecordView trackView
protected Worker worker
protected Renderer renderer
protected android.widget.LinearLayout viewStack
protected void onCreate(android.os.Bundle savedInstanceState)
onCreate
in class androidx.appcompat.app.AppCompatActivity
savedInstanceState
- Bundle with previously
saved activity state, otherwise null
public static float round(float number, int digits)
number
- number to rounddigits
- amount of digitspublic void updateStats()
public void onStepButtonClick(android.view.View view)
view
- the view the event is generated from
public void onPlayButtonClick(android.view.View view)
view
- the view the event is generated from
public void onStopButtonClick(android.view.View view)
view
- the view the event is generated from
protected void stopWorker()
public void onClearButtonClick(android.view.View view)
view
- the view the event is generated from
protected void updateTrack()
public void onProgressChanged(android.widget.SeekBar seekBar, int progress, boolean fromUser)
onProgressChanged
in interface android.widget.SeekBar.OnSeekBarChangeListener
seekBar
- the seek bar changedprogress
- the new progress value of the seek
bar
fromUser
- flag if the event is the result of
an user action
public void onStartTrackingTouch(android.widget.SeekBar seekBar)
onStartTrackingTouch
in
interface android.widget.SeekBar.OnSeekBarChangeListener
seekBar
- the seek bar touchedpublic void onStopTrackingTouch(android.widget.SeekBar seekBar)
onStopTrackingTouch
in
interface android.widget.SeekBar.OnSeekBarChangeListener
seekBar
- the seek bar touched