1#ifndef TCALIBRATEDESCANT_H
2#define TCALIBRATEDESCANT_H
4#include "TRootEmbeddedCanvas.h"
5#include "TGStatusBar.h"
7#include "TGTripleSlider.h"
8#include "TGNumberEntry.h"
14#include "TGraphErrors.h"
34 explicit TParameterInput(TGVerticalFrame*& frame) : TGHorizontalFrame(frame, 400, 400) {}
40 TGHorizontalFrame*
Build(const std::
string& name, const Int_t& baseId, const Double_t& xmin, const Double_t& xmax);
42 Bool_t
ProcessMessage(Long_t msg, Long_t parameter1, Long_t parameter2) override;
51 void Set(
double val,
double low,
double high);
107 Bool_t
ProcessMessage(Long_t msg, Long_t parameter1, Long_t parameter2) override;
115 void Status(Int_t px, Int_t py, Int_t pz, TObject* selected);
183double FullEdge(
double* x,
double* par);
TParameterInput * fPeakPos
void CalibrationCanvasZoomed()
TParameterInput * fNoiseAmp
TParameterInput * fPosition
TCalibrateDescant(TH2 *hist, const ESourceType &source=ESourceType::k137Cs)
TParameterInput * fPeakSigma
TCalibrateDescant(TCalibrateDescant &&) noexcept=delete
TGTextButton * fFitButton
TGVerticalFrame * fLeftFrame
void UpdateInitialFunction()
void AddCalibrationPoint(double value, double uncertainty)
TGTextButton * fPreviousButton
TGHorizontalFrame * fTopButtonFrame
TParameterInput * fBgDecayConst
void CreateGraphicMembers()
TGHorizontalFrame * fBottomButtonFrame
void UpdateInitialParameters()
TParameterInput * fThresholdSigma
std::vector< TH1D * > fProjections
TGTextButton * fSaveButton
TGTextButton * fUpdateInitialButton
TCalibrateDescant(const TCalibrateDescant &)=delete
TParameterInput * fBgConst
TParameterInput * fAmplitude
TRootEmbeddedCanvas * fFitCanvas
TGTextButton * fResetFitButton
void InitializeParameters()
TParameterInput * fDSigma
std::vector< TGraphErrors * > fCalibrations
TParameterInput * fPeakAmp
Bool_t ProcessMessage(Long_t msg, Long_t parameter1, Long_t parameter2) override
TGVerticalFrame * fRightFrame
TRootEmbeddedCanvas * fCalibrationCanvas
TGTextButton * fNextButton
TParameterInput * fNoisePos
TParameterInput * fCutoff
void Status(Int_t px, Int_t py, Int_t pz, TObject *selected)
TParameterInput * fThreshold
TParameterInput * fNoiseSigma
double SourceEnergyUncertainty(const TCalibrateDescant::ESourceType &source)
double FullEdge(double *x, double *par)
double SourceEnergy(const TCalibrateDescant::ESourceType &source)
double MaximumRecoilEnergy(double gammaEnergy)