1 #ifndef ALIEVE_TPCSegment_H
2 #define ALIEVE_TPCSegment_H
4 #include <Reve/RenderElement.h>
6 #include <Alieve/TPCDigitsInfo.h>
10 #include <TBuffer3DTypes.h>
11 #include <TGeometry.h>
12 #include <TVirtualPad.h>
13 #include <TVirtualViewer3D.h>
20 class TPCSegmentEditor;
23 class TPCSegment : public TNamed, public TAtt3D, public TAttBBox, public Reve::RenderElement
25 friend class TPCSegmentGL;
26 friend class TPCSegmentEditor;
37 // These change data representation:
47 UInt_t fRTS; //! Rendering TimeStamp
50 TPCSegment(const Text_t* n="TPCSegment", const Text_t* t=0, Color_t col=2) :
51 TNamed(n,t), Reve::RenderElement(fFrameCol), fFrameCol(col), fRTS(1)
55 virtual ~TPCSegment();
57 void SetInfo(TPCDigitsInfo* diginfo);
58 virtual void SetSegmentID(Int_t id);
60 void SetShowMax(Bool_t sm) { fShowMax = sm; ++fRTS; }
61 void SetMinTime(Int_t mt) { fMinTime = mt; ++fRTS; }
62 void SetMaxTime(Int_t mt) { fMaxTime = mt; ++fRTS; }
63 void SetTreshold(Short_t t) { fTreshold = t; ++fRTS; }
64 void SetMaxVal(Int_t mv) { fMaxVal = mv; ++fRTS; }
66 virtual void ComputeBBox();
68 virtual void Paint(Option_t* option = "");
70 virtual void SetTrans(Bool_t t);
72 virtual Bool_t CanEditMainColor() { return true; }
73 ClassDef(TPCSegment, 1);
74 }; // endclass TPCSegment