Funções e tipos de tempo do RenderScript

Visão geral

As funções abaixo podem ser usadas para informar a hora atual do relógio e o horário de atividade atual do sistema. Não é recomendado chamar essas funções dentro de um kernel.

Resumo

Tipos
rs_time_t (em inglês) Segundos desde 1o de janeiro de 1970
rs_tm (link em inglês) Estrutura de data e hora
Funções
rsGetDt (link em inglês) Tempo decorrido desde a última ligação
rsLocaltime (em inglês) Converter para o horário local
rsTime (link em inglês) Segundos desde 1o de janeiro de 1970
rsUptimeMillis (em inglês) Tempo de atividade do sistema em milissegundos
rsUptimeNanos (em inglês) Tempo de atividade do sistema em nanossegundos

Tipos

rs_time_t : segundos desde 1o de janeiro de 1970

Um typedef de: int Ao compilar para 32 bits.

Um typedef de: long Ao compilar para 64 bits.

Tempo do calendário interpretado como segundos decorridos desde a época (00:00:00 em 1o de janeiro de 1970, Tempo Universal Coordenado (UTC, na sigla em inglês).

rs_tm : estrutura de data e hora

Uma estrutura com os seguintes campos:     

int tm_secSegundos após o minuto. Esse valor varia de 0 a 59, mas possivelmente até 60 para segundos bissextos.
int tm_minMinutos após a hora. Esse valor vai de 0 a 59.
int tm_hourHoras depois da meia-noite. Esse valor vai de 0 a 23.
int tm_mdayDia do mês. Esse valor vai de 1 a 31.
int tm_monMeses desde janeiro. Esse valor vai de 0 a 11.
int tm_yearAnos desde 1900.
int tm_wdayDias desde domingo. Esse valor vai de 0 a 6.
int tm_ydayDias desde 1o de janeiro. Esse valor vai de 0 a 365.
int tm_isdstSinalização que indica se o horário de verão está em vigor. O valor será positivo se estiver em vigor, zero se não estiver e negativo se a informação não estiver disponível.

Estrutura de dados para componentes de tempo detalhados.

Funções

rsGetDt : tempo decorrido desde a última chamada

float rsGetDt()
Returns
Tempo em segundos

Retorna o tempo em segundos desde que essa função foi chamada pela última vez neste script.

rsLocaltime : converter para o horário local

rs_tm* rsLocaltime(rs_tm* local, const rs_time_t* timer);
Parâmetros
localPonteiro da estrutura temporal em que o horário local será armazenado.
cronômetroInsira o tempo como um número de segundos desde 1o de janeiro de 1970.
Returns
Ponteiro para o horário local de saída, ou seja, o mesmo valor do parâmetro local.

Converte o tempo especificado pelo timer em uma estrutura rs_tm que fornece ano, mês, hora etc. Esse valor é armazenado em *local.

Essa função retorna o mesmo ponteiro que é passado como primeiro argumento. Se o parâmetro local for NULL, essa função não fará nada e retornará NULL.

rsTime : segundos desde 1o de janeiro de 1970

rs_time_t rsTime(rs_time_t* timer);
Parâmetros
cronômetroLocal para também armazenar o horário retornado da agenda.
Returns
Segundos desde a época, -1 se houver um erro.

Retorna o número de segundos desde a época (00:00:00 UTC, 1o de janeiro de 1970).

Se o timer não for NULL, o resultado também será armazenado na memória apontada por essa variável.

rsUptimeMillis : tempo de atividade do sistema em milissegundos

int64_t rsUptimeMillis()
Returns
Tempo de atividade em milissegundos.

Retorna o relógio atual do sistema (tempo de atividade) em milissegundos.

rsUptimeNanos : tempo de atividade do sistema em nanossegundos

int64_t rsUptimeNanos()
Returns
Tempo de atividade em nanossegundos.

Retorna o relógio atual do sistema (tempo de atividade) em nanossegundos.

A granularidade dos valores retornados por essa chamada pode ser muito maior do que um nanossegundo.