08-03-2006 11:05 AM
08-08-2006 04:58 AM
After loading the sequence file (TSUI_ApplicationMgrOpenSequenceFile) you will first have to get the ExecutionEntryPoints with the method TSUI_ExecutionViewMgrGetExecutionEntryPoints. This method needs the ExecutionViewManagerReference as an input (object handle) and returns the TSUIObj_EntryPoints (value). The TSUIObj_EntryPoints Collection contains x Entry Points, depending on your processmodell. In the standard sequencial process model, there are two entry points (TestUUTs and SinglePass). to get the entry point you want, you have to call the method TSUI_EntryPointsGetItem. This method needs the TSUIObj_EntryPoints Reference as an input, the index of the entry point you want to have (0 for TestUUTs and 1 for SinglePass in the example above), and returns a TSUIObj_EntryPoint (value). Now you can call the TSUI_EntryPointRun method to start this entrypoint. This method will need the TSUIObj_EntryPoint Reference as an input, adn will retrunr an reference to the Execution (value) in which the sequence will be executed.
Here is an example for that:
static CAObjHandle ExeViewMngRef;
static CAObjHandle EntryPointsCollection;
static CAObjHandle EntryPointRef;
static TSUIObj_Execution ExecutionRef;
...
TSUI_ExecutionViewMgrGetExecutionEntryPoints (ExeViewMngRef, NULL, &EntryPointsCollection);
TSUI_EntryPointsGetItem (EntryPointsCollection, NULL, 0, &EntryPointRef);
TSUI_EntryPointRun (EntryPointRef, NULL, CA_DEFAULT_VAL, &ExecutionRef);
Hope this helps!
André
08-08-2006 12:21 PM
Thank you for the answer.
Now I understand the application of TSUI_EntryPointRun method. But, for the moment, it does not work.
In TSUI_EntryPointsGetItem, the compilator dislike the index item 0 because it want a type VARIABLE... So I replaced 0 by CA_VariantULong(0) to pass 0 in parameter. After, the program compile correctly but... A error message show :"index out of range"
tsErrChk( TSUI_ApplicationMgrOpenSequenceFile(gMainWindow.applicationMgr, &errorInfo, "c:\\fichier\\fichier.seq", NULL));
tsErrChk( TSUI_ExecutionViewMgrGetExecutionEntryPoints (gMainWindow.executionViewMgr, &errorInfo, &EntryPointsCollection));
tsErrChk( TSUI_EntryPointsGetItem (EntryPointsCollection, &errorInfo,CA_VariantULong(0), &EntryPointRef));
tsErrChk( TSUI_EntryPointRun (EntryPointRef, &errorInfo, CA_DEFAULT_VAL, &ExecutionRef));
08-09-2006 02:58 AM - edited 08-09-2006 02:58 AM
Hi,
I tried it out myself now, before I just played it through in theory 😉 and found the small mistake: We have to use the SequenceViewMgr, not the ExecutinViewMgr, then it works (after loading, the sequence is loaded in the SequnceView, but isn´t in the ExecutionView until you start it).
Here is the correct code, and you find a modified Operator Interface attached:
int CVICALLBACK StartSpecificSequence (int panel, int control, int event,
Message Edited by Andre_Saller on 08-09-2006 02:59 AM
Message Edited by Andre_Saller on 08-09-2006 03:00 AM
08-09-2006 08:06 AM
It work perfectly!
thank you!