Gerenciamento de Temporizadores
Modelo de Dados
objTimerList = Timers.ListTimers()
Descrição:
Retorna um objeto lista de timers.
Parâmetros de saída:
objTimerList - Lista de timers.
Exemplo de utilização:
function printTimer(t)
print("Name = " .. t.Name)
print("IsCyclic = " .. tostring(t.IsCyclic))
print("ScriptName = " .. t.ScriptName)
print("Interval = " .. t.Interval)
print("Enabled = " .. tostring(t.Enabled))
end
-- Retorna lista de timers
local timerlist =Timers.ListTimers()
-- lista todos os timers
for pos,t in ipairs(timerlist) do
printTimer(t)
end
objTimer = Timers.Get(string textTimerPath)
|
Compatível a partir da versão 1.3.19 |
Descrição:
Retorna um objeto timer. Este evento está disponível para o HIscada Pro a partir da versão 1.3.19
Parâmetros de entrada:
textTimerPath - string com o caminho do timer.
Parâmetros de saída:
objTimer - Objeto timer. Se não existir retorna nil.
Exemplo de utilização:
function printTimer(t)
print("Name = " .. t.Name)
print("IsCyclic = " .. tostring(t.IsCyclic))
print("ScriptName = " .. t.ScriptName)
print("Interval = " .. t.Interval)
print("Enabled = " .. tostring(t.Enabled))
end
-- Obtem um objeto timer
local timer = Timers.Get("Viewers.Timers.Timer_001")
printTimer(timer)
objTimer = Timers.GetTimer(string textTimerPath) -Deprecated
|
Compatível até a versão 1.3.18 |
Descrição:
Retorna um objeto timer. Esta função não deve ser utilizada nas versões maiores que 1.3.18.
Parâmetros de entrada:
textTimerPath - string com o caminho do timer.
Parâmetros de saída:
objTimer - Objeto timer. Se não existir retorna nil.
Exemplo de utilização:
function printTimer(t)
print("Name = " .. t.Name)
print("IsCyclic = " .. tostring(t.IsCyclic))
print("ScriptName = " .. t.ScriptName)
print("Interval = " .. t.Interval)
print("Enabled = " .. tostring(t.Enabled))
end
-- Obtem um objeto timer
local timer = Timers.GetTimer("Viewers.Timers.Timer_001")
printTimer(timer)
Timer
ret = timer:Cancel() -Deprecated
|
Compatível até a versão 1.3.18 |
Descrição:
Desabilita o timer. Esta função não deve ser utilizada nas versões maiores que 1.3.18.
Parâmetros de saída:
ret: Se a operação de desabilitar o timer ocorrer com sucesso retorna nil.
Exemplo de utilização:
function printTimer(t)
print("Name = " .. t.Name)
print("IsCyclic = " .. tostring(t.IsCyclic))
print("ScriptName = " .. t.ScriptName)
print("Interval = " .. t.Interval)
print("Enabled = " .. tostring(t.Enabled))
end
-- Obtem um objeto timer
local timer = Timers.GetTimer("Viewers.Timers.Timer_001")
printTimer(timer)
-- Desabilita o timer
ret = timer:Cancel()
Sleep(1000) --Este tempo deve ser maior que o intervalo configurado para o timer
--Obtem objeto timer atualizado
local timer = Timers.GetTimer("Viewers.Timers.Timer_001")
printTimer(timer)
ret = timer:Disable()
|
Compatível a partir da versão 1.3.19 |
Descrição:
Desabilita o timer.
Parâmetros de saída:
ret: Se a operação de desabilitar o timer ocorrer com sucesso retorna nil.
Exemplo de utilização:
function printTimer(t)
print("Name = " .. t.Name)
print("IsCyclic = " .. tostring(t.IsCyclic))
print("ScriptName = " .. t.ScriptName)
print("Interval = " .. t.Interval)
print("Enabled = " .. tostring(t.Enabled))
end
-- Obtem um objeto timer
local timer = Timers.Get("Viewers.Timers.Timer_001")
printTimer(timer)
-- Desabilita o timer
ret = timer:Disable()
Sleep(1000) --Este tempo deve ser maior que o intervalo configurado para o timer
--Obtem objeto timer atualizado
ocal timer = Timers.Get("Viewers.Timers.Timer_001")
printTimer(timer
ret = timer:Enable(integer interval)
Descrição:
Habilita o timer com um intervalo de execução definido.
Parâmetros de entrada:
interval: Intervalo de tempo(ms) para execução do script associado ao timer. Se o intervalo for vazio ou zero desabilita a execução do timer.
Parâmetros de saída:
ret: Se a operação de habilitar o timer ocorrer com sucesso retorna nil.
Exemplo de utilização:
function printTimer(t)
print("Name = " .. t.Name)
print("IsCyclic = " .. tostring(t.IsCyclic))
print("ScriptName = " .. t.ScriptName)
print("Interval = " .. t.Interval)
print("Enabled = " .. tostring(t.Enabled))
end
-- Obtem um objeto timer
local timer = Timers.Get("Viewers.Timers.Timer_001")
-- Habilita timer
ret = timer:Enable(1000)
ret = timer:SetScript(string pathScript)
Descrição:
Define o script a ser executado pelo timer.
Parâmetros de entrada:
pathScript: Caminho completo do script a ser executado pelo timer.
Parâmetros de saída:
ret: Se a operação de associação do script ao timer ocorrer com sucesso retorna 0, caso contrario retorna -1.
Exemplo de utilização:
-- Troca dinâmica do script associado ao Timer
local timer = Timers.Get("Viewers.Timers.Timer_001")
print(timer.ScriptName)
ret = timer:SetScript("Viewers.Scripts.ScriptGroup_001.Script_001")
print("Ret = " .. ret)
local timer = Timers.Get("Viewers.Timers.Timer_001")
print(timer.ScriptName)
-- Se for um timer de instância, podemos acessar a variável "Instance"
origem = Instance.Name -- obtém o nome da instância a que pertence este timer
if (origem == "Injetora1") then
tag_path = "Instances.GrupoInjetor.Injetora1.Tags.Local.CfgGrp.Limite"
else
tag_path = "Instances.GrupoInjetor.Injetora2.Tags.Local.CfgGrp.Limite"
end
-- Acessa um Tag da instância
local Tag = Tags. Get(tag_path)
local err = Tag: ReadCache()
if err == 0 then -- sucesso na leitura
x = Tag.Value
-- incrementa o valor do Tag
x = x + 10;
if (x > 200) then
x = 0
end
Tag.Value = x
Tag:WriteValue()
end
