9#if !defined(__fmribmain2_h)
14#include "NewNifti/NewNifti.h"
16template <
class T,
class S>
17int fmrib_main(
int argc,
char* argv[]);
20int call_fmrib_main(
short datatype,
int argc,
char* argv[])
22 datatype=NEWIMAGE::closestTemplatedType(datatype);
23 if ( datatype==NiftiIO::DT_UNSIGNED_CHAR )
return fmrib_main<T,char>(argc, argv);
24 else if ( datatype==NiftiIO::DT_SIGNED_SHORT )
return fmrib_main<T,short>(argc, argv);
25 else if ( datatype==NiftiIO::DT_SIGNED_INT )
return fmrib_main<T,int>(argc, argv);
26 else if ( datatype==NiftiIO::DT_FLOAT )
return fmrib_main<T,float>(argc, argv);
27 else if ( datatype==NiftiIO::DT_DOUBLE )
return fmrib_main<T,double>(argc, argv);
31int call_fmrib_main(
short datatype1,
short datatype2,
int argc,
char* argv[])
33 datatype1=NEWIMAGE::closestTemplatedType(datatype1);
34 if ( datatype1==NiftiIO::DT_UNSIGNED_CHAR )
return call_fmrib_main<char>(datatype2, argc, argv);
35 else if ( datatype1==NiftiIO::DT_SIGNED_SHORT )
return call_fmrib_main<short>(datatype2, argc, argv);
36 else if ( datatype1==NiftiIO::DT_SIGNED_INT )
return call_fmrib_main<int>(datatype2, argc, argv);
37 else if ( datatype1==NiftiIO::DT_FLOAT )
return call_fmrib_main<float>(datatype2, argc, argv);
38 else if ( datatype1==NiftiIO::DT_DOUBLE )
return call_fmrib_main<double>(datatype2, argc, argv);