| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 | 
							- /*=============================================================================
 
-   Library: CTK
 
-   Copyright (c) German Cancer Research Center,
 
-     Division of Medical and Biological Informatics
 
-   Licensed under the Apache License, Version 2.0 (the "License");
 
-   you may not use this file except in compliance with the License.
 
-   You may obtain a copy of the License at
 
-     http://www.apache.org/licenses/LICENSE-2.0
 
-   Unless required by applicable law or agreed to in writing, software
 
-   distributed under the License is distributed on an "AS IS" BASIS,
 
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
-   See the License for the specific language governing permissions and
 
-   limitations under the License.
 
- =============================================================================*/
 
- #ifndef CTKCMDLINEMODULEBACKENDLOCALPROCESS_H
 
- #define CTKCMDLINEMODULEBACKENDLOCALPROCESS_H
 
- #include "ctkCmdLineModuleBackend.h"
 
- #include "ctkCommandLineModulesBackendLocalProcessExport.h"
 
- #include <QScopedPointer>
 
- struct ctkCmdLineModuleBackendLocalProcessPrivate;
 
- /**
 
-  * @ingroup CommandLineModulesBackendLocalProcess_API
 
-  *
 
-  * @brief Provides an ctkCmdLineModuleBackend implementation
 
-  * to run a locally installed command line application.
 
-  *
 
-  * Use this back-end if you want to be able to register local executables as command
 
-  * line modules. The back-end handles the "file" URL scheme, allowing you to register
 
-  * modules with the ctkCmdLineModuleManager by using
 
-  * @code
 
-  * ctkCmdLineModuleManager::registerModule(QUrl::fromLocalFile("/path/to/executable"));
 
-  * @endcode
 
-  *
 
-  * The XML description for a module is extracted from the standard output of the
 
-  * executable when calling it with the \c ––xml command line argument.
 
-  *
 
-  * The ctkCmdLineModuleFuture returned by run() allows cancelation by killing the running
 
-  * process. On Unix systems, it also allows to pause it.
 
-  */
 
- class CTK_CMDLINEMODULEBACKENDLP_EXPORT ctkCmdLineModuleBackendLocalProcess : public ctkCmdLineModuleBackend
 
- {
 
- public:
 
-   ctkCmdLineModuleBackendLocalProcess();
 
-   ~ctkCmdLineModuleBackendLocalProcess();
 
-   virtual QString name() const;
 
-   virtual QString description() const;
 
-   /**
 
-    * @brief This back-end can handle the "file" URL scheme.
 
-    * @return Returns the schemes this back-end can handle.
 
-    */
 
-   virtual QList<QString> schemes() const;
 
-   /**
 
-    * @brief Returns the last modified time of the module at \c location.
 
-    * @param location The location URL of the module for which to get the timestamp.
 
-    * @return A timestamp.
 
-    */
 
-   virtual qint64 timeStamp(const QUrl &location) const;
 
-   /**
 
-    * @brief Get the raw XML description from the module at \c location.
 
-    * @param location The location URL of the module for which to get the XML description.
 
-    * @return The raw XML description.
 
-    *
 
-    * This method always calls the executable with a \c ––xml argument and returns
 
-    * the complete data emitted on the standard output channel.
 
-    */
 
-   virtual QByteArray rawXmlDescription(const QUrl& location);
 
-   /**
 
-    * @brief Run a front-end for this module in a local process.
 
-    * @param frontend The front-end to run.
 
-    * @return A future object for communicating with the running process.
 
-    */
 
-   virtual ctkCmdLineModuleFuture run(ctkCmdLineModuleFrontend *frontend);
 
- private:
 
-   QScopedPointer<ctkCmdLineModuleBackendLocalProcessPrivate> d;
 
- };
 
- #endif // CTKCMDLINEMODULEBACKENDLOCALPROCESS_H
 
 
  |