Adding comment lines to class description needed for Root documentation,
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpTriggerCrate.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 // $Id$
17 // $MpId: AliMpTrigger.cxx,v 1.4 2006/05/24 13:58:52 ivana Exp $
18
19 //-----------------------------------------------------------------------------
20 // Class AliMpTriggerCrate
21 // --------------------
22 // The class defines the properties of trigger crate
23 // Author: Ch. Finck, Subatech Nantes
24 //-----------------------------------------------------------------------------
25
26 #include "AliMpTriggerCrate.h"
27 #include "AliMpDEManager.h"
28
29 #include "AliLog.h"
30
31 #include <Riostream.h>
32
33 /// \cond CLASSIMP
34 ClassImp(AliMpTriggerCrate)
35 /// \endcond
36
37
38 //______________________________________________________________________________
39 TString AliMpTriggerCrate::GenerateName(Int_t crateId, Int_t ddlId, Int_t nofDDLs)
40 {
41 /// Generate name
42
43   TString name;
44   // \todo parameterise this
45   if (crateId == 23)
46       name = "2-3";
47   else 
48       name = Form("%d", crateId);
49  
50   if (ddlId == nofDDLs)
51       name.Append("R");
52   else 
53       name.Append("L"); 
54
55   return name;
56 }  
57  
58
59 //______________________________________________________________________________
60 AliMpTriggerCrate::AliMpTriggerCrate(const Char_t* name, Int_t ddlId)
61   : TNamed(name, "mapping trigger crate"),
62     fDdlId(ddlId),
63     fLocalBoard(false)
64  
65 {
66 /// Standard constructor
67 }
68
69 //______________________________________________________________________________
70 AliMpTriggerCrate::AliMpTriggerCrate(TRootIOCtor* /*ioCtor*/)
71   : TNamed(),
72     fDdlId(),
73     fLocalBoard()
74 {
75 /// Root IO constructor
76 }
77
78 //______________________________________________________________________________
79 AliMpTriggerCrate::~AliMpTriggerCrate()
80 {
81 /// Destructor
82 }
83
84 //
85 // public methods
86 //
87
88 //______________________________________________________________________________
89 Bool_t AliMpTriggerCrate::AddLocalBoard(Int_t localBoardId)
90 {
91 /// Add detection element with given detElemId.
92 /// Return true if the detection element was added
93
94   if ( HasLocalBoard(localBoardId) ) {
95     AliWarningStream() 
96       << "Local board with Id=" << localBoardId << " already present."
97       << endl;
98     return false;
99   }    
100
101   fLocalBoard.Add(localBoardId);
102   return true;
103 }   
104
105
106 //______________________________________________________________________________
107 Int_t AliMpTriggerCrate::GetNofLocalBoards() const
108 {  
109 /// Return the number of local board in this crate
110
111   return fLocalBoard.GetSize(); 
112 }
113
114 //______________________________________________________________________________
115 Int_t  AliMpTriggerCrate::GetLocalBoardId(Int_t index) const
116 {  
117 /// Return the local board by index (in loop)
118
119   if (index >= 0 && index < fLocalBoard.GetSize())
120       return fLocalBoard.GetValue(index); 
121   else 
122       return 0; // begin at 1
123 }
124
125 //______________________________________________________________________________
126 Bool_t  AliMpTriggerCrate::HasLocalBoard(Int_t localBoardId) const
127 {  
128 /// Return true if crate has local boardwith given localBoardId
129
130   return fLocalBoard.HasValue(localBoardId); 
131 }
132