Operate on coder.Constant types for global variables in Matlab Coder

1 次查看(过去 30 天)
Say I want 2 global variables as -globals input to a codegen in Matlab Coder. The first is is a coder.Constant, and the second depends on the first, eg:
g1 = coder.Constant(3);
g2 = g1+1;
codegen example -globals {'g1',g1,'g2',g2}
This will give the error message "Undefined operator '+' for input arguments of type 'coder.Constant'."
Is there any way to operate on coder.Constant variables?
I know there is a very simple work around for this example, but for my code it would be a lot neater to operate directly on g1.
Alternatively:
Is it possible to extract the value in g1 as a normal data type? Eg the following:
a = double(g1);
But this returns the error message: "Conversion to double from coder.Constant is not possible."
  3 个评论
Philip Bergander
Philip Bergander 2019-5-10
The .Value field solves my problem entirely! Thanks a lot, Ryan!
It would still be interesting with an answer to my first question though.
Ryan Livingston
Ryan Livingston 2019-5-10
Is the first question: Is there any way to operate on coder.Constant variables?
If so, then there's no direct way to operate on coder.Constant values apart from extracting the Value field. We've made a note to think about what operating on these would mean and if we could support something like that.

请先登录,再进行评论。

回答(0 个)

类别

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

产品


版本

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by