#ifndef ALIFIGURE_H
#define ALIFIGURE_H
#include "TCanvas.h"
#include "TColor.h"
class TObject;
class TString;
class TCanvas;
class TText;
class TASImage;
class TStyle;
class TLatex;
class AliFigure : public TCanvas
{
public:
AliFigure(const char* name = "", const char* title = "", Int_t ww = 800, Int_t wh = 600);
~AliFigure();
enum Status_t {
kWorkInProgress = 0,
kThisWork,
kPerformance,
kPreliminary,
kFinal,
kStatusLast
};
enum Mode_t {
kPresentation,
kPrint
};
enum Pos_t {
kN = 0, kNE, kE, kSE, kS, kSW, kW, kNW, kCenter
};
void Draw(Option_t *option = "");
void Paint(Option_t *option = "");
void Clear(Option_t *option = "");
void Update();
void SetStatus(Status_t status);
void SetLogoFilename(Status_t status, TString filename);
void SetLogoPos(Float_t x, Float_t y);
void SetLogoPos(Pos_t pos);
void SetLogoSize(Float_t size);
void SetCollSystem(TString txt);
void SetCollSystemPos(Float_t x, Float_t y);
void SetDataSample(TString txt);
void SetTextSize(Float_t size);
void SetDisabled(Bool_t disable = kTRUE) { fDisabled = disable; }
Bool_t GetDisabled() const { return fDisabled; }
static TStyle* Style();
protected:
void UpdateLogo();
void UpdateLogoPos();
void UpdatePad(TPad *pad);
Bool_t fDisabled;
Bool_t isMC;
Status_t fStatus;
TString fDateFormat;
Float_t fTextSize;
Color_t fTextColor;
TString fLogoFilename[kStatusLast];
Float_t fLogoPosX;
Float_t fLogoPosY;
Float_t fLogoHeight;
TPad *fLogoPad;
TText *fDate;
TText *fStatusPad;
TLatex *fCollSystem;
TLatex *fDataSample;
TText *fTag;
TASImage *fLogo;
const char* fStatusString[kStatusLast];
static TStyle *fgStyle;
private:
AliFigure(const AliFigure& rhs);
AliFigure& operator=(const AliFigure& rhs);
ClassDef(AliFigure, 1);
};
#endif