]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveDet/AliEveTRDLoaderManager.h
Coverity 15169
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTRDLoaderManager.h
1 // $Id$
2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4 /**************************************************************************
5  * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
7  * full copyright notice.                                                 *
8  **************************************************************************/
9
10 #ifndef AliEveTRDLoaderManager_H
11 #define AliEveTRDLoaderManager_H
12
13 ////////////////////////////////////////////////////////////////////////
14 //
15 // - ALIEVE implementation -
16 // Loader manager for the TRD detector
17 //    - AliEveTRDLoaderManager - manager of TRD data loaders (simulation + measured)
18 //    - AliEveTRDLoaderManagerEditor - UI
19 //
20 // by A.Bercuci (A.Bercuci@gsi.de)   Mon Feb 26 2007
21 ////////////////////////////////////////////////////////////////////////
22
23 #include <TEveElement.h>
24
25 #include <TNamed.h>
26 #include <TGedFrame.h>
27
28 class TGComboBox;
29 class TGTextButton;
30 class TClonesArray;
31
32
33 class AliEveTRDLoaderManager : public TEveElementList
34 {
35   friend class AliEveTRDLoaderManagerEditor;
36
37 public:
38   AliEveTRDLoaderManager(const Text_t* name="AliEveTRDLoader", const Text_t* title=0x0);
39   virtual ~AliEveTRDLoaderManager() {}
40
41   void  Paint(Option_t *option);
42
43 protected:
44   void  Add(Int_t type, const Text_t *name, const Text_t *title=0x0);
45   void  Remove(Int_t entry);
46
47 private:
48   AliEveTRDLoaderManager(const AliEveTRDLoaderManager&);            // Not implemented
49   AliEveTRDLoaderManager& operator=(const AliEveTRDLoaderManager&); // Not implemented
50
51   ClassDef(AliEveTRDLoaderManager, 0); // Alieve loaders manager for TRD
52 };
53
54
55 class AliEveTRDLoaderManagerEditor : public TGedFrame
56 {
57 public:
58   AliEveTRDLoaderManagerEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
59                                UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
60   virtual ~AliEveTRDLoaderManagerEditor() {}
61
62   virtual void  Add(Char_t *entry);
63   virtual void  Remove(Int_t entry);
64   virtual void  SetModel(TObject* obj);
65
66 protected:
67   AliEveTRDLoaderManager* fM; // Model object.
68
69 private:
70   TGComboBox    *fSelector;            // Selector weed.
71   TGTextButton  *fAdd, *fRemoveButton; // Add/remove button.
72   TGGroupFrame  *fGroupFrame;          // Frame.
73   TClonesArray  *fRemove;              // Remove array.
74
75   AliEveTRDLoaderManagerEditor(const AliEveTRDLoaderManagerEditor&);            // Not implemented
76   AliEveTRDLoaderManagerEditor& operator=(const AliEveTRDLoaderManagerEditor&); // Not implemented
77
78   ClassDef(AliEveTRDLoaderManagerEditor, 0); // Editor for AliEveTRDLoaderManager.
79 };
80
81 #endif
82