LLFrameTimer Class Reference

#include <llframetimer.h>

Inheritance diagram for LLFrameTimer:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 LLFrameTimer ()
void start ()
void stop ()
void reset ()
void resetWithExpiry (F32 expiration)
void pause ()
void unpause ()
void setTimerExpirySec (F32 expiration)
void setExpiryAt (F64 seconds_since_epoch)
BOOL checkExpirationAndReset (F32 expiration)
F32 getElapsedTimeAndResetF32 ()
void setAge (const F64 age)
BOOL hasExpired () const
F32 getTimeToExpireF32 () const
F32 getElapsedTimeF32 () const
BOOL getStarted () const
F64 expiresAt () const

Static Public Member Functions

static F64 getElapsedSeconds ()
static U64 getTotalTime ()
static F64 getTotalSeconds ()
static void updateFrameTime ()
static S32 getFrameCount ()
static F32 getFrameDeltaTimeF32 ()
static F32 getCurrentFrameTime ()

Protected Attributes

F64 mStartTime
F64 mExpiry
BOOL mStarted

Static Protected Attributes

static U64 sStartTotalTime = totalTime()
static F64 sFrameTime = 0.0
static U64 sFrameDeltaTime = 0
static U64 sTotalTime = 0
static F64 sTotalSeconds = 0.0
static S32 sFrameCount = 0


Detailed Description

*NOTE: Because of limitations on linux which we do not really have time to explore, the total time is derived from the frame time and is recsynchronized on every frame.

Definition at line 45 of file llframetimer.h.


Constructor & Destructor Documentation

LLFrameTimer::LLFrameTimer (  )  [inline]

Definition at line 48 of file llframetimer.h.


Member Function Documentation

static F64 LLFrameTimer::getElapsedSeconds (  )  [inline, static]

static U64 LLFrameTimer::getTotalTime (  )  [inline, static]

Definition at line 59 of file llframetimer.h.

References sTotalTime, and totalTime().

Referenced by LLMessageThrottle::addAgentAlert(), LLMessageThrottle::addViewerAlert(), LLStatAccum::impl::getCurrentUsecs(), LLKeyUseTracker< TKey, TData >::getTime(), LLKeyThrottleImpl< T >::getTime(), and LLMessageThrottle::pruneEntries().

Here is the call graph for this function:

Here is the caller graph for this function:

static F64 LLFrameTimer::getTotalSeconds (  )  [inline, static]

void LLFrameTimer::updateFrameTime (  )  [static]

static S32 LLFrameTimer::getFrameCount (  )  [inline, static]

Definition at line 73 of file llframetimer.h.

References sFrameCount.

Referenced by LLButton::handleHover(), and LLButton::handleMouseDown().

Here is the caller graph for this function:

F32 LLFrameTimer::getFrameDeltaTimeF32 (  )  [static]

Definition at line 139 of file llframetimer.cpp.

References sFrameDeltaTime, U64_to_F64(), and USEC_TO_SEC_F64.

Referenced by LLScrollableContainerView::draw(), and LLScrollableContainerView::handleDragAndDrop().

Here is the call graph for this function:

Here is the caller graph for this function:

F32 LLFrameTimer::getCurrentFrameTime (  )  [static]

Definition at line 147 of file llframetimer.cpp.

References sTotalTime, totalTime(), U64_to_F64(), and USEC_TO_SEC_F64.

Referenced by getCurrentFrameTime().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLFrameTimer::start (  ) 

void LLFrameTimer::stop (  ) 

void LLFrameTimer::reset (  ) 

Definition at line 70 of file llframetimer.cpp.

References mExpiry, mStartTime, and sFrameTime.

