Coder Cannot define entrypoint for classdef

13 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

Arnab De
Arnab De il 20 Nov 2015
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 Commento
Peter B
Peter B il 20 Nov 2015
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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su MATLAB Coder in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by