⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 make_fpfft.m

📁 OFDMA 物理层开发的matlab 源码.飞思卡尔提供.对物理层开发的工程师有帮助!
💻 M
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%  Property of Freescale
%  Freescale Confidential Proprietary
%  Freescale Copyright (C) 2005 All rights reserved
%  ----------------------------------------------------------------------------
%  $RCSfile: make_fpfft.m.rca $
%  Tag $Name:  $
%  $Revision: 1.2 $
%  $Date: Mon Dec 11 12:04:40 2006 $
%  Target: Matlab
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


function make_fpfft()
% This function should be used to build the MEX object files. Simply type
%
%    make_fpfft
%
%
% Matlab 7 Release 14 SP2
% Include path:
% The include path is given as follows
%    -I'../source'
%
% Optimized MEX-function:
% The option -O can be used.
%
% Debug information:
% The option -g can be used.
%
% Output file name:
% The output MEX object should have the same name as the M-file implementation.
% (just with an appropriate file extension). The following option can used to
% achieve this
%    -output module_name
%
% Note:
% Only the wrapper is compiled, i.e. other required files must be included in
% the wrapper ".c".
%


ModuleName='fpfft';

if ispc
    %Windows PC
    DLL = [ModuleName,'.dll'];
    if exist(DLL,'file')
        s=sprintf('Overwriting MEX object (PC): %s ...',DLL);
        disp(s);
    else
        s=sprintf('Creating MEX object (PC): %s ...',DLL);
        disp(s);
    end
else
    %Unix/Linux
    type=computer;
    switch type
        case 'SOL2' %Solaris 2
            MEXSOL = [ModuleName,'.mexsol'];
            if exist(MEXSOL,'file')
                s=sprintf('Overwriting MEX object (Solaris): %s ...',MEXSOL);
                disp(s);
            else
                s=sprintf('Creating MEX object (Solaris): %s ...',MEXSOL);
                disp(s);
            end
        case 'GLNX86' %Linux 32-bit
            MEXGLX = [ModuleName,'.mexglx'];
            if exist(MEXGLX,'file')
                s=sprintf('Overwriting MEX object (Linux 32-bit): %s ...',MEXGLX);
                disp(s);
            else
                s=sprintf('Creating MEX object (Linux 32-bit): %s ...',MEXGLX);
                disp(s);
            end
        case 'GLNXA64' %Linux AMD 64-bit
            MEXA64 = [ModuleName,'.mexa64'];
            if exist(MEXA64,'file')
                s=sprintf('Overwriting MEX object (Linux AMD64): %s ...',MEXA64);
                disp(s);
            else
                s=sprintf('Creating MEX object (Linux AMD64): %s ...',MEXA64);
                disp(s);
            end
        otherwise
            s='Error: UNIX/Linux computer type not supported.';
            error(s);
    end

end


% create object
% probalbly no Endianess switch needed for this function
mex -I../../source -I../../../../header  -I../../../../source -I../../../../utility/matlab -I../../header -O -output fpfft fpfft.c
movefile('fpfft.dll','./..','f') %move the dll in the matlab level

%-- Create report
%-- Addpath for FindRevision.m and CreateReportMEX.m
addpath('../../../../matlab');
sC=FindRevision('../../source/SBX_CMSPK_FFT.c');
CreateReportMEX(ModuleName,s,sC,'');

%-- Remove paths
rmpath('../../../../matlab');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -