34 #include <Riostream.h>
35 #include <TClonesArray.h>
49 fEmptyLocal(new TClonesArray("AliMUONLocalTrigger",242))
52 fLocal->SetOwner(kTRUE);
53 fRegional->SetOwner(kTRUE);
54 fGlobal->SetOwner(kTRUE);
55 fEmptyLocal->SetOwner(kTRUE);
81 if ( !localTrigger.
IsNull() )
100 Bool_t isMaking = ( tree.GetBranch(
"MUONLocalTrigger") == 0 );
104 ok = ok && tman.
MakeBranch(tree,ClassName(),
"TClonesArray",
106 ok = ok && tman.
MakeBranch(tree,ClassName(),
"TClonesArray",
108 ok = ok && tman.
MakeBranch(tree,ClassName(),
"TClonesArray",
142 return fLocal->MakeIterator();
161 for ( Int_t i = 0; i <=
fLocal->GetLast(); ++i )
164 if (local && local->
LoCircuit()==boardNumber)
170 for ( Int_t i = 0; i <=
fEmptyLocal->GetLast(); ++i )
173 if (local && local->
LoCircuit()==boardNumber)
179 if ( boardNumber>=1 && boardNumber<=242 )
195 for ( Int_t i = 0; i <=
fRegional->GetLast(); ++i )
198 if (regional && regional->
GetId()==boardNumber)
246 if ( swhat.Length() == 0 ) swhat =
"ALL";
248 if ( swhat.Contains(
"GLOBAL") || swhat.Contains(
"ALL") )
252 cout <<
"Global:" << endl;
257 cout <<
"No GlobalTrigger information" << endl;
261 if (
fLocal && ( swhat.Contains(
"LOCAL")|| swhat.Contains(
"ALL") ) )
271 while ( ( local = static_cast<AliMUONLocalTrigger*>(next()) ) )
273 if ( local->
IsNull() ) ++n;
276 cout << Form(
"Local: %d cards (and %d null ones)",
277 fLocal->GetLast()+1,n) << endl;
281 while ( ( local = static_cast<AliMUONLocalTrigger*>(next()) ) )
290 if (
fRegional && ( swhat.Contains(
"REGIONAL") || swhat.Contains(
"ALL") ) )
virtual Bool_t Connect(TTree &tree, Bool_t alone=kTRUE) const
Connect us to a TTree (only valid if CanConnect()==kTRUE)
Bool_t SetAddress(TTree &tree, const char *branchName, void *address) const
virtual void Add(const AliMUONLocalTrigger &localTrigger)
Add local trigger.
Implementation of AliMUONVTriggerStore.
virtual Int_t GetSize() const
The number of objects stored.
virtual AliMUONRegionalTrigger * FindRegional(Int_t boardNumber) const
Find a regional trigger by the board number (not an index, it is a number really) ...
Int_t GetId() const
Return regional id.
Helper class to ease TTree (MUON) branches manipulations.
Base class of a trigger information store.
virtual void Print(Option_t *wildcard, Option_t *opt) const
Print, with option, all objects whose name matches wildcard.
TClonesArray * fEmptyLocal
! internal array of empty local trigger
TClonesArray ** RegionalPtr() const
Return the address of the array of regional trigger information.
Reconstructed regional Trigger object.
virtual void SetGlobal(const AliMUONGlobalTrigger &globalTrigger)
Set global trigger.
virtual void Print(Option_t *opt="") const
Reconstructed Local Trigger object.
virtual TIterator * CreateLocalIterator() const
Create iterator on local trigger.
TClonesArray ** GlobalPtr() const
Return the address of the array of global trigger information.
virtual TIterator * CreateRegionalIterator() const
Create iterator on regional trigger.
virtual AliMUONGlobalTrigger * Global() const
Return global trigger.
TClonesArray * fRegional
internal array of regional trigger information
TClonesArray * fLocal
internal array of local trigger information
void UpdateBranchStatuses(TTree &tree, const char *pattern) const
Bool_t MakeBranch(TTree &tree, const char *storeClassName, const char *branchClassName, const char *branchName, void *address, Int_t bufferSize=4000, Int_t splitLevel=99) const
virtual void Clear(Option_t *opt="")
Clear ourselves (i.e. Reset)
virtual AliMUONLocalTrigger * FindLocal(Int_t boardNumber) const
Find a local trigger by the board number (not an index, it is a number really)
virtual ~AliMUONTriggerStoreV1()
TClonesArray ** LocalPtr() const
Return the address of the array of local trigger information.
Int_t LoCircuit() const
Return Circuit number.
TClonesArray * fGlobal
internal array of global trigger information
void SetLoCircuit(Int_t loCir)
Set Circuit number.