setup

Prepara um objeto System para execução, travando-o, antes da primeira chamada a step.

Categoria: Programming > Classes

Sintaxe

setup(obj, x1, ..., xn)

Executa o setupImpl do objeto com entradas como as que step receberá, e trava o objeto.

Descrição

step chama setupImpl sozinho na primeira chamada, então setup só é necessário quando a inicialização deve ocorrer em um momento escolhido, por exemplo antes de um laço cronometrado. Depois de setup, o objeto fica travado e o próximo step pula a inicialização.

Chamar setup em um objeto já travado é um erro; chame release antes.

Argumentos de entrada

obj
Um objeto System.
x1, ..., xn
Entradas de exemplo, usadas para fixar tipos e tamanhos. Não são processadas.

Exemplo

Inicializando antes do primeiro step

writelines([ ...
  "classdef Counter < matlab.System", ...
  "  properties", "    Total = 0", "  end", ...
  "  methods (Access = protected)", ...
  "    function setupImpl(obj)", "      obj.Total = 100;", "    end", ...
  "    function y = stepImpl(obj, u)", "      obj.Total = obj.Total + u;", "      y = obj.Total;", "    end", ...
  "    function releaseImpl(obj)", "      disp('released')", "    end", ...
  "  end", "end"], 'Counter.m');
c = Counter;
c.Total
setup(c);
c.Total
isLocked(c)
Saída
ans = 0
ans = 100
ans = logical
   1

O setupImpl da classe do exemplo ajusta Total para 100.

Veja também

step release reset isLocked