-------------------------------------------------------------------*/
+// clitk include
+#include "clitkPortability.h"
+
// std include
-#include <config.h>
-#include <cstdlib>
-#include <algorithm>
-#include <iostream>
-#include <fstream>
-#include <sstream>
-#include <vector>
-#include <math.h>
-#include <typeinfo>
-
-#include "itkMacro.h"
+//#include <config.h>
+//#include <cstdlib>
+//#include <algorithm>
+//#include <iostream>
+//#include <string>
+//#include <fstream>
+//#include <sstream>
+//#include <vector>
+//#include <math.h>
+//#include <typeinfo>
+//#include <utility>
+//#include <algorithm>
+
+// itk include (include std)
#include <itkContinuousIndex.h>
+#include <itkMacro.h>
+#include <itkImageRegionConstIterator.h>
+#include <itkImageRegionIterator.h>
//--------------------------------------------------------------------
namespace clitk {
-
-#if defined(WIN32)
-#define lrint(x) (floor(x+(x>0) ? 0.5 : -0.5))
-#endif
-
+
typedef unsigned char uchar;
typedef unsigned short ushort;
typedef unsigned int uint;
#define DDV(a,n) { std::cout << #a " = [ "; for(unsigned int _i_=0; _i_<n; _i_++) { std::cout << a[_i_] << " "; }; std::cout << " ]" << std::endl;}
//--------------------------------------------------------------------
- // GGO with modified struct name
-#define GGO(ggo_filename, args_info) \
- gengetopt_args_info_##ggo_filename args_info; \
- cmdline_parser2(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);
+ // when everything goes wrong
+#define WHEREAMI "[ " << __FILE__ << " ] line " << __LINE__
+#define FATAL(a) std::cerr << "ERROR in " << WHEREAMI << ": " << a; exit(0);
-
- /* //--------------------------------------------------------------------
- // GGO default
+ //--------------------------------------------------------------------
+ // GGO with modified struct name
#define GGO(ggo_filename, args_info) \
- gengetopt_args_info_##ggo_filename args_info; \
+ args_info_##ggo_filename args_info; \
cmdline_parser2(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);
-
- //--------------------------------------------------------------------
- */
+ else cmdline_parser(argc, argv, &args_info);
+
//--------------------------------------------------------------------
// skip line with #
void skipComment(std::istream & is);
//--------------------------------------------------------------------
void disableStdCerr();
void enableStdCerr();
-
+
+ //--------------------------------------------------------------------
+ template<class ImageType>
+ void CloneImage(const typename ImageType::Pointer & input, typename ImageType::Pointer & output);
+
#include "clitkCommon.txx"
} // end namespace