Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TPoints3DABC.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/g3d:$Id$
0002 // Author: Valery Fine(fine@mail.cern.ch)   24/04/99
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 #ifndef ROOT_TPoints3DABC
0012 #define ROOT_TPoints3DABC
0013 
0014 
0015 //////////////////////////////////////////////////////////////////////////
0016 //                                                                      //
0017 // TPoints3DABC                                                         //
0018 //                                                                      //
0019 // Abstract class to define Arrays of 3D points                         //
0020 //                                                                      //
0021 //////////////////////////////////////////////////////////////////////////
0022 
0023 #include "TObject.h"
0024 
0025 class TPoints3DABC : public TObject {
0026 
0027 public:
0028    TPoints3DABC(){}
0029    ~TPoints3DABC() override{}
0030 
0031    static  Int_t     DistancetoLine(Int_t px, Int_t py, Float_t x1, Float_t y1, Float_t x2, Float_t y2, Int_t lineWidth = 1 );
0032 
0033    virtual Int_t     Add(Float_t x, Float_t y, Float_t z);
0034    virtual Int_t     AddLast(Float_t x, Float_t y, Float_t z);
0035    Int_t     DistancetoPrimitive(Int_t px, Int_t py) override =0;
0036    virtual Int_t     GetLastPosition()const    =0;
0037    // GetN()  returns the number of allocated cells if any.
0038    //         GetN() > 0 shows how many cells
0039    //         can be available via GetP() method.
0040    //         GetN() == 0 then GetP() must return 0 as well
0041    virtual Int_t     GetN() const;
0042    virtual Float_t  *GetP() const;
0043    virtual Float_t   GetX(Int_t idx)  const    =0;
0044    virtual Float_t   GetY(Int_t idx)  const    =0;
0045    virtual Float_t   GetZ(Int_t idx)  const    =0;
0046    virtual Float_t  *GetXYZ(Float_t *xyz,Int_t idx,Int_t num=1)  const;
0047    virtual const Float_t  *GetXYZ(Int_t idx)   =0;
0048    Option_t *GetOption()      const    override =0;
0049    virtual void      PaintPoints(Int_t n, Float_t *p,Option_t *option="")  =0;
0050    virtual Int_t     SetLastPosition(Int_t idx)=0;
0051    virtual Int_t     SetNextPoint(Float_t x, Float_t y, Float_t z);
0052    virtual void      SetOption(Option_t *option="")=0;
0053    virtual Int_t     SetPoint(Int_t point, Float_t x, Float_t y, Float_t z)=0;
0054    virtual Int_t     SetPoints(Int_t n, Float_t *p=nullptr, Option_t *option="") =0;
0055    virtual Int_t     Size() const              =0;
0056 
0057    ClassDefOverride(TPoints3DABC,0)  //A 3-D Points
0058 };
0059 
0060 #endif