•An unlimited number of properties can be reported.
•If no output location is specified, values are reported to a DataTableWindow.
•"myWidth" and "myPrecision" are optional qualifiers that specify the field width and precision.
o"myWidth" - the total number of characters including spaces and decimal place.
o"myPrecision" - the number of characters to the right of the decimal place.
•The optional clauses "without headers", "without linefeed", and "without pad" can be used in any combination.
o"without headers" - FreeFlyer automatically adds headers to output files that include the title and units for each element of the report. This option removes the headers.
o"without linefeed" - FreeFlyer automatically adds linefeeds to output files. This option removes the linefeeds.
o"without pad" - FreeFlyer automatically adds pads or spacing to improve the formatting of the output file. This option removes the padding.
•Note that FreeFlyer automatically adds these formatting options but they can be removed globally using the following script:
ReportInterface ri;
ri.HeaderType = 0; // Removes headers
ri.AutoLinefeed = 0; // Removes linefeeds
ri.AutoPadding = 0; // Removes padding
|
•Literal strings prefixed with the special character @ will be scanned for environment variables and escape sequences.
oThe supported escape sequences are:
▪Tab: \t
▪Carriage return: \r
▪Line feed: \n
▪Backslash: \\
▪Dollar sign: \$
▪Percent sign: \%
oEnvironment variables can be specified using the $() syntax: $(EnvironmentVariableName)
•On Windows, you need to write data in Binary format to be able to suppress Carriage Returns in output files. FreeFlyer supports writing data in Binary as a way to suppress Carriage Returns with the ReportInterface and FileInterface Objects. Below are examples for each Object.
ReportInterface ri;
ri.Filename = "TestOutput.txt";
Report as Binary @"Test1\n" to ri;
Report as Binary @"Test2\n" to ri;
Report as Binary @"Test3\n" to ri;
FileInterface fi;
fi.BinaryMode = 1;
fi.WriteMode = 1;
fi.Filename = "TestOutput.txt";
fi.Open();
// FileInterface Option 1
fi.PutLine("Test1");
fi.PutLine("Test2");
fi.PutLine("Test3");
fi.Close();
// FileInterface Option 2
fi.Write("Test1");
fi.Write(@"\n");
fi.Write("Test2");
fi.Close();
|
•A DataTableWindow object can be used in place of a Report command when reporting to the screen.
oDataTableWindows can be updated using the Update command at any point in the Mission Sequence or they can be updated automatically every time a Spacecraft is stepped or maneuvered. |