PCL
|
Abstract base class for process descriptions. More...
#include <ProcessBase.h>
Public Member Functions | |
ProcessBase () | |
virtual | ~ProcessBase () noexcept(false) |
virtual bool | BrowseDocumentation () const =0 |
virtual bool | CanBrowseDocumentation () const =0 |
virtual bool | CanEditPreferences () const =0 |
virtual bool | CanProcessCommandLines () const =0 |
virtual bool | CanProcessGlobal () const =0 |
virtual bool | CanProcessImages () const =0 |
virtual bool | CanProcessViews () const =0 |
virtual String | Description () const =0 |
virtual bool | EditPreferences () const =0 |
virtual Bitmap | Icon () const =0 |
virtual IsoString | Id () const =0 |
virtual bool | IsAssignable () const =0 |
virtual bool | NeedsInitialization () const =0 |
virtual bool | NeedsValidation () const =0 |
virtual bool | PrefersGlobalExecution () const =0 |
virtual String | ScriptComment () const =0 |
virtual Bitmap | SmallIcon () const =0 |
virtual uint32 | Version () const =0 |
ProcessBase defines a number of descriptive properties of a process in the PixInsight platform.
ProcessBase is an abstract base class of the MetaProcess and Process instantiable classes. MetaProcess describes an installable process, while the Process class provides direct access to an installed process through intermodule communication.
In more practical terms, modules defining new processes must implement derived classes of MetaProcess, while Process is used by modules requiring direct access to process instances through installed processes.
Note that the ProcessBase, MetaProcess, Process, ProcessImplementation and ProcessInstance classes are conceptually parallel to the FileFormatBase, MetaFileFormat, FileFormat, FileFormatImplementation and FileFormatInstance classes, respectively. This is just a reflection of the strong object orientation and modularity that characterize the PixInsight platform.
Definition at line 94 of file ProcessBase.h.
|
inline |
Constructs a ProcessBase object.
Definition at line 101 of file ProcessBase.h.
|
inlinevirtualnoexcept |
Virtual destructor.
Definition at line 108 of file ProcessBase.h.
|
pure virtual |
Handles a request to browse documentation specific for this process. Returns true iff the documentation was loaded successfully.
Since version 1.7 of the PixInsight core application, the integrated documentation system works in a completely automatic and standardized way to provide documentation browsing and searching functionality.
The default implementation of this member function automatically launches and loads the integrated documentation browser with the documentation for this process, if it exists and has been installed. For more information, please read the documentation for the CanBrowseDocumentation() function.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff this process is able to open a documentation browser with specific documentation contents.
Starting from version 1.7, the PixInsight core application implements an integrated documentation system. The core application provides automatic documentation browsing and searching functionality, so normally this member function returns true for all processes.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff this process is able to edit specific preferences.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff this process is able to process specific command-line invocations.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff this process can be executed globally.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff this process is able to process standalone images.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff this process is able to process views.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns a descriptive text for this process.
This function should provide a brief but sufficiently informative description of this process. The returned description appears on the Process Explorer window, and should provide information about what this process does and how it can be used, avoiding too exhaustive descriptions that are better reserved for a technical manual.
Process descriptions are always printed on PixInsight consoles. This means that the text output functionality of the Console class can be used to format the string returned by this function. Refer to that class and its documentation for further information.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Handles a request to edit process preferences. Returns true if the preferences were successfully edited.
By calling this member function for a process able to edit preferences (that is, when CanEditPreferences() returns true), the user is allowed to define a set of preferences specific to this process. Usually this task is implemented on a modal dialog box. In such case, if the user closes the dialog box without accepting the new preferences settings (e.g. by clicking the dialog's Cancel button) this member function should return false. This member function should only return true if the user has edited and accepted a new set of preferences for this process.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns a large icon image that identifies this process.
The returned image is used to identify all instances of this process in the core application's GUI. It is used on the Process Explorer window, on all icons transporting instances of this process, and in general for every graphical item related to this process or to an instance of this process.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns an identifier for this process.
Process identifiers are unique C identifiers.
Implemented in pcl::MetaProcess, and pcl::Process.
|
pure virtual |
Returns true iff the instances of this process are assignable.
Assignable processes allow copying the parameters of one instance (and possibly more module-dependent data) to another.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff the instances of this process require special initialization.
Special initialization takes place just after instance creation. Sometimes, there are actions that cannot be implemented in the constructor of a process instance class. For example, this often happens when an instance must be initialized by calling reimplemented virtual functions from a base class constructor. Reimplemented virtual functions cannot be resolved from a base class constructor in C++.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff the instances of this process require special validation.
Some processes may require validation of their instances just before they are executed. This is known as special validation. The core application will never execute an instance of a process if its validation function fails.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns true iff the instances of this process prefer execution in the global context, instead of being executed on views.
Note that the option indicated by this function is just a hint to the PixInsight core application, not necessarily observed. This means that the fact that this member function returns true for a process does not mean that the process cannot be executed on views.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns a brief description for generated scripts.
The returned text is intended to provide a brief comment to describe this process and its parameters, for quick reference on generated scripts. When writing these comments, think as you do when you're commenting your own source code.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns a small icon image that identifies this process.
For details on process icon images, see the documentation for Icon().
Small icons are used on interface elements where screen space must be preserved. Two good examples are the Process Explorer window and the ProcessContainer interface.
Implemented in pcl::Process, and pcl::MetaProcess.
|
pure virtual |
Returns a version number for this process, encoded as a hexadecimal number.
For example, version 1.0.5 should be returned as 0x105, and version 3.11.5 as 0x3B5.
Implemented in pcl::Process, and pcl::MetaProcess.