Functions
ParaViewPlugin.cmake File Reference

Go to the source code of this file.

Functions

function paraview_plugin_find_plugins (output)
 .md

ParaView Plugin CMake API

More...
 
macro _paraview_plugin_parse_args (name_output)
 .md

Plugin files

More...
 
function paraview_plugin_scan ()
 .md

Scanning plugins

More...
 
function paraview_plugin_build ()
 .md

Building plugins

More...
 
function paraview_add_plugin (name)
 .md

Adding a plugin

More...
 
function paraview_plugin_add_property_widget ()
 .md

Plugin interfaces

More...
 
function paraview_plugin_add_dock_window ()
 .md

Dock window

More...
 
function paraview_plugin_add_action_group ()
 .md

Action group

More...
 
function paraview_plugin_add_toolbar ()
 .md

Toolbar

More...
 
function paraview_plugin_add_view_frame_action_group ()
 .md

View frame action group

More...
 
function paraview_plugin_add_auto_start ()
 .md

Auto start

More...
 
function paraview_plugin_add_tree_layout_strategy ()
 .md

Tree layout strategy

More...
 
function paraview_plugin_add_proxy ()
 .md

Proxy

More...
 

Function Documentation

◆ paraview_plugin_find_plugins()

function paraview_plugin_find_plugins ( output  )

.md

ParaView Plugin CMake API

TODO

.md

Finding plugins

Similar to VTK modules, plugins first have to be discovered. The paraview_plugin_find_plugins function does this. The output variable is the list of discovered paraview.plugin files.

paraview_plugin_find_plugins(<output> [<directory>...])

Definition at line 21 of file ParaViewPlugin.cmake.

◆ _paraview_plugin_parse_args()

macro _paraview_plugin_parse_args ( name_output  )

.md

Plugin files

The paraview.plugin file is parsed and used as arguments to a CMake function.

Example:

NAME
AdiosReaderPixie
CONDITION
PARAVIEW_USE_MPI
DESCRIPTION
Pixie file reader using ADIOS
REQUIRES_MODULES
VTK:CommonCore

The supported arguments are:

  • NAME: (Required) The name of the plugin.
  • DESCRIPTION: (Recommended) Short text describing what the plugin does.
  • CONDITION: Arguments to CMake's if command which may be used to hide the plugin for certain platforms or other reasons. If the expression is false, the module is completely ignored.
  • REQUIRES_MODULES: If the plugin is enabled, these modules will be listed as those required to build the enabled plugins.

Definition at line 60 of file ParaViewPlugin.cmake.

◆ paraview_plugin_scan()

function paraview_plugin_scan ( )

.md

Scanning plugins

Once the paraview.plugin files have been found, they need to be scanned to determine which should be built. Generally, plugins should be scanned first in order to use the REQUIRES_MODULES list to enable them during the scan for their required modules.

PLUGIN_FILES <file>...
PROVIDES_PLUGINS <variable>
[ENABLE_BY_DEFAULT <ON|OFF>]
[HIDE_PLUGINS_FROM_CACHE <ON|OFF>]
[REQUIRES_MODULES <variable>])
  • PLUGIN_FILES: (Required) The list of plugin files to scan.
  • PROVIDES_PLUGINS: (Required) This variable contains a list of the plugins to be built.
  • ENABLE_BY_DEFAULT: (Defaults to OFF) Whether to enable plugins by default or not.
  • HIDE_PLUGINS_FROM_CACHE: (Defaults to OFF) Whether to display options to enable and disable plugins in the cache or not.
  • REQUIRES_MODULES: The list of modules required by the enabled plugins.

Definition at line 118 of file ParaViewPlugin.cmake.

◆ paraview_plugin_build()

function paraview_plugin_build ( )

.md

Building plugins

Once all plugins have been scanned, they need to be built.

