CTK  0.1.0
The Common Toolkit is a community effort to provide support code for medical image analysis, surgical navigation, and related projects.
ctkApplicationDescriptor.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  Library: CTK
4 
5  Copyright (c) German Cancer Research Center,
6  Division of Medical and Biological Informatics
7 
8  Licensed under the Apache License, Version 2.0 (the "License");
9  you may not use this file except in compliance with the License.
10  You may obtain a copy of the License at
11 
12  http://www.apache.org/licenses/LICENSE-2.0
13 
14  Unless required by applicable law or agreed to in writing, software
15  distributed under the License is distributed on an "AS IS" BASIS,
16  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  See the License for the specific language governing permissions and
18  limitations under the License.
19 
20 =============================================================================*/
21 
22 #ifndef CTKAPPLICATIONDESCRIPTOR_H
23 #define CTKAPPLICATIONDESCRIPTOR_H
24 
25 #include <ctkPluginFrameworkExport.h>
26 
28 
29 #include <QHash>
30 #include <QVariant>
31 #include <QString>
32 #include <QLocale>
33 
34 
36 
42 struct CTK_PLUGINFW_EXPORT ctkApplicationDescriptor
43 {
44 
48  static const QString APPLICATION_NAME; // = "application.name";
49 
53  static const QString APPLICATION_ICON; // = "application.icon";
54 
58  static const QString APPLICATION_PID; // = ctkPluginConstants::SERVICE_PID;
59 
63  static const QString APPLICATION_VERSION; // = "application.version";
64 
68  static const QString APPLICATION_VENDOR; // = ctkPluginConstants::SERVICE_VENDOR;
69 
73  static const QString APPLICATION_VISIBLE; // = "application.visible";
74 
78  static const QString APPLICATION_LAUNCHABLE; // = "application.launchable";
79 
83  static const QString APPLICATION_LOCKED; // = "application.locked";
84 
88  static const QString APPLICATION_DESCRIPTION; // = "application.description";
89 
93  static const QString APPLICATION_DOCUMENTATION; // = "application.documentation";
94 
98  static const QString APPLICATION_COPYRIGHT; // = "application.copyright";
99 
103  static const QString APPLICATION_LICENSE; // = "application.license";
104 
108  static const QString APPLICATION_CONTAINER; // = "application.container";
109 
113  static const QString APPLICATION_LOCATION; // = "application.location";
114 
115 
117 
123  virtual QString getApplicationId() const = 0;
124 
148  virtual ctkProperties getProperties(const QLocale& locale) const = 0;
149 
170  virtual ctkProperties getProperties() const = 0;
171 
219  virtual ctkApplicationHandle* launch(const QHash<QString, QVariant>& arguments) = 0;
220 
221 };
222 
223 Q_DECLARE_INTERFACE(ctkApplicationDescriptor, "org.commontk.service.application.ApplicationDescriptor")
224 
225 #endif // CTKAPPLICATIONDESCRIPTOR_H
ctkApplicationDescriptor::APPLICATION_LAUNCHABLE
static const QString APPLICATION_LAUNCHABLE
Definition: ctkApplicationDescriptor.h:78
ctkApplicationDescriptor::APPLICATION_LICENSE
static const QString APPLICATION_LICENSE
Definition: ctkApplicationDescriptor.h:103
ctkApplicationDescriptor::APPLICATION_COPYRIGHT
static const QString APPLICATION_COPYRIGHT
Definition: ctkApplicationDescriptor.h:98
ctkApplicationDescriptor::APPLICATION_CONTAINER
static const QString APPLICATION_CONTAINER
Definition: ctkApplicationDescriptor.h:108
ctkApplicationDescriptor::APPLICATION_LOCATION
static const QString APPLICATION_LOCATION
Definition: ctkApplicationDescriptor.h:113
ctkApplicationDescriptor::APPLICATION_ICON
static const QString APPLICATION_ICON
Definition: ctkApplicationDescriptor.h:53
ctkApplicationDescriptor::APPLICATION_VENDOR
static const QString APPLICATION_VENDOR
Definition: ctkApplicationDescriptor.h:68
ctkApplicationDescriptor::APPLICATION_NAME
static const QString APPLICATION_NAME
Definition: ctkApplicationDescriptor.h:48
ctkApplicationDescriptor::APPLICATION_DOCUMENTATION
static const QString APPLICATION_DOCUMENTATION
Definition: ctkApplicationDescriptor.h:93
ctkApplicationDescriptor::APPLICATION_VISIBLE
static const QString APPLICATION_VISIBLE
Definition: ctkApplicationDescriptor.h:73
ctkApplicationDescriptor::APPLICATION_PID
static const QString APPLICATION_PID
Definition: ctkApplicationDescriptor.h:58
ctkApplicationHandle
Definition: ctkApplicationHandle.h:40
ctkApplicationDescriptor::APPLICATION_VERSION
static const QString APPLICATION_VERSION
Definition: ctkApplicationDescriptor.h:63
ctkApplicationDescriptor::~ctkApplicationDescriptor
virtual ~ctkApplicationDescriptor()
Definition: ctkApplicationDescriptor.h:116
QHash
Definition: ctkCmdLineModuleFrontend.h:29
ctkApplicationDescriptor::APPLICATION_LOCKED
static const QString APPLICATION_LOCKED
Definition: ctkApplicationDescriptor.h:83
ctkApplicationDescriptor::APPLICATION_DESCRIPTION
static const QString APPLICATION_DESCRIPTION
Definition: ctkApplicationDescriptor.h:88
ctkPluginFramework_global.h
ctkApplicationDescriptor
Definition: ctkApplicationDescriptor.h:42