Referenced by LLVOAvatar::addChat(), agent_handle_doubletap_run(), LLInventoryModel::backgroundFetch(), LLInventoryModel::bulkFetch(), LLHoverView::cancelHover(), LLLiveFile::Impl::check(), checkExpirationAndReset(), LLAgent::clearAFK(), LLCurrencyUIManager::Impl::currencyKey(), display(), LLTextureFetchWorker::doWork(), LLStatGraph::draw(), LLStatBar::draw(), LLNetMap::draw(), LLMemoryView::dumpData(), LLViewerInventoryCategory::fetchDescendents(), getElapsedTimeAndResetF32(), LLLineEditor::handleDoubleClick(), LLToolBar::handleDragAndDrop(), LLLineEditor::handleHover(), LLFolderView::handleKeyHere(), LLScrollListCtrl::handleKeyHere(), LLLineEditor::handleKeyHere(), LLViewerWindow::handleMouseDown(), LLJoystick::handleMouseDown(), LLLineEditor::handleMouseDown(), LLManipTranslate::handleMouseDownOnPart(), LLManipScale::handleMouseDownOnPart(), LLViewerWindow::handleMouseMove(), LLViewerWindow::handleMouseUp(), LLLineEditor::handleMouseUp(), LLButton::handleMouseUp(), LLViewerWindow::handleRightMouseUp(), LLViewerWindow::handleScrollWheel(), LLFolderView::handleUnicodeCharHere(), LLScrollListCtrl::handleUnicodeCharHere(), LLLineEditor::handleUnicodeCharHere(), LLAgent::heardChat(), LLAppViewer::idle(), LLAudioEngine::idle(), idle_startup(), LLVOAvatar::idleUpdate(), LLViewerParcelOverlay::idleUpdate(), LLTextureFetchWorker::insertPacket(), LLLineEditor::LLLineEditor(), LLMemoryView::LLMemoryView(), LLViewerInventoryCategory::LLViewerInventoryCategory(), LLVoiceVisualizer::LLVoiceVisualizer(), LLVOSky::LLVOSky(), LLButton::onMouseCaptureLost(), LLEyeMotion::onUpdate(), LLVoiceClient::participantPropertiesEvent(), LLAudioSource::play(), LLViewerParcelMgr::processParcelProperties(), LLViewerImageList::receiveImageHeader(), LLViewerImageList::receiveImagePacket(), LLViewerTextureAnim::reset(), LLMultiGesture::reset(), LLTextEditor::resetKeystrokeTimer(), resetWithExpiry(), LLHUDIcon::restartLifeTimer(), LLViewerWindow::restoreGL(), LLGestureManager::runStep(), LLFloaterGodTools::sendRegionInfoRequest(), LLTextureFetch::sendRequestListToSimulators(), LLStatusBar::setBalance(), LLButton::setFlashing(), LLLineEditor::setFocus(), LLStatusBar::setHealth(), LLHoverView::setHoverActive(), LLFocusMgr::setKeyboardFocus(), LLFolderView::setShowSingleSelection(), LLPumpIO::LLChainInfo::setTimeoutSeconds(), LLFloaterIMPanel::setTyping(), start(), LLVOAvatar::startAppearanceAnimation(), LLAgent::startCameraAnimation(), LLAudioEngine::startNextTransfer(), LLVOAvatar::startTyping(), LLAgent::startTyping(), LLFocusMgr::triggerFocusFlash(), LLMotionController::unpause(), LLTextureFetch::update(), LLEventNotifier::update(), LLAudioChannel::updateBuffer(), LLVOAvatar::updateCharacter(), LLViewerThrottle::updateDynamicThrottle(), LLSelectMgr::updateEffects(), LLHoverView::updateHover(), LLVOAvatar::updateIsFullyLoaded(), LLTextEditor::updatePreedit(), LLLineEditor::updatePreedit(), LLVOAvatar::updateRegion(), LLVOSky::updateSky(), LLVOVolume::updateTextures(), and LLVOAvatar::updateVisibility().

void LLFrameTimer::resetWithExpiry ( F32  expiration  ) 

Definition at line 76 of file llframetimer.cpp.

References reset(), and setTimerExpirySec().

