Top  Previous  Next


The ApiLabel keyword enables the user to specify a point in the Mission Plan at which the FreeFlyer Runtime API can pause when executing a Mission Plan. The ApiLabel functions similarly to a breakpoint, in that it halts execution on a certain line when the Mission Plan, but is different from a breakpoint in that it is intended primarily for data transfer interactions between the Mission Plan and the software utilizing the API instead of as a debugging tool. If desired, however, an ApiLabel can be used for debugging by retrieving values from the Mission Plan through expressions and then performing diagnostic comparisons on the software side.




Spacecraft sc;


ApiLabel "Set State";


While (sc.ElapsedTime < TIMESPAN(1 days));

    Step sc;



ApiLabel "Get State";


Note: As of FreeFlyer 7.3, the default timing precision mode is nanosecond precision mode. For older Mission Plans that have not yet been converted from millisecond precision mode, the syntax for working with epochs and calendar date/time strings is different. See the timing precision mode page for more information.




The ApiLabel string is case sensitive.

The ApiLabel is used with the ExecuteUntilApiLabel() method, which can be called from an external application that is interacting with FreeFlyer through the Runtime API. A regular expression can be passed to the ExecuteUntilApiLabel() method to allow the external application to run to any number of possible matching ApiLabel elements in the Mission Plan. The GetLocation() method in the API can be used to determine which ApiLabel was reached, if there are multiple potential matches.

ApiLabel is a FreeFlyer keyword, and not a command. The ApiLabel itself does not actually do anything to the execution of the FreeFlyer script. It simply acts as a marker that the API can execute to, in order to enable the transfer of data to or from the Mission Plan.



See Also

Application Program Interface