Workspace 6.21.5
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Settings Class Reference

Singleton class holding the settings for the Workspace. More...

#include <Workspace/Application/settings.h>

Public Types

enum  ConnectionRackVisibilityTrigger { ShowOnOperationClick , ShowOnOperationHover }
 
enum  DependencyVisibilityPolicy { HideDependenciesIfMiniOperation = 0x01 , ShowDependenciesAlways = 0x02 }
 
using LogMessageCategoryMap = QMap< QString, bool >
 
enum  MiniOperationVisibilityPolicy { ShowMiniOperations , FadeMiniOperations , HideMiniOperations }
 
enum  PluginAutoLoadPolicy {
  AutoLoadNoPlugins , AutoLoadAllPlugins , AutoLoadAllPluginsExceptExcluded , AutoLoadOnlySpecifiedPlugins ,
  AutoLoadOnlySchedulers
}
 
enum  PropertiesOnCreatePolicy { PropertiesNever , PropertiesOnOperationCreate , PropertiesOnUserConfigurableOperationCreate }
 
enum  SettingsVariable {
  R , Matlab , FFmpeg , CMakeGui ,
  Python , VisualStudioCmdPrompt , VisualStudioIDE , SampleWorkflows ,
  VisualStudioCmdPromptParameters
}
 
enum  TimestampFormat { UTC , Local , LocalTime , Elapse }
 
enum class  WorkflowTree {
  ShowInputs = 0 , ShowOutputs , ShowDependencies , ShowGlobalNames ,
  ShowUuids , ShowExternalFilePaths , SortInputsOutputsAlphabetically , AutoExpandOnFilterChange ,
  FilterSelection , ShowOperations , ShowOpTypes , Unknown = 200
}
 

Public Member Functions

 ~Settings ()
 
void addPluginPath (const QString &path)
 
void addToWorkspaceCollection (const QString &path, bool saveable=true)
 
void clearWorkflowTreePresets () const
 
bool getAnnouncementCheckEnabled () const
 
const QString & getApplicationName () const
 
DataExecution::SerializedItem getApplicationSettings ()
 
int getArrowLocation () const
 
bool getAutoSave ()
 
int getAutoSaveInterval ()
 
const QString & getBackupDirectory ()
 
bool getBypass () const
 
bool getCaptureMiniDump () const
 
ConnectionRackVisibilityTrigger getConnectionRackVisibilityTrigger () const
 
DependencyVisibilityPolicyFlags getDependencyVisibilityPolicy () const
 
QString getDependencyVisibilityShortcutKeySequence () const
 
bool getDeprecatedOperationsInCatalogueVisibility () const
 
QMap< QString, QString > getDistributedLog (const QString &sinkName) const
 
int getDockArea ()
 
QString getDumpOutputFolder () const
 
bool getExecProfileAllOpsIsEnabled () const
 Retrieves the status of Enable Execution Profiling for all Operations.
 
bool getForwardProfilingEventsToDistributedLogManager () const
 
bool getForwardTextLogToDistributedLogManager () const
 
bool getGlobalNameDialogWidgetListVisibility () const
 
QString getInstallBasePath () const
 
int getLastAnnouncementId () const
 
QString getLastStartupErrorCause () const
 
bool getLoadPlugins () const
 
bool getLogExecutionTimes () const
 
LogMessageCategoryMap getLogMessageCategoryMap () const
 
bool getLogOperationLinksAlways () const
 
bool getLogOperationLinksVerbosely () const
 
bool getLogPluginLoadErrors () const
 
bool getLogTimestamp () const
 
TimestampFormat getLogTimestampFormat () const
 
MiniOperationVisibilityPolicy getMiniOperationVisibilityPolicy () const
 
bool getMouseWheelZoomInForwards () const
 
bool getNotifyProgress () const
 
bool getOperationTimelineWidgetIsEnabled () const
 Retrieves the status of the operation timeline widget.
 
bool getPerformanceTimingEnabled () const
 
PluginAutoLoadPolicy getPluginAutoLoadPolicy () const
 
bool getPluginErrorTracking () const
 
const QStringListgetPluginNamesToExclude () const
 
const QStringListgetPluginPaths () const
 
const QStringListgetPluginPathsToExclude () const
 
DataExecution::SerializedItem getPluginSettings (const QString &pluginName)
 
const QStringListgetPluginsToAutoLoad () const
 
const QUuid & getProcessUuid () const
 
QString getProcessUuidString () const
 
bool getProfilerInfoLocalBroadcast () const
 
PropertiesOnCreatePolicy getPropertiesOnCreatePolicy () const
 
bool getQuiet () const
 
bool getSchedulerLoggingIsEnabled () const
 
const QString & getServiceName () const
 
const QString & getSettingsDirectory () const
 
const QString & getSettingsFileName () const
 
bool getSettingsVariable (const QString &name, QString &value) const
 
QString getSettingsVariable (SettingsVariable type) const
 
QStringList getSettingsVariableNameList () const
 
bool getShowConnectionPortLabels () const
 
bool getShowDeprecatedMessages () const
 
bool getSkipLoadingDesigners () const
 
QString getSoundEffectPath (SoundEffect effect) const
 
int getSoundEffectVolume () const
 
bool getSplitLongLogLines () const
 
const QStringListgetSymbolPathFolders () const
 
bool getToggleDockableWidget () const
 
bool getToggleOpProgressBars () const
 
bool getTooltipEnabled () const
 
template<typename T >
bool getUserInterfaceSetting (UiSetting setting, T &value)
 
QString getVersionSampleFilesCopyDialogDisplayed () const
 
bool getWidgetsTriggerWorkflowUpdates () const
 
QStringList getWorkflowTreePresetNames () const
 
QVariant getWorkflowTreeSetting (const QString &presetName, WorkflowTree setting) const
 
QVariant getWorkflowTreeSetting (WorkflowTree setting) const
 
QStringList getWorkspaceCollectionPaths (bool includeNonSaveable=true) const
 
bool getWorkspaceServerLoggingIsEnabled () const
 
bool getWorkspaceStatusTableIsEnabled () const
 Retrieves the status of the workspace status table.
 
bool isLoaded ()
 
bool isServer () const
 
bool load ()
 
void removeFromWorkspaceCollection (const QString &path)
 
void removePluginPath (const QString &path)
 
bool save ()
 
