itom 2.2.1
K:/git-itom/sources/itom/Qitom/global.h
00001 /* ********************************************************************
00002     itom software
00003     URL: http://www.uni-stuttgart.de/ito
00004     Copyright (C) 2016, Institut fuer Technische Optik (ITO),
00005     Universitaet Stuttgart, Germany
00006 
00007     This file is part of itom.
00008   
00009     itom is free software; you can redistribute it and/or modify it
00010     under the terms of the GNU Library General Public Licence as published by
00011     the Free Software Foundation; either version 2 of the Licence, or (at
00012     your option) any later version.
00013 
00014     itom is distributed in the hope that it will be useful, but
00015     WITHOUT ANY WARRANTY; without even the implied warranty of
00016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library
00017     General Public Licence for more details.
00018 
00019     You should have received a copy of the GNU Library General Public License
00020     along with itom. If not, see <http://www.gnu.org/licenses/>.
00021 *********************************************************************** */
00022 
00023 #ifndef GLOBAL_H
00024 #define GLOBAL_H
00025 
00027 //#include <vector>
00028 //#include <map>
00029 //#include <deque>
00030 //#include <queue>
00031 //#include <algorithm>
00032 
00033 #include "../common/param.h"
00034 #include "common/sharedStructures.h"
00035 
00036 #include <qmap.h>
00037 #include <qlist.h>
00038 #include <qvector.h>
00039 #include <qstring.h>
00040 #include <qsharedpointer.h>
00041 
00042 /* definition and macros */
00043 #define ITOM_VERSION_MAJOR  0x02
00044 #define ITOM_VERSION_MINOR  0x02
00045 #define ITOM_VERSION_PATCH  0x01
00046 #define ITOM_VERSION        CREATEVERSION(ITOM_VERSION_MAJOR,ITOM_VERSION_MINOR,ITOM_VERSION_PATCH) //ITOM_VERSION is (major << 16) + (minor << 8) + patch
00047 #define ITOM_VERSION_STR    "2.2.1"
00048 
00049 #ifdef USEPCL
00050     #define ITOM_POINTCLOUDLIBRARY 1
00051 #else
00052     #define ITOM_POINTCLOUDLIBRARY 0
00053 #endif
00054 
00055 #ifdef USEPYMATLAB
00056     #define ITOM_PYTHONMATLAB 1
00057 #else
00058     #define ITOM_PYTHONMATLAB 0
00059 #endif
00060 
00061 #ifdef USEHELPVIEWER //Qt5 only
00062 #if QT_VERSION >= 0x050600
00063     #define ITOM_USEHELPVIEWER 1
00064 #endif
00065 #endif
00066 
00067 /* global variables (avoid) */
00068 typedef QMap<QString,QString> StringMap;
00069 typedef QList<int> IntList;
00070 typedef QVector<int> IntVector;
00071 typedef QSharedPointer<ito::Param> SharedParamPointer;
00072 typedef QVector<ito::Param> ParamVector;
00073 typedef QSharedPointer<ito::ParamBase> SharedParamBasePointer;
00074 typedef QVector<SharedParamBasePointer> SharedParamBasePointerVector;
00075 typedef QVector<ito::Param> ParamBaseVector;
00076 
00077 
00078 namespace ito {
00079 
00086     enum tMsgType
00087     { 
00088         msgReturnInfo, 
00089         msgReturnWarning, 
00090         msgReturnError, 
00091         msgTextInfo,
00092         msgTextWarning, 
00093         msgTextError
00094     };
00095 
00096 
00097     enum tPythonDbgCmd
00098     { 
00099         pyDbgNone=0, 
00100         pyDbgContinue=1, 
00101         pyDbgStep=2, 
00102         pyDbgStepOut=4, 
00103         pyDbgStepOver=8,
00104         pyDbgQuit=16
00105     };
00106 
00107 
00108     enum tPythonTransitions
00109     {
00110         pyTransBeginRun = 1,
00111         pyTransEndRun = 2,
00112         pyTransBeginDebug = 4,
00113         pyTransEndDebug = 8,
00114         pyTransDebugWaiting = 16,
00115         pyTransDebugContinue = 32,
00116         pyTransDebugExecCmdBegin = 64,
00117         pyTransDebugExecCmdEnd = 128
00118     };
00119 
00120     enum tPythonState
00121     {
00122         pyStateIdle = 1,
00123         pyStateRunning = 2,
00124         pyStateDebugging = 4,
00125         pyStateDebuggingWaiting = 8,
00126         pyStateDebuggingWaitingButBusy = 16
00127     };
00128 }; //end namespace ito
00129 
00130 
00131 #endif
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties Friends