1 /** -*- mode: c++ ; c-basic-offset: 2 -*- 2 * @file Common.h 3 * @author Sebastien Fourey 4 * @date July 2010 5 * @brief Global declarations/definitions 6 * 7 * This file is part of the ZArt software's source code. 8 * 9 * Copyright Sebastien Fourey / GREYC Ensicaen (2010-...) 10 * 11 * https://foureys.users.greyc.fr/ 12 * 13 * This software is a computer program whose purpose is to demonstrate 14 * the possibilities of the GMIC image processing language by offering the 15 * choice of several manipulations on a video stream acquired from a webcam. In 16 * other words, ZArt is a GUI for G'MIC real-time manipulations on the output 17 * of a webcam. 18 * 19 * This software is governed by the CeCILL license under French law and 20 * abiding by the rules of distribution of free software. You can use, 21 * modify and/ or redistribute the software under the terms of the CeCILL 22 * license as circulated by CEA, CNRS and INRIA at the following URL 23 * "http://www.cecill.info". See also the directory "Licence" which comes 24 * with this source code for the full text of the CeCILL license. 25 * 26 * As a counterpart to the access to the source code and rights to copy, 27 * modify and redistribute granted by the license, users are provided only 28 * with a limited warranty and the software's author, the holder of the 29 * economic rights, and the successive licensors have only limited 30 * liability. 31 * 32 * In this respect, the user's attention is drawn to the risks associated 33 * with loading, using, modifying and/or developing or reproducing the 34 * software by the user in light of its specific status of free software, 35 * that may mean that it is complicated to manipulate, and that also 36 * therefore means that it is reserved for developers and experienced 37 * professionals having in-depth computer knowledge. Users are therefore 38 * encouraged to load and test the software's suitability as regards their 39 * requirements in conditions enabling the security of their systems and/or 40 * data to be ensured and, more generally, to use and operate it in the 41 * same conditions as regards security. 42 * 43 * The fact that you are presently reading this means that you have had 44 * knowledge of the CeCILL license and that you accept its terms. 45 * 46 */ 47 #ifndef ZART_COMMON_H 48 #define ZART_COMMON_H 49 50 #include <QDebug> 51 #include <iostream> 52 53 #ifdef _ZART_DEBUG_ 54 #define ENTERING qWarning() << "[" << __PRETTY_FUNCTION__ << "] <<Entering>>" 55 #define LEAVING qWarning() << "[" << __PRETTY_FUNCTION__ << "] <<Leaving>>" 56 #define TSHOW(V) qWarning() << "[" << __PRETTY_FUNCTION__ << "]" << #V << "=" << (V) 57 #define TRACE qWarning() << "[" << __PRETTY_FUNCTION__ << "]" 58 #define SHOW(V) qWarning() << #V << "=" << (V) 59 #else 60 #define ENTERING while (false) 61 #define TSHOW(V) \ 62 while (false) \ 63 qWarning() << "" 64 #define SHOW(V) \ 65 while (false) \ 66 qWarning() << "" 67 #define TRACE \ 68 while (false) \ 69 qWarning() << "" 70 #endif 71 72 #define ZART_VERSION 3.2.2 73 74 #define ZART_STRINGIFY(X) #X 75 #define ZART_XSTRINGIFY(X) ZART_STRINGIFY(X) 76 #define ZART_VERSION_STRING ZART_XSTRINGIFY(ZART_VERSION) 77 78 #define QT_VERSION_GTE(MAJOR, MINOR) (((QT_VERSION_MAJOR == MAJOR) && (QT_VERSION_MINOR >= MINOR)) || (QT_VERSION_MAJOR > MAJOR)) 79 80 81 #endif // ZART_COMMON_H 82