Referenced by LLSpeaker::LLSpeaker(), and LLLocalSpeakerMgr::updateSpeakerList().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLFrameTimer::pause (  ) 

Definition at line 90 of file llframetimer.cpp.

References FALSE, mStarted, mStartTime, and sFrameTime.

Referenced by LLViewerWindow::handleFocusLost().

Here is the caller graph for this function:

void LLFrameTimer::unpause (  ) 

Definition at line 97 of file llframetimer.cpp.

References mStarted, mStartTime, sFrameTime, and TRUE.

Referenced by LLViewerWindow::handleFocus().

Here is the caller graph for this function:

void LLFrameTimer::setTimerExpirySec ( F32  expiration  ) 

void LLFrameTimer::setExpiryAt ( F64  seconds_since_epoch  ) 

Definition at line 109 of file llframetimer.cpp.

References mExpiry, mStartTime, sFrameTime, sStartTotalTime, and USEC_TO_SEC_F64.

BOOL LLFrameTimer::checkExpirationAndReset ( F32  expiration  ) 

Definition at line 122 of file llframetimer.cpp.

References FALSE, hasExpired(), reset(), setTimerExpirySec(), and TRUE.

Referenced by check_offer_throttle(), LLCacheName::processPending(), and LLAudioEngine_FMOD::updateWind().

Here is the call graph for this function:

Here is the caller graph for this function:

F32 LLFrameTimer::getElapsedTimeAndResetF32 (  )  [inline]

Definition at line 90 of file llframetimer.h.

References mStartTime, reset(), and sFrameTime.

Referenced by LLViewerTextureAnim::animateTextures(), LLMetricsImpl::printTotals(), LLMotionController::setTimeFactor(), LLCriticalDamp::updateInterpolants(), and LLViewerPartSim::updateSimulation().

Here is the call graph for this function:

Here is the caller graph for this function:

void LLFrameTimer::setAge ( const F64  age  )  [inline]

Definition at line 92 of file llframetimer.h.

References mStartTime, and sFrameTime.

Referenced by LLMotionController::unpause().

Here is the caller graph for this function:

BOOL LLFrameTimer::hasExpired (  )  const [inline]

F32 LLFrameTimer::getTimeToExpireF32 (  )  const [inline]

Definition at line 96 of file llframetimer.h.

References mExpiry, and sFrameTime.

F32 LLFrameTimer::getElapsedTimeF32 (  )  const [inline]

Definition at line 97 of file llframetimer.h.

References mStarted, mStartTime, and sFrameTime.

Referenced by agent_handle_doubletap_run(), LLViewerTextureAnim::animateTextures(), LLFolderView::autoOpenTest(), LLInventoryModel::backgroundFetch(), LLInventoryModel::bulkFetch(), LLLiveFile::Impl::check(), LLCurrencyUIManager::Impl::considerUpdateCurrency(), display(), LLStatGraph::draw(), LLStatBar::draw(), LLProgressView::draw(), LLPanelDirBrowser::draw(), LLNetMap::draw(), LLFloaterIMPanel::draw(), LLHoverView::draw(), LLFolderView::draw(), LLFloaterWorldMap::draw(), LLSnapshotLivePreview::draw(), LLFloaterGodTools::draw(), LLFastTimerView::draw(), LLMenuHolderGL::draw(), LLPieMenu::draw(), LLLineEditor::draw(), LLButton::draw(), LLTextEditor::drawCursor(), LLScrollListCtrl::drawItems(), LLMemoryView::dumpData(), LLAgent::fidget(), LLTextureFetch::getFetchState(), LLFocusMgr::getFocusTime(), LLAudioEngine::getFreeBuffer(), LLButton::getHeldDownTime(), LLVoiceClient::getIsSpeaking(), LLAgent::getRenderState(), LLFolderView::getSelectionFadeElapsedTime(), LLAgent::getTypingTime(), LLToolBar::handleDragAndDrop(), LLTabContainer::handleDragAndDrop(), LLPieMenu::handleHover(), LLLineEditor::handleHover(), LLModalDialog::handleKeyHere(), LLViewerWindow::handleMouseMove(), LLViewerWindow::handlePerFrameHover(), LLPieMenu::handleRightMouseUp(), LLViewerWindow::handleTranslatedKeyDown(), LLFolderView::handleUnicodeCharHere(), LLScrollListCtrl::handleUnicodeCharHere(), LLAppViewer::idle(), idle_afk_check(), idle_startup(), LLVOTextBubble::idleUpdate(), LLVOAvatar::idleUpdate(), LLViewerParcelOverlay::idleUpdate(), LLAudioSource::isDone(), LLUserOperation::isExpired(), LLWebBrowserTexture::needsRender(), LLEyeMotion::onUpdate(), LLHUDEffectPointAt::packData(), LLHUDEffectLookAt::packData(), LLMotionController::pause(), LLChatBar::refresh(), LLHUDEffectSpiral::render(), LLHUDEffectBeam::render(), LLHUDIcon::renderIcon(), LLViewerParcelMgr::renderParcelCollision(), LLManipTranslate::renderSnapGuides(), LLManipScale::renderSnapGuides(), send_stats(), LLTextureFetch::sendRequestListToSimulators(), LLHUDEffectLookAt::setLookAt(), LLHUDEffectPointAt::setPointAt(), LLSpeakerMgr::speakerChatted(), LLAgent::startTyping(), LLGestureManager::stepGesture(), LLMotionController::stopMotionInstance(), LLHUDEffectSpiral::triggerLocal(), LLHUDEffectBeam::unpackData(), LLDebugText::update(), LLTextureFetch::update(), LLHUDEffectPointAt::update(), LLHUDEffectLookAt::update(), LLSpeakerMgr::update(), LLEventNotifier::update(), LLAgent::updateCamera(), LLScriptEdCore::updateDynamicHelp(), LLViewerThrottle::updateDynamicThrottle(), LLSelectMgr::updateEffects(), LLViewerImage::updateFetch(), LLHoverView::updateHover(), LLVOAvatar::updateIsFullyLoaded(), LLMotionController::updateMotion(), LLVOAvatar::updateRegion(), LLVOSky::updateSky(), LLVOVolume::updateTextures(), and LLVOAvatar::updateVisibility().

BOOL LLFrameTimer::getStarted (  )  const [inline]

F64 LLFrameTimer::expiresAt (  )  const

Definition at line 115 of file llframetimer.cpp.

References mExpiry, sStartTotalTime, U64_to_F64(), and USEC_TO_SEC_F64.

Here is the call graph for this function:


Member Data Documentation

U64 LLFrameTimer::sStartTotalTime = totalTime() [static, protected]

Definition at line 113 of file llframetimer.h.

Referenced by expiresAt(), setExpiryAt(), and updateFrameTime().

F64 LLFrameTimer::sFrameTime = 0.0 [static, protected]

U64 LLFrameTimer::sFrameDeltaTime = 0 [static, protected]

Definition at line 123 of file llframetimer.h.

Referenced by getFrameDeltaTimeF32(), and updateFrameTime().

U64 LLFrameTimer::sTotalTime = 0 [static, protected]

Definition at line 126 of file llframetimer.h.

Referenced by getCurrentFrameTime(), getTotalTime(), and updateFrameTime().

F64 LLFrameTimer::sTotalSeconds = 0.0 [static, protected]

Definition at line 129 of file llframetimer.h.

Referenced by getTotalSeconds(), and updateFrameTime().

S32 LLFrameTimer::sFrameCount = 0 [static, protected]

Definition at line 132 of file llframetimer.h.

Referenced by getFrameCount(), and updateFrameTime().

Definition at line 147 of file llframetimer.h.

Referenced by getElapsedTimeF32(), getStarted(), pause(), start(), stop(), and unpause().


The documentation for this class was generated from the following files:

Generated on Fri May 16 08:48:08 2008 for SecondLife by  doxygen 1.5.5