PLUGINS <plugin>...
[TARGET <target>]
[AUTOLOAD <plugin>...]
[RUNTIME_DESTINATION <destination>]
[LIBRARY_DESTINATION <destination>]
[LIBRARY_SUBDIRECTORY <subdirectory>]
[PLUGINS_FILE_NAME <filename>])
  • PLUGINS: (Required) The list of plugins to build. May be empty.
  • AUTOLOAD: A list of plugins to mark for autoloading.
  • TARGET: (Recommended) The name of an interface target to generate. This provides. an initialization function <TARGET>_initialize which initializes static plugins. The function is provided, but is a no-op for shared plugin builds.
  • RUNTIME_DESTINATION: (Defaults to ${CMAKE_INSTALL_BINDIR}) Where to install runtime files.
  • LIBRARY_DESTINATION: (Defaults to ${CMAKE_INSTALL_LIBDIR}) Where to install modules built by plugins.
  • LIBRARY_SUBDIRECTORY: (Defaults to "") Where to install the plugins themselves. Each plugin lives in a directory of its name in <RUNTIME_DESTINATION>/<LIBRARY_SUBDIRECTORY> (for Windows) or <LIBRARY_DESTINATION>/<LIBRARY_SUBDIRECTORY> for other platforms.
  • PLUGINS_FILE_NAME: The name of the XML plugin file to generate for the built plugins. This file will be placed under <LIBRARY_DESTINATION>/<LIBRARY_SUBDIRECTORY>. It will be installed with the plugin component.

Definition at line 274 of file ParaViewPlugin.cmake.

◆ paraview_add_plugin()

function paraview_add_plugin ( name  )

.md

Adding a plugin

TODO: Describe.

[REQUIRED_ON_SERVER] [REQUIRED_ON_CLIENT]
VERSION <version>
[MODULE_FILES <vtk.module>...]
[MODULE_ARGS <arg>...]
[MODULES <module>...]
[SOURCES <source>...]
[SERVER_MANAGER_XML <xml>...]
[UI_INTERFACES <interface>...]
[UI_RESOURCES <resource>...]
[UI_FILES <file>...]
[PYTHON_MODULES <module>...]
[REQUIRED_PLUGINS <plugin>...]
[EULA <eula>]
[XML_DOCUMENTATION <ON|OFF>]
[DOCUMENTATION_DIR <directory>]
[EXPORT <export>]
[FORCE_STATIC <ON|OFF>])
  • REQUIRED_ON_SERVER: The plugin is required to be loaded on the server for proper functionality.
  • REQUIRED_ON_CLIENT: The plugin is required to be loaded on the client for proper functionality.
  • VERSION: (Required) The version number of the plugin.
  • MODULE_FILES: Paths to vtk.module files describing modules to include in the plugin.
  • MODULE_ARGS: Arguments to pass to vtk_module_build for included modules.
  • MODULES: Modules to include in the plugin. These modules will be wrapped using client server and have their server manager XML files processed.
  • SOURCES: Source files for the plugin.
  • SERVER_MANAGER_XML: Server manager XML files for the plugin.
  • UI_INTERFACES: Interfaces to initialize. See the plugin interfaces section for more details.
  • UI_RESOURCES: Qt resource files to include with the plugin.
  • UI_FILES: Qt .ui files to include with the plugin.
  • PYTHON_MODULES: Python modules to embed into the plugin.
  • REQUIRED_PLUGINS: Plugins which must be loaded for this plugin to function. These plugins do not need to be available at build time and are therefore their existence is not checked here.
  • EULA: A file with content to display as an end-user license agreement before the plugin is initialized at runtime.
  • XML_DOCUMENTATION: (Defaults to ON) If set, documentation will be generated for the associated XML files.
  • DOCUMENTATION_DIR: If specified, *.html, *.css, *.png, and *.jpg files in this directory will be copied and made available to the documentation.
  • EXPORT: If provided, the plugin will be added to the given export set.
  • FORCE_STATIC: (Defaults to OFF) If set, the plugin will be built statically so that it can be embedded into an application.

