03-29-2019 06:04 PM
Is there a way to dynamically create the sequence file documentation?
04-01-2019 11:25 AM - edited 04-01-2019 11:28 AM
I assume that by dynamically, you mean programmatically. And by documentation, I assume that you mean the equivalent of using the tool available in the TestStand sequence editor: Tools -> Sequence File Documentation.
If my assumptions are right, the answer is yes.
The documentation of the current sequence file is generated by the tool using sequence files located in <TestStand>/Components/Tools/DocGen. You can call the sequences of those sequence files to generate the documentation of a sequence file.
As an example, you can do the following (assuming here that you use the documentation options of the TestStand sequence editor).
*** Load Documentation Options ***
You need to create a DocOptions container custom type, available in docgen.seq.
DLL call from DocSupport.dll (located in the DocGen/Win32 directory), ReadDocOptions with RunState.Engine and Locals.DocOptions as parameters.
You can modify the options here as needed.
*** Get Reference from Sequence file ***
Create a local variable SequenceFileRef as object reference.
Use RunState.Sequencefile if you want to document the sequence file currently loaded or RunState.Engine.GetSequenceFileEx(Locals.SequenceFilePath) where the Local variable SequenceFilePath is a string containing the path of the sequence file you want to document.
*** Generate Documentation ***
Call the sequence "Sequence File Doc" from the sequence file docgen_html.seq or dog_text.seq if you want to generate html or ascii documentation respectively using Locals.Options and Locals.SequenceFileRef.AsPropertyObject as parameters.
*******************
I have attached the code. Up to you to modify your Documentation Options and the sequence filename according to your needs.