кодер. fftw. StandaloneFFTW3Interface.updateBuildInfo

Класс: кодер. fftw. StandaloneFFTW3Interface
Пакет: кодер. fftw

Обновите информацию о сборке для соединения с определенной библиотекой FFTW

Синтаксис

кодер. fftw. StandaloneFFTW3Interface.updateBuildInfo (buildInfo, ctx)

Описание

coder.fftw.StandaloneFFTW3Interface.updateBuildInfo(buildInfo, ctx) обновляет информацию о сборке, чтобы соединиться с определенной библиотекой FFTW.

Класс обратного вызова библиотеки FFT, который выводит от класса coder.fftw.StandaloneFFTW3Interface, задает библиотеку FFTW.

Входные параметры

развернуть все

После генерации кода информационный объект сборки содержит стандартный проект, опцию сборки и информацию о зависимостях. В методе updateBuildInfo, чтобы добавить информацию для соединения с определенной библиотекой FFTW, методами информации о сборке использования.

Реализуйте метод getStdLibInfo coder.BuildConfig, чтобы заставить специфичное для платформы расширение файла использовать во время ссылки.

Примеры

развернуть все

В классе, который выводит от coder.fft.StandaloneFFTW3Interface, реализуйте метод updateBuildInfo, который обновляет информацию о сборке, чтобы соединиться с определенной библиотекой FFTW.

Используйте метод updateBuildInfo в этом примере класс coder.fftw.StandaloneFFTW3Interface как шаблон.

% copyright 2017 The MathWorks, Inc.

classdef useMyFFTW < coder.fftw.StandaloneFFTW3Interface
     
    methods (Static)
        function th = getNumThreads
            coder.inline('always');
            th = int32(coder.const(1));
        end
                
        function updateBuildInfo(buildInfo, ctx)
            fftwLocation = '/usr/lib/fftw';
            includePath = fullfile(fftwLocation, 'include');
            buildInfo.addIncludePaths(includePath);
            libPath = fullfile(fftwLocation, 'lib');
            
            %Double
            libName1 = 'libfftw3-3';
            [~, libExt] = ctx.getStdLibInfo();
            libName1 = [libName1 libExt];
            addLinkObjects(buildInfo, libName1, libPath, 1000, true, true);
            
            %Single
             libName2 = 'libfftw3f-3';
            [~, libExt] = ctx.getStdLibInfo();
            libName2 = [libName2 libExt];
            addLinkObjects(buildInfo, libName2, libPath, 1000, true, true);
        end
    end           
end

В вашем методе updateBuildInfo, наборе:

  • fftwLocation к полному пути для вашей установки библиотеки.

  • includePath к полному пути папки, которая содержит заголовочный файл библиотеки FFTW.

  • libPath к полному пути папки, которая содержит файлы библиотеки.

Введенный в R2017b

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