AE: Move the utility classes into a subdirectory and update all the code so that rootana compiles
AE: Add an empty TemplateFitter
AE: Add the TFitterMinuit that we will use. This is just a copy of John's code in PulseTemplate::PulseTemplate() with fFitter --> fFitterMinuit
AE: If there is more then one pulse candidate on the TPI then we will not use it for the template creation
AE: Actually, that was a stupd way of doing it. Only add the case of there being one pulse candidate
AE: Check if this is the first pulse and if so put in the command that we would use
AE: Add the FitPulseToTemplate function, this is essentially the same as John's PulseTemplate::Chi2Fit() function
AE: Add a couple of includes that TemplateFitter needs to compile
AE: Add getters for Pedestal, Amplitude, Time and Chi2 of the fit. I think that fMinuitFitter persists to return the correct values but I will check now...
AE: Get the return values correct in the TemplateFitter getters
AE: Add a simple AddPulseToTemplate function so that I can test the TemplateFitter
AE: A few things changed in TemplateCreator. Namely that we now check for an already existing template and also we want to pass by reference to AddPulseToTemplate so that, if a new template histogram is created, it can actually be called by the original pointer (before it was creating a copy of that pointer)
AE: In TemplateArchive, convert TH1F to TH1D and also check that the template histogram given to SaveTemplate() exists before trying to write it out
AE: A debug, test version of TemplateCreator which only puts one pulse in the template and tries to fit the others to it
AE: Make pedestal, amplitude, time and chi2 members of the TempalteFitter class
AE: Set the verbose flag to NULL. Also, now don't bother checking if the histogram is the same as the one already there. The reason for this is that it was causing problems when I was deleting hPulse at the end of TemplateFitter::FitPulseToTemplate() (which I was doing so as not to get the normal ROOT "possible memory leak" warning) and so if the next hPulse happened to have a different memory address it would try to delete a pulse that's already been deleted.
AE: Just realised that we don't need to call fMinuitFitter->GetParameter() if we set fPedestal etc in the first place
AE: Add John's PulseTemplate::Correlation() function to TemplateFitter. It is currently empty and commented out
AE: Finished adding TemplateFitter. Merge branch 'feature/add_template_fitter' into develop