Difference between revisions of "API Expand.MacroName"
From Flowcode Help
Jump to navigationJump to search (XML import) |
(XML import) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | <sidebar>API | + | <sidebar>API Contents</sidebar> |
Expands a string to the name of a macro used in the generated code | Expands a string to the name of a macro used in the generated code | ||
Line 10: | Line 10: | ||
==Parameters== | ==Parameters== | ||
− | [[Variable | + | [[Variable Types|STRING]] ''Source'' |
:The macro name to expand | :The macro name to expand | ||
− | [[Variable | + | [[Variable Types|HANDLE]] ''Owner'' |
:A component that owns the macro | :A component that owns the macro | ||
:''The default value for this parameter is: '''''this''' | :''The default value for this parameter is: '''''this''' | ||
Line 19: | Line 19: | ||
==Return value== | ==Return value== | ||
− | [[Variable | + | [[Variable Types|STRING]] |
− | + | ||
+ | The full expanded macro name. | ||
==Detailed description== | ==Detailed description== | ||
− | ''< | + | This takes a macro name owned by the specified ''Owner'' component and returns the name of the macro as it would be added to the downloaded code. For example the macro ''TestMacro'' may be expanded to <tt>FCD_PARENT_OBJECT_TESTMACRO</tt>. |
+ | |||
+ | |||
+ | This should only be called during compilation if it is to match up with the generated code as compilation will calculate the static linkage of a macro at this point (a component may be redirected to some pre-existing and identical function generated by some other component in order to save space on the target). | ||
Line 32: | Line 36: | ||
* Add to a calculation icon: <pre class="brush:[cpp]">result = ::Expand.MacroName("source", owner)</pre> | * Add to a calculation icon: <pre class="brush:[cpp]">result = ::Expand.MacroName("source", owner)</pre> | ||
− | ''<span style="color:red;">No additional | + | ''<span style="color:red;">No additional examples</span>'' |
Latest revision as of 15:57, 16 January 2014
<sidebar>API Contents</sidebar> Expands a string to the name of a macro used in the generated code
Contents
Parameters
STRING Source
- The macro name to expand
HANDLE Owner
- A component that owns the macro
- The default value for this parameter is: this
Return value
The full expanded macro name.
Detailed description
This takes a macro name owned by the specified Owner component and returns the name of the macro as it would be added to the downloaded code. For example the macro TestMacro may be expanded to FCD_PARENT_OBJECT_TESTMACRO.
This should only be called during compilation if it is to match up with the generated code as compilation will calculate the static linkage of a macro at this point (a component may be redirected to some pre-existing and identical function generated by some other component in order to save space on the target).
Examples
Calling in a calculation
- Declare a variable 'result' of type STRING
- Add to a calculation icon:
result = ::Expand.MacroName("source", owner)
No additional examples