/* MELODIC - Multivariate exploratory linear optimized decomposition into independent components melodic.h - main program header Christian F. Beckmann, FMRIB Image Analysis Group Copyright (C) 1999-2008 University of Oxford */ /* CCOPYRIGHT */ #ifndef __MELODIC_h #define __MELODIC_h #include <strstream> // 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; \ cout.flush(); \ } #define dbgmsg(msg) { \ MelodicOptions&opt = MelodicOptions::getInstance(); \ if(opt.debug.value()) {\ cout << msg; } \ } #define outMsize(msg,Mat) { \ MelodicOptions& opt = MelodicOptions::getInstance(); \ if(opt.debug.value()) \ cerr << " " << msg << " " <<Mat.Nrows() << " x " << Mat.Ncols() << endl; \ } namespace Melodic{ const string version = "3.10"; // 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(" Copyright(c) 2001-2008, University of Oxford (Christian F. Beckmann)"); 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 "); } #endif