forked from root-project/root
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TEveGeoShapeExtract.h
66 lines (54 loc) · 2.68 KB
/
TEveGeoShapeExtract.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// @(#)root/eve:$Id$
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
/*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOT_TEveGeoShapeExtract
#define ROOT_TEveGeoShapeExtract
#include "TNamed.h"
class TList;
class TGeoShape;
class TEveGeoShapeExtract : public TNamed
{
TEveGeoShapeExtract(const TEveGeoShapeExtract&); // Not implemented
TEveGeoShapeExtract& operator=(const TEveGeoShapeExtract&); // Not implemented
protected:
Double_t fTrans[16]; // Transformation matrix, 4x4 column major.
Float_t fRGBA[4]; // RGBA color.
Float_t fRGBALine[4]; // RGBA color.
Bool_t fRnrSelf; // Render this object.
Bool_t fRnrElements; // Render children of this object.
Bool_t fRnrFrame; // Also draw shape outline.
Bool_t fMiniFrame; // Minimize shape outline when drawing.
TGeoShape* fShape; // Shape to be drawn for this object.
TList* fElements; // Children elements.
public:
TEveGeoShapeExtract(const char* n="TEveGeoShapeExtract", const char* t=0);
~TEveGeoShapeExtract();
Bool_t HasElements();
void AddElement(TEveGeoShapeExtract* gse);
void SetTrans(const Double_t arr[16]);
void SetRGBA (const Float_t arr[4]);
void SetRGBALine(const Float_t arr[4]);
void SetRnrSelf(Bool_t r) { fRnrSelf = r; }
void SetRnrElements(Bool_t r) { fRnrElements = r; }
void SetRnrFrame(Bool_t r) { fRnrFrame = r; }
void SetMiniFrame(Bool_t r) { fMiniFrame = r; }
void SetShape(TGeoShape* s) { fShape = s; }
void SetElements(TList* e) { fElements = e; }
Double_t* GetTrans() { return fTrans; }
Float_t* GetRGBA() { return fRGBA; }
Float_t* GetRGBALine() { return fRGBALine; }
Bool_t GetRnrSelf() { return fRnrSelf; }
Bool_t GetRnrElements() { return fRnrElements; }
Bool_t GetRnrFrame() { return fRnrFrame; }
Bool_t GetMiniFrame() { return fMiniFrame; }
TGeoShape* GetShape() { return fShape; }
TList* GetElements() { return fElements; }
ClassDef(TEveGeoShapeExtract, 2); // Globally positioned TGeoShape with rendering attributes and an optional list of daughter shape-extracts.
};
#endif