]> Creatis software - clitk.git/blob - common/clitkDD.h
obsolete since the user manually update his repo
[clitk.git] / common / clitkDD.h
1 /*=========================================================================
2   Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
3
4   Authors belong to:
5   - University of LYON              http://www.universite-lyon.fr/
6   - Léon Bérard cancer center       http://www.centreleonberard.fr
7   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
8
9   This software is distributed WITHOUT ANY WARRANTY; without even
10   the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11   PURPOSE.  See the copyright notices for more information.
12
13   It is distributed under dual licence
14
15   - BSD        See included LICENSE.txt file
16   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ===========================================================================*/
18 #ifndef clitkDD_h
19 #define clitkDD_h
20
21 #include <iostream>
22 #ifdef WIN32
23 # include <windows.h>
24 #endif
25 // David's debug
26
27 #ifdef WIN32
28 # define DD(a) { \
29     std::ostringstream ossDD; \
30     ossDD << #a " = [ " << a << " ]" << std::endl; \
31     OutputDebugString(ossDD.str().c_str()); \
32   }
33 #else
34 # define DD(a) std::cout << #a " = [ " << a << " ]" << std::endl;std::cout.flush();
35 #endif
36 #define DDV(a,n) { std::cout << #a " = [ "; for(unsigned int _i_=0; _i_<n; _i_++) { std::cout << a[_i_] << " "; }; std::cout << " ]" << std::endl;std::cout.flush();}
37   template<class T>
38     void _print_container(T const& a)
39     { for(typename T::const_iterator i=a.begin();i!=a.end();++i) { std::cout << *i << " "; };}
40 #define DDS(a) { std::cout << #a " = [ "; _print_container(a) ; std::cout << " ]" << std::endl;std::cout.flush():}
41
42 #endif