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

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

  1. В перезаписываемой папке создайте Системный объект, AddOne, который разделяет на подклассы от matlab.System Система. Сохраните код как AddOne.m 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. Щелкните по ссылке отчета Представления.

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

  6. Чтобы просмотреть определение класса для addOne, в Исходной панели MATLAB, нажимают AddOne.

Похожие темы

Была ли эта тема полезной?