/* * AnalysisMainFrame.hh * * Created on: Apr 21, 2015 * Author: Hovanes Egiyan */ #ifndef ANALYSISMAINFRAME_HH_ #define ANALYSISMAINFRAME_HH_ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "LogableMainFrame.hh" #include "ScanPlot.hh" #include "AnalysisFrame.hh" using namespace std; class AnalysisMainFrame : public LogableMainFrame { protected: AnalysisFrame* amfLeftFrame; // Frame for X plot AnalysisFrame* amfMiddleFrame; // Frame for U plot AnalysisFrame* amfRightFrame; // Frame for Y plot TGHorizontalFrame* amfPlotFrame; // Frame for the plots TGHorizontalFrame* amfButtonFrame; // Frame for the buttons TGHorizontalFrame* amfInfoFrame; // Frame for the combined fit info TRootEmbeddedCanvas* amfEmbeddedCanvas; // Canvas for info TText* amfInfoText; // Infor text after fitting const ScanPlot* amfPlot; // Plot to be shown TGTextButton* amfLogButton; // Log button pointer TGTextButton* amfCloseButton; // Close button pointer public: AnalysisMainFrame(const TGWindow *p, const char* name, UInt_t width, UInt_t height, const ScanPlot* plot); virtual ~AnalysisMainFrame(); static double GetPhiAngle( double x, double y, double u ); static double GetBigSigma( double x, double y, double u ); static double GetSmallSigma( double x, double y, double u ); void UpdateInfo(double x, double y, double u); virtual void Fit(); inline TGHorizontalFrame* GetButtonFrame() { return amfButtonFrame; } inline const ScanPlot* GetScanPlot() { return amfPlot;} ClassDef(AnalysisMainFrame,0) }; #endif /* ANALYSISMAINFRAME_HH_ */