Difference between revisions of "LlGetAndResetTime"

From Second Life Wiki
Jump to navigation Jump to search
(synch with old content and recent changes at llGetTime)
Line 6: Line 6:
|sort=GetAndResetTime
|sort=GetAndResetTime
|return_type=float
|return_type=float
|return_text=time in seconds.
|return_text=that is the dilated time in seconds since the last sim reset, script reset, call of [[llResetTime]], or call of [[llGetAndResetTime]].
|func_footnote=Retrieves the time in seconds since since the last script reset (or since the last call to [[llResetTime]]/llGetAndResetTime), then resets the time to zero.
|func_footnote=Reports elapsed run time more accurately than [[llGetTimestamp]] by accounting correctly for time dilation.<br/><br/>
Also restarts the count of dilated time returned by this function and by [[llGetTime]].  
|spec
|spec
|caveats=*Known to be reset by various events outside user control, such as sim resets. Reliable only for short term timing measurements.
|caveats=
*Affected by [[llGetRegionTimeDilation|time dilation]].
*Correctly slowed by time dilation, whenever [[llGetRegionTimeDilation]] returns a value other than exactly 1.
*Reset by various events outside user control, such as sim resets.
|examples=<pre>
|examples=<pre>
default {
default {
Line 29: Line 31:
{{LSL DefineRow||[[llGetRegionTimeDilation]]}}
{{LSL DefineRow||[[llGetRegionTimeDilation]]}}
|also
|also
|notes
|notes=To measure elapsed calendar time, call [[llGetTimestamp]] instead, since time dilation and resets often make dilated time intervals differ from calendar time intervals.
|cat1=Time
|cat1=Time
|cat2=Script
|cat2=Script

Revision as of 21:23, 19 October 2007

Summary

Function: float llGetAndResetTime( );

Returns a float that is the dilated time in seconds since the last sim reset, script reset, call of llResetTime, or call of llGetAndResetTime.

Reports elapsed run time more accurately than llGetTimestamp by accounting correctly for time dilation.

Also restarts the count of dilated time returned by this function and by llGetTime.

Caveats

  • Correctly slowed by time dilation, whenever llGetRegionTimeDilation returns a value other than exactly 1.
  • Reset by various events outside user control, such as sim resets.
All Issues ~ Search JIRA for related Bugs

Examples

default {
    state_entry()
    {
        llResetTime();
    }
    touch_start(integer num_touch)
    {
        float time = llGetAndResetTime(); //This is equivalent to calling llGetTime(), then llResetTime()     
        llSay(0,(string)time + " seconds have elapsed since the last touch." );
    }
}

Notes

To measure elapsed calendar time, call llGetTimestamp instead, since time dilation and resets often make dilated time intervals differ from calendar time intervals.

See Also

Functions

•  llResetTime
•  llGetTime
•  llGetRegionTimeDilation

Deep Notes

Search JIRA for related Issues

Signature

function float llGetAndResetTime();