Difference between revisions of "API Expand.MacroName"
From Flowcode Help
Jump to navigationJump to search (XML import) |
|||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | |
− | Expands a string to the name of a macro used in the generated code | + | |- |
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MacroName''' | ||
+ | |- | ||
+ | | colspan="2" | Expands a string to the name of a macro used in the generated code | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
+ | | width="90%" | Source | ||
+ | |- | ||
+ | | colspan="2" | The macro name to expand | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
+ | | width="90%" | Owner | ||
+ | |- | ||
+ | | colspan="2" | A component that owns the macro | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | ==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 31: | Line 33: | ||
* Declare a variable 'result' of type STRING | * Declare a variable 'result' of type STRING | ||
* 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> | ||
− | |||
− |
Latest revision as of 11:55, 16 January 2023
![]() |
MacroName |
Expands a string to the name of a macro used in the generated code | |
![]() |
Source |
The macro name to expand | |
![]() |
Owner |
A component that owns the macro | |
![]() |
Return |
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)