00001
00002
00003
00004
00005
00006
00007
00008 #ifndef BESCIRCLE2D_H
00009 #define BESCIRCLE2D_H
00010
00011 #ifndef ROOT_TNamed
00012 #include <TNamed.h>
00013 #endif
00014 #ifndef ROOT_TAttLine
00015 #include <TAttLine.h>
00016 #endif
00017 #ifndef ROOT_TAttFill
00018 #include <TAttFill.h>
00019 #endif
00020
00021 class TString;
00022 class TView;
00023 class TPad;
00024
00025 class BesCircle2D : public TNamed, public TAttLine, public TAttFill {
00026
00027 private:
00028 Double_t *f_innerCircleX;
00029 Double_t *f_innerCircleY;
00030 Double_t *f_outerCircleX;
00031 Double_t *f_outerCircleY;
00032 Double_t *f_areaX;
00033 Double_t *f_areaY;
00034 Double_t *fInnerRadius;
00035 Double_t *fOuterRadius;
00036 Double_t *fCenter;
00037 Int_t fNSegment;
00038
00039 public:
00040 BesCircle2D();
00041 BesCircle2D(const char* name, const char* title, Double_t innerRadius, Double_t outerRadius, Double_t *center);
00042 virtual ~BesCircle2D();
00043
00044 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
00045 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
00046 virtual void Draw(Option_t *option = "");
00047 virtual void Paint(Option_t *option = "");
00048 virtual char *GetObjectInfo(Int_t px, Int_t py) const;
00049
00050 virtual void SetCenter(Double_t x, Double_t y, Double_t z);
00051 virtual void GetCenter(Double_t *center);
00052 virtual void SetNSegment(Int_t np) {
00053 fNSegment = np;
00054 }
00055
00056 ClassDef(BesCircle2D,2)
00057 };
00058
00059 #endif