Coder Cannot define entrypoint for classdef

3 次查看(过去 30 天)
Im currently testing the matlab coder, sins we are looking to move our matlab projects into C for performance and integrating with a larger system. Most of our current codebase uses classdef's below is a simple example of what we are using.
classdef MeanAgent < handle
properties
d_Vec
sName
dEMA
end
methods
function this = MeanAgent( sName )
this.sName = sName;
this.dEMA = 0;
this.d_Vec = [];
end
function m = MeanOfNothing(this,dVal)
this.d_Vec = [this.d_Vec dVal];
m = mean(this.d_Vec);
end
end
end
When trying to generate code using the Coder, i get either stuck when asked to define input types, not being able to press next.
or im presented with the error:
matlab All entry-point files must be functions. MeanAgent.m is a class.
if i select "determin imputtype from codeprecondition.
Is the conversion just not possible, or how does the coder support classdef, i havnt managed to find this in any of your examples.

采纳的回答

Arnab De
Arnab De 2015-11-20
The entry point to MATLAB Coder must be a function. MATLAB classes are not supported as entry points. You can define a function that uses the MATLAB class and use it as an entry point.
  1 个评论
Peter B
Peter B 2015-11-20
Thanks for the reply, I managed to work around the issue using structs as input in conjunction with reentrant functions, keeping the number of parameters for my functions to a minimum.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Coder 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by