24 enum EGeoVisibilityAtt {
25 kVisOverride = BIT(0),
28 kVisDaughters = BIT(3),
29 kVisOneLevel = BIT(4),
30 kVisStreamed = BIT(5),
32 kVisOnScreen = BIT(7),
33 kVisContainers = BIT(12),
36 kVisRaytrace = BIT(15)
39 enum EGeoActivityAtt {
40 kActOverride = BIT(8),
43 kActDaughters = BIT(11)
46 enum EGeoOptimizationAtt {
47 kUseBoundingBox = BIT(16),
51 enum EGeoSavePrimitiveAtt {
52 kSavePrimitiveAtt = BIT(19),
53 kSaveNodesAtt = BIT(20)
61 TGeoAtt(Option_t *vis_opt, Option_t *activity_opt=
"", Option_t *optimization_opt=
"");
65 void SetAttBit(UInt_t f) {fGeoAtt |= f & kBitMask;}
66 void SetAttBit(UInt_t f, Bool_t set) {(set)?SetAttBit(f):ResetAttBit(f);};
67 void ResetAttBit(UInt_t f) {fGeoAtt &= ~(f & kBitMask);}
68 Bool_t TestAttBit(UInt_t f)
const {
return (Bool_t)((fGeoAtt & f) != 0);}
70 void SetVisRaytrace(Bool_t flag=kTRUE) {SetAttBit(kVisRaytrace, flag);}
72 virtual void SetVisContainers(Bool_t flag=kTRUE);
73 virtual void SetVisLeaves(Bool_t flag=kTRUE);
74 virtual void SetVisOnly(Bool_t flag=kTRUE);
75 virtual void SetVisibility(Bool_t vis=kTRUE);
76 void SetVisDaughters(Bool_t vis=kTRUE);
77 void SetVisStreamed(Bool_t vis=kTRUE);
78 void SetVisTouched(Bool_t vis=kTRUE);
79 void SetActivity(Bool_t flag=kTRUE) {SetAttBit(kActThis, flag);}
80 void SetActiveDaughters(Bool_t flag=kTRUE) {SetAttBit(kActDaughters,flag);}
82 void SetOptimization(Option_t *option);
85 Bool_t IsActive()
const {
return TestAttBit(kActThis);}
86 Bool_t IsActiveDaughters()
const {
return TestAttBit(kActDaughters);}
87 Bool_t IsVisRaytrace()
const {
return TestAttBit(kVisRaytrace);}
88 Bool_t IsVisible()
const {
return TestAttBit(kVisThis);}
89 Bool_t IsVisDaughters()
const {
return TestAttBit(kVisDaughters);}
90 Bool_t IsVisBranch()
const {
return TestAttBit(kVisBranch);}
91 Bool_t IsVisContainers()
const {
return TestAttBit(kVisContainers);}
92 Bool_t IsVisLeaves()
const {
return !TestAttBit(kVisContainers | kVisOnly | kVisBranch);}
93 Bool_t IsVisOnly()
const {
return TestAttBit(kVisOnly);}
95 Bool_t IsVisStreamed()
const {
return TestAttBit(kVisStreamed);}
96 Bool_t IsVisTouched()
const {
return TestAttBit(kVisTouched);}