MATLAB Coder: Toolbox Function

2 Ansichten (letzte 30 Tage)
Nycholas Maia
Nycholas Maia am 8 Feb. 2018
Bearbeitet: Denis Gurchenkov am 19 Mär. 2019
I'm developing my own Toolbox called 'Mix Toolbox'.
My folders struct is:
+mix/amp2dbfs.m
function [dbfs] = amp2dbfs(sample)
%AMP2DBFS return the sample amplitude value using dBFS scale
%
% USAGE:
% [dbfs] = amp2dbfs(sample)
coder.inline('never');
dbfs = 20 * log10(abs(sample));
end
I call this function typing:
out = mix.amp2dbfs(value);
I'm trying to compile this function to MEX. In the MATLAB Coder I got:
-> Generating trial code: OK
-> Building MEX: OK
-> Running test file: ERROR
The invoked code did not call entry-point function: 'amp2dbfs'.
I tested the generated MEX file and it works.
I think that this MATLAB Coder error is only about the call 'amp2dbfs' and not 'mix.amp2dbfs'.
My question is: Is there a way to remove the final error in "Running test file" process?

Akzeptierte Antwort

Denis Gurchenkov
Denis Gurchenkov am 22 Feb. 2018
Bearbeitet: Denis Gurchenkov am 19 Mär. 2019
MATLAB Coder App does not support generating code for an entry-point function that is nested inside a package. I can think of the following workarounds:
  • use the command-line interface ("codegen") -- cd to +mix folder, call codegen from there
  • move amp2dbfs to outside of +mix
  • Create a separate entry point function (e.g. "main.m") that calls mix.amp2dbfs and generate code for that entry-point function.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB Coder finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by