Updated buffer handling with mutex and faster response
[u/mrichter/AliRoot.git] / EVE / EveHLT / AliEveHOMERSourceList.h
1 //-*- Mode: C++ -*-
2
3 // $Id$
4 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
5
6 /**************************************************************************
7  * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
8  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
9  * full copyright notice.                                                 *
10  **************************************************************************/
11
12 #ifndef AliEveAliEVEHOMERSourceList_H
13 #define AliEveAliEVEHOMERSourceList_H
14
15 #include <TEveElement.h>
16
17 #include <TObject.h>
18
19 #include <map>
20
21 class AliEveHOMERManager;
22 class AliEveHOMERSourceMap;
23
24 class AliEveHOMERSourceList : public TEveElementList
25 {
26 public:
27   AliEveHOMERSourceList(const Text_t* n="HOMER Source List", const Text_t* t="");
28   virtual ~AliEveHOMERSourceList();
29
30   // void InitMap(TList* srcHandles, ESourceGrouping_e
31
32   AliEveHOMERManager* GetManager() const { return fManager; }
33   void SetManager(AliEveHOMERManager* m) { fManager = m; }
34
35   Bool_t GetSelectedSources();
36
37   void CreateByDet();  // *MENU*
38   void CreateByType(); // *MENU*
39
40   void RebuildSourceReps();
41
42   //void SelectAll();   // *MENU*
43   //void DeselectAll(); // *MENU*
44
45 protected:
46   //SourceMap_t       fByType;
47   //ESourceGrouping_e fView;
48   //Bool_t            fDefaultState;
49
50   AliEveHOMERManager   *fManager;
51   AliEveHOMERSourceMap *fSrcMap;
52
53 private:
54   AliEveHOMERSourceList(const AliEveHOMERSourceList&);            // Not implemented
55   AliEveHOMERSourceList& operator=(const AliEveHOMERSourceList&); // Not implemented
56
57   ClassDef(AliEveHOMERSourceList, 0); // Interface to a list of HOMER sourcces.
58 };
59
60 #endif