jeffysonr / NCLuaModules

Módulos para simulação do funcionamento de scripts Lua para Ginga-NCL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NCLuaModules

NCLuaModules é uma implementação dos módulos Lua especificados na norma ABNT NBR 15606-2:2007 para a construção de aplicações interativas para TV digital.

Esta implementação é destinada àqueles que desejam testar seus scripts Lua sem a necessidade de executá-los em uma implementação do middleware Ginga-NCL. Uma outra utilidade é o Desenvolvimento Dirigido a Testes de scripts Lua em projetos de TV digital.

NCLuaModules implementa os módulos event, persistent e settings.

Módulo Settings

Esse módulo permite que um programa Lua acesse as variáveis de sistema, assim como um programa NCL. Isso é feito através de uma tabela contendo variáveis com o mesmo nome das variáveis especificadas na norma ABNT NBR 15606-2:2007.

Exemplos de uso:

lang = settings.system.language 
age = settings.user.age 
val = settings.default.selBorderColor 
settings.service.myVar = 10 
settings.user.age = 18 --> ERRO!

Módulo Persistent

Esse módulo permite que um programa Lua acesse e crie variáveis persistentes. O módulo persistent possui um conjunto de variáveis shared que permite o Lua criar uma variável e atribuir seu valor.

Esse módulo permite que um programa Lua salve dados e recupere-os entre execuções. O módulo persistent mantém um conjunto de variáveis em grupos “service”, “channel” e “shared”, com a mesma semântica dos grupos homônimos do nó NCL settings. Não existe nenhuma variável predefinida ou reservada nesses grupos, valores pode ser atribuídos a essas variáveis diretamente.

O uso da tabela persistent é semelhante ao uso da tabela settings, exceto pelo fato que, neste caso, o código procedural pode mudar os valores dos campos.

Exemplos de uso:

persistent.service.total = 10
color = persistent.shared.color

Contribuindo

Sinta-se a vontade para contribuir conosco. Verifique como nos tutoriais de colaboração (Collaborating) na seção de ajuda do GitHub.

Licença

NCLuaModules está sob licença GNU GPL 2.0

About

Módulos para simulação do funcionamento de scripts Lua para Ginga-NCL