void setAnnouncementCheckEnabled (bool enable)
 
void setApplicationName (const QString &appName)
 
void setArrowLocation (int arrowLocation)
 
void setAutoSave (bool b)
 
void setAutoSaveInterval (int interval)
 
void setBypass (bool b)
 
void setCaptureMiniDump (bool val)
 
void setConnectionRackVisibilityTrigger (ConnectionRackVisibilityTrigger trigger)
 
void setDependencyVisibilityPolicy (DependencyVisibilityPolicyFlags policy)
 
void setDeprecatedOperationsInCatalogueVisibility (bool visible)
 
void setDistributedLog (const QString &sinkName, const QMap< QString, QString > &valueMap)
 
void setDockArea (int area)
 
void setDumpOutputFolder (const QString &dumpOutputFolder)
 
void setExecProfileAllOpsIsEnabled (bool enabled)
 Sets the status of Enable Execution Profiling for all Operations.
 
void setForwardProfilingEventsToDistributedLogManager (bool forward)
 
void setForwardTextLogToDistributedLogManager (bool forward)
 
void setGlobalNameDialogWidgetListVisibility (bool visible)
 
void setInstallBasePath (const QString &p)
 
void setIsServer (bool isServer)
 
void setLastAnnouncementId (int id)
 
void setLastStartupErrorCause (const QString &pluginPath)
 
void setLoadPlugins (bool b)
 
void setLogExecutionTimes (bool b)
 
void setLogMessageCategoryMap (const LogMessageCategoryMap &categories)
 
void setLogOperationLinksAlways (bool b)
 
void setLogOperationLinksVerbosely (bool b)
 
void setLogPluginLoadErrors (bool b)
 
void setLogTimestamp (bool b)
 
void setLogTimestampFormat (TimestampFormat format)
 
void setMiniOperationVisibilityPolicy (MiniOperationVisibilityPolicy p)
 
void setMouseWheelZoomInForwards (bool b)
 
void setNotifyProgress (bool b)
 
void setOperationTimelineWidgetIsEnabled (bool enabled)
 Sets the status of the operation timeline widget.
 
void setPerformanceTimingEnabled (bool timingEnabled)
 
void setPluginAutoLoadPolicy (PluginAutoLoadPolicy policy)
 
void setPluginErrorTracking (bool tracking)
 
void setPluginNamesToExclude (const QStringList &pluginNames)
 
void setPluginPaths (const QStringList &paths)
 
void setPluginPathsToExclude (const QStringList &paths)
 
void setPluginsToAutoLoad (const QStringList &pluginNames)
 
void setProfilerInfoLocalBroadcast (bool allowBroadcast)
 
void setPropertiesOnCreatePolicy (PropertiesOnCreatePolicy policy)
 
void setQuiet (bool b)
 
void setSchedulerLoggingIsEnabled (bool b)
 
void setServiceName (const QString &serviceName)
 
void setSettingsDirectory (const QString &dir)
 
void setSettingsFileName (const QString &fileName)
 
bool setSettingsVariable (const QString &name, const QString &value)
 
void setSettingsVariable (SettingsVariable type, const QString &value)
 
void setShowConnectionPortLabels (bool b)
 
void setShowDeprecatedMessages (bool b)
 
void setSkipLoadingDesigners (bool skipLoadingDesigners)
 
void setSoundEffectPath (SoundEffect effect, const QString &path)
 
void setSoundEffectVolume (int volume)
 
void setSplitLongLogLines (bool)
 
void setSymbolPathFolders (const QStringList &folders)
 
bool settingsFileExists () const
 
void setToggleDockableWidget (bool b)
 
void setToggleOpProgressBars (bool checked)
 
void setTooltipEnabled (bool enabled)
 
template<typename T >
bool setUserInterfaceSetting (UiSetting setting, const T &value)
 
void setVersionSampleFilesCopyDialogDisplayed (const QString &version)
 
void setWidgetsTriggerWorkflowUpdates (bool widgetsTriggerUpdates)
 
void setWorkflowTreeSetting (const QString &presetName, WorkflowTree setting, const QVariant &value) const
 
void setWorkflowTreeSetting (WorkflowTree setting, const QVariant &value) const
 
void setWorkspaceCollectionPaths (const QStringList &paths)
 
void setWorkspaceServerLoggingIsEnabled (bool b)
 
void setWorkspaceStatusTableIsEnabled (bool enabled)
 Sets the status of the workspace status table.
 

Static Public Member Functions

static SettingsgetInstance ()
 

Detailed Description

Plugins can create their own settings class. The Settings class is only meant for the core workspace itself and should be considered read-only to all other code (ie all plugins).

Member Typedef Documentation

◆ LogMessageCategoryMap

using LogMessageCategoryMap = QMap<QString, bool>

Member Enumeration Documentation

◆ ConnectionRackVisibilityTrigger

Type of trigger for when to show connection racks.

Enumerator
ShowOnOperationClick 
ShowOnOperationHover 

◆ DependencyVisibilityPolicy

Dependency port visibility modes.

Enumerator
HideDependenciesIfMiniOperation 
ShowDependenciesAlways 

◆ MiniOperationVisibilityPolicy

WorkspaceInput / WorkspaceOutput / Variable visibility modes

Enumerator
ShowMiniOperations 
FadeMiniOperations 
HideMiniOperations 

◆ PluginAutoLoadPolicy

Specifies how PluginManager will look for and load plugins automatically when it is created (typically during application startup). These options only take effect if set before the first use of PluginManager. Note that none of these options affect the behaviour of PluginManager::loadPlugin() or PluginManager::addPlugin() but rather only the plugins that PluginManager will automatically load by itself.

Enumerator
AutoLoadNoPlugins 

PluginManager should not auto-load any plugins. Only the built-in plugin will be loaded automatically (it cannot be disabled).

AutoLoadAllPlugins 

Any plugin that PluginManager finds can be loaded automatically.

AutoLoadAllPluginsExceptExcluded 

Any plugin that PluginManager finds can be loaded automatically unless it has been specifically excluded by calling setPluginNames/PathsToExclude(). The built-in plugin cannot be excluded.

AutoLoadOnlySpecifiedPlugins 

PluginManager can only auto-load a plugin if it appears in the list provided to setPluginsToAutoLoad(). The built-in plugin will always be loaded.

AutoLoadOnlySchedulers 