Definition at line 518 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_property_widget()

function paraview_plugin_add_property_widget ( )

.md

Plugin interfaces

ParaView plugins may satisfy a number of interfaces. These functions all take a INTERFACES argument which takes the name of a variable to set with the name of the interface generated. This variable's should be passed to paraview_add_plugin's UI_INTERFACES argument. .md

Property widget

TODO: What is a property widget?

KIND <WIDGET|GROUP_WIDGET|WIDGET_DECORATOR>
TYPE <type>
CLASS_NAME <name>
INTERFACES <variable>
SOURCES <variable>)
  • KIND: The kind of widget represented.
  • TYPE: The name of the property type.
  • CLASS_NAME: The name of the property widget class.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1001 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_dock_window()

function paraview_plugin_add_dock_window ( )

.md

Dock window

TODO: What is a dock window?

CLASS_NAME <name>
[DOCK_AREA <Right|Left|Top|Bottom>]
INTERFACES <variable>
SOURCES <variable>)
  • CLASS_NAME: The name of the dock window class.
  • DOCK_AREA: (Default Left) Where to dock the window within the application.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1087 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_action_group()

function paraview_plugin_add_action_group ( )

.md

Action group

TODO: What is an action group?

CLASS_NAME <name>
GROUP_NAME <name>
INTERFACES <variable>
SOURCES <variable>)
  • CLASS_NAME: The name of the action group class.
  • GROUP_NAME: The name of the action group.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1165 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_toolbar()

function paraview_plugin_add_toolbar ( )

.md

Toolbar

TODO: What is a toolbar?

CLASS_NAME <name>
INTERFACES <variable>
SOURCES <variable>)
  • CLASS_NAME: The name of the toolbar class.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1233 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_view_frame_action_group()

function paraview_plugin_add_view_frame_action_group ( )

.md

View frame action group

TODO: What is a view frame action group?

CLASS_NAME <name>
INTERFACES <variable>
SOURCES <variable>)
  • CLASS_NAME: The name of the view frame action group class.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1296 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_auto_start()

function paraview_plugin_add_auto_start ( )

.md

Auto start

TODO: What is an auto start?

CLASS_NAME <name>
[STARTUP <function>]
[SHUTDOWN <function>]
INTERFACES <variable>
SOURCES <variable>)
  • CLASS_NAME: The name of the auto start class.
  • STARTUP: (Defaults to startup) The name of the method to call on startup.
  • SHUTDOWN: (Defaults to shutdown) The name of the method to call on shutdown.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1365 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_tree_layout_strategy()

function paraview_plugin_add_tree_layout_strategy ( )

.md

Tree layout strategy

TODO: What is a tree layout strategy?

STRATEGY_TYPE <type>
STRATEGY_LABEL <label>
INTERFACES <variable>
SOURCES <variable>)
  • STRATEGY_TYPE: The name of the tree layout strategy class.
  • STRATEGY_LABEL: The label to use for the strategy.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

Definition at line 1438 of file ParaViewPlugin.cmake.

◆ paraview_plugin_add_proxy()

function paraview_plugin_add_proxy ( )

.md

Proxy

TODO: What is a proxy?

NAME <name>
INTERFACES <variable>
SOURCES <variable>
[PROXY_TYPE <type>
[CLASS_NAME <class>]
XML_GROUP <group>
<XML_NAME|XML_NAME_REGEX> <name>]...)
  • NAME: The name of the proxy.
  • INTERFACES: The name of the generated interface.
  • SOURCES: The source files generated by the interface.

At least one PROXY_TYPE must be specified. Each proxy type must be given an XML_GROUP and either an XML_NAME or XML_NAME_REGEX. If CLASS_NAME is not given, the PROXY_TYPE name is used instead.

Definition at line 1514 of file ParaViewPlugin.cmake.