Сгенерируйте код для MATLAB Классы Handle и системные объекты

В этом примере показано, как сгенерировать код для пользовательской Системы object™ и затем просмотреть сгенерированный код в отчете генерации кода.

  1. В перезаписываемой папке создайте Системный объект, AddOne, который разделяет на подклассы от matlab.System. Сохраните код как AddOne.m.

    classdef AddOne < matlab.System
    % ADDONE Compute an output value that increments the input by one
    
      methods (Access=protected)
        % stepImpl method is called by the step method
        function y = stepImpl(~,x)
          y = x+1;
        end
      end
    end	  
  2. Запишите функцию, которая использует этот Системный объект.

    function y = testAddOne(x)
    %#codegen
      p = AddOne();
      y = p.step(x);
    end    
  3. Сгенерируйте MEX-функцию для этого кода.

    codegen -report testAddOne -args {0}

    -report опция сообщает codegen сгенерировать отчет генерации кода, даже если никакие ошибки или предупреждения не происходят. -args опция указывает что testAddOne функционируйте берет один скаляр дважды вход.

  4. Щелкните по ссылке View report.

  5. В панели MATLAB Source нажмите testAddOne. Видеть информацию о переменных в testAddOne, кликните по вкладке Variables.

  6. Просмотреть определение класса для addOne, в панели MATLAB Source нажмите AddOne.

Похожие темы