]> Creatis software - clitk.git/blobdiff - common/clitkCommon.h
Added clitkAffineRegistration from Jef's file. Also does translations only and rigid...
[clitk.git] / common / clitkCommon.h
index 2d26e8a786d8045934a1af1b67ae4763326fc850..3f6e72db4d7099d92ed3d1d42e6c19e7aea9868e 100644 (file)
   - BSD        See included LICENSE.txt file
   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
 ======================================================================-====*/
+
 #ifndef CLITKCOMMON_H
 #define CLITKCOMMON_H
-/**
-   -------------------------------------------------------------------
-   * @file   clitkCommon.h
-   * @author David Sarrut <David.Sarrut@creatis.insa-lyon.fr>
-   * @date   17 May 2006 07:57:56
-
-   * @brief  
-
-   -------------------------------------------------------------------*/
 
 // clitk include
-
 #include "clitkConfiguration.h"
 #include "clitkPortability.h"
 
@@ -49,6 +40,10 @@ namespace clitk {
   // display 
 #define DD(a) std::cout << #a " = [ " << a << " ]" << std::endl;
 #define DDV(a,n) { std::cout << #a " = [ "; for(unsigned int _i_=0; _i_<n; _i_++) { std::cout << a[_i_] << " "; }; std::cout << " ]" << std::endl;}
+template<class T>
+void _print_container(T const& a)
+    { for(typename T::const_iterator i=a.begin();i!=a.end();++i) { std::cout << *i << " "; };}
+#define DDS(a) { std::cout << #a " = [ "; _print_container(a) ; std::cout << " ]" << std::endl;}
 
   //--------------------------------------------------------------------
   // when everything goes wrong
@@ -59,10 +54,10 @@ namespace clitk {
   // GGO with modified struct name
 #define GGO(ggo_filename, args_info)                                    \
   args_info_##ggo_filename args_info;                                  \
-  cmdline_parser2(argc, argv, &args_info, 1, 1, 0);                    \
+  cmdline_parser_##ggo_filename##2(argc, argv, &args_info, 1, 1, 0);                   \
   if (args_info.config_given)                                          \
-    cmdline_parser_configfile (args_info.config_arg, &args_info, 0, 0, 1); \
-  else cmdline_parser(argc, argv, &args_info);  
+    cmdline_parser_##ggo_filename##_configfile (args_info.config_arg, &args_info, 0, 0, 1); \
+  else cmdline_parser_##ggo_filename(argc, argv, &args_info);  
 
   //--------------------------------------------------------------------
   // skip line with #
@@ -189,6 +184,9 @@ namespace clitk {
   void openFileForReading(std::ifstream & is, const std::string & filename);
   void openFileForWriting(std::ofstream & os, const std::string & filename);
 
+  //--------------------------------------------------------------------
+  void readDoubleFromFile(const std::string & filename, std::vector<double> & list);
+
   //--------------------------------------------------------------------
   double cotan(double i);
   double invcotan(double i);