PluginManager should not auto-load any plugins. Only the built-in plugin and any plugins with schedulers/authenticators will be loaded automatically.

◆ PropertiesOnCreatePolicy

Controls when / if the properties dialog is displayed when operations are created.

Enumerator
PropertiesNever 
PropertiesOnOperationCreate 
PropertiesOnUserConfigurableOperationCreate 

◆ SettingsVariable

Settings variables. The user can not remove or rename these variables as they are used as defaults in workspace-gui and core operations.

Enumerator
Matlab 
FFmpeg 
CMakeGui 
Python 
VisualStudioCmdPrompt 
VisualStudioIDE 
SampleWorkflows 
VisualStudioCmdPromptParameters 

◆ TimestampFormat

Enumerator
UTC 
Local 
LocalTime 
Elapse 

◆ WorkflowTree

enum class WorkflowTree
strong
Enumerator
ShowInputs 
ShowOutputs 
ShowDependencies 
ShowGlobalNames 
ShowUuids 
ShowExternalFilePaths 
SortInputsOutputsAlphabetically 
AutoExpandOnFilterChange 
FilterSelection 
ShowOperations 
ShowOpTypes 
Unknown 

Constructor & Destructor Documentation

◆ ~Settings()

~Settings ( )
default

Member Function Documentation

◆ addPluginPath()

void addPluginPath ( const QString &  path)
Parameters
pathThe plugin path to add to the list. It can be either a plugin library or a directory to search (non-recursively) for plugin libraries.

This function only affects the plugin auto-load behaviour of PluginManager when the PluginManager singleton is constructed. It will have no effect if called after the first use of PluginManager.

See also
removePluginPath(), setPluginPaths()

◆ addToWorkspaceCollection()

void addToWorkspaceCollection ( const QString &  path,
bool  saveable = true 
)
Parameters
pathThe path to add to the workspace collection. It can be an absolute path to a local file, a URL or a Qt resource path. In all cases, it should point to a typical workspace XML file which can be loaded just like any other workspace file. Alternatively, the path can also be a directory on the local file system, in which case all XML files in that directory will be scanned and those that appear to be workspace XML files will be added to the collection. The directory is not scanned recursively.
saveableIf true, then the specified path is added to the permanent set of paths stored in the workspace settings. If false, then the path will be used only for this running instance and will be discarded when the application terminates.
See also
removeFromWorkspaceCollection(), setWorkspaceCollectionPaths()

◆ clearWorkflowTreePresets()

void clearWorkflowTreePresets ( ) const

◆ getAnnouncementCheckEnabled()

bool getAnnouncementCheckEnabled ( ) const

◆ getApplicationName()

const QString & getApplicationName ( ) const
Returns
The name being used to identify this application's settings.
See also
setApplicationName()

◆ getApplicationSettings()

DataExecution::SerializedItem getApplicationSettings ( )
Returns
A modifiable handle to the application-specific settings item. If the application-specific settings tree is not valid, a null item will be returned. No attempt should be made to modify a returned null item, so callers should always test for this before using the returned value. The returned handle will remain valid until load() is called, since a load forces the current settings tree to be discarded.

If the application name has been set, then an application-specific settings tree is available for loading and saving settings specific to that application. A separate settings file will be created for the application so that it does not interfere with the generic workspace settings or with other applications' settings. Applications are allowed to store whatever data they want, using whatever hierarchy they deem appropriate. When the settings are loaded by the application, the application-specific settings are also loaded. If the applciation name is set after the settings have already been loaded, then the application-specific settings are loaded immediately as part of setting the application name. Similarly, when the settings are saved, the application-specific settings are also saved.

See also
setApplicationName(), getApplicationName()

◆ getArrowLocation()

int getArrowLocation ( ) const

◆ getAutoSave()

bool getAutoSave ( )
Returns
sends current default state the auto-save feature
See also
setAutoSave()

◆ getAutoSaveInterval()

int getAutoSaveInterval ( )
Returns
Current auto-save interval
See also
setAutoSaveInterval()

◆ getBackupDirectory()

const QString & getBackupDirectory ( )
Returns
The location that backup files are stored in.

◆ getBypass()

bool getBypass ( ) const
Returns
True if the load() and save() functions will be bypassed when called.
See also
setBypass()

◆ getCaptureMiniDump()

bool getCaptureMiniDump ( ) const
Returns
Whether to allow capturing unhandled exception and create mini dump

◆ getConnectionRackVisibilityTrigger()

Settings::ConnectionRackVisibilityTrigger getConnectionRackVisibilityTrigger ( ) const
Returns
The trigger type, indicating when connection racks are shown / hidden.

◆ getDependencyVisibilityPolicy()

Settings::DependencyVisibilityPolicyFlags getDependencyVisibilityPolicy ( ) const
Returns
The visibility policy for dependency ports on operations.

◆ getDependencyVisibilityShortcutKeySequence()

QString getDependencyVisibilityShortcutKeySequence ( ) const
Returns

◆ getDeprecatedOperationsInCatalogueVisibility()

bool getDeprecatedOperationsInCatalogueVisibility ( ) const
Returns
True if deprecated operations are visible in the operation catalogue.
See also
setDeprecatedOperationsInCatalogueVisibility()

◆ getDistributedLog()

QMap< QString, QString > getDistributedLog ( const QString &  sinkName) const
Parameters
sinkNameName of the log sink.
Returns
The map of settings entries the supplied sinkName.

◆ getDockArea()

int getDockArea ( )
Returns
current default creation area
See also
setDockArea()

◆ getDumpOutputFolder()

QString getDumpOutputFolder ( ) const
Returns
Path of where dump should write to

◆ getExecProfileAllOpsIsEnabled()

bool getExecProfileAllOpsIsEnabled ( ) const
Returns
True if keeping track of the execution time for all operations.
See also
setExecProfileAllOpsIsEnabled()

◆ getForwardProfilingEventsToDistributedLogManager()

bool getForwardProfilingEventsToDistributedLogManager ( ) const
Returns
true if the process is going to forward Profiling events from LogManager are all forwarded to DistributedLogManager.

◆ getForwardTextLogToDistributedLogManager()

bool getForwardTextLogToDistributedLogManager ( ) const
Returns
true if the process is going to forward text log from LogManager to DistributedLogManager.

◆ getGlobalNameDialogWidgetListVisibility()

