NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

teststand 2012 plugin architecture

Hi all,

 

Any tutorials on teststand 2012 plugin architecture. I searched on net but could find only few white papers and video tutorial which gives you an overview.

 

Thanks

0 Kudos
Message 1 of 14
(5,790 Views)

Is that plugins are sequence files which will be called as subsequence?. If so what is the difference between plugin and subsequence call in TS 2012. ?

0 Kudos
Message 2 of 14
(5,783 Views)

A plugin is a way to customize the behavior of the process model without having to directly modify it. The main use of plugins is for customizing report generation and result logging. This has nothing to do with how you write your test sequence.

 

Hope this helps,

-Doug

0 Kudos
Message 3 of 14
(5,772 Views)

These two topics in the NI TestStand 2012 Help might help answer your questions: 

 

Process Model Plug-In Architecture

Creating Process Model Plug-ins

 

0 Kudos
Message 4 of 14
(5,768 Views)

Those topics are just parts of a larger chapter. You can navigate the chapter here:

 

http://zone.ni.com/reference/en-XX/help/370052K-01/TOC31.htm

 

However, viewing and navigating this on the web is not as easy as in the help file (see attached picture).

0 Kudos
Message 5 of 14
(5,758 Views)

1) Does the plugins limited only to the report generation..?

 

2) I have some sequences in the process model just before the call of client(main) sequence, performing some actions like mathematical calculation or send  query to centralized server before the execution of client sequence. How can I add these sequences into the process model with out editing the process model using pugins.?

 

3) Plugins sequence file and supporting files should always reside in "C:\Documents and Settings\All Users\Documents\National Instruments\TestStand 2012\Components\Models\ModelPlugins"..?  Cant be saved in some other directory, defined by user ..?

0 Kudos
Message 6 of 14
(5,735 Views)

1. No, you can do whatever you want in the plug-in you create.

 

2. If you read the chapter on plug-ins, it describes the available plug-in entry-points and at what points the process models call them.

 

3. The Result Processing dialog only looks for available plug-ins in the specified plug-in directories. You could programmatically add a plug-in from a different location to a plug-in configuration file, but that is kind of an advanced topic. I would recommend using the default locations unless something about your use case absolutely prevents it.

0 Kudos
Message 7 of 14
(5,724 Views)

I created new plugin(which doesnt come under the result processor category) and changed the "FileGlobals.ModelPluginComponentDescription.Default.CategorySpecific.Name" to "QueryServer" and saved the plugin sequence file. Then I opened configure>>Result Processing dialog box where I couldnt add this plugin instance since the Category name is changed. The report generation, database logging and offline result storage all come under the category "ResultProcessor" have a common configuration file as "ResultProcessing.cfg" and process model uses this config file to invoke the plugins. But when we create a new plugin which does not come under the category "ResultProcessor"and there is no config file for that plugin, how the process model will invoke the new plugins...??And how can the end user configure the new plugin ??

0 Kudos
Message 8 of 14
(5,709 Views)

How do I create the configuration entry point in the plugins(to avoid editing Process model) which shall reflect in the Configure menu of seq. editor ...??

0 Kudos
Message 9 of 14
(5,708 Views)

You have three options:

A. Make your plug-in a result processor, even if it doesn't process results. This allows it to be inserted and configured in the Result Processing Dialog Box.

B. Make your plug-in an Addon. See http://zone.ni.com/reference/en-XX/help/370052K-01/tsfundamentals/infotopics/pmpconfiguring/,  Model Plug-in Add-ons and Addons.cfg section.

C. Create your own configuration file:

For option (C), you can create additional model plug-in configuration files in the following ways:

1. Call the DisplayModelPluginDialogEx function from ModelSupport2.dll as defined in ResultProcessing.h to display a dialog that creates and edits a configuration file.
Note that this dialog will be programmatically customizable in a future version of TestStand. Also, the complete source code is already provided.

2. Copy an existing configuration file to a new file name. Open the new file in a text editor. Replace any occurrence of the previous file name with the new file name. Thus, you could use the Result Processing Dialog Box to create a ResultProcessing.cfg file with your plug-in in it and then copy the file before removing your plug-in from the dialog.

3. Create a configuration file programmatically using the TestStand API. You create a Model Plug-in configuration file with an instance of the PropertyObjectFile class with a file type of FileType_PropertyObjectFile. The PropertyObjectFile.Data property of the file must be of type NI_ModelPluginConfigurationSet. Currently there is no example of this, but the source code in ResultProcessing.c performs similar actions.

Message 10 of 14
(5,696 Views)