RenderScript の Time 関数と型

概要

以下の関数を使用して、現在の時刻と現在のシステム アップ時刻を算出できます。これらの関数をカーネル内で呼び出すことはおすすめしません。

まとめ

rs_time_t 1970 年 1 月 1 日からの秒数
rs_tm 日付と時刻の構造
関数
rsGetDt 最後の呼び出しからの経過時間
rsLocaltime 現地時間に変換する
rsTime 1970 年 1 月 1 日からの秒数
rsUptimeMillis システムの稼働時間(ミリ秒)
rsUptimeNanos システムの稼働時間(ナノ秒単位)

rs_time_t : 1970 年 1 月 1 日からの秒数

typedef: int 32 ビットをコンパイルする場合。

typedef: long の場合。64 ビットをコンパイルする場合。

カレンダー時刻は、エポック(1970 年 1 月 1 日 00:00:00、協定世界時(UTC))からの経過秒数として解釈されます。

rs_tm : 日付と時刻の構造

次のフィールドを持つ構造:     

int tm_sec分後の秒。この範囲は 0 ~ 59 ですが、うるう秒の場合は最大 60 秒です。
int tm_min1 時間後の分。この範囲は 0 ~ 59 です。
int tm_hour午前 0 時を過ぎた時間。この範囲は 0 ~ 23 です。
int tm_mday日。この範囲は 1 ~ 31 です。
int tm_mon1 月からの月数。この範囲は 0 ~ 11 です。
整数 tm_year1900 年からの数年間。
int tm_wday日曜日からの日数。この範囲は 0 ~ 6 です。
int tm_yday1 月 1 日からの日数。この範囲は 0 ~ 365 です。
int tm_isdst夏時間が有効かどうかを示すフラグ。値が有効な場合は正、そうでない場合は負、情報がない場合は負の値になります。

分割された時間コンポーネントのデータ構造。

関数

rsGetDt : 最後の呼び出しからの経過時間

float rsGetDt()
戻り値
時間(秒)。

この関数がこのスクリプトで最後に呼び出されてから経過した時間を秒単位で返します。

rsLocaltime : 現地時間に変換する

rs_tm* rsLocaltime(rs_tm* local, const rs_time_t* timeout);
パラメータ
地域現地時間が保存される時間構造へのポインタ。
タイマー1970 年 1 月 1 日からの秒数で時間を入力します。
戻り値
出力現地時間へのポインタ(パラメータ local と同じ値)。

タイマーで指定された時刻を、年、月、時などを指定する rs_tm 構造体に変換します。この値は *local に格納されます。

この関数は、最初の引数として渡されるものと同じポインタを返します。ローカル パラメータが NULL の場合、この関数は何もせず、NULL を返します。

rsTime : 1970 年 1 月 1 日からの秒数

rs_time_t rsTime(rs_time_t* timeout);
パラメータ
タイマー返されたカレンダー時刻も保存する場所。
戻り値
エポックからの秒数。エラーが発生した場合は -1。

エポック(1970 年 1 月 1 日 00:00:00 UTC)からの経過秒数を返します。

タイマーが NULL でない場合、結果はこの変数が指すメモリにも格納されます。

rsUptimeMillis : システムの稼働時間(ミリ秒単位

int64_t rsUptimeMillis()
戻り値
稼働時間(ミリ秒単位)。

現在のシステム クロック(稼働時間)をミリ秒単位で返します。

rsUptimeNanos : システムの稼働時間(ナノ秒単位)

int64_t rsUptimeNanos);
戻り値
稼働時間(ナノ秒単位)。

現在のシステム クロック(稼働時間)をナノ秒単位で返します。

この呼び出しによって返される値の粒度は、ナノ秒よりもはるかに大きくなることがあります。