bool getGlobalNameDialogWidgetListVisibility ( ) const

◆ getInstallBasePath()

QString getInstallBasePath ( ) const
Returns
The install base path. If not explicitly set by the client application, this will default to the parent directory of the application executable as determined by Qt. Clients can assume that there is no trailing path separator.

The install base path is supposed to represent the directory below which all the workspace application's files are installed. Typical subdirectories below it will be bin, lib, images, styles, and so on. If the install base path is incorrectly set, many aspects of the workspace will not function properly, particularly the loading of workspace plugins.

See also
setInstallBasePath()

◆ getInstance()

Settings & getInstance ( )
static
Returns
The global settings for the workspace itself.

Plugin code should not change any of the settings. This should only be done by the workspace code. Plugin code is, however, allowed to read all settings.

◆ getLastAnnouncementId()

int getLastAnnouncementId ( ) const

◆ getLastStartupErrorCause()

QString getLastStartupErrorCause ( ) const
Returns
Path of plugin that caused crash on last startup

◆ getLoadPlugins()

bool getLoadPlugins ( ) const
inline

◆ getLogExecutionTimes()

bool getLogExecutionTimes ( ) const
Returns
True if execution times will be logged.
See also
setLogExecutionTimes()

◆ getLogMessageCategoryMap()

Settings::LogMessageCategoryMap getLogMessageCategoryMap ( ) const
Returns
A map of category name -> enabled flag.
See also
setLogMessageCategoryMap()

◆ getLogOperationLinksAlways()

bool getLogOperationLinksAlways ( ) const
Returns
Whether or not operation links are automatically appended whenever an operation logs information.

◆ getLogOperationLinksVerbosely()

bool getLogOperationLinksVerbosely ( ) const

◆ getLogPluginLoadErrors()

bool getLogPluginLoadErrors ( ) const
Returns
True if error messages should be logged when a library fails to be loaded as a workspace plugin during the startup sequence. This would normally only be useful to plugin authors during development.
See also
setLogPluginLoadErrors()

◆ getLogTimestamp()

bool getLogTimestamp ( ) const
Returns
True if log timestamp will be shown in log viewer.
See also
setLogTimestamp(), setLogTimestampFormat(), getLogTimestampFormat()

◆ getLogTimestampFormat()

Settings::TimestampFormat getLogTimestampFormat ( ) const
Returns
format of log timestamp.
See also
setLogTimestampFormat(), setLogTimestamp(), getLogTimestamp()

◆ getMiniOperationVisibilityPolicy()

Settings::MiniOperationVisibilityPolicy getMiniOperationVisibilityPolicy ( ) const
Returns
The visibility policy for WorkspaceInput, WorkspaceOutput and Variable operation types.

◆ getMouseWheelZoomInForwards()

bool getMouseWheelZoomInForwards ( ) const
Returns
True if moving the mouse wheel forwards results in zooming in, or false if it results in zooming out.
See also
setMouseWheelZoomInForwards()

◆ getNotifyProgress()

bool getNotifyProgress ( ) const
Returns
True if operations are allowed to issue progress notifications.
See also
setNotifyProgress()

◆ getOperationTimelineWidgetIsEnabled()

bool getOperationTimelineWidgetIsEnabled ( ) const
Returns
True if the operation timeline widget is enabled; false otherwise.
See also
setOperationTimelineWidgetIsEnabled()

◆ getPerformanceTimingEnabled()

bool getPerformanceTimingEnabled ( ) const

◆ getPluginAutoLoadPolicy()

Settings::PluginAutoLoadPolicy getPluginAutoLoadPolicy ( ) const
Returns
The currently set plugin auto-loading policy. Note that it cannot be safely assumed that this was the policy used by PluginManager when it was constructed, since setPluginAutoLoadPolicy() may have been called after the fact. This function exists primarily for PluginManager itself to use during its construction.
See also
setPluginAutoLoadPolicy()

◆ getPluginErrorTracking()

bool getPluginErrorTracking ( ) const
Returns
whether pluginmanager should track error plugins to help prevent them from loading in the next run.

◆ getPluginNamesToExclude()

const QStringList & getPluginNamesToExclude ( ) const
Returns
The plugin names of the plugin libraries to exclude from PluginManager's plugin auto-loading process.

◆ getPluginPaths()

const QStringList & getPluginPaths ( ) const
Returns
The paths for plugins to load or directories to search when PluginManager loads plugins.
See also
setPluginPaths(), addPluginPath(), removePluginPath()

◆ getPluginPathsToExclude()

const QStringList & getPluginPathsToExclude ( ) const
Returns
The file names of the plugin libraries to exclude from PluginManager's plugin auto-loading process.

◆ getPluginSettings()

DataExecution::SerializedItem getPluginSettings ( const QString &  pluginName)
Parameters
pluginNameThe name of the plugin whose settings are to be retrieved. This name must match exactly with the value returned from the plugin's WorkspacePlugin::getName() function and the plugin must already be loaded (ie already added to the PluginManager).
Returns
A modifiable handle to the item in the settings tree for the specified plugin. If no such handle was originally present in the settings tree, one will be created. If the current settings tree is not valid, a null item will be returned. No attempt should be made to modify a returned null item, so callers should always test for this before using the returned value. The returned handle will remain valid until load() is called, since a load forces the current settings tree to be discarded.

All plugins get their own branch of the tree which is not shared with any other plugin, nor with the workspace code itself. Plugins are allowed to store whatever data they want, using whatever hierarchy they deem appropriate. When the settings are loaded by the workspace during startup, the plugin data is also loaded automatically. Similarly, when the settings are saved, all the plugin data is also saved. It is allowable for plugins to call save() if they make changes to the settings and want to ensure that the data is written to the settings file, but this would normally be left to the workspace application to handle.

◆ getPluginsToAutoLoad()

const QStringList & getPluginsToAutoLoad ( ) const
Returns
The list of plugin names that PluginManager should auto-load if the auto-loading policy is set to AutoLoadOnlySpecifiedPlugins.
See also
setPluginsToAutoLoad()

◆ getProcessUuid()

const QUuid & getProcessUuid ( ) const
Returns
The UUID being used to identify this process.

◆ getProcessUuidString()

QString getProcessUuidString ( ) const
inline

◆ getProfilerInfoLocalBroadcast()

bool getProfilerInfoLocalBroadcast ( ) const
Returns
Whether the profiler info is being broadcast by Execution Profiler.

◆ getPropertiesOnCreatePolicy()

Settings::PropertiesOnCreatePolicy getPropertiesOnCreatePolicy ( ) const
Returns
the policy for when properties dialogs are created.

◆ getQuiet()

bool getQuiet ( ) const
Returns
True if no informational message should be output whenever a workspace plugin is added to the PluginManager.
See also
setQuiet()

◆ getSchedulerLoggingIsEnabled()

bool getSchedulerLoggingIsEnabled ( ) const
Returns
True if scheduler logging is enabled.
See also
setSchedulerLoggingIsEnabled()

◆ getServiceName()

const QString & getServiceName ( ) const
Returns
The name being used to identify which service it belongs to.
See also
setServiceName()

◆ getSettingsDirectory()

const QString & getSettingsDirectory ( ) const
Returns
The directory where the main workspace settings file is located.

◆ getSettingsFileName()

const QString & getSettingsFileName ( ) const
Returns
The file name of the main workspace settings file. It is assumed that it is located in the directory returned by getSettingsDirectory().

◆ getSettingsVariable() [1/2]

bool getSettingsVariable ( const QString &  name,
QString &  value 
) const
Parameters
nameName of settings variable.
valueOutput parameter for storing value of settings variable.
Returns
Returns false if the user name empty or the settings variable does not exist.

◆ getSettingsVariable() [2/2]

QString getSettingsVariable ( SettingsVariable  type) const
Parameters
typeType of system settings variable.
Returns
Value of settings variable.

◆ getSettingsVariableNameList()

QStringList getSettingsVariableNameList ( ) const
Returns
A string list containing all names of settings variables.

◆ getShowConnectionPortLabels()

bool getShowConnectionPortLabels ( ) const
Returns
True if labels are to be displayed next to visible connection ports attached to operations.
See also
setShowConnectionPortLabels()

◆ getShowDeprecatedMessages()

bool getShowDeprecatedMessages ( ) const

◆ getSkipLoadingDesigners()

bool getSkipLoadingDesigners ( ) const
Returns
Whether designers should be loaded or not.
See also
setSkipLoadingDesigners()

◆ getSoundEffectPath()

QString getSoundEffectPath ( SoundEffect  effect) const
Parameters
effectEffect type
Returns
Path to the sound effect file.
See also
setSoundEffectPath

◆ getSoundEffectVolume()

int getSoundEffectVolume ( ) const
Returns
Sound effect volume (0 - 100)
See also
setSoundEffectVolume

◆ getSplitLongLogLines()

bool getSplitLongLogLines ( ) const
Returns
split long log lines

◆ getSymbolPathFolders()

const QStringList & getSymbolPathFolders ( ) const
Returns
Paths of where symbol files are located

◆ getToggleDockableWidget()

bool getToggleDockableWidget ( ) const
Returns
True if DisplayWidget is set to dockable
See also
setToggleDockableWidget()

◆ getToggleOpProgressBars()

bool getToggleOpProgressBars ( ) const

◆ getTooltipEnabled()

bool getTooltipEnabled ( ) const
Returns
True if canvas tooltips are enabled
See also
setTooltipEnabled

◆ getUserInterfaceSetting()

bool getUserInterfaceSetting ( UiSetting  setting,
T &  value 
)
inline

◆ getVersionSampleFilesCopyDialogDisplayed()

QString getVersionSampleFilesCopyDialogDisplayed ( ) const

◆ getWidgetsTriggerWorkflowUpdates()

bool getWidgetsTriggerWorkflowUpdates ( ) const
Returns
True if widgets should trigger updates on the workflow.
See also
setWidgetsTriggerWorkflowUpdates

◆ getWorkflowTreePresetNames()

QStringList getWorkflowTreePresetNames ( ) const

◆ getWorkflowTreeSetting() [1/2]

QVariant getWorkflowTreeSetting ( const QString &  presetName,
WorkflowTree  setting 
) const
Parameters
presetNamepreset identifier
settingWorkflow tree setting type.
Returns
The value of the supplied setting.

◆ getWorkflowTreeSetting() [2/2]

QVariant getWorkflowTreeSetting ( WorkflowTree  setting) const
Returns
The value of the supplied setting.

◆ getWorkspaceCollectionPaths()

QStringList getWorkspaceCollectionPaths ( bool  includeNonSaveable = true) const
Parameters
includeNonSaveableIf true, then both saveable and non-saveable paths will be returned. When false, only the saveable paths are returned. This would mostly be used for code that needs to configure the collection paths and which will eventually cause the settings to be saved at some point.
Returns
The paths in the workspace collection.
See also
setWorkspaceCollectionPaths(), addToWorkspaceCollection(), removeFromWorkspaceCollection()

◆ getWorkspaceServerLoggingIsEnabled()

bool getWorkspaceServerLoggingIsEnabled ( ) const
Returns
True if scheduler logging is enabled.
See also
setWorkspaceServerLoggingIsEnabled()

◆ getWorkspaceStatusTableIsEnabled()

bool getWorkspaceStatusTableIsEnabled ( ) const
Returns
True if the workspace status table is enabled; false otherwise.
See also
setWorkspaceStatusTableIsEnabled()

◆ isLoaded()

bool isLoaded ( )
Returns
True if the settings have ever been loaded successfully during the lifetime of this application. Since the settings should only generally be loaded once for a given application, there is no means provided to reset the isLoaded status.

◆ isServer()

bool isServer ( ) const
Returns
true if the process is going to be a workspace-server (or similar) which is not going to execute any workflow in local scheduler. It may still schedule workflows via OOP scheduler.

◆ load()

bool load ( )

Loads the settings from the file identified by the currently set directory and file name. Any settings present in the file will overwrite the defaults. If a particular setting is not present in the file, the previous value (which is the default unless programatically changed before calling load()) will be retained.

Note
The settings should only ever be loaded once for the lifetime of a given application. Multiple failed attempts are allowed, but once a successful attempt has been made (ie isLoaded() returns true), it would be unwise to call load() again. Such extra calls to load() may affect the stability of the application, since certain application-level objects load things from the settings during startup.
Returns
True if the settings file was able to be loaded.

◆ removeFromWorkspaceCollection()

void removeFromWorkspaceCollection ( const QString &  path)
Parameters
pathThe path to remove from the workspace collection, if present.
See also
addToWorkspaceCollection(), setWorkspaceCollectionPaths()

◆ removePluginPath()

void removePluginPath ( const QString &  path)
Parameters
pathThe plugin path to remove from the list, if present.
See also
addPluginPath(), setPluginPaths()

◆ save()

bool save ( )

Saves the settings to the file identified by the currently set directory and file name. All settings are written, whether they are set to the default or something else.

The settings would normally have been previously loaded by a call to load(). While it is not an error to save before loading, doing so will discard all previous contents stored in the settings. This is mostly dangerous for plugins which store their own settings data, since the workspace knows nothing about those and will throw away all such data.

Returns
True if the settings file was able to be saved.

◆ setAnnouncementCheckEnabled()

void setAnnouncementCheckEnabled ( bool  enable)

◆ setApplicationName()

void setApplicationName ( const QString &  appName)
Parameters
appNameSpecifies a name for this application. This name should be relatively unique because it will be used as part of the name of the settings file for application-specific settings. It will often be the same as the name of the executable (without any .exe extension, etc).
See also
getApplicationName()

◆ setArrowLocation()

void setArrowLocation ( int  arrowLocation)

◆ setAutoSave()

void setAutoSave ( bool  b)
Parameters
bstate sets the auto-save feature
See also
getAutoSave()

◆ setAutoSaveInterval()

void setAutoSaveInterval ( int  interval)
Parameters
intervalsets the auto-save interval
See also
getAutoSaveInterval()

◆ setBypass()

void setBypass ( bool  b)
Parameters
bIf true, then calls to load() and save() will do nothing, but still return a success status (ie true).

Some uses of the workspace require that a known, controllable startup environment be used. An example of this would be a test case which needed to ensure that only specific plugins were loaded on startup. In order to allow this, clients can call setBypass() with b set to true. This will prevent any settings file from being loaded or saved, which not only gives the default settings, it also ensures the user's existing settings are not modified.

See also
getBypass()

◆ setCaptureMiniDump()

void setCaptureMiniDump ( bool  val)
Parameters
valWhether to allow capturing unhandled exception and create mini dump

◆ setConnectionRackVisibilityTrigger()

void setConnectionRackVisibilityTrigger ( ConnectionRackVisibilityTrigger  trigger)
Parameters
triggerThe trigger type, controlling when connection racks are shown.

◆ setDependencyVisibilityPolicy()

void setDependencyVisibilityPolicy ( DependencyVisibilityPolicyFlags  policy)
Parameters
policyThe desired visibility of dependency ports on operations.

◆ setDeprecatedOperationsInCatalogueVisibility()

void setDeprecatedOperationsInCatalogueVisibility ( bool  visible)
Parameters
visibleTrue if deprecated operations are visible in the operation catalogue.
See also
getDeprecatedOperationsInCatalogueVisibility()

◆ setDistributedLog()

void setDistributedLog ( const QString &  sinkName,
const QMap< QString, QString > &  valueMap 
)
Parameters
sinkNameName of the log sink.
valueMapMap of settings entries.

◆ setDockArea()

void setDockArea ( int  area)
Parameters
areaSets default creation area
See also
getDockArea()

◆ setDumpOutputFolder()

void setDumpOutputFolder ( const QString &  dumpOutputFolder)
Parameters
dumpOutputFoldersets a path to where dump files should write to

◆ setExecProfileAllOpsIsEnabled()

void setExecProfileAllOpsIsEnabled ( bool  enabled)
Parameters
enabledTrue if the user wants to keep track of the execution time for all operations; otherwise false.
See also
getExecProfileAllOpsIsEnabled()

◆ setForwardProfilingEventsToDistributedLogManager()

void setForwardProfilingEventsToDistributedLogManager ( bool  forward)
Parameters
forwardtrue if the process is going to forward Profiling events from LogManager are all forwarded to DistributedLogManager. Some tools and unitest cases would prefer not to forward Profiling events to DistributedLogManager. Needs to set before DistributedLogManager gets instanced.

◆ setForwardTextLogToDistributedLogManager()

void setForwardTextLogToDistributedLogManager ( bool  forward)
Parameters
forwardtrue if the process is going to forward text log from LogManager to DistributedLogManager. Some tools and unitest cases would prefer not to forward test log to DistributedLogManager. Needs to set before DistributedLogManager gets instanced.

◆ setGlobalNameDialogWidgetListVisibility()

void setGlobalNameDialogWidgetListVisibility ( bool  visible)

◆ setInstallBasePath()

void setInstallBasePath ( const QString &  p)
Parameters
pThe new install base path. No trailing path separator should be included.
Warning
No validation is performed to check whether p is a valid path or not.
See also
getInstallBasePath()

◆ setIsServer()

void setIsServer ( bool  isServer)
Parameters
isServertrue if the process is going to be a workspace-server (or similar) which is not going to execute any workflow in local scheduler. It may still schedule workflows via OOP scheduler. No ExecutionTimekeeper or profiling collection service available in this case, though a workspace-server may still help passing profiling info between schedulers. e.g. pass data from OOP scheduler and store in MongoDB scheduler.

◆ setLastAnnouncementId()

void setLastAnnouncementId ( int  id)

◆ setLastStartupErrorCause()

void setLastStartupErrorCause ( const QString &  pluginPath)
Parameters
pluginPathsets a path that will be cleared unless application crashes on startup

◆ setLoadPlugins()

void setLoadPlugins ( bool  b)
inline

◆ setLogExecutionTimes()

void setLogExecutionTimes ( bool  b)
Parameters
bIf true, then every time the workspace manages to bring all required things up to date, it will log a message to the main application log stating how long it took to perform the last update. If set to false, no such message will be logged.
Note
This setting only affects the GUI application and not batch execution.
See also
getLogExecutionTimes()

◆ setLogMessageCategoryMap()

void setLogMessageCategoryMap ( const LogMessageCategoryMap categories)
Parameters
categoriesA map of category name -> enabled flag.
See also
getLogMessageCategoryMap()

◆ setLogOperationLinksAlways()

void setLogOperationLinksAlways ( bool  b)

Whether or not operation links are automatically appended whenever an operation logs information.

See also
getLogOperationLinksAlways

◆ setLogOperationLinksVerbosely()

void setLogOperationLinksVerbosely ( bool  b)
Parameters
bIf true, when Operation links are written to the log, their ID and Path information will be included.

◆ setLogPluginLoadErrors()

void setLogPluginLoadErrors ( bool  b)
Parameters
bIf false, then no plugin load error messages will be logged if a library fails to be loaded as a workspace plugin during the startup sequence. Setting this to true can be useful when a workspace plugin fails to load due to unresolved symbols during development. It would normally be set to false for most users.
Note
Logging will not occur if getQuiet() returns true.
See also
getLogPluginLoadErrors()

◆ setLogTimestamp()

void setLogTimestamp ( bool  b)
Parameters
bIf true, all log text would display a timestamp in log viewer. If set to false, no such prefix shown in the log viewer.
Note
This setting only affects the GUI application and not batch execution.
See also
getLogTimestamp(), getLogTimestampFormat(), setLogTimestampFormat()

◆ setLogTimestampFormat()

void setLogTimestampFormat ( TimestampFormat  format)
Parameters
formatFormat of timestamp appended to log. Supported formats are: UTC display in UTC timestamp, this is default. Local display in local timestamp LocalTime display in local time and with only time Elapse display elapse since the beginning time of execution. Setting invalid formats would fallback to default.
Note
This setting only affects the GUI application and not batch execution.
See also
getLogTimestampFormat(), getLogTimestamp(), setLogTimestamp()

◆ setMiniOperationVisibilityPolicy()

void setMiniOperationVisibilityPolicy ( MiniOperationVisibilityPolicy  p)
Parameters
pThe desired visibility policy for WorkspaceInput, WorkspaceOutput and Variable operation types.

◆ setMouseWheelZoomInForwards()

void setMouseWheelZoomInForwards ( bool  b)
Parameters
bIf true, then moving the mouse wheel away from the user should result in zooming in and moving it towards the user should result in zooming out. If false, then the reverse is true.

The workspace GUI obeys this setting for zooming on the workspace itself. Workspace plugins should also obey this setting where they make use of the mouse wheel in a way which notionally corresponds to some kind of zooming (eg interacting with a 3D scene).

See also
getMouseWheelZoomInForwards()

◆ setNotifyProgress()

void setNotifyProgress ( bool  b)
Parameters
bIf true, then operations are allowed to issue progress notifications. In some cases, this can cause a noticable degradation in performance, especially when observers responding to the notifications do so in a different thread (which is what widgets would typically do). If you want to maximize performance, turn off progress notifications by setting this parameter to false.
See also
getNotifyProgress()

◆ setOperationTimelineWidgetIsEnabled()

void setOperationTimelineWidgetIsEnabled ( bool  enabled)
Parameters
enabledTrue if the operation timeline widget should be enabled; otherwise false.
See also
getOperationTimelineWidgetIsEnabled()

◆ setPerformanceTimingEnabled()

void setPerformanceTimingEnabled ( bool  timingEnabled)

◆ setPluginAutoLoadPolicy()

void setPluginAutoLoadPolicy ( Settings::PluginAutoLoadPolicy  policy)
Parameters
policySpecifies the plugin auto-load policy that PluginManager should use when it is first created.
Note
This function only has an effect if it is called before the first use of PluginManager, since it controls the plugin auto-loading behaviour used during construction of the PluginManager singleton. It would normally be called as part of command-line option processing or from within the main() function of an application.

Some applications need to limit or prescribe the plugins that can be loaded on startup, which is where setPluginAutoLoadPolicy() is useful. If setPluginAutoLoadPolicy() is not called, the default behaviour is AutoLoadAllPluginsExceptExcluded.

The plugin auto-load behaviour specified by calling this function applies only to the currently running process. No change is made to the settings file, so the function needs to be called each time the application is run to obtain the nominated behaviour.

The workspace GUI is one example where a command-line option allows the user to disable plugin loading. This in turn allows the user to start up the application and configure the settings to permanently exclude unwanted plugins. This can be particularly useful if those plugins require licenses and their failure to load might result in the application being asked to terminate.

See also
getPluginAutoLoadPolicy()

◆ setPluginErrorTracking()

void setPluginErrorTracking ( bool  tracking)
Parameters
trackingSpecifies if pluginmanager should track error plugins to help prevent them from loading in the next run.
Note
this settings lives in memory only.

By default, tracking error plugin is turned on. Changing this settings should before PluginManager instantiated to take effect.

◆ setPluginNamesToExclude()

void setPluginNamesToExclude ( const QStringList pluginNames)
Parameters
pluginNamesThe names of the plugin libraries to exclude from PluginManager's plugin auto-loading process.

◆ setPluginPaths()

void setPluginPaths ( const QStringList paths)
Parameters
pathsThe paths to load as plugins or to search for plugins when the PluginManager is created.

Some paths are automatically included by default and do not need to be included in paths.

This function only affects the plugin auto-load behaviour of PluginManager when the PluginManager singleton is constructed. It will have no effect if called after the first use of PluginManager.

See also
getPluginPaths(), addPluginPath(), removePluginPath()

◆ setPluginPathsToExclude()

void setPluginPathsToExclude ( const QStringList paths)
Parameters
pathsThe file names of the plugin libraries to exclude from PluginManager's plugin auto-loading process. These should always be absolute paths.

The paths passed to this function are saved to the settings file. This will result in all subsequently started Workspace applications being affected by the exclusions. This behaviour may be changed in the future.

◆ setPluginsToAutoLoad()

void setPluginsToAutoLoad ( const QStringList pluginNames)
Parameters
pluginNamesThe list of plugin names that PluginManager should auto-load.

Calling this function also results in the plugin auto-load policy being set to AutoLoadOnlySpecifiedPlugins.

Note
Unlike setPluginsToExclude(), this function is not persistent. It only takes effect for the current process and is not saved to the settings file.
See also
getPluginsToAutoLoad()

◆ setProfilerInfoLocalBroadcast()

void setProfilerInfoLocalBroadcast ( bool  allowBroadcast)
Parameters
allowBroadcastLet Execution Profiler broadcast the profiler process info to the localhost processes. This option is OFF by default and should be turned ON when using the Profiler tool (as an example of a subscriber) to know which processes are actively monitoring their execution profiling. Note that only the profiler process info is broadcast, not the execution profiling data which is sent (unicast only) to the process (or processes) that subscribe(s) to that profiler.

◆ setPropertiesOnCreatePolicy()

void setPropertiesOnCreatePolicy ( PropertiesOnCreatePolicy  policy)
Parameters
policyThe policy for when / if to create properties dialogs when operations are created.

◆ setQuiet()

void setQuiet ( bool  b)
Parameters
bIf false, then whenever a workspace plugin is added to the PluginManager, an informational message will be output. If b is true, then no message is output. This is most useful when the workspace library is being used as part of another application and the loading of plugin libraries should be hidden from the user.

◆ setSchedulerLoggingIsEnabled()

void setSchedulerLoggingIsEnabled ( bool  b)
Parameters
bIf true, then the scheduler outputs log trace.
See also
getSchedulerLoggingIsEnabled()

◆ setServiceName()

void setServiceName ( const QString &  serviceName)
Parameters
serviceNameSpecifies a service name for this application. This name should be the same as its parent application. For example an application started by workspace-server should use a same service name as the workspace-server. The service name would be used to keep track of instance of server. A free standing application not started by any server should have service name left empty.
See also
getServiceName()

◆ setSettingsDirectory()

void setSettingsDirectory ( const QString &  dir)
Parameters
dirThe directory that holds all the settings files.

The main workspace settings file will be assumed to reside in dir. Plugins should also use this directory for their own settings files.

Note
This function is primarily intended for use with test code and would not normally be used outside of that scenario.

◆ setSettingsFileName()

void setSettingsFileName ( const QString &  fileName)
Parameters
fileNameThe file name of the settings file, without path.

The main workspace settings file will be assumed to reside in the directory returned by getSettingsDirectory(). The actual name of the settings file will be set to fileName. Plugins must not use this file name for their own settings, as this will overwrite the workspace settings and lead to potentially unexpected behaviour.

Note
This function is primarily intended for use with test code and would not normally be used outside of that scenario.

◆ setSettingsVariable() [1/2]

bool setSettingsVariable ( const QString &  name,
const QString &  value 
)
Parameters
nameName of settings variable.
valueValue of settings variable.
Returns
Returns false if variable name is empty.

◆ setSettingsVariable() [2/2]

void setSettingsVariable ( SettingsVariable  type,
const QString &  value 
)
Parameters
typeType of system settings variable.
valueValue of system settings variable.

◆ setShowConnectionPortLabels()

void setShowConnectionPortLabels ( bool  b)
Parameters
bIf true, labels will be displayed next to each connection port that is displayed in the UI. This means that when operations are being inspected, the names of their inputs / outputs will be visible on the workspace canvas.
See also
getShowConnectionPortLabels()

◆ setShowDeprecatedMessages()

void setShowDeprecatedMessages ( bool  b)

◆ setSkipLoadingDesigners()

void setSkipLoadingDesigners ( bool  skipLoadingDesigners)
Parameters
skipLoadingDesignersWhether designers should be loaded or not.

By default desingers will be loaded when needed. Some applications may not have the need of loading them, setting this could help make those application free of locking the plugins in developing plugins.

See also
getSkipLoadingDesigners()

◆ setSoundEffectPath()

void setSoundEffectPath ( SoundEffect  effect,
const QString &  path 
)
Parameters
effectEffect type
pathPath to the sound effect file.
See also
getSoundEffectPath()

◆ setSoundEffectVolume()

void setSoundEffectVolume ( int  volume)
Parameters
volumeSound effect volume (0 - 100)
See also
getSoundEffectVolume()

◆ setSplitLongLogLines()

void setSplitLongLogLines ( bool  split)

Set to split long log lines to avoid UI performance issue.

◆ setSymbolPathFolders()

void setSymbolPathFolders ( const QStringList folders)
Parameters
folderssets paths to where symbol files locate

◆ settingsFileExists()

bool settingsFileExists ( ) const
Returns
true if settings file exists.

◆ setToggleDockableWidget()

void setToggleDockableWidget ( bool  b)
Parameters
bIf true, state of DisplayWidgets being created is set to Dockable
See also
getToggleDockableWidget()

◆ setToggleOpProgressBars()

void setToggleOpProgressBars ( bool  checked)

◆ setTooltipEnabled()

void setTooltipEnabled ( bool  enabled)
Parameters
enabledTrue if canvas tooltips are enabled
See also
getTooltipEnabled()

◆ setUserInterfaceSetting()

bool setUserInterfaceSetting ( UiSetting  setting,
const T &  value 
)
inline

◆ setVersionSampleFilesCopyDialogDisplayed()

void setVersionSampleFilesCopyDialogDisplayed ( const QString &  version)
Parameters
versionVersion format: major.minor

◆ setWidgetsTriggerWorkflowUpdates()

void setWidgetsTriggerWorkflowUpdates ( bool  widgetsTriggerUpdates)
Parameters
widgetsTriggerUpdatesTrue if widgets should trigger updates on the workflow.
See also
getWidgetsTriggerWorkflowUpdates()

◆ setWorkflowTreeSetting() [1/2]

void setWorkflowTreeSetting ( const QString &  presetName,
WorkflowTree  setting,
const QVariant &  value 
) const
Parameters
presetNamepresetName identifier
settingWorkflow tree setting type.
valueThe value of the setting.

◆ setWorkflowTreeSetting() [2/2]

void setWorkflowTreeSetting ( WorkflowTree  setting,
const QVariant &  value 
) const
Parameters
settingWorkflow tree setting type.
valueThe value of the setting.

◆ setWorkspaceCollectionPaths()

void setWorkspaceCollectionPaths ( const QStringList paths)
Parameters
pathsThe paths to use for the workspace collection. These will be saveable paths and all non-saveable paths will be cleared. It is not possible to set the non-saveable paths directly, only by calling addToWorkspaceCollection().
See also
getWorkspaceCollectionPaths(), addToWorkspaceCollection(), removeFromWorkspaceCollection()

◆ setWorkspaceServerLoggingIsEnabled()

void setWorkspaceServerLoggingIsEnabled ( bool  b)
Parameters
bIf true, then the remote scheduler outputs log trace.
See also
getWorkspaceServerLoggingIsEnabled()

◆ setWorkspaceStatusTableIsEnabled()

void setWorkspaceStatusTableIsEnabled ( bool  enabled)
Parameters
enabledTrue if the workspace status table should be enabled; otherwise false.
See also
getWorkspaceStatusTableIsEnabled()