lltimer.h File Reference

Cross-platform objects for doing timing. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  LLTimer
class  LLEventTimer

Functions

U64 get_clock_count ()
F64 calc_clock_frequency (U32 msecs)
void update_clock_frequencies ()
void ms_sleep (long ms)
U32 time_corrected ()
BOOL is_daylight_savings ()
tm * utc_to_pacific_time (S32 utc_time, BOOL pacific_daylight_time)
void microsecondsToTimecodeString (U64 current_time, char *tcstring)
void secondsToTimecodeString (F32 current_time, char *tcstring)

Variables

const U32 USEC_PER_SEC = 1000000
const U32 SEC_PER_MIN = 60
const U32 MIN_PER_HOUR = 60
const U32 USEC_PER_MIN = USEC_PER_SEC * SEC_PER_MIN
const U32 USEC_PER_HOUR = USEC_PER_MIN * MIN_PER_HOUR
const U32 SEC_PER_HOUR = SEC_PER_MIN * MIN_PER_HOUR
const F64 SEC_PER_USEC = 1.0 / (F64) USEC_PER_SEC
S32 gUTCOffset


Detailed Description

Cross-platform objects for doing timing.

LicenseInfo
firstyear=2000&license=viewergpl

Copyright (c) 2000-2007, Linden Research, Inc.

Second Life Viewer Source Code The source code in this file ("Source Code") is provided by Linden Lab to you under the terms of the GNU General Public License, version 2.0 ("GPL"), unless you have obtained a separate licensing agreement ("Other License"), formally executed by you and Linden Lab. Terms of the GPL can be found in doc/GPL-license.txt in this distribution, or online at http://secondlife.com/developers/opensource/gplv2

There are special exceptions to the terms and conditions of the GPL as it is applied to this Source Code. View the full text of the exception in the file doc/FLOSS-exception.txt in this software distribution, or online at http://secondlife.com/developers/opensource/flossexception

By copying, modifying or distributing this software, you acknowledge that you have read and understood your obligations described above, and agree to abide by those obligations.

ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. $/LicenseInfo$

Definition in file lltimer.h.


Function Documentation

F64 calc_clock_frequency ( U32  msecs  ) 

Referenced by update_clock_frequencies().

U64 get_clock_count (  ) 

Referenced by LLTimer::checkExpirationAndReset(), LLTimer::getCurrentClockCount(), getElapsedTimeAndUpdate(), LLTimer::getRemainingTimeF32(), LLTimer::hasExpired(), LLTimer::reset(), LLTimer::setTimerExpirySec(), and totalTime().

BOOL is_daylight_savings (  ) 

Definition at line 430 of file lltimer.cpp.

References NULL, and tut::tm().

void microsecondsToTimecodeString ( U64  current_time,
char *  tcstring 
)

Definition at line 478 of file lltimer.cpp.

Referenced by LLViewerWindow::draw(), and secondsToTimecodeString().

void ms_sleep ( long  ms  ) 

Referenced by cleanup_app(), default_unix_signal_handler(), LLDir::deleteFilesInDir(), LLMessageSystem::establishBidirectionalTrust(), LLApp::fork(), idle_startup(), LLFileEncoder::LLFileEncoder(), main(), main_loop(), LLQueuedThread::processNextRequest(), LLErrorThread::run(), LLVFile::setMaxSize(), LLThread::shutdown(), LLQueuedThread::shutdown(), sleep_and_pump_messages(), LLVFile::waitForLock(), and LLApp::~LLApp().

void secondsToTimecodeString ( F32  current_time,
char *  tcstring 
)

Definition at line 500 of file lltimer.cpp.

References microsecondsToTimecodeString(), and SEC_TO_MICROSEC.

U32 time_corrected (  ) 

Definition at line 421 of file lltimer.cpp.

References gUTCOffset, and NULL.

Referenced by LLViewerTextEditor::appendTime(), LLInventoryFilter::check(), cleanup_app(), container_inventory_arrived(), LLToolDragAndDrop::dropInventory(), handle_grab_texture(), idle_startup(), LLLiveLSLEditor::loadAsset(), LLPanelContents::onClickNewScript(), LLPanelDirEvents::performQueryOrDelete(), LLPanelEvent::processEventInfoReply(), LLStatusBar::refresh(), LLPanelDirEvents::setDay(), LLLogChat::timestamp(), LLEventNotifier::update(), and LLNewAgentInventoryResponder::uploadComplete().

void update_clock_frequencies (  ) 

Definition at line 170 of file lltimer.cpp.

References calc_clock_frequency(), gClockFrequency, gClockFrequencyInv, gClocksToMicroseconds, and SEC_TO_MICROSEC.

Referenced by LLTimer::LLTimer(), and totalTime().

struct tm* utc_to_pacific_time ( S32  utc_time,
BOOL  pacific_daylight_time 
)

Definition at line 444 of file lltimer.cpp.

References MIN_PER_HOUR, S32, SEC_PER_MIN, and tut::tm().

Referenced by LLFloaterBump::add(), LLViewerTextEditor::appendTime(), LLEventInfo::LLEventInfo(), LLPanelDirEvents::performQueryOrDelete(), LLWorldMap::processMapItemReply(), LLStatusBar::refresh(), LLPanelDirEvents::setDay(), and LLLogChat::timestamp().


Variable Documentation

S32 gUTCOffset

Definition at line 65 of file lltimer.cpp.

Referenced by idle_startup(), and time_corrected().

const U32 MIN_PER_HOUR = 60

Definition at line 44 of file lltimer.h.

Referenced by utc_to_pacific_time().

const U32 SEC_PER_HOUR = SEC_PER_MIN * MIN_PER_HOUR

Definition at line 47 of file lltimer.h.

const U32 SEC_PER_MIN = 60

Definition at line 43 of file lltimer.h.

Referenced by utc_to_pacific_time().

const F64 SEC_PER_USEC = 1.0 / (F64) USEC_PER_SEC

Definition at line 48 of file lltimer.h.

Referenced by LLMessageSystem::checkMessages(), LLCircuitData::clearDuplicateList(), LLMessageSystem::getMessageTimeSeconds(), and LLMessageSystem::getMessageTimeUsecs().

const U32 USEC_PER_HOUR = USEC_PER_MIN * MIN_PER_HOUR

Definition at line 46 of file lltimer.h.

const U32 USEC_PER_MIN = USEC_PER_SEC * SEC_PER_MIN

Definition at line 45 of file lltimer.h.

const U32 USEC_PER_SEC = 1000000

Definition at line 41 of file lltimer.h.

Referenced by LLMessageSystem::getMessageTimeUsecs(), and LLKeyThrottle< T >::LLKeyThrottle().


Generated on Thu Jul 1 06:10:42 2010 for Second Life Viewer by  doxygen 1.4.7