12 #ifndef ROOT_TEveSelection
13 #define ROOT_TEveSelection
21 class TEveSelection :
public TEveElementList,
36 TEveSelection(
const TEveSelection&);
37 TEveSelection& operator=(
const TEveSelection&);
40 typedef std::map<TEveElement*, Set_t> SelMap_t;
41 typedef std::map<TEveElement*, Set_t>::iterator SelMap_i;
47 SelMap_t fImpliedSelected;
49 Select_foo fSelElement;
50 ImplySelect_foo fIncImpSelElement;
51 ImplySelect_foo fDecImpSelElement;
53 void DoElementSelect (SelMap_i entry);
54 void DoElementUnselect(SelMap_i entry);
56 void RecheckImpliedSet(SelMap_i smi);
59 TEveSelection(
const char* n=
"TEveSelection",
const char* t=
"");
60 virtual ~TEveSelection() {}
62 void SetHighlightMode();
64 Int_t GetPickToSelect()
const {
return fPickToSelect; }
65 void SetPickToSelect(Int_t ps) { fPickToSelect = ps; }
67 Bool_t GetIsMaster()
const {
return fIsMaster; }
68 void SetIsMaster(Bool_t m) { fIsMaster = m; }
70 virtual Bool_t AcceptElement(TEveElement* el);
72 virtual void AddElement(TEveElement* el);
73 virtual void RemoveElement(TEveElement* el);
74 virtual void RemoveElementLocal(TEveElement* el);
75 virtual void RemoveElements();
76 virtual void RemoveElementsLocal();
78 virtual void RemoveImpliedSelected(TEveElement* el);
80 void RecheckImpliedSetForElement(TEveElement* el);
82 void SelectionAdded(TEveElement* el);
83 void SelectionRemoved(TEveElement* el);
84 void SelectionCleared();
85 void SelectionRepeated(TEveElement* el);
90 virtual void ActivateSelection();
91 virtual void DeactivateSelection();
96 TEveElement* MapPickedToSelected(TEveElement* el);
98 virtual void UserPickedElement(TEveElement* el, Bool_t multi=kFALSE);
99 virtual void UserRePickedElement(TEveElement* el);
100 virtual void UserUnPickedElement(TEveElement* el);
104 ClassDef(TEveSelection, 0);