##// END OF EJS Templates
- Added CHANGELOG...
ezust -
r2:b0bd6d44c879
parent child
Show More
@@ -0,0 +1,37
1
2 Version 1.1 ChangeLog:
3
4 florianlink | 2007-11-15 08:38:24 -0800 (Thu, 15 Nov 2007)
5 - added support for mapping Python lists to QList<AnyPtr*> lists on slot calls
6 - added support for QList<AnyPtr*> return values and signal signatures
7 - changed binary output to lib as well, so that the setting of PATH can be avoided
8 - changed profiles to use a new common.prf to facilitate global settings
9 - improved docs
10 - added _d extension for debug build (see common.prf)
11 - added $$PWD, which is important if the file is included from somewhere else (which we do in mevis)
12 - added softspace support (implemented by Andre Kramer)
13 - updated windows documentation and variables which need to be set
14 - changed to use only PYTHON_PATH on Windows
15 - added more build docs
16 - changed date conversion from/to strings to ISODate
17 - fixed return argument initialization to NULL
18 - added mevis doc
19 - fixed handling of unknown reference types
20 - made lookupObject public
21 - added overload calls to introspection
22
23 marcusbarann | 2007-11-08 06:15:55 -0800 (Thu, 08 Nov 2007)
24 - Added PythonQt.pro, cleaned up build system
25
26 akramer | 2007-10-17 08:02:25 -0700 (Wed, 17 Oct 2007)
27 - external variant was missing the "config += qtestlib" needed for using the Qt unit test framework.
28 - provide relative path to Gui extension lib
29 - added a sentence about using the Windows installer version of Python
30 - Fix for converting QByteArray values that include 0 chars.
31 They are still converted to/from Python strings but using
32 size of contents rather than string 0 (null) termination.
33 - bug fix for getMTimeOfSource when PythonQt::importInterface() is null
34 - Linux external build improvements
35
36 2007-01-30 00:11:25 -0800 (Tue, 30 Jan 2007) | 1 line
37 - Released version 1.0
@@ -0,0 +1,34
1 #include <PythonQt.h>
2 #include <QtGui>
3 int main (int argc, char* argv[]) {
4 QApplication app(argc, argv);
5 PythonQt::init();
6 PythonQtObjectPtr mainModule = PythonQt::self()->getMainModule();
7 Q_ASSERT(!mainModule.isNull());
8 {
9 // evaluate a python file embedded in executable as resource:
10 mainModule.evalFile(":eyed3tagger.py");
11 PythonQtObjectPtr tag = mainModule.evalScript("EyeD3Tagger()\n", Py_eval_input);
12 Q_ASSERT(!tag.isNull());
13 tag.call("setFileName", QVariantList() << "t.mp3");
14 QVariant fn = tag.call("fileName", QVariantList());
15 Q_ASSERT(fn.toString() == QString("t.mp3"));
16 }
17 qDebug() << "test1";
18 { // alternative using import and loading it as a real module from sys.path
19 // import sys first
20 mainModule.evalScript(QString("import sys\n"));
21 // append the current directory to the sys.path
22 mainModule.evalScript(QString("sys.path.append('%1')\n").arg(QDir::currentPath()));
23
24 mainModule.evalScript("import eyed3tagger\n");
25 PythonQtObjectPtr tag = mainModule.evalScript("eyed3tagger.EyeD3Tagger()\n", Py_eval_input);
26 Q_ASSERT(!tag.isNull());
27 tag.call("setFileName", QVariantList() << "t.mp3");
28 QVariant fn = tag.call("fileName", QVariantList());
29 Q_ASSERT(fn.toString() == QString("t.mp3"));
30 }
31
32 qDebug() << "finished";
33 return 0;
34 }
@@ -0,0 +1,9
1 CONFIG += debug
2 VPATH +=
3 INCLUDEPATH += . $$(PYTHONQT_ROOT)/src /usr/include/python2.5
4
5 SOURCES += CPPPyWrapperExample.cpp
6
7 LIBS += -L$$(PYTHONQT_ROOT)/lib -lPythonQt -lutil
8
9 RESOURCES += CPPPyWrapperExample.qrc
@@ -0,0 +1,5
1 <RCC version="1.0">
2 <qresource>
3 <file>eyed3tagger.py</file>
4 </qresource>
5 </RCC>
@@ -0,0 +1,9
1 It also shows how to add user defined Python classes to the
2 embedded Python mainModule.
3 It also shows how to create objects in Python,
4 hold onto reference counted smart pointers to them from
5 a Qt application, and invoke methods on them via
6 the PythonQtObjectPtr interface.
7
8
9
@@ -0,0 +1,10
1 class EyeD3Tagger():
2 def __init__(self, fileName = None):
3 if not fileName is None:
4 self.setFileName(fileName)
5
6 def fileName(self):
7 return self.fn
8
9 def setFileName(self, fileName):
10 self.fn = fileName
@@ -1,18 +1,18
1 PythonQt
1 PythonQt
2 --------
2 --------
3
3
4 PythonQt is a dynamic Python (http://www.python.org) binding for Qt (http://www.trolltech.com).
4 PythonQt is a dynamic Python (http://www.python.org) binding for Qt (http://www.trolltech.com).
5 It offers an easy way to embedd the Python scripting language into
5 It offers an easy way to embed the Python scripting language into
6 your Qt applications. It makes heavy use of the QMetaObject system and thus requires Qt4.x.
6 your Qt applications. It makes heavy use of the QMetaObject system and thus requires Qt4.x.
7
7
8 Licensing
8 Licensing
9 ---------
9 ---------
10 PythonQt is distributed under the LGPL license.
10 PythonQt is distributed under the LGPL license.
11
11
12 Documentation
12 Documentation
13 -------------
13 -------------
14
14
15 More documentation is available at:
15 More documentation is available at:
16
16
17 http://pythonqt.sourceforge.net/
17 http://pythonqt.sourceforge.net/
18
18
@@ -1,1098 +1,1098
1 # Doxyfile 1.3.5
1 # Doxyfile 1.3.5
2
2
3 # This file describes the settings to be used by the documentation system
3 # This file describes the settings to be used by the documentation system
4 # doxygen (www.doxygen.org) for a project
4 # doxygen (www.doxygen.org) for a project
5 #
5 #
6 # All text after a hash (#) is considered a comment and will be ignored
6 # All text after a hash (#) is considered a comment and will be ignored
7 # The format is:
7 # The format is:
8 # TAG = value [value, ...]
8 # TAG = value [value, ...]
9 # For lists items can also be appended using:
9 # For lists items can also be appended using:
10 # TAG += value [value, ...]
10 # TAG += value [value, ...]
11 # Values that contain spaces should be placed between quotes (" ")
11 # Values that contain spaces should be placed between quotes (" ")
12
12
13 #---------------------------------------------------------------------------
13 #---------------------------------------------------------------------------
14 # Project related configuration options
14 # Project related configuration options
15 #---------------------------------------------------------------------------
15 #---------------------------------------------------------------------------
16
16
17 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
17 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
18 # by quotes) that should identify the project.
18 # by quotes) that should identify the project.
19
19
20 PROJECT_NAME = PythonQt
20 PROJECT_NAME = PythonQt
21
21
22 # The PROJECT_NUMBER tag can be used to enter a project or revision number.
22 # The PROJECT_NUMBER tag can be used to enter a project or revision number.
23 # This could be handy for archiving the generated documentation or
23 # This could be handy for archiving the generated documentation or
24 # if some version control system is used.
24 # if some version control system is used.
25
25
26 PROJECT_NUMBER = 1.0
26 PROJECT_NUMBER = 1.1
27
27
28 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
28 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
29 # base path where the generated documentation will be put.
29 # base path where the generated documentation will be put.
30 # If a relative path is entered, it will be relative to the location
30 # If a relative path is entered, it will be relative to the location
31 # where doxygen was started. If left blank the current directory will be used.
31 # where doxygen was started. If left blank the current directory will be used.
32
32
33 OUTPUT_DIRECTORY = .
33 OUTPUT_DIRECTORY = .
34
34
35 # The OUTPUT_LANGUAGE tag is used to specify the language in which all
35 # The OUTPUT_LANGUAGE tag is used to specify the language in which all
36 # documentation generated by doxygen is written. Doxygen will use this
36 # documentation generated by doxygen is written. Doxygen will use this
37 # information to generate all constant output in the proper language.
37 # information to generate all constant output in the proper language.
38 # The default language is English, other supported languages are:
38 # The default language is English, other supported languages are:
39 # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
39 # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
40 # Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
40 # Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
41 # (Japanese with English messages), Korean, Norwegian, Polish, Portuguese,
41 # (Japanese with English messages), Korean, Norwegian, Polish, Portuguese,
42 # Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
42 # Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
43
43
44 OUTPUT_LANGUAGE = English
44 OUTPUT_LANGUAGE = English
45
45
46 # This tag can be used to specify the encoding used in the generated output.
46 # This tag can be used to specify the encoding used in the generated output.
47 # The encoding is not always determined by the language that is chosen,
47 # The encoding is not always determined by the language that is chosen,
48 # but also whether or not the output is meant for Windows or non-Windows users.
48 # but also whether or not the output is meant for Windows or non-Windows users.
49 # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
49 # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
50 # forces the Windows encoding (this is the default for the Windows binary),
50 # forces the Windows encoding (this is the default for the Windows binary),
51 # whereas setting the tag to NO uses a Unix-style encoding (the default for
51 # whereas setting the tag to NO uses a Unix-style encoding (the default for
52 # all platforms other than Windows).
52 # all platforms other than Windows).
53
53
54 USE_WINDOWS_ENCODING = NO
54 USE_WINDOWS_ENCODING = NO
55
55
56 # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
56 # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
57 # include brief member descriptions after the members that are listed in
57 # include brief member descriptions after the members that are listed in
58 # the file and class documentation (similar to JavaDoc).
58 # the file and class documentation (similar to JavaDoc).
59 # Set to NO to disable this.
59 # Set to NO to disable this.
60
60
61 BRIEF_MEMBER_DESC = YES
61 BRIEF_MEMBER_DESC = YES
62
62
63 # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
63 # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
64 # the brief description of a member or function before the detailed description.
64 # the brief description of a member or function before the detailed description.
65 # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
65 # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
66 # brief descriptions will be completely suppressed.
66 # brief descriptions will be completely suppressed.
67
67
68 REPEAT_BRIEF = YES
68 REPEAT_BRIEF = YES
69
69
70 # This tag implements a quasi-intelligent brief description abbreviator
70 # This tag implements a quasi-intelligent brief description abbreviator
71 # that is used to form the text in various listings. Each string
71 # that is used to form the text in various listings. Each string
72 # in this list, if found as the leading text of the brief description, will be
72 # in this list, if found as the leading text of the brief description, will be
73 # stripped from the text and the result after processing the whole list, is used
73 # stripped from the text and the result after processing the whole list, is used
74 # as the annotated text. Otherwise, the brief description is used as-is. If left
74 # as the annotated text. Otherwise, the brief description is used as-is. If left
75 # blank, the following values are used ("$name" is automatically replaced with the
75 # blank, the following values are used ("$name" is automatically replaced with the
76 # name of the entity): "The $name class" "The $name widget" "The $name file"
76 # name of the entity): "The $name class" "The $name widget" "The $name file"
77 # "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
77 # "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
78
78
79 ABBREVIATE_BRIEF =
79 ABBREVIATE_BRIEF =
80
80
81 # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
81 # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
82 # Doxygen will generate a detailed section even if there is only a brief
82 # Doxygen will generate a detailed section even if there is only a brief
83 # description.
83 # description.
84
84
85 ALWAYS_DETAILED_SEC = NO
85 ALWAYS_DETAILED_SEC = NO
86
86
87 # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
87 # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
88 # members of a class in the documentation of that class as if those members were
88 # members of a class in the documentation of that class as if those members were
89 # ordinary class members. Constructors, destructors and assignment operators of
89 # ordinary class members. Constructors, destructors and assignment operators of
90 # the base classes will not be shown.
90 # the base classes will not be shown.
91
91
92 INLINE_INHERITED_MEMB = NO
92 INLINE_INHERITED_MEMB = NO
93
93
94 # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
94 # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
95 # path before files name in the file list and in the header files. If set
95 # path before files name in the file list and in the header files. If set
96 # to NO the shortest path that makes the file name unique will be used.
96 # to NO the shortest path that makes the file name unique will be used.
97
97
98 FULL_PATH_NAMES = NO
98 FULL_PATH_NAMES = NO
99
99
100 # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
100 # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
101 # can be used to strip a user-defined part of the path. Stripping is
101 # can be used to strip a user-defined part of the path. Stripping is
102 # only done if one of the specified strings matches the left-hand part of
102 # only done if one of the specified strings matches the left-hand part of
103 # the path. It is allowed to use relative paths in the argument list.
103 # the path. It is allowed to use relative paths in the argument list.
104
104
105 STRIP_FROM_PATH =
105 STRIP_FROM_PATH =
106
106
107 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
107 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
108 # (but less readable) file names. This can be useful is your file systems
108 # (but less readable) file names. This can be useful is your file systems
109 # doesn't support long names like on DOS, Mac, or CD-ROM.
109 # doesn't support long names like on DOS, Mac, or CD-ROM.
110
110
111 SHORT_NAMES = NO
111 SHORT_NAMES = NO
112
112
113 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
113 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
114 # will interpret the first line (until the first dot) of a JavaDoc-style
114 # will interpret the first line (until the first dot) of a JavaDoc-style
115 # comment as the brief description. If set to NO, the JavaDoc
115 # comment as the brief description. If set to NO, the JavaDoc
116 # comments will behave just like the Qt-style comments (thus requiring an
116 # comments will behave just like the Qt-style comments (thus requiring an
117 # explicit @brief command for a brief description.
117 # explicit @brief command for a brief description.
118
118
119 JAVADOC_AUTOBRIEF = NO
119 JAVADOC_AUTOBRIEF = NO
120
120
121 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
121 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
122 # treat a multi-line C++ special comment block (i.e. a block of //! or ///
122 # treat a multi-line C++ special comment block (i.e. a block of //! or ///
123 # comments) as a brief description. This used to be the default behaviour.
123 # comments) as a brief description. This used to be the default behaviour.
124 # The new default is to treat a multi-line C++ comment block as a detailed
124 # The new default is to treat a multi-line C++ comment block as a detailed
125 # description. Set this tag to YES if you prefer the old behaviour instead.
125 # description. Set this tag to YES if you prefer the old behaviour instead.
126
126
127 MULTILINE_CPP_IS_BRIEF = NO
127 MULTILINE_CPP_IS_BRIEF = NO
128
128
129 # If the DETAILS_AT_TOP tag is set to YES then Doxygen
129 # If the DETAILS_AT_TOP tag is set to YES then Doxygen
130 # will output the detailed description near the top, like JavaDoc.
130 # will output the detailed description near the top, like JavaDoc.
131 # If set to NO, the detailed description appears after the member
131 # If set to NO, the detailed description appears after the member
132 # documentation.
132 # documentation.
133
133
134 DETAILS_AT_TOP = NO
134 DETAILS_AT_TOP = NO
135
135
136 # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
136 # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
137 # member inherits the documentation from any documented member that it
137 # member inherits the documentation from any documented member that it
138 # re-implements.
138 # re-implements.
139
139
140 INHERIT_DOCS = YES
140 INHERIT_DOCS = YES
141
141
142 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
142 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
143 # tag is set to YES, then doxygen will reuse the documentation of the first
143 # tag is set to YES, then doxygen will reuse the documentation of the first
144 # member in the group (if any) for the other members of the group. By default
144 # member in the group (if any) for the other members of the group. By default
145 # all members of a group must be documented explicitly.
145 # all members of a group must be documented explicitly.
146
146
147 DISTRIBUTE_GROUP_DOC = NO
147 DISTRIBUTE_GROUP_DOC = NO
148
148
149 # The TAB_SIZE tag can be used to set the number of spaces in a tab.
149 # The TAB_SIZE tag can be used to set the number of spaces in a tab.
150 # Doxygen uses this value to replace tabs by spaces in code fragments.
150 # Doxygen uses this value to replace tabs by spaces in code fragments.
151
151
152 TAB_SIZE = 4
152 TAB_SIZE = 4
153
153
154 # This tag can be used to specify a number of aliases that acts
154 # This tag can be used to specify a number of aliases that acts
155 # as commands in the documentation. An alias has the form "name=value".
155 # as commands in the documentation. An alias has the form "name=value".
156 # For example adding "sideeffect=\par Side Effects:\n" will allow you to
156 # For example adding "sideeffect=\par Side Effects:\n" will allow you to
157 # put the command \sideeffect (or @sideeffect) in the documentation, which
157 # put the command \sideeffect (or @sideeffect) in the documentation, which
158 # will result in a user-defined paragraph with heading "Side Effects:".
158 # will result in a user-defined paragraph with heading "Side Effects:".
159 # You can put \n's in the value part of an alias to insert newlines.
159 # You can put \n's in the value part of an alias to insert newlines.
160
160
161 ALIASES =
161 ALIASES =
162
162
163 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
163 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
164 # only. Doxygen will then generate output that is more tailored for C.
164 # only. Doxygen will then generate output that is more tailored for C.
165 # For instance, some of the names that are used will be different. The list
165 # For instance, some of the names that are used will be different. The list
166 # of all members will be omitted, etc.
166 # of all members will be omitted, etc.
167
167
168 OPTIMIZE_OUTPUT_FOR_C = NO
168 OPTIMIZE_OUTPUT_FOR_C = NO
169
169
170 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
170 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
171 # only. Doxygen will then generate output that is more tailored for Java.
171 # only. Doxygen will then generate output that is more tailored for Java.
172 # For instance, namespaces will be presented as packages, qualified scopes
172 # For instance, namespaces will be presented as packages, qualified scopes
173 # will look different, etc.
173 # will look different, etc.
174
174
175 OPTIMIZE_OUTPUT_JAVA = NO
175 OPTIMIZE_OUTPUT_JAVA = NO
176
176
177 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of
177 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of
178 # the same type (for instance a group of public functions) to be put as a
178 # the same type (for instance a group of public functions) to be put as a
179 # subgroup of that type (e.g. under the Public Functions section). Set it to
179 # subgroup of that type (e.g. under the Public Functions section). Set it to
180 # NO to prevent subgrouping. Alternatively, this can be done per class using
180 # NO to prevent subgrouping. Alternatively, this can be done per class using
181 # the \nosubgrouping command.
181 # the \nosubgrouping command.
182
182
183 SUBGROUPING = YES
183 SUBGROUPING = YES
184
184
185 #---------------------------------------------------------------------------
185 #---------------------------------------------------------------------------
186 # Build related configuration options
186 # Build related configuration options
187 #---------------------------------------------------------------------------
187 #---------------------------------------------------------------------------
188
188
189 # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
189 # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
190 # documentation are documented, even if no documentation was available.
190 # documentation are documented, even if no documentation was available.
191 # Private class members and static file members will be hidden unless
191 # Private class members and static file members will be hidden unless
192 # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
192 # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
193
193
194 EXTRACT_ALL = YES
194 EXTRACT_ALL = YES
195
195
196 # If the EXTRACT_PRIVATE tag is set to YES all private members of a class
196 # If the EXTRACT_PRIVATE tag is set to YES all private members of a class
197 # will be included in the documentation.
197 # will be included in the documentation.
198
198
199 EXTRACT_PRIVATE = NO
199 EXTRACT_PRIVATE = NO
200
200
201 # If the EXTRACT_STATIC tag is set to YES all static members of a file
201 # If the EXTRACT_STATIC tag is set to YES all static members of a file
202 # will be included in the documentation.
202 # will be included in the documentation.
203
203
204 EXTRACT_STATIC = YES
204 EXTRACT_STATIC = YES
205
205
206 # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
206 # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
207 # defined locally in source files will be included in the documentation.
207 # defined locally in source files will be included in the documentation.
208 # If set to NO only classes defined in header files are included.
208 # If set to NO only classes defined in header files are included.
209
209
210 EXTRACT_LOCAL_CLASSES = YES
210 EXTRACT_LOCAL_CLASSES = YES
211
211
212 # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
212 # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
213 # undocumented members of documented classes, files or namespaces.
213 # undocumented members of documented classes, files or namespaces.
214 # If set to NO (the default) these members will be included in the
214 # If set to NO (the default) these members will be included in the
215 # various overviews, but no documentation section is generated.
215 # various overviews, but no documentation section is generated.
216 # This option has no effect if EXTRACT_ALL is enabled.
216 # This option has no effect if EXTRACT_ALL is enabled.
217
217
218 HIDE_UNDOC_MEMBERS = NO
218 HIDE_UNDOC_MEMBERS = NO
219
219
220 # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
220 # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
221 # undocumented classes that are normally visible in the class hierarchy.
221 # undocumented classes that are normally visible in the class hierarchy.
222 # If set to NO (the default) these classes will be included in the various
222 # If set to NO (the default) these classes will be included in the various
223 # overviews. This option has no effect if EXTRACT_ALL is enabled.
223 # overviews. This option has no effect if EXTRACT_ALL is enabled.
224
224
225 HIDE_UNDOC_CLASSES = NO
225 HIDE_UNDOC_CLASSES = NO
226
226
227 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
227 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
228 # friend (class|struct|union) declarations.
228 # friend (class|struct|union) declarations.
229 # If set to NO (the default) these declarations will be included in the
229 # If set to NO (the default) these declarations will be included in the
230 # documentation.
230 # documentation.
231
231
232 HIDE_FRIEND_COMPOUNDS = NO
232 HIDE_FRIEND_COMPOUNDS = NO
233
233
234 # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
234 # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
235 # documentation blocks found inside the body of a function.
235 # documentation blocks found inside the body of a function.
236 # If set to NO (the default) these blocks will be appended to the
236 # If set to NO (the default) these blocks will be appended to the
237 # function's detailed documentation block.
237 # function's detailed documentation block.
238
238
239 HIDE_IN_BODY_DOCS = NO
239 HIDE_IN_BODY_DOCS = NO
240
240
241 # The INTERNAL_DOCS tag determines if documentation
241 # The INTERNAL_DOCS tag determines if documentation
242 # that is typed after a \internal command is included. If the tag is set
242 # that is typed after a \internal command is included. If the tag is set
243 # to NO (the default) then the documentation will be excluded.
243 # to NO (the default) then the documentation will be excluded.
244 # Set it to YES to include the internal documentation.
244 # Set it to YES to include the internal documentation.
245
245
246 INTERNAL_DOCS = NO
246 INTERNAL_DOCS = NO
247
247
248 # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
248 # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
249 # file names in lower-case letters. If set to YES upper-case letters are also
249 # file names in lower-case letters. If set to YES upper-case letters are also
250 # allowed. This is useful if you have classes or files whose names only differ
250 # allowed. This is useful if you have classes or files whose names only differ
251 # in case and if your file system supports case sensitive file names. Windows
251 # in case and if your file system supports case sensitive file names. Windows
252 # users are advised to set this option to NO.
252 # users are advised to set this option to NO.
253
253
254 CASE_SENSE_NAMES = YES
254 CASE_SENSE_NAMES = YES
255
255
256 # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
256 # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
257 # will show members with their full class and namespace scopes in the
257 # will show members with their full class and namespace scopes in the
258 # documentation. If set to YES the scope will be hidden.
258 # documentation. If set to YES the scope will be hidden.
259
259
260 HIDE_SCOPE_NAMES = NO
260 HIDE_SCOPE_NAMES = NO
261
261
262 # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
262 # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
263 # will put a list of the files that are included by a file in the documentation
263 # will put a list of the files that are included by a file in the documentation
264 # of that file.
264 # of that file.
265
265
266 SHOW_INCLUDE_FILES = YES
266 SHOW_INCLUDE_FILES = YES
267
267
268 # If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
268 # If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
269 # is inserted in the documentation for inline members.
269 # is inserted in the documentation for inline members.
270
270
271 INLINE_INFO = YES
271 INLINE_INFO = YES
272
272
273 # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
273 # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
274 # will sort the (detailed) documentation of file and class members
274 # will sort the (detailed) documentation of file and class members
275 # alphabetically by member name. If set to NO the members will appear in
275 # alphabetically by member name. If set to NO the members will appear in
276 # declaration order.
276 # declaration order.
277
277
278 SORT_MEMBER_DOCS = YES
278 SORT_MEMBER_DOCS = YES
279
279
280 # The GENERATE_TODOLIST tag can be used to enable (YES) or
280 # The GENERATE_TODOLIST tag can be used to enable (YES) or
281 # disable (NO) the todo list. This list is created by putting \todo
281 # disable (NO) the todo list. This list is created by putting \todo
282 # commands in the documentation.
282 # commands in the documentation.
283
283
284 GENERATE_TODOLIST = NO
284 GENERATE_TODOLIST = NO
285
285
286 # The GENERATE_TESTLIST tag can be used to enable (YES) or
286 # The GENERATE_TESTLIST tag can be used to enable (YES) or
287 # disable (NO) the test list. This list is created by putting \test
287 # disable (NO) the test list. This list is created by putting \test
288 # commands in the documentation.
288 # commands in the documentation.
289
289
290 GENERATE_TESTLIST = NO
290 GENERATE_TESTLIST = NO
291
291
292 # The GENERATE_BUGLIST tag can be used to enable (YES) or
292 # The GENERATE_BUGLIST tag can be used to enable (YES) or
293 # disable (NO) the bug list. This list is created by putting \bug
293 # disable (NO) the bug list. This list is created by putting \bug
294 # commands in the documentation.
294 # commands in the documentation.
295
295
296 GENERATE_BUGLIST = YES
296 GENERATE_BUGLIST = YES
297
297
298 # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
298 # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
299 # disable (NO) the deprecated list. This list is created by putting
299 # disable (NO) the deprecated list. This list is created by putting
300 # \deprecated commands in the documentation.
300 # \deprecated commands in the documentation.
301
301
302 GENERATE_DEPRECATEDLIST= YES
302 GENERATE_DEPRECATEDLIST= YES
303
303
304 # The ENABLED_SECTIONS tag can be used to enable conditional
304 # The ENABLED_SECTIONS tag can be used to enable conditional
305 # documentation sections, marked by \if sectionname ... \endif.
305 # documentation sections, marked by \if sectionname ... \endif.
306
306
307 ENABLED_SECTIONS = sourceonly
307 ENABLED_SECTIONS = sourceonly
308
308
309 # The MAX_INITIALIZER_LINES tag determines the maximum number of lines
309 # The MAX_INITIALIZER_LINES tag determines the maximum number of lines
310 # the initial value of a variable or define consists of for it to appear in
310 # the initial value of a variable or define consists of for it to appear in
311 # the documentation. If the initializer consists of more lines than specified
311 # the documentation. If the initializer consists of more lines than specified
312 # here it will be hidden. Use a value of 0 to hide initializers completely.
312 # here it will be hidden. Use a value of 0 to hide initializers completely.
313 # The appearance of the initializer of individual variables and defines in the
313 # The appearance of the initializer of individual variables and defines in the
314 # documentation can be controlled using \showinitializer or \hideinitializer
314 # documentation can be controlled using \showinitializer or \hideinitializer
315 # command in the documentation regardless of this setting.
315 # command in the documentation regardless of this setting.
316
316
317 MAX_INITIALIZER_LINES = 30
317 MAX_INITIALIZER_LINES = 30
318
318
319 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated
319 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated
320 # at the bottom of the documentation of classes and structs. If set to YES the
320 # at the bottom of the documentation of classes and structs. If set to YES the
321 # list will mention the files that were used to generate the documentation.
321 # list will mention the files that were used to generate the documentation.
322
322
323 SHOW_USED_FILES = YES
323 SHOW_USED_FILES = YES
324
324
325 #---------------------------------------------------------------------------
325 #---------------------------------------------------------------------------
326 # configuration options related to warning and progress messages
326 # configuration options related to warning and progress messages
327 #---------------------------------------------------------------------------
327 #---------------------------------------------------------------------------
328
328
329 # The QUIET tag can be used to turn on/off the messages that are generated
329 # The QUIET tag can be used to turn on/off the messages that are generated
330 # by doxygen. Possible values are YES and NO. If left blank NO is used.
330 # by doxygen. Possible values are YES and NO. If left blank NO is used.
331
331
332 QUIET = YES
332 QUIET = YES
333
333
334 # The WARNINGS tag can be used to turn on/off the warning messages that are
334 # The WARNINGS tag can be used to turn on/off the warning messages that are
335 # generated by doxygen. Possible values are YES and NO. If left blank
335 # generated by doxygen. Possible values are YES and NO. If left blank
336 # NO is used.
336 # NO is used.
337
337
338 WARNINGS = YES
338 WARNINGS = YES
339
339
340 # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
340 # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
341 # for undocumented members. If EXTRACT_ALL is set to YES then this flag will
341 # for undocumented members. If EXTRACT_ALL is set to YES then this flag will
342 # automatically be disabled.
342 # automatically be disabled.
343
343
344 WARN_IF_UNDOCUMENTED = YES
344 WARN_IF_UNDOCUMENTED = YES
345
345
346 # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
346 # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
347 # potential errors in the documentation, such as not documenting some
347 # potential errors in the documentation, such as not documenting some
348 # parameters in a documented function, or documenting parameters that
348 # parameters in a documented function, or documenting parameters that
349 # don't exist or using markup commands wrongly.
349 # don't exist or using markup commands wrongly.
350
350
351 WARN_IF_DOC_ERROR = YES
351 WARN_IF_DOC_ERROR = YES
352
352
353 # The WARN_FORMAT tag determines the format of the warning messages that
353 # The WARN_FORMAT tag determines the format of the warning messages that
354 # doxygen can produce. The string should contain the $file, $line, and $text
354 # doxygen can produce. The string should contain the $file, $line, and $text
355 # tags, which will be replaced by the file and line number from which the
355 # tags, which will be replaced by the file and line number from which the
356 # warning originated and the warning text.
356 # warning originated and the warning text.
357
357
358 WARN_FORMAT = "$file:$line: $text"
358 WARN_FORMAT = "$file:$line: $text"
359
359
360 # The WARN_LOGFILE tag can be used to specify a file to which warning
360 # The WARN_LOGFILE tag can be used to specify a file to which warning
361 # and error messages should be written. If left blank the output is written
361 # and error messages should be written. If left blank the output is written
362 # to stderr.
362 # to stderr.
363
363
364 WARN_LOGFILE = doxygen.log
364 WARN_LOGFILE = doxygen.log
365
365
366 #---------------------------------------------------------------------------
366 #---------------------------------------------------------------------------
367 # configuration options related to the input files
367 # configuration options related to the input files
368 #---------------------------------------------------------------------------
368 #---------------------------------------------------------------------------
369
369
370 # The INPUT tag can be used to specify the files and/or directories that contain
370 # The INPUT tag can be used to specify the files and/or directories that contain
371 # documented source files. You may enter file names like "myfile.cpp" or
371 # documented source files. You may enter file names like "myfile.cpp" or
372 # directories like "/usr/src/myproject". Separate the files or directories
372 # directories like "/usr/src/myproject". Separate the files or directories
373 # with spaces.
373 # with spaces.
374
374
375 INPUT = ../src
375 INPUT = ../src
376
376
377 # If the value of the INPUT tag contains directories, you can use the
377 # If the value of the INPUT tag contains directories, you can use the
378 # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
378 # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
379 # and *.h) to filter out the source-files in the directories. If left
379 # and *.h) to filter out the source-files in the directories. If left
380 # blank the following patterns are tested:
380 # blank the following patterns are tested:
381 # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
381 # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
382 # *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
382 # *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
383
383
384 FILE_PATTERNS = *.h
384 FILE_PATTERNS = *.h
385
385
386 # The RECURSIVE tag can be used to turn specify whether or not subdirectories
386 # The RECURSIVE tag can be used to turn specify whether or not subdirectories
387 # should be searched for input files as well. Possible values are YES and NO.
387 # should be searched for input files as well. Possible values are YES and NO.
388 # If left blank NO is used.
388 # If left blank NO is used.
389
389
390 RECURSIVE = NO
390 RECURSIVE = NO
391
391
392 # The EXCLUDE tag can be used to specify files and/or directories that should
392 # The EXCLUDE tag can be used to specify files and/or directories that should
393 # excluded from the INPUT source files. This way you can easily exclude a
393 # excluded from the INPUT source files. This way you can easily exclude a
394 # subdirectory from a directory tree whose root is specified with the INPUT tag.
394 # subdirectory from a directory tree whose root is specified with the INPUT tag.
395
395
396 EXCLUDE =
396 EXCLUDE =
397
397
398 # The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
398 # The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
399 # that are symbolic links (a Unix filesystem feature) are excluded from the input.
399 # that are symbolic links (a Unix filesystem feature) are excluded from the input.
400
400
401 EXCLUDE_SYMLINKS = NO
401 EXCLUDE_SYMLINKS = NO
402
402
403 # If the value of the INPUT tag contains directories, you can use the
403 # If the value of the INPUT tag contains directories, you can use the
404 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
404 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
405 # certain files from those directories.
405 # certain files from those directories.
406
406
407 EXCLUDE_PATTERNS =
407 EXCLUDE_PATTERNS =
408
408
409 # The EXAMPLE_PATH tag can be used to specify one or more files or
409 # The EXAMPLE_PATH tag can be used to specify one or more files or
410 # directories that contain example code fragments that are included (see
410 # directories that contain example code fragments that are included (see
411 # the \include command).
411 # the \include command).
412
412
413 EXAMPLE_PATH =
413 EXAMPLE_PATH =
414
414
415 # If the value of the EXAMPLE_PATH tag contains directories, you can use the
415 # If the value of the EXAMPLE_PATH tag contains directories, you can use the
416 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
416 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
417 # and *.h) to filter out the source-files in the directories. If left
417 # and *.h) to filter out the source-files in the directories. If left
418 # blank all files are included.
418 # blank all files are included.
419
419
420 EXAMPLE_PATTERNS =
420 EXAMPLE_PATTERNS =
421
421
422 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
422 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
423 # searched for input files to be used with the \include or \dontinclude
423 # searched for input files to be used with the \include or \dontinclude
424 # commands irrespective of the value of the RECURSIVE tag.
424 # commands irrespective of the value of the RECURSIVE tag.
425 # Possible values are YES and NO. If left blank NO is used.
425 # Possible values are YES and NO. If left blank NO is used.
426
426
427 EXAMPLE_RECURSIVE = NO
427 EXAMPLE_RECURSIVE = NO
428
428
429 # The IMAGE_PATH tag can be used to specify one or more files or
429 # The IMAGE_PATH tag can be used to specify one or more files or
430 # directories that contain image that are included in the documentation (see
430 # directories that contain image that are included in the documentation (see
431 # the \image command).
431 # the \image command).
432
432
433 IMAGE_PATH =
433 IMAGE_PATH =
434
434
435 # The INPUT_FILTER tag can be used to specify a program that doxygen should
435 # The INPUT_FILTER tag can be used to specify a program that doxygen should
436 # invoke to filter for each input file. Doxygen will invoke the filter program
436 # invoke to filter for each input file. Doxygen will invoke the filter program
437 # by executing (via popen()) the command <filter> <input-file>, where <filter>
437 # by executing (via popen()) the command <filter> <input-file>, where <filter>
438 # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
438 # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
439 # input file. Doxygen will then use the output that the filter program writes
439 # input file. Doxygen will then use the output that the filter program writes
440 # to standard output.
440 # to standard output.
441
441
442 INPUT_FILTER =
442 INPUT_FILTER =
443
443
444 # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
444 # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
445 # INPUT_FILTER) will be used to filter the input files when producing source
445 # INPUT_FILTER) will be used to filter the input files when producing source
446 # files to browse (i.e. when SOURCE_BROWSER is set to YES).
446 # files to browse (i.e. when SOURCE_BROWSER is set to YES).
447
447
448 FILTER_SOURCE_FILES = NO
448 FILTER_SOURCE_FILES = NO
449
449
450 #---------------------------------------------------------------------------
450 #---------------------------------------------------------------------------
451 # configuration options related to source browsing
451 # configuration options related to source browsing
452 #---------------------------------------------------------------------------
452 #---------------------------------------------------------------------------
453
453
454 # If the SOURCE_BROWSER tag is set to YES then a list of source files will
454 # If the SOURCE_BROWSER tag is set to YES then a list of source files will
455 # be generated. Documented entities will be cross-referenced with these sources.
455 # be generated. Documented entities will be cross-referenced with these sources.
456 # Note: To get rid of all source code in the generated output, make sure also
456 # Note: To get rid of all source code in the generated output, make sure also
457 # VERBATIM_HEADERS is set to NO.
457 # VERBATIM_HEADERS is set to NO.
458
458
459 SOURCE_BROWSER = YES
459 SOURCE_BROWSER = YES
460
460
461 # Setting the INLINE_SOURCES tag to YES will include the body
461 # Setting the INLINE_SOURCES tag to YES will include the body
462 # of functions and classes directly in the documentation.
462 # of functions and classes directly in the documentation.
463
463
464 INLINE_SOURCES = YES
464 INLINE_SOURCES = YES
465
465
466 # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
466 # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
467 # doxygen to hide any special comment blocks from generated source code
467 # doxygen to hide any special comment blocks from generated source code
468 # fragments. Normal C and C++ comments will always remain visible.
468 # fragments. Normal C and C++ comments will always remain visible.
469
469
470 STRIP_CODE_COMMENTS = YES
470 STRIP_CODE_COMMENTS = YES
471
471
472 # If the REFERENCED_BY_RELATION tag is set to YES (the default)
472 # If the REFERENCED_BY_RELATION tag is set to YES (the default)
473 # then for each documented function all documented
473 # then for each documented function all documented
474 # functions referencing it will be listed.
474 # functions referencing it will be listed.
475
475
476 REFERENCED_BY_RELATION = YES
476 REFERENCED_BY_RELATION = YES
477
477
478 # If the REFERENCES_RELATION tag is set to YES (the default)
478 # If the REFERENCES_RELATION tag is set to YES (the default)
479 # then for each documented function all documented entities
479 # then for each documented function all documented entities
480 # called/used by that function will be listed.
480 # called/used by that function will be listed.
481
481
482 REFERENCES_RELATION = YES
482 REFERENCES_RELATION = YES
483
483
484 # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
484 # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
485 # will generate a verbatim copy of the header file for each class for
485 # will generate a verbatim copy of the header file for each class for
486 # which an include is specified. Set to NO to disable this.
486 # which an include is specified. Set to NO to disable this.
487
487
488 VERBATIM_HEADERS = YES
488 VERBATIM_HEADERS = YES
489
489
490 #---------------------------------------------------------------------------
490 #---------------------------------------------------------------------------
491 # configuration options related to the alphabetical class index
491 # configuration options related to the alphabetical class index
492 #---------------------------------------------------------------------------
492 #---------------------------------------------------------------------------
493
493
494 # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
494 # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
495 # of all compounds will be generated. Enable this if the project
495 # of all compounds will be generated. Enable this if the project
496 # contains a lot of classes, structs, unions or interfaces.
496 # contains a lot of classes, structs, unions or interfaces.
497
497
498 ALPHABETICAL_INDEX = YES
498 ALPHABETICAL_INDEX = YES
499
499
500 # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
500 # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
501 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
501 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
502 # in which this list will be split (can be a number in the range [1..20])
502 # in which this list will be split (can be a number in the range [1..20])
503
503
504 COLS_IN_ALPHA_INDEX = 5
504 COLS_IN_ALPHA_INDEX = 5
505
505
506 # In case all classes in a project start with a common prefix, all
506 # In case all classes in a project start with a common prefix, all
507 # classes will be put under the same header in the alphabetical index.
507 # classes will be put under the same header in the alphabetical index.
508 # The IGNORE_PREFIX tag can be used to specify one or more prefixes that
508 # The IGNORE_PREFIX tag can be used to specify one or more prefixes that
509 # should be ignored while generating the index headers.
509 # should be ignored while generating the index headers.
510
510
511 IGNORE_PREFIX = PythonQt
511 IGNORE_PREFIX = PythonQt
512
512
513 #---------------------------------------------------------------------------
513 #---------------------------------------------------------------------------
514 # configuration options related to the HTML output
514 # configuration options related to the HTML output
515 #---------------------------------------------------------------------------
515 #---------------------------------------------------------------------------
516
516
517 # If the GENERATE_HTML tag is set to YES (the default) Doxygen will
517 # If the GENERATE_HTML tag is set to YES (the default) Doxygen will
518 # generate HTML output.
518 # generate HTML output.
519
519
520 GENERATE_HTML = YES
520 GENERATE_HTML = YES
521
521
522 # The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
522 # The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
523 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
523 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
524 # put in front of it. If left blank `html' will be used as the default path.
524 # put in front of it. If left blank `html' will be used as the default path.
525
525
526 HTML_OUTPUT = html
526 HTML_OUTPUT = html
527
527
528 # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
528 # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
529 # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
529 # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
530 # doxygen will generate files with .html extension.
530 # doxygen will generate files with .html extension.
531
531
532 HTML_FILE_EXTENSION = .html
532 HTML_FILE_EXTENSION = .html
533
533
534 # The HTML_HEADER tag can be used to specify a personal HTML header for
534 # The HTML_HEADER tag can be used to specify a personal HTML header for
535 # each generated HTML page. If it is left blank doxygen will generate a
535 # each generated HTML page. If it is left blank doxygen will generate a
536 # standard header.
536 # standard header.
537
537
538 HTML_HEADER = header.html
538 HTML_HEADER = header.html
539
539
540 # The HTML_FOOTER tag can be used to specify a personal HTML footer for
540 # The HTML_FOOTER tag can be used to specify a personal HTML footer for
541 # each generated HTML page. If it is left blank doxygen will generate a
541 # each generated HTML page. If it is left blank doxygen will generate a
542 # standard footer.
542 # standard footer.
543
543
544 HTML_FOOTER =
544 HTML_FOOTER =
545
545
546 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
546 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
547 # style sheet that is used by each HTML page. It can be used to
547 # style sheet that is used by each HTML page. It can be used to
548 # fine-tune the look of the HTML output. If the tag is left blank doxygen
548 # fine-tune the look of the HTML output. If the tag is left blank doxygen
549 # will generate a default style sheet. Note that doxygen will try to copy
549 # will generate a default style sheet. Note that doxygen will try to copy
550 # the style sheet file to the HTML output directory, so don't put your own
550 # the style sheet file to the HTML output directory, so don't put your own
551 # stylesheet in the HTML output directory as well, or it will be erased!
551 # stylesheet in the HTML output directory as well, or it will be erased!
552
552
553 HTML_STYLESHEET =
553 HTML_STYLESHEET =
554
554
555 # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
555 # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
556 # files or namespaces will be aligned in HTML using tables. If set to
556 # files or namespaces will be aligned in HTML using tables. If set to
557 # NO a bullet list will be used.
557 # NO a bullet list will be used.
558
558
559 HTML_ALIGN_MEMBERS = YES
559 HTML_ALIGN_MEMBERS = YES
560
560
561 # If the GENERATE_HTMLHELP tag is set to YES, additional index files
561 # If the GENERATE_HTMLHELP tag is set to YES, additional index files
562 # will be generated that can be used as input for tools like the
562 # will be generated that can be used as input for tools like the
563 # Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
563 # Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
564 # of the generated HTML documentation.
564 # of the generated HTML documentation.
565
565
566 GENERATE_HTMLHELP = NO
566 GENERATE_HTMLHELP = NO
567
567
568 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
568 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
569 # be used to specify the file name of the resulting .chm file. You
569 # be used to specify the file name of the resulting .chm file. You
570 # can add a path in front of the file if the result should not be
570 # can add a path in front of the file if the result should not be
571 # written to the html output directory.
571 # written to the html output directory.
572
572
573 CHM_FILE =
573 CHM_FILE =
574
574
575 # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
575 # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
576 # be used to specify the location (absolute path including file name) of
576 # be used to specify the location (absolute path including file name) of
577 # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
577 # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
578 # the HTML help compiler on the generated index.hhp.
578 # the HTML help compiler on the generated index.hhp.
579
579
580 HHC_LOCATION =
580 HHC_LOCATION =
581
581
582 # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
582 # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
583 # controls if a separate .chi index file is generated (YES) or that
583 # controls if a separate .chi index file is generated (YES) or that
584 # it should be included in the master .chm file (NO).
584 # it should be included in the master .chm file (NO).
585
585
586 GENERATE_CHI = NO
586 GENERATE_CHI = NO
587
587
588 # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
588 # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
589 # controls whether a binary table of contents is generated (YES) or a
589 # controls whether a binary table of contents is generated (YES) or a
590 # normal table of contents (NO) in the .chm file.
590 # normal table of contents (NO) in the .chm file.
591
591
592 BINARY_TOC = NO
592 BINARY_TOC = NO
593
593
594 # The TOC_EXPAND flag can be set to YES to add extra items for group members
594 # The TOC_EXPAND flag can be set to YES to add extra items for group members
595 # to the contents of the HTML help documentation and to the tree view.
595 # to the contents of the HTML help documentation and to the tree view.
596
596
597 TOC_EXPAND = NO
597 TOC_EXPAND = NO
598
598
599 # The DISABLE_INDEX tag can be used to turn on/off the condensed index at
599 # The DISABLE_INDEX tag can be used to turn on/off the condensed index at
600 # top of each HTML page. The value NO (the default) enables the index and
600 # top of each HTML page. The value NO (the default) enables the index and
601 # the value YES disables it.
601 # the value YES disables it.
602
602
603 DISABLE_INDEX = NO
603 DISABLE_INDEX = NO
604
604
605 # This tag can be used to set the number of enum values (range [1..20])
605 # This tag can be used to set the number of enum values (range [1..20])
606 # that doxygen will group on one line in the generated HTML documentation.
606 # that doxygen will group on one line in the generated HTML documentation.
607
607
608 ENUM_VALUES_PER_LINE = 4
608 ENUM_VALUES_PER_LINE = 4
609
609
610 # If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
610 # If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
611 # generated containing a tree-like index structure (just like the one that
611 # generated containing a tree-like index structure (just like the one that
612 # is generated for HTML Help). For this to work a browser that supports
612 # is generated for HTML Help). For this to work a browser that supports
613 # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
613 # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
614 # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
614 # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
615 # probably better off using the HTML help feature.
615 # probably better off using the HTML help feature.
616
616
617 GENERATE_TREEVIEW = NO
617 GENERATE_TREEVIEW = NO
618
618
619 # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
619 # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
620 # used to set the initial width (in pixels) of the frame in which the tree
620 # used to set the initial width (in pixels) of the frame in which the tree
621 # is shown.
621 # is shown.
622
622
623 TREEVIEW_WIDTH = 250
623 TREEVIEW_WIDTH = 250
624
624
625 #---------------------------------------------------------------------------
625 #---------------------------------------------------------------------------
626 # configuration options related to the LaTeX output
626 # configuration options related to the LaTeX output
627 #---------------------------------------------------------------------------
627 #---------------------------------------------------------------------------
628
628
629 # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
629 # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
630 # generate Latex output.
630 # generate Latex output.
631
631
632 GENERATE_LATEX = NO
632 GENERATE_LATEX = NO
633
633
634 # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
634 # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
635 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
635 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
636 # put in front of it. If left blank `latex' will be used as the default path.
636 # put in front of it. If left blank `latex' will be used as the default path.
637
637
638 LATEX_OUTPUT = latex
638 LATEX_OUTPUT = latex
639
639
640 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
640 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
641 # invoked. If left blank `latex' will be used as the default command name.
641 # invoked. If left blank `latex' will be used as the default command name.
642
642
643 LATEX_CMD_NAME = latex
643 LATEX_CMD_NAME = latex
644
644
645 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
645 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
646 # generate index for LaTeX. If left blank `makeindex' will be used as the
646 # generate index for LaTeX. If left blank `makeindex' will be used as the
647 # default command name.
647 # default command name.
648
648
649 MAKEINDEX_CMD_NAME = makeindex
649 MAKEINDEX_CMD_NAME = makeindex
650
650
651 # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
651 # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
652 # LaTeX documents. This may be useful for small projects and may help to
652 # LaTeX documents. This may be useful for small projects and may help to
653 # save some trees in general.
653 # save some trees in general.
654
654
655 COMPACT_LATEX = NO
655 COMPACT_LATEX = NO
656
656
657 # The PAPER_TYPE tag can be used to set the paper type that is used
657 # The PAPER_TYPE tag can be used to set the paper type that is used
658 # by the printer. Possible values are: a4, a4wide, letter, legal and
658 # by the printer. Possible values are: a4, a4wide, letter, legal and
659 # executive. If left blank a4wide will be used.
659 # executive. If left blank a4wide will be used.
660
660
661 PAPER_TYPE = a4wide
661 PAPER_TYPE = a4wide
662
662
663 # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
663 # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
664 # packages that should be included in the LaTeX output.
664 # packages that should be included in the LaTeX output.
665
665
666 EXTRA_PACKAGES =
666 EXTRA_PACKAGES =
667
667
668 # The LATEX_HEADER tag can be used to specify a personal LaTeX header for
668 # The LATEX_HEADER tag can be used to specify a personal LaTeX header for
669 # the generated latex document. The header should contain everything until
669 # the generated latex document. The header should contain everything until
670 # the first chapter. If it is left blank doxygen will generate a
670 # the first chapter. If it is left blank doxygen will generate a
671 # standard header. Notice: only use this tag if you know what you are doing!
671 # standard header. Notice: only use this tag if you know what you are doing!
672
672
673 LATEX_HEADER =
673 LATEX_HEADER =
674
674
675 # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
675 # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
676 # is prepared for conversion to pdf (using ps2pdf). The pdf file will
676 # is prepared for conversion to pdf (using ps2pdf). The pdf file will
677 # contain links (just like the HTML output) instead of page references
677 # contain links (just like the HTML output) instead of page references
678 # This makes the output suitable for online browsing using a pdf viewer.
678 # This makes the output suitable for online browsing using a pdf viewer.
679
679
680 PDF_HYPERLINKS = NO
680 PDF_HYPERLINKS = NO
681
681
682 # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
682 # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
683 # plain latex in the generated Makefile. Set this option to YES to get a
683 # plain latex in the generated Makefile. Set this option to YES to get a
684 # higher quality PDF documentation.
684 # higher quality PDF documentation.
685
685
686 USE_PDFLATEX = NO
686 USE_PDFLATEX = NO
687
687
688 # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
688 # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
689 # command to the generated LaTeX files. This will instruct LaTeX to keep
689 # command to the generated LaTeX files. This will instruct LaTeX to keep
690 # running if errors occur, instead of asking the user for help.
690 # running if errors occur, instead of asking the user for help.
691 # This option is also used when generating formulas in HTML.
691 # This option is also used when generating formulas in HTML.
692
692
693 LATEX_BATCHMODE = NO
693 LATEX_BATCHMODE = NO
694
694
695 # If LATEX_HIDE_INDICES is set to YES then doxygen will not
695 # If LATEX_HIDE_INDICES is set to YES then doxygen will not
696 # include the index chapters (such as File Index, Compound Index, etc.)
696 # include the index chapters (such as File Index, Compound Index, etc.)
697 # in the output.
697 # in the output.
698
698
699 LATEX_HIDE_INDICES = NO
699 LATEX_HIDE_INDICES = NO
700
700
701 #---------------------------------------------------------------------------
701 #---------------------------------------------------------------------------
702 # configuration options related to the RTF output
702 # configuration options related to the RTF output
703 #---------------------------------------------------------------------------
703 #---------------------------------------------------------------------------
704
704
705 # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
705 # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
706 # The RTF output is optimized for Word 97 and may not look very pretty with
706 # The RTF output is optimized for Word 97 and may not look very pretty with
707 # other RTF readers or editors.
707 # other RTF readers or editors.
708
708
709 GENERATE_RTF = NO
709 GENERATE_RTF = NO
710
710
711 # The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
711 # The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
712 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
712 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
713 # put in front of it. If left blank `rtf' will be used as the default path.
713 # put in front of it. If left blank `rtf' will be used as the default path.
714
714
715 RTF_OUTPUT = rtf
715 RTF_OUTPUT = rtf
716
716
717 # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
717 # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
718 # RTF documents. This may be useful for small projects and may help to
718 # RTF documents. This may be useful for small projects and may help to
719 # save some trees in general.
719 # save some trees in general.
720
720
721 COMPACT_RTF = NO
721 COMPACT_RTF = NO
722
722
723 # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
723 # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
724 # will contain hyperlink fields. The RTF file will
724 # will contain hyperlink fields. The RTF file will
725 # contain links (just like the HTML output) instead of page references.
725 # contain links (just like the HTML output) instead of page references.
726 # This makes the output suitable for online browsing using WORD or other
726 # This makes the output suitable for online browsing using WORD or other
727 # programs which support those fields.
727 # programs which support those fields.
728 # Note: wordpad (write) and others do not support links.
728 # Note: wordpad (write) and others do not support links.
729
729
730 RTF_HYPERLINKS = NO
730 RTF_HYPERLINKS = NO
731
731
732 # Load stylesheet definitions from file. Syntax is similar to doxygen's
732 # Load stylesheet definitions from file. Syntax is similar to doxygen's
733 # config file, i.e. a series of assignments. You only have to provide
733 # config file, i.e. a series of assignments. You only have to provide
734 # replacements, missing definitions are set to their default value.
734 # replacements, missing definitions are set to their default value.
735
735
736 RTF_STYLESHEET_FILE =
736 RTF_STYLESHEET_FILE =
737
737
738 # Set optional variables used in the generation of an rtf document.
738 # Set optional variables used in the generation of an rtf document.
739 # Syntax is similar to doxygen's config file.
739 # Syntax is similar to doxygen's config file.
740
740
741 RTF_EXTENSIONS_FILE =
741 RTF_EXTENSIONS_FILE =
742
742
743 #---------------------------------------------------------------------------
743 #---------------------------------------------------------------------------
744 # configuration options related to the man page output
744 # configuration options related to the man page output
745 #---------------------------------------------------------------------------
745 #---------------------------------------------------------------------------
746
746
747 # If the GENERATE_MAN tag is set to YES (the default) Doxygen will
747 # If the GENERATE_MAN tag is set to YES (the default) Doxygen will
748 # generate man pages
748 # generate man pages
749
749
750 GENERATE_MAN = NO
750 GENERATE_MAN = NO
751
751
752 # The MAN_OUTPUT tag is used to specify where the man pages will be put.
752 # The MAN_OUTPUT tag is used to specify where the man pages will be put.
753 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
753 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
754 # put in front of it. If left blank `man' will be used as the default path.
754 # put in front of it. If left blank `man' will be used as the default path.
755
755
756 MAN_OUTPUT = man
756 MAN_OUTPUT = man
757
757
758 # The MAN_EXTENSION tag determines the extension that is added to
758 # The MAN_EXTENSION tag determines the extension that is added to
759 # the generated man pages (default is the subroutine's section .3)
759 # the generated man pages (default is the subroutine's section .3)
760
760
761 MAN_EXTENSION = .3
761 MAN_EXTENSION = .3
762
762
763 # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
763 # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
764 # then it will generate one additional man file for each entity
764 # then it will generate one additional man file for each entity
765 # documented in the real man page(s). These additional files
765 # documented in the real man page(s). These additional files
766 # only source the real man page, but without them the man command
766 # only source the real man page, but without them the man command
767 # would be unable to find the correct page. The default is NO.
767 # would be unable to find the correct page. The default is NO.
768
768
769 MAN_LINKS = NO
769 MAN_LINKS = NO
770
770
771 #---------------------------------------------------------------------------
771 #---------------------------------------------------------------------------
772 # configuration options related to the XML output
772 # configuration options related to the XML output
773 #---------------------------------------------------------------------------
773 #---------------------------------------------------------------------------
774
774
775 # If the GENERATE_XML tag is set to YES Doxygen will
775 # If the GENERATE_XML tag is set to YES Doxygen will
776 # generate an XML file that captures the structure of
776 # generate an XML file that captures the structure of
777 # the code including all documentation.
777 # the code including all documentation.
778
778
779 GENERATE_XML = NO
779 GENERATE_XML = NO
780
780
781 # The XML_OUTPUT tag is used to specify where the XML pages will be put.
781 # The XML_OUTPUT tag is used to specify where the XML pages will be put.
782 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
782 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
783 # put in front of it. If left blank `xml' will be used as the default path.
783 # put in front of it. If left blank `xml' will be used as the default path.
784
784
785 XML_OUTPUT = xml
785 XML_OUTPUT = xml
786
786
787 # The XML_SCHEMA tag can be used to specify an XML schema,
787 # The XML_SCHEMA tag can be used to specify an XML schema,
788 # which can be used by a validating XML parser to check the
788 # which can be used by a validating XML parser to check the
789 # syntax of the XML files.
789 # syntax of the XML files.
790
790
791 XML_SCHEMA =
791 XML_SCHEMA =
792
792
793 # The XML_DTD tag can be used to specify an XML DTD,
793 # The XML_DTD tag can be used to specify an XML DTD,
794 # which can be used by a validating XML parser to check the
794 # which can be used by a validating XML parser to check the
795 # syntax of the XML files.
795 # syntax of the XML files.
796
796
797 XML_DTD =
797 XML_DTD =
798
798
799 # If the XML_PROGRAMLISTING tag is set to YES Doxygen will
799 # If the XML_PROGRAMLISTING tag is set to YES Doxygen will
800 # dump the program listings (including syntax highlighting
800 # dump the program listings (including syntax highlighting
801 # and cross-referencing information) to the XML output. Note that
801 # and cross-referencing information) to the XML output. Note that
802 # enabling this will significantly increase the size of the XML output.
802 # enabling this will significantly increase the size of the XML output.
803
803
804 XML_PROGRAMLISTING = YES
804 XML_PROGRAMLISTING = YES
805
805
806 #---------------------------------------------------------------------------
806 #---------------------------------------------------------------------------
807 # configuration options for the AutoGen Definitions output
807 # configuration options for the AutoGen Definitions output
808 #---------------------------------------------------------------------------
808 #---------------------------------------------------------------------------
809
809
810 # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
810 # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
811 # generate an AutoGen Definitions (see autogen.sf.net) file
811 # generate an AutoGen Definitions (see autogen.sf.net) file
812 # that captures the structure of the code including all
812 # that captures the structure of the code including all
813 # documentation. Note that this feature is still experimental
813 # documentation. Note that this feature is still experimental
814 # and incomplete at the moment.
814 # and incomplete at the moment.
815
815
816 GENERATE_AUTOGEN_DEF = NO
816 GENERATE_AUTOGEN_DEF = NO
817
817
818 #---------------------------------------------------------------------------
818 #---------------------------------------------------------------------------
819 # configuration options related to the Perl module output
819 # configuration options related to the Perl module output
820 #---------------------------------------------------------------------------
820 #---------------------------------------------------------------------------
821
821
822 # If the GENERATE_PERLMOD tag is set to YES Doxygen will
822 # If the GENERATE_PERLMOD tag is set to YES Doxygen will
823 # generate a Perl module file that captures the structure of
823 # generate a Perl module file that captures the structure of
824 # the code including all documentation. Note that this
824 # the code including all documentation. Note that this
825 # feature is still experimental and incomplete at the
825 # feature is still experimental and incomplete at the
826 # moment.
826 # moment.
827
827
828 GENERATE_PERLMOD = NO
828 GENERATE_PERLMOD = NO
829
829
830 # If the PERLMOD_LATEX tag is set to YES Doxygen will generate
830 # If the PERLMOD_LATEX tag is set to YES Doxygen will generate
831 # the necessary Makefile rules, Perl scripts and LaTeX code to be able
831 # the necessary Makefile rules, Perl scripts and LaTeX code to be able
832 # to generate PDF and DVI output from the Perl module output.
832 # to generate PDF and DVI output from the Perl module output.
833
833
834 PERLMOD_LATEX = NO
834 PERLMOD_LATEX = NO
835
835
836 # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
836 # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
837 # nicely formatted so it can be parsed by a human reader. This is useful
837 # nicely formatted so it can be parsed by a human reader. This is useful
838 # if you want to understand what is going on. On the other hand, if this
838 # if you want to understand what is going on. On the other hand, if this
839 # tag is set to NO the size of the Perl module output will be much smaller
839 # tag is set to NO the size of the Perl module output will be much smaller
840 # and Perl will parse it just the same.
840 # and Perl will parse it just the same.
841
841
842 PERLMOD_PRETTY = YES
842 PERLMOD_PRETTY = YES
843
843
844 # The names of the make variables in the generated doxyrules.make file
844 # The names of the make variables in the generated doxyrules.make file
845 # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
845 # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
846 # This is useful so different doxyrules.make files included by the same
846 # This is useful so different doxyrules.make files included by the same
847 # Makefile don't overwrite each other's variables.
847 # Makefile don't overwrite each other's variables.
848
848
849 PERLMOD_MAKEVAR_PREFIX =
849 PERLMOD_MAKEVAR_PREFIX =
850
850
851 #---------------------------------------------------------------------------
851 #---------------------------------------------------------------------------
852 # Configuration options related to the preprocessor
852 # Configuration options related to the preprocessor
853 #---------------------------------------------------------------------------
853 #---------------------------------------------------------------------------
854
854
855 # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
855 # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
856 # evaluate all C-preprocessor directives found in the sources and include
856 # evaluate all C-preprocessor directives found in the sources and include
857 # files.
857 # files.
858
858
859 ENABLE_PREPROCESSING = YES
859 ENABLE_PREPROCESSING = YES
860
860
861 # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
861 # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
862 # names in the source code. If set to NO (the default) only conditional
862 # names in the source code. If set to NO (the default) only conditional
863 # compilation will be performed. Macro expansion can be done in a controlled
863 # compilation will be performed. Macro expansion can be done in a controlled
864 # way by setting EXPAND_ONLY_PREDEF to YES.
864 # way by setting EXPAND_ONLY_PREDEF to YES.
865
865
866 MACRO_EXPANSION = YES
866 MACRO_EXPANSION = YES
867
867
868 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
868 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
869 # then the macro expansion is limited to the macros specified with the
869 # then the macro expansion is limited to the macros specified with the
870 # PREDEFINED and EXPAND_AS_PREDEFINED tags.
870 # PREDEFINED and EXPAND_AS_PREDEFINED tags.
871
871
872 EXPAND_ONLY_PREDEF = YES
872 EXPAND_ONLY_PREDEF = YES
873
873
874 # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
874 # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
875 # in the INCLUDE_PATH (see below) will be search if a #include is found.
875 # in the INCLUDE_PATH (see below) will be search if a #include is found.
876
876
877 SEARCH_INCLUDES = YES
877 SEARCH_INCLUDES = YES
878
878
879 # The INCLUDE_PATH tag can be used to specify one or more directories that
879 # The INCLUDE_PATH tag can be used to specify one or more directories that
880 # contain include files that are not input files but should be processed by
880 # contain include files that are not input files but should be processed by
881 # the preprocessor.
881 # the preprocessor.
882
882
883 INCLUDE_PATH = $(QTDIR)/include
883 INCLUDE_PATH = $(QTDIR)/include
884
884
885 # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
885 # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
886 # patterns (like *.h and *.hpp) to filter out the header-files in the
886 # patterns (like *.h and *.hpp) to filter out the header-files in the
887 # directories. If left blank, the patterns specified with FILE_PATTERNS will
887 # directories. If left blank, the patterns specified with FILE_PATTERNS will
888 # be used.
888 # be used.
889
889
890 INCLUDE_FILE_PATTERNS = *.h
890 INCLUDE_FILE_PATTERNS = *.h
891
891
892 # The PREDEFINED tag can be used to specify one or more macro names that
892 # The PREDEFINED tag can be used to specify one or more macro names that
893 # are defined before the preprocessor is started (similar to the -D option of
893 # are defined before the preprocessor is started (similar to the -D option of
894 # gcc). The argument of the tag is a list of macros of the form: name
894 # gcc). The argument of the tag is a list of macros of the form: name
895 # or name=definition (no spaces). If the definition and the = are
895 # or name=definition (no spaces). If the definition and the = are
896 # omitted =1 is assumed.
896 # omitted =1 is assumed.
897
897
898 PREDEFINED =
898 PREDEFINED =
899
899
900 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
900 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
901 # this tag can be used to specify a list of macro names that should be expanded.
901 # this tag can be used to specify a list of macro names that should be expanded.
902 # The macro definition that is found in the sources will be used.
902 # The macro definition that is found in the sources will be used.
903 # Use the PREDEFINED tag if you want to use a different macro definition.
903 # Use the PREDEFINED tag if you want to use a different macro definition.
904
904
905 EXPAND_AS_DEFINED =
905 EXPAND_AS_DEFINED =
906
906
907 # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
907 # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
908 # doxygen's preprocessor will remove all function-like macros that are alone
908 # doxygen's preprocessor will remove all function-like macros that are alone
909 # on a line, have an all uppercase name, and do not end with a semicolon. Such
909 # on a line, have an all uppercase name, and do not end with a semicolon. Such
910 # function macros are typically used for boiler-plate code, and will confuse the
910 # function macros are typically used for boiler-plate code, and will confuse the
911 # parser if not removed.
911 # parser if not removed.
912
912
913 SKIP_FUNCTION_MACROS = YES
913 SKIP_FUNCTION_MACROS = YES
914
914
915 #---------------------------------------------------------------------------
915 #---------------------------------------------------------------------------
916 # Configuration::addtions related to external references
916 # Configuration::addtions related to external references
917 #---------------------------------------------------------------------------
917 #---------------------------------------------------------------------------
918
918
919 # The TAGFILES option can be used to specify one or more tagfiles.
919 # The TAGFILES option can be used to specify one or more tagfiles.
920 # Optionally an initial location of the external documentation
920 # Optionally an initial location of the external documentation
921 # can be added for each tagfile. The format of a tag file without
921 # can be added for each tagfile. The format of a tag file without
922 # this location is as follows:
922 # this location is as follows:
923 # TAGFILES = file1 file2 ...
923 # TAGFILES = file1 file2 ...
924 # Adding location for the tag files is done as follows:
924 # Adding location for the tag files is done as follows:
925 # TAGFILES = file1=loc1 "file2 = loc2" ...
925 # TAGFILES = file1=loc1 "file2 = loc2" ...
926 # where "loc1" and "loc2" can be relative or absolute paths or
926 # where "loc1" and "loc2" can be relative or absolute paths or
927 # URLs. If a location is present for each tag, the installdox tool
927 # URLs. If a location is present for each tag, the installdox tool
928 # does not have to be run to correct the links.
928 # does not have to be run to correct the links.
929 # Note that each tag file must have a unique name
929 # Note that each tag file must have a unique name
930 # (where the name does NOT include the path)
930 # (where the name does NOT include the path)
931 # If a tag file is not located in the directory in which doxygen
931 # If a tag file is not located in the directory in which doxygen
932 # is run, you must also specify the path to the tagfile here.
932 # is run, you must also specify the path to the tagfile here.
933
933
934 TAGFILES =
934 TAGFILES =
935
935
936 # When a file name is specified after GENERATE_TAGFILE, doxygen will create
936 # When a file name is specified after GENERATE_TAGFILE, doxygen will create
937 # a tag file that is based on the input files it reads.
937 # a tag file that is based on the input files it reads.
938
938
939 GENERATE_TAGFILE =
939 GENERATE_TAGFILE =
940
940
941 # If the ALLEXTERNALS tag is set to YES all external classes will be listed
941 # If the ALLEXTERNALS tag is set to YES all external classes will be listed
942 # in the class index. If set to NO only the inherited external classes
942 # in the class index. If set to NO only the inherited external classes
943 # will be listed.
943 # will be listed.
944
944
945 ALLEXTERNALS = NO
945 ALLEXTERNALS = NO
946
946
947 # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
947 # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
948 # in the modules index. If set to NO, only the current project's groups will
948 # in the modules index. If set to NO, only the current project's groups will
949 # be listed.
949 # be listed.
950
950
951 EXTERNAL_GROUPS = YES
951 EXTERNAL_GROUPS = YES
952
952
953 # The PERL_PATH should be the absolute path and name of the perl script
953 # The PERL_PATH should be the absolute path and name of the perl script
954 # interpreter (i.e. the result of `which perl').
954 # interpreter (i.e. the result of `which perl').
955
955
956 PERL_PATH = /usr/bin/perl
956 PERL_PATH = /usr/bin/perl
957
957
958 #---------------------------------------------------------------------------
958 #---------------------------------------------------------------------------
959 # Configuration options related to the dot tool
959 # Configuration options related to the dot tool
960 #---------------------------------------------------------------------------
960 #---------------------------------------------------------------------------
961
961
962 # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
962 # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
963 # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
963 # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
964 # super classes. Setting the tag to NO turns the diagrams off. Note that this
964 # super classes. Setting the tag to NO turns the diagrams off. Note that this
965 # option is superseded by the HAVE_DOT option below. This is only a fallback. It is
965 # option is superseded by the HAVE_DOT option below. This is only a fallback. It is
966 # recommended to install and use dot, since it yields more powerful graphs.
966 # recommended to install and use dot, since it yields more powerful graphs.
967
967
968 CLASS_DIAGRAMS = YES
968 CLASS_DIAGRAMS = YES
969
969
970 # If set to YES, the inheritance and collaboration graphs will hide
970 # If set to YES, the inheritance and collaboration graphs will hide
971 # inheritance and usage relations if the target is undocumented
971 # inheritance and usage relations if the target is undocumented
972 # or is not a class.
972 # or is not a class.
973
973
974 HIDE_UNDOC_RELATIONS = YES
974 HIDE_UNDOC_RELATIONS = YES
975
975
976 # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
976 # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
977 # available from the path. This tool is part of Graphviz, a graph visualization
977 # available from the path. This tool is part of Graphviz, a graph visualization
978 # toolkit from AT&T and Lucent Bell Labs. The other options in this section
978 # toolkit from AT&T and Lucent Bell Labs. The other options in this section
979 # have no effect if this option is set to NO (the default)
979 # have no effect if this option is set to NO (the default)
980
980
981 HAVE_DOT = NO
981 HAVE_DOT = NO
982
982
983 # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
983 # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
984 # will generate a graph for each documented class showing the direct and
984 # will generate a graph for each documented class showing the direct and
985 # indirect inheritance relations. Setting this tag to YES will force the
985 # indirect inheritance relations. Setting this tag to YES will force the
986 # the CLASS_DIAGRAMS tag to NO.
986 # the CLASS_DIAGRAMS tag to NO.
987
987
988 CLASS_GRAPH = YES
988 CLASS_GRAPH = YES
989
989
990 # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
990 # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
991 # will generate a graph for each documented class showing the direct and
991 # will generate a graph for each documented class showing the direct and
992 # indirect implementation dependencies (inheritance, containment, and
992 # indirect implementation dependencies (inheritance, containment, and
993 # class references variables) of the class with other documented classes.
993 # class references variables) of the class with other documented classes.
994
994
995 COLLABORATION_GRAPH = YES
995 COLLABORATION_GRAPH = YES
996
996
997 # If the UML_LOOK tag is set to YES doxygen will generate inheritance and
997 # If the UML_LOOK tag is set to YES doxygen will generate inheritance and
998 # collaboration diagrams in a style similar to the OMG's Unified Modeling
998 # collaboration diagrams in a style similar to the OMG's Unified Modeling
999 # Language.
999 # Language.
1000
1000
1001 UML_LOOK = NO
1001 UML_LOOK = NO
1002
1002
1003 # If set to YES, the inheritance and collaboration graphs will show the
1003 # If set to YES, the inheritance and collaboration graphs will show the
1004 # relations between templates and their instances.
1004 # relations between templates and their instances.
1005
1005
1006 TEMPLATE_RELATIONS = NO
1006 TEMPLATE_RELATIONS = NO
1007
1007
1008 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
1008 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
1009 # tags are set to YES then doxygen will generate a graph for each documented
1009 # tags are set to YES then doxygen will generate a graph for each documented
1010 # file showing the direct and indirect include dependencies of the file with
1010 # file showing the direct and indirect include dependencies of the file with
1011 # other documented files.
1011 # other documented files.
1012
1012
1013 INCLUDE_GRAPH = YES
1013 INCLUDE_GRAPH = YES
1014
1014
1015 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
1015 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
1016 # HAVE_DOT tags are set to YES then doxygen will generate a graph for each
1016 # HAVE_DOT tags are set to YES then doxygen will generate a graph for each
1017 # documented header file showing the documented files that directly or
1017 # documented header file showing the documented files that directly or
1018 # indirectly include this file.
1018 # indirectly include this file.
1019
1019
1020 INCLUDED_BY_GRAPH = YES
1020 INCLUDED_BY_GRAPH = YES
1021
1021
1022 # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
1022 # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
1023 # generate a call dependency graph for every global function or class method.
1023 # generate a call dependency graph for every global function or class method.
1024 # Note that enabling this option will significantly increase the time of a run.
1024 # Note that enabling this option will significantly increase the time of a run.
1025 # So in most cases it will be better to enable call graphs for selected
1025 # So in most cases it will be better to enable call graphs for selected
1026 # functions only using the \callgraph command.
1026 # functions only using the \callgraph command.
1027
1027
1028 CALL_GRAPH = NO
1028 CALL_GRAPH = NO
1029
1029
1030 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
1030 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
1031 # will graphical hierarchy of all classes instead of a textual one.
1031 # will graphical hierarchy of all classes instead of a textual one.
1032
1032
1033 GRAPHICAL_HIERARCHY = YES
1033 GRAPHICAL_HIERARCHY = YES
1034
1034
1035 # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
1035 # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
1036 # generated by dot. Possible values are png, jpg, or gif
1036 # generated by dot. Possible values are png, jpg, or gif
1037 # If left blank png will be used.
1037 # If left blank png will be used.
1038
1038
1039 DOT_IMAGE_FORMAT = png
1039 DOT_IMAGE_FORMAT = png
1040
1040
1041 # The tag DOT_PATH can be used to specify the path where the dot tool can be
1041 # The tag DOT_PATH can be used to specify the path where the dot tool can be
1042 # found. If left blank, it is assumed the dot tool can be found on the path.
1042 # found. If left blank, it is assumed the dot tool can be found on the path.
1043
1043
1044 DOT_PATH =
1044 DOT_PATH =
1045
1045
1046 # The DOTFILE_DIRS tag can be used to specify one or more directories that
1046 # The DOTFILE_DIRS tag can be used to specify one or more directories that
1047 # contain dot files that are included in the documentation (see the
1047 # contain dot files that are included in the documentation (see the
1048 # \dotfile command).
1048 # \dotfile command).
1049
1049
1050 DOTFILE_DIRS =
1050 DOTFILE_DIRS =
1051
1051
1052 # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
1052 # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
1053 # (in pixels) of the graphs generated by dot. If a graph becomes larger than
1053 # (in pixels) of the graphs generated by dot. If a graph becomes larger than
1054 # this value, doxygen will try to truncate the graph, so that it fits within
1054 # this value, doxygen will try to truncate the graph, so that it fits within
1055 # the specified constraint. Beware that most browsers cannot cope with very
1055 # the specified constraint. Beware that most browsers cannot cope with very
1056 # large images.
1056 # large images.
1057
1057
1058 MAX_DOT_GRAPH_WIDTH = 1024
1058 MAX_DOT_GRAPH_WIDTH = 1024
1059
1059
1060 # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
1060 # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
1061 # (in pixels) of the graphs generated by dot. If a graph becomes larger than
1061 # (in pixels) of the graphs generated by dot. If a graph becomes larger than
1062 # this value, doxygen will try to truncate the graph, so that it fits within
1062 # this value, doxygen will try to truncate the graph, so that it fits within
1063 # the specified constraint. Beware that most browsers cannot cope with very
1063 # the specified constraint. Beware that most browsers cannot cope with very
1064 # large images.
1064 # large images.
1065
1065
1066 MAX_DOT_GRAPH_HEIGHT = 1024
1066 MAX_DOT_GRAPH_HEIGHT = 1024
1067
1067
1068 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
1068 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
1069 # graphs generated by dot. A depth value of 3 means that only nodes reachable
1069 # graphs generated by dot. A depth value of 3 means that only nodes reachable
1070 # from the root by following a path via at most 3 edges will be shown. Nodes that
1070 # from the root by following a path via at most 3 edges will be shown. Nodes that
1071 # lay further from the root node will be omitted. Note that setting this option to
1071 # lay further from the root node will be omitted. Note that setting this option to
1072 # 1 or 2 may greatly reduce the computation time needed for large code bases. Also
1072 # 1 or 2 may greatly reduce the computation time needed for large code bases. Also
1073 # note that a graph may be further truncated if the graph's image dimensions are
1073 # note that a graph may be further truncated if the graph's image dimensions are
1074 # not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
1074 # not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
1075 # If 0 is used for the depth value (the default), the graph is not depth-constrained.
1075 # If 0 is used for the depth value (the default), the graph is not depth-constrained.
1076
1076
1077 MAX_DOT_GRAPH_DEPTH = 0
1077 MAX_DOT_GRAPH_DEPTH = 0
1078
1078
1079 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
1079 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
1080 # generate a legend page explaining the meaning of the various boxes and
1080 # generate a legend page explaining the meaning of the various boxes and
1081 # arrows in the dot generated graphs.
1081 # arrows in the dot generated graphs.
1082
1082
1083 GENERATE_LEGEND = YES
1083 GENERATE_LEGEND = YES
1084
1084
1085 # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
1085 # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
1086 # remove the intermediate dot files that are used to generate
1086 # remove the intermediate dot files that are used to generate
1087 # the various graphs.
1087 # the various graphs.
1088
1088
1089 DOT_CLEANUP = YES
1089 DOT_CLEANUP = YES
1090
1090
1091 #---------------------------------------------------------------------------
1091 #---------------------------------------------------------------------------
1092 # Configuration::addtions related to the search engine
1092 # Configuration::addtions related to the search engine
1093 #---------------------------------------------------------------------------
1093 #---------------------------------------------------------------------------
1094
1094
1095 # The SEARCHENGINE tag specifies whether or not a search engine should be
1095 # The SEARCHENGINE tag specifies whether or not a search engine should be
1096 # used. If set to NO the values of all tags below this one will be ignored.
1096 # used. If set to NO the values of all tags below this one will be ignored.
1097
1097
1098 SEARCHENGINE = NO
1098 SEARCHENGINE = NO
@@ -1,84 +1,96
1 /*
1 /*
2 *
2 *
3 * Copyright (C) 2006 MeVis Research GmbH All Rights Reserved.
3 * Copyright (C) 2006 MeVis Research GmbH All Rights Reserved.
4 *
4 *
5 * This library is free software; you can redistribute it and/or
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
8 * version 2.1 of the License, or (at your option) any later version.
9 *
9 *
10 * This library is distributed in the hope that it will be useful,
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
13 * Lesser General Public License for more details.
14 *
14 *
15 * Further, this software is distributed without any warranty that it is
15 * Further, this software is distributed without any warranty that it is
16 * free of the rightful claim of any third person regarding infringement
16 * free of the rightful claim of any third person regarding infringement
17 * or the like. Any license provided herein, whether implied or
17 * or the like. Any license provided herein, whether implied or
18 * otherwise, applies only to this software file. Patent licenses, if
18 * otherwise, applies only to this software file. Patent licenses, if
19 * any, provided herein do not apply to combinations of this program with
19 * any, provided herein do not apply to combinations of this program with
20 * other software, or any other product whatsoever.
20 * other software, or any other product whatsoever.
21 *
21 *
22 * You should have received a copy of the GNU Lesser General Public
22 * You should have received a copy of the GNU Lesser General Public
23 * License along with this library; if not, write to the Free Software
23 * License along with this library; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 *
25 *
26 * Contact information: MeVis Research GmbH, Universitaetsallee 29,
26 * Contact information: MeVis Research GmbH, Universitaetsallee 29,
27 * 28359 Bremen, Germany or:
27 * 28359 Bremen, Germany or:
28 *
28 *
29 * http://www.mevis.de
29 * http://www.mevis.de
30 *
30 *
31 */
31 */
32
32
33 //----------------------------------------------------------------------------------
33 //----------------------------------------------------------------------------------
34 /*!
34 /*!
35 // \file PythonQtObjectPtr.cpp
35 // \file PythonQtObjectPtr.cpp
36 // \author Florian Link
36 // \author Florian Link
37 // \author Last changed by $Author: florian $
37 // \author Last changed by $Author: florian $
38 // \date 2006-05
38 // \date 2006-05
39 */
39 */
40 //----------------------------------------------------------------------------------
40 //----------------------------------------------------------------------------------
41
41
42 #include <PythonQt.h>
42 #include <PythonQt.h>
43
43
44 QVariant PythonQtObjectPtr::evalScript(const QString& script, int start)
44 QVariant PythonQtObjectPtr::evalScript(const QString& script, int start)
45 {
45 {
46 return PythonQt::self()->evalScript(_object, script, start);
46 return PythonQt::self()->evalScript(_object, script, start);
47 }
47 }
48
48
49 void PythonQtObjectPtr::evalFile(const QString& file)
49 void PythonQtObjectPtr::evalFile(const QString& file)
50 {
50 {
51 PythonQt::self()->evalFile(_object, file);
51 PythonQt::self()->evalFile(_object, file);
52 }
52 }
53
53
54 QVariant PythonQtObjectPtr::evalCode(PyObject* pycode)
54 QVariant PythonQtObjectPtr::evalCode(PyObject* pycode)
55 {
55 {
56 return PythonQt::self()->evalCode(_object, pycode);
56 return PythonQt::self()->evalCode(_object, pycode);
57 }
57 }
58
58
59 void PythonQtObjectPtr::addObject(const QString& name, QObject* object)
59 void PythonQtObjectPtr::addObject(const QString& name, QObject* object)
60 {
60 {
61 PythonQt::self()->addObject(_object, name, object);
61 PythonQt::self()->addObject(_object, name, object);
62 }
62 }
63
63
64 void PythonQtObjectPtr::addVariable(const QString& name, const QVariant& v)
64 void PythonQtObjectPtr::addVariable(const QString& name, const QVariant& v)
65 {
65 {
66 PythonQt::self()->addVariable(_object, name, v);
66 PythonQt::self()->addVariable(_object, name, v);
67 }
67 }
68
68
69 void PythonQtObjectPtr::removeVariable(const QString& name)
69 void PythonQtObjectPtr::removeVariable(const QString& name)
70 {
70 {
71 PythonQt::self()->removeVariable(_object, name);
71 PythonQt::self()->removeVariable(_object, name);
72 }
72 }
73
73
74 QVariant PythonQtObjectPtr::getVariable(const QString& name)
74 QVariant PythonQtObjectPtr::getVariable(const QString& name)
75 {
75 {
76 return PythonQt::self()->getVariable(_object, name);
76 return PythonQt::self()->getVariable(_object, name);
77 }
77 }
78
78
79
79
80 QVariant PythonQtObjectPtr::call(const QString& callable, const QVariantList& args)
80 QVariant PythonQtObjectPtr::call(const QString& callable, const QVariantList& args)
81 {
81 {
82 return PythonQt::self()->call(_object, callable, args);
82 return PythonQt::self()->call(_object, callable, args);
83 }
83 }
84
84
85 bool PythonQtObjectPtr::fromVariant(const QVariant& variant)
86 {
87 if (!variant.isNull()) {
88 setObject(qVariantValue<PythonQtObjectPtr>(variant));
89 return true;
90 }
91 else {
92 setObject(0);
93 return false;
94 }
95
96 }
@@ -1,155 +1,172
1 #ifndef _PYTHONQTOBJECTPTR_H
1 #ifndef _PYTHONQTOBJECTPTR_H
2 #define _PYTHONQTOBJECTPTR_H
2 #define _PYTHONQTOBJECTPTR_H
3
3
4 /*
4 /*
5 *
5 *
6 * Copyright (C) 2006 MeVis Research GmbH All Rights Reserved.
6 * Copyright (C) 2006 MeVis Research GmbH All Rights Reserved.
7 *
7 *
8 * This library is free software; you can redistribute it and/or
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
11 * version 2.1 of the License, or (at your option) any later version.
12 *
12 *
13 * This library is distributed in the hope that it will be useful,
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
16 * Lesser General Public License for more details.
17 *
17 *
18 * Further, this software is distributed without any warranty that it is
18 * Further, this software is distributed without any warranty that it is
19 * free of the rightful claim of any third person regarding infringement
19 * free of the rightful claim of any third person regarding infringement
20 * or the like. Any license provided herein, whether implied or
20 * or the like. Any license provided herein, whether implied or
21 * otherwise, applies only to this software file. Patent licenses, if
21 * otherwise, applies only to this software file. Patent licenses, if
22 * any, provided herein do not apply to combinations of this program with
22 * any, provided herein do not apply to combinations of this program with
23 * other software, or any other product whatsoever.
23 * other software, or any other product whatsoever.
24 *
24 *
25 * You should have received a copy of the GNU Lesser General Public
25 * You should have received a copy of the GNU Lesser General Public
26 * License along with this library; if not, write to the Free Software
26 * License along with this library; if not, write to the Free Software
27 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
27 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
28 *
28 *
29 * Contact information: MeVis Research GmbH, Universitaetsallee 29,
29 * Contact information: MeVis Research GmbH, Universitaetsallee 29,
30 * 28359 Bremen, Germany or:
30 * 28359 Bremen, Germany or:
31 *
31 *
32 * http://www.mevis.de
32 * http://www.mevis.de
33 *
33 *
34 */
34 */
35
35
36 //----------------------------------------------------------------------------------
36 //----------------------------------------------------------------------------------
37 /*!
37 /*!
38 // \file PythonQtObjectPtr.h
38 // \file PythonQtObjectPtr.h
39 // \author Florian Link
39 // \author Florian Link
40 // \author Last changed by $Author: florian $
40 // \author Last changed by $Author: florian $
41 // \date 2006-05
41 // \date 2006-05
42 */
42 */
43 //----------------------------------------------------------------------------------
43 //----------------------------------------------------------------------------------
44
44
45 #include <Python.h>
45 #include <Python.h>
46 #include "PythonQtSystem.h"
46 #include "PythonQtSystem.h"
47
47
48 //! a smart pointer that stores a PyObject pointer and that handles reference counting automatically
48 //! a smart pointer that stores a PyObject pointer and that handles reference counting automatically
49 class PYTHONQT_EXPORT PythonQtObjectPtr
49 class PYTHONQT_EXPORT PythonQtObjectPtr
50 {
50 {
51 public:
51 public:
52 PythonQtObjectPtr():_object(NULL) {}
52 PythonQtObjectPtr():_object(NULL) {}
53
53
54 PythonQtObjectPtr(const PythonQtObjectPtr &p):_object(NULL) {
54 PythonQtObjectPtr(const PythonQtObjectPtr &p):_object(NULL) {
55 setObject(p.object());
55 setObject(p.object());
56 }
56 }
57
57
58 //! If the given variant holds a PythonQtObjectPtr, extract the value from it and hold onto the reference. This results in an increment of the reference count.
59 PythonQtObjectPtr(const QVariant& variant):_object(NULL) {
60 fromVariant(variant);
61 }
62
58 PythonQtObjectPtr(PyObject* o) {
63 PythonQtObjectPtr(PyObject* o) {
59 _object = o;
64 _object = o;
60 if (o) Py_INCREF(_object);
65 if (o) Py_INCREF(_object);
61 }
66 }
62
67
63 ~PythonQtObjectPtr() { if (_object) Py_DECREF(_object); }
68 ~PythonQtObjectPtr() { if (_object) Py_DECREF(_object); }
64
69
70 //! If the given variant holds a PythonQtObjectPtr, extract the value from it and hold onto the reference. This results in an increment of the reference count.
71 bool fromVariant(const QVariant& variant);
72
65 PythonQtObjectPtr &operator=(const PythonQtObjectPtr &p) {
73 PythonQtObjectPtr &operator=(const PythonQtObjectPtr &p) {
66 setObject(p.object());
74 setObject(p.object());
67 return *this;
75 return *this;
68 }
76 }
69
77
70 PythonQtObjectPtr &operator=(PyObject* o) {
78 PythonQtObjectPtr &operator=(PyObject* o) {
71 setObject(o);
79 setObject(o);
72 return *this;
80 return *this;
73 }
81 }
74
82
83
84 PythonQtObjectPtr &operator=(const QVariant& variant) {
85 fromVariant(variant);
86 return *this;
87 }
88
89
75 bool operator==( const PythonQtObjectPtr &p ) const {
90 bool operator==( const PythonQtObjectPtr &p ) const {
76 return object() == p.object();
91 return object() == p.object();
77 }
92 }
78
93
79 bool operator!= ( const PythonQtObjectPtr& p ) const {
94 bool operator!= ( const PythonQtObjectPtr& p ) const {
80 return !( *this == p );
95 return !( *this == p );
81 }
96 }
82
97
83 bool operator==( PyObject* p ) const {
98 bool operator==( PyObject* p ) const {
84 return object() == p;
99 return object() == p;
85 }
100 }
86
101
87 bool operator!= ( PyObject* p ) const {
102 bool operator!= ( PyObject* p ) const {
88 return object() != p;
103 return object() != p;
89 }
104 }
90
105
91 bool isNull() const { return !object(); }
106 bool isNull() const { return !object(); }
92
107
93 PyObject* operator->() const { return object(); }
108 PyObject* operator->() const { return object(); }
94
109
95 PyObject& operator*() const { return *( object() ); }
110 PyObject& operator*() const { return *( object() ); }
96
111
97 operator PyObject*() const { return object(); }
112 operator PyObject*() const { return object(); }
98
113
99 //! sets the object and passes the ownership (stealing the reference, in Python slang)
114 //! sets the object and passes the ownership (stealing the reference, in Python slang)
100 void setNewRef(PyObject* o) {
115 void setNewRef(PyObject* o) {
101 if (o != _object) {
116 if (o != _object) {
102 if (_object) Py_DECREF(_object);
117 if (_object) Py_DECREF(_object);
103 _object = o;
118 _object = o;
104 }
119 }
105 }
120 }
106
121
107 PyObject* object() const {
122 PyObject* object() const {
108 return _object;
123 return _object;
109 }
124 }
110
125
111 //! evaluates the given script code in the context of this object and returns the result value
126 //! evaluates the given script code in the context of this object and returns the result value
112 QVariant evalScript(const QString& script, int start = Py_file_input);
127 QVariant evalScript(const QString& script, int start = Py_file_input);
113
128
114 //! evaluates the given code and returns the result value (use Py_Compile etc. to create pycode from string)
129 //! evaluates the given code and returns the result value (use Py_Compile etc. to create pycode from string)
115 //! If pycode is NULL, a python error is printed.
130 //! If pycode is NULL, a python error is printed.
116 QVariant evalCode(PyObject* pycode);
131 QVariant evalCode(PyObject* pycode);
117
132
118 //! evaluates the given code in the context
133 //! evaluates the given code in the context
119 void evalFile(const QString& filename);
134 void evalFile(const QString& filename);
120
135
121 //! add the given \c object to the \c module as a variable with \c name (it can be removed via clearVariable)
136 //! add the given \c object to the \c module as a variable with \c name (it can be removed via clearVariable)
122 void addObject(const QString& name, QObject* object);
137 void addObject(const QString& name, QObject* object);
123
138
124 //! add the given variable to the module
139 //! add the given variable to the module
125 void addVariable(const QString& name, const QVariant& v);
140 void addVariable(const QString& name, const QVariant& v);
126
141
127 //! remove the given variable
142 //! remove the given variable
128 void removeVariable(const QString& name);
143 void removeVariable(const QString& name);
129
144
130 //! get the variable with the \c name of the \c module, returns an invalid QVariant on error
145 //! get the variable with the \c name of the \c module, returns an invalid QVariant on error
131 QVariant getVariable(const QString& name);
146 QVariant getVariable(const QString& name);
132
147
133 //! call the given python object (in the scope of the current object), returns the result converted to a QVariant
148 //! call the given python object (in the scope of the current object), returns the result converted to a QVariant
134 QVariant call(const QString& callable, const QVariantList& args);
149 QVariant call(const QString& callable, const QVariantList& args);
135
150
151
152
136
153
137 protected:
154 protected:
138
155
139 void setObject(PyObject* o) {
156 void setObject(PyObject* o) {
140 if (o != _object) {
157 if (o != _object) {
141 if (_object) Py_DECREF(_object);
158 if (_object) Py_DECREF(_object);
142 _object = o;
159 _object = o;
143 if (_object) Py_INCREF(_object);
160 if (_object) Py_INCREF(_object);
144 }
161 }
145 }
162 }
146
163
147 private:
164 private:
148 PyObject* _object;
165 PyObject* _object;
149 };
166 };
150
167
151
168
152 // register it to the meta type system
169 // register it to the meta type system
153 Q_DECLARE_METATYPE(PythonQtObjectPtr)
170 Q_DECLARE_METATYPE(PythonQtObjectPtr)
154
171
155 #endif No newline at end of file
172 #endif
General Comments 0
You need to be logged in to leave comments. Login now