Fixes for #86059: Install data when ALICE_ROOT does not point to source (Christian)
[u/mrichter/AliRoot.git] / MUON / AliMUONVTriggerStore.cxx
CommitLineData
78a96979 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
3d1463c8 18//-----------------------------------------------------------------------------
78a96979 19/// \class AliMUONVTriggerStore
20///
21/// Base class of a trigger container, which holds local, regional and
22/// global information for one event.
23///
24/// \author Laurent Aphecetche, Subatech
3d1463c8 25//-----------------------------------------------------------------------------
78a96979 26
27#include "AliMUONVTriggerStore.h"
28#include "AliMUONLocalTrigger.h"
29#include "AliMUONRegionalTrigger.h"
30#include "AliMUONGlobalTrigger.h"
31
32/// \cond CLASSIMP
33ClassImp(AliMUONVTriggerStore)
34/// \endcond
35
36//_____________________________________________________________________________
37AliMUONVTriggerStore::AliMUONVTriggerStore()
38{
39 /// ctor
40}
41
42//_____________________________________________________________________________
43AliMUONVTriggerStore::~AliMUONVTriggerStore()
44{
45 /// dtor
46}
47
48//_____________________________________________________________________________
49AliMUONVTriggerStore*
50AliMUONVTriggerStore::Create(TTree& tree)
51{
52 /// Create a VTriggerStore from the tree (if possible).
53 return static_cast<AliMUONVTriggerStore*>(AliMUONVStore::Create(tree,"Trigger"));
54}
55
56//_____________________________________________________________________________
57TIterator*
58AliMUONVTriggerStore::CreateIterator() const
59{
60 /// Return local iterator
61 return CreateLocalIterator();
62}
63
64//_____________________________________________________________________________
65Bool_t
66AliMUONVTriggerStore::Add(TObject* object)
67{
68 /// Add an object, if object of type local, regional or global
69 if (!object) return kFALSE;
70 AliMUONLocalTrigger* local = dynamic_cast<AliMUONLocalTrigger*>(object);
71 if (local)
72 {
73 Add(*local);
74 return kTRUE;
75 }
76 AliMUONRegionalTrigger* regional = dynamic_cast<AliMUONRegionalTrigger*>(object);
77 if (regional)
78 {
79 Add(*regional);
80 return kTRUE;
81 }
82 AliMUONGlobalTrigger* global = dynamic_cast<AliMUONGlobalTrigger*>(object);
83 if (global)
84 {
85 SetGlobal(*global);
86 return kTRUE;
87 }
88 return kFALSE;
89}