7 #ifndef TOMATO_TOMATOONEPIXEL_H     8 #define TOMATO_TOMATOONEPIXEL_H    11 #include "tomatolib_export.h"    14     template<
typename MeasureType>
    15     std::map<std::string, MeasureType> calculateOnePixel(TomatoOptions<MeasureType> opts) {
    18         Calculator<MeasureType> *calculator = FactoryOfCalculators<MeasureType>::newByFactory(&opts);
    19         Model<MeasureType> *model = FactoryOfModels<MeasureType>::newByFactory(&opts);
    20         Fitter<MeasureType> *fitter = FactoryOfFitters<MeasureType>::newByFactory(&opts);
    21         SignCalculator<MeasureType> *signCalculator = FactoryOfSignCalculators<MeasureType>::newByFactory(&opts);
    22         StartPointCalculator<MeasureType> *startPointCalculator = FactoryOfStartPointCalculators<MeasureType>::newByFactory(&opts);
    24         if (opts.signal_magnitude.size() > 0) {
    25             calculator->setNSamples((
int)opts.signal_magnitude.size());
    26             calculator->setSigMag(&(opts.signal_magnitude)[0]);
    28             throw std::runtime_error(
"\nNo magnitude signal, I cannot calculate anything");
    31         if (opts.signal_phase.size() > 0) {
    32             calculator->setSigMag(&(opts.signal_phase)[0]);
    35         if (opts.noise.size() > 0) {
    36             calculator->setNoise(&(opts.noise)[0]);
    39         if (opts.inversion_times.size() > 0) {
    40             calculator->setInvTimes(&(opts.inversion_times)[0]);
    43         if (opts.echo_times.size() > 0) {
    44             calculator->setEchoTimes(&(opts.echo_times)[0]);
    48         calculator->setModel(model);
    49         calculator->setFitter(fitter);
    50         calculator->setSignCalculator(signCalculator);
    51         calculator->setStartPointCalculator(startPointCalculator);
    53         calculator->calculate();
    55         std::map<std::string, MeasureType> results = calculator->getResults();
    65         delete signCalculator;
    66         delete startPointCalculator;
    73 #endif //TOMATO_TOMATOONEPIXEL_H 
Definition: OxCalculator.h:19