Newer
Older
/* MELODIC - Multivariate exploratory linear optimized decomposition into
independent components
melodic.h - main program header
Christian F. Beckmann, FMRIB Analysis Group
Copyright (C) 1999-2013 University of Oxford */
#ifdef __APPLE__
#include <mach/mach.h>
#define memmsg(msg) { \
struct task_basic_info t_info; \
mach_msg_type_number_t t_info_count = TASK_BASIC_INFO_COUNT; \
if (KERN_SUCCESS == task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t) &t_info, &t_info_count)) \
{ \
if(opt.debug.value()) {\
cout << " MEM: " << msg << " res: " << t_info.resident_size/1000000 << " virt: " << t_info.virtual_size/1000000 << "\n"; \
cout.flush(); \
} \
} \
}
#else
#define memmsg(msg) { \
MelodicOptions&opt = MelodicOptions::getInstance(); \
if(opt.debug.value()) {\
cout << msg; \
cout.flush(); \
} \
// a simple message macro that takes care of cout and log
#define message(msg) { \
MelodicOptions& opt = MelodicOptions::getInstance(); \
if(opt.verbose.value()) \
{ \
cout << msg; \
} \
Log& logger = LogSingleton::getInstance(); \
logger.str() << msg; \
#define dbgmsg(msg) { \
MelodicOptions&opt = MelodicOptions::getInstance(); \
if(opt.debug.value()) {\
cout << msg; } \
}
MelodicOptions& opt = MelodicOptions::getInstance(); \
if(opt.debug.value()) \
cerr << " " << msg << " " <<Mat.Nrows() << " x " << Mat.Ncols() << endl; \
const string version = "3.13";
// The two strings below specify the title and example usage that is
// printed out as the help or usage message
const string title=string("MELODIC (Version ")+version+")"+
string("\n Multivariate Exploratory Linear Optimised Decomposition into Independent Components\n")+
string("\nAuthor: Christian F. Beckmann \n Copyright(c) 2001-2013 University of Oxford");
const string usageexmpl=string(" melodic -i <filename> <options>")+
string("\n \t \t to run melodic")+
// string("\n melodic -i <filename> --mix=melodic_mix")+
// string(" --filter=\"string of component numbers\"")+
// string("\n \t \t to remove estimated ICs from input")+
string("\n melodic -i <filename> --ICs=melodic_IC")+
string(" --mix=melodic_mix <options>")+
string("\n \t \t to run Mixture Model based inference on estimated ICs")+
string("\n melodic --help ");