Code Monkey home page Code Monkey logo

ncluamodules's Introduction

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

ncluamodules's People

Stargazers

Thiago Queiroz avatar Caio César Viel avatar Joel dos Santos avatar Jeffyson Rodrigues avatar Manoel Campos avatar Adão Gavina avatar

Watchers

Joel dos Santos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.