#ifndef ROOT_TPolyLine
#define ROOT_TPolyLine
#ifndef ROOT_TString
#include "TString.h"
#endif
#ifndef ROOT_TObject
#include "TObject.h"
#endif
#ifndef ROOT_TAttLine
#include "TAttLine.h"
#endif
#ifndef ROOT_TAttFill
#include "TAttFill.h"
#endif
class TCollection;
class TPolyLine : public TObject, public TAttLine, public TAttFill {
protected:
Int_t fN;
Int_t fLastPoint;
Double_t *fX;
Double_t *fY;
TString fOption;
TPolyLine& operator=(const TPolyLine&);
public:
enum { kPolyLineNDC = BIT(14) };
TPolyLine();
TPolyLine(Int_t n, Option_t *option="");
TPolyLine(Int_t n, Float_t *x, Float_t *y, Option_t *option="");
TPolyLine(Int_t n, Double_t *x, Double_t *y, Option_t *option="");
TPolyLine(const TPolyLine &polyline);
virtual ~TPolyLine();
virtual void Copy(TObject &polyline) const;
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
virtual void Draw(Option_t *option="");
virtual void DrawPolyLine(Int_t n, Double_t *x, Double_t *y, Option_t *option="");
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
virtual Int_t GetLastPoint() const { return fLastPoint;}
Int_t GetN() const {return fN;}
Double_t *GetX() const {return fX;}
Double_t *GetY() const {return fY;}
Option_t *GetOption() const {return fOption.Data();}
virtual void ls(Option_t *option="") const;
virtual Int_t Merge(TCollection *list);
virtual void Paint(Option_t *option="");
virtual void PaintPolyLine(Int_t n, Double_t *x, Double_t *y, Option_t *option="");
virtual void PaintPolyLineNDC(Int_t n, Double_t *x, Double_t *y, Option_t *option="");
virtual void Print(Option_t *option="") const;
virtual void SavePrimitive(ostream &out, Option_t *option = "");
virtual void SetNDC(Bool_t isNDC=kTRUE);
virtual Int_t SetNextPoint(Double_t x, Double_t y);
virtual void SetOption(Option_t *option="") {fOption = option;}
virtual void SetPoint(Int_t point, Double_t x, Double_t y);
virtual void SetPolyLine(Int_t n);
virtual void SetPolyLine(Int_t n, Float_t *x, Float_t *y, Option_t *option="");
virtual void SetPolyLine(Int_t n, Double_t *x, Double_t *y3, Option_t *option="");
virtual Int_t Size() const {return fLastPoint+1;}
ClassDef(TPolyLine,3)
};
#endif