ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */


#include "AliMUONLocalTrigger.h"
#include "AliLog.h"
#include "AliMUONLocalStruct.h"
#include "AliMUONRawStreamTriggerHP.h"
#include <Riostream.h>
#include <TArrayS.h>

//-----------------------------------------------------------------------------
/// \class AliMUONLocalTrigger
/// Local Trigger algorithm data outputs
/// (contains local trigger decision and bit patterns)                \n
/// Add SetLocalStruct method for rawdata  (Ch. Finck)
/// \author Ph. Crochet
//-----------------------------------------------------------------------------

using std::endl;
using std::cout;
/// \cond CLASSIMP
ClassImp(AliMUONLocalTrigger)
/// \endcond

//----------------------------------------------------------------------
AliMUONLocalTrigger::AliMUONLocalTrigger()
  : TObject(), 
    fLoCircuit(0),
    fLoStripX(0),
    fLoDev(0),
    fLoSdev(1),
    fLoTrigY(1),
    fLoStripY(15),
    fLoLpt(0),
    fLoHpt(0),
    
    fX1Pattern(0),
    fX2Pattern(0),
    fX3Pattern(0),
    fX4Pattern(0),
    
    fY1Pattern(0),
    fY2Pattern(0),
    fY3Pattern(0),
    fY4Pattern(0),

    fHitPatternFromResponse(0xFF),
    fTriggerWithoutChamber(0)
{
/// Default constructor
}
//----------------------------------------------------------------------
AliMUONLocalTrigger::AliMUONLocalTrigger(const AliMUONLocalTrigger& theMUONLocalTrig)
    : TObject(theMUONLocalTrig),
      fLoCircuit(theMUONLocalTrig.fLoCircuit),
      fLoStripX(theMUONLocalTrig.fLoStripX),
      fLoDev(theMUONLocalTrig.fLoDev),
      fLoSdev(theMUONLocalTrig.fLoSdev),
      fLoTrigY(theMUONLocalTrig.fLoTrigY),
      fLoStripY(theMUONLocalTrig.fLoStripY),
      fLoLpt(theMUONLocalTrig.fLoLpt),
      fLoHpt(theMUONLocalTrig.fLoHpt),
      
      fX1Pattern(theMUONLocalTrig.fX1Pattern),
      fX2Pattern(theMUONLocalTrig.fX2Pattern),
      fX3Pattern(theMUONLocalTrig.fX3Pattern),
      fX4Pattern(theMUONLocalTrig.fX4Pattern),
      
      fY1Pattern(theMUONLocalTrig.fY1Pattern),
      fY2Pattern(theMUONLocalTrig.fY2Pattern),
      fY3Pattern(theMUONLocalTrig.fY3Pattern),
      fY4Pattern(theMUONLocalTrig.fY4Pattern),

      fHitPatternFromResponse(theMUONLocalTrig.fHitPatternFromResponse),
      fTriggerWithoutChamber(theMUONLocalTrig.fTriggerWithoutChamber)
{
/// Copy constructor (useful for TClonesArray)

}

//----------------------------------------------------------------------
AliMUONLocalTrigger::~AliMUONLocalTrigger()
{
/// Destructor
}

//----------------------------------------------------------------------
AliMUONLocalTrigger& AliMUONLocalTrigger::operator=(const AliMUONLocalTrigger& theMUONLocalTrig)
{
/// Assigment operator;
/// equal operator (useful for non-pointer member in TClonesArray)

  if (this == &theMUONLocalTrig)
    return *this;

  // base class assignement
  TObject::operator=(theMUONLocalTrig);

  fLoCircuit = theMUONLocalTrig.fLoCircuit;
  fLoStripX  = theMUONLocalTrig.fLoStripX;         
  fLoDev     = theMUONLocalTrig.fLoDev;           
  fLoSdev    = theMUONLocalTrig.fLoSdev;           
  fLoTrigY   = theMUONLocalTrig.fLoTrigY;           
  fLoStripY  = theMUONLocalTrig.fLoStripY;           
  fLoLpt     = theMUONLocalTrig.fLoLpt;
  fLoHpt     = theMUONLocalTrig.fLoHpt;

  fX1Pattern  = theMUONLocalTrig.fX1Pattern;
  fX2Pattern  = theMUONLocalTrig.fX2Pattern;
  fX3Pattern  = theMUONLocalTrig.fX3Pattern;
  fX4Pattern  = theMUONLocalTrig.fX4Pattern;

  fY1Pattern  = theMUONLocalTrig.fY1Pattern;
  fY2Pattern  = theMUONLocalTrig.fY2Pattern;
  fY3Pattern  = theMUONLocalTrig.fY3Pattern;
  fY4Pattern  = theMUONLocalTrig.fY4Pattern;

  fHitPatternFromResponse = theMUONLocalTrig.fHitPatternFromResponse;
  fTriggerWithoutChamber = theMUONLocalTrig.fTriggerWithoutChamber;

  return *this;
}


//----------------------------------------------------------------------
Char_t AliMUONLocalTrigger::GetLoDecision() const
{
/// Get local decision 
/// from H(L)pt;
/// returns local trigger decision

  Char_t rv = (fLoLpt & 0x3);
  rv |= (fLoHpt << 2) & 0xC;

  return rv;
}

//___________________________________________
void AliMUONLocalTrigger::GetXPattern(TArrayS& array) const
{
    /// return array of X pattern
  Short_t vec[4] = {static_cast<Short_t>(GetX1Pattern()), static_cast<Short_t>(GetX2Pattern()), static_cast<Short_t>(GetX3Pattern()), static_cast<Short_t>(GetX4Pattern())};
    array.Set(4, vec);
}

//___________________________________________
void AliMUONLocalTrigger::GetYPattern(TArrayS& array) const
{
    /// return array of Y pattern
  Short_t vec[4] = {static_cast<Short_t>(GetY1Pattern()), static_cast<Short_t>(GetY2Pattern()), static_cast<Short_t>(GetY3Pattern()), static_cast<Short_t>(GetY4Pattern())};
    array.Set(4, vec);
}

//___________________________________________
Bool_t
AliMUONLocalTrigger::IsNull() const
{
  /// Whether or not this card has something usefull to say or not
  return ( fX1Pattern == 0 &&
           fX2Pattern == 0 &&
           fX3Pattern == 0 &&
           fX4Pattern == 0 &&
           fY1Pattern == 0 &&
           fY2Pattern == 0 &&
           fY3Pattern == 0 &&
           fY4Pattern == 0 );          
}

//----------------------------------------------------------------------
void AliMUONLocalTrigger::SetLocalStruct(Int_t loCircuit, AliMUONLocalStruct& localStruct)
{
/// Set local trigger info from rawdata localStruct

  // set id'
  SetLoCircuit(loCircuit);

  // set X, Y, dev, Sdev and TrigY
  SetLoStripX((Int_t)localStruct.GetXPos());
  SetLoStripY((Int_t)localStruct.GetYPos());
  SetLoDev((Int_t)localStruct.GetXDev());
  SetLoSdev((Int_t)localStruct.GetSXDev());
  SetLoTrigY((Int_t)localStruct.GetTrigY());
 
  // set L(H)pt
  SetLoLpt(localStruct.GetLpt());
  SetLoHpt(localStruct.GetHpt());

  // set pattern X
  SetX1Pattern(localStruct.GetX1());
  SetX2Pattern(localStruct.GetX2());
  SetX3Pattern(localStruct.GetX3());
  SetX4Pattern(localStruct.GetX4());

  // set pattern Y
  SetY1Pattern(localStruct.GetY1());
  SetY2Pattern(localStruct.GetY2());
  SetY3Pattern(localStruct.GetY3());
  SetY4Pattern(localStruct.GetY4());

}

//----------------------------------------------------------------------
void AliMUONLocalTrigger::SetLocalStruct(Int_t loCircuit, const AliMUONRawStreamTriggerHP::AliLocalStruct& localStruct)
{
/// Set local trigger info from rawdata localStruct (new raw reader)

  // set id'
  SetLoCircuit(loCircuit);

  // set X, Y, dev, Sdev and TrigY
  SetLoStripX((Int_t)localStruct.GetXPos());
  SetLoStripY((Int_t)localStruct.GetYPos());
  SetLoDev((Int_t)localStruct.GetXDev());
  SetLoSdev((Int_t)localStruct.GetSXDev());
  SetLoTrigY((Int_t)localStruct.GetTrigY());
 
  // set L(H)pt
  SetLoLpt(localStruct.GetLpt());
  SetLoHpt(localStruct.GetHpt());

  // set pattern X
  SetX1Pattern(localStruct.GetX1());
  SetX2Pattern(localStruct.GetX2());
  SetX3Pattern(localStruct.GetX3());
  SetX4Pattern(localStruct.GetX4());

  // set pattern Y
  SetY1Pattern(localStruct.GetY1());
  SetY2Pattern(localStruct.GetY2());
  SetY3Pattern(localStruct.GetY3());
  SetY4Pattern(localStruct.GetY4());

}

namespace
{
  const char* AsString(Int_t t)
  {
    switch (t)
    {
      case 0:
        return "no";
        break;
      case 1:
        return "minus";
        break;
      case 2:
        return "plus";
        break;
      case 3:
        return "undef";
        break;
      default:
        return "";
        break;
    }
  }
}

//----------------------------------------------------------------------
void AliMUONLocalTrigger::Print(Option_t* opt) const
{
/// Printing Local Trigger information

  TString sopt(opt);
  sopt.ToUpper();

  cout << Form("Circuit %3d Decision %2d StripX %2d Dev %2d(%1d) StripY %2d Lpt %6s Hpt %6s",
               LoCircuit(), GetLoDecision(),
               LoStripX(), LoDev(), LoSdev(), LoStripY(),
               AsString(LoLpt()),AsString(LoHpt())) << endl;
  
  if ( sopt.Contains("FULL") ) { 

    cout << Form("Xpatterns = 0x %04x %04x %04x %04x",
                 fX1Pattern,fX2Pattern,fX3Pattern,fX4Pattern) << endl;
    cout << Form("Ypatterns = 0x %04x %04x %04x %04x",
                 fY1Pattern,fY2Pattern,fY3Pattern,fY4Pattern) << endl;
  }
}

//----------------------------------------------------------------------
Int_t AliMUONLocalTrigger::GetDeviation() const
{
  /// return deviation
  
  Int_t deviation = LoDev(); 
  Int_t sign = 0;
  if ( !LoSdev() &&  deviation ) sign=-1;
  if ( !LoSdev() && !deviation ) sign= 0;
  if (  LoSdev() == 1 )          sign=+1;
  deviation *= sign;
  deviation += 15;
  return deviation;
}

//----------------------------------------------------------------------
void AliMUONLocalTrigger::SetDeviation(Int_t deviation)
{
  /// set LoDev and LoSDev according to deviation
  
  deviation -= 15;
  if (deviation > 0) {
    SetLoDev(deviation);
    SetLoSdev(1);
  } else {
    SetLoDev(-deviation);
    SetLoSdev(0);
  }
}

//----------------------------------------------------------------------
const char*
AliMUONLocalTrigger::GetName() const
{
/// Generate name

  return Form("LocalBoard%3d",LoCircuit());
}


//----------------------------------------------------------------------
Bool_t AliMUONLocalTrigger::IsTrigX() const
{
/// Trigger response X strips
  Bool_t xTrig;
  if ( LoSdev()==1 && LoDev()==0 && 
       LoStripX()==0) xTrig=kFALSE; // no trigger in X
  else xTrig = kTRUE;                       // trigger in X
  return xTrig;
}


//----------------------------------------------------------------------
Bool_t AliMUONLocalTrigger::IsTrigY() const
{
/// Trigger response Y strips
  Bool_t yTrig;
  if ( LoTrigY()==1 && 
       LoStripY()==15 ) yTrig = kFALSE; // no trigger in Y
  else yTrig = kTRUE;                          // trigger in Y
  return yTrig;
}
 AliMUONLocalTrigger.cxx:1
 AliMUONLocalTrigger.cxx:2
 AliMUONLocalTrigger.cxx:3
 AliMUONLocalTrigger.cxx:4
 AliMUONLocalTrigger.cxx:5
 AliMUONLocalTrigger.cxx:6
 AliMUONLocalTrigger.cxx:7
 AliMUONLocalTrigger.cxx:8
 AliMUONLocalTrigger.cxx:9
 AliMUONLocalTrigger.cxx:10
 AliMUONLocalTrigger.cxx:11
 AliMUONLocalTrigger.cxx:12
 AliMUONLocalTrigger.cxx:13
 AliMUONLocalTrigger.cxx:14
 AliMUONLocalTrigger.cxx:15
 AliMUONLocalTrigger.cxx:16
 AliMUONLocalTrigger.cxx:17
 AliMUONLocalTrigger.cxx:18
 AliMUONLocalTrigger.cxx:19
 AliMUONLocalTrigger.cxx:20
 AliMUONLocalTrigger.cxx:21
 AliMUONLocalTrigger.cxx:22
 AliMUONLocalTrigger.cxx:23
 AliMUONLocalTrigger.cxx:24
 AliMUONLocalTrigger.cxx:25
 AliMUONLocalTrigger.cxx:26
 AliMUONLocalTrigger.cxx:27
 AliMUONLocalTrigger.cxx:28
 AliMUONLocalTrigger.cxx:29
 AliMUONLocalTrigger.cxx:30
 AliMUONLocalTrigger.cxx:31
 AliMUONLocalTrigger.cxx:32
 AliMUONLocalTrigger.cxx:33
 AliMUONLocalTrigger.cxx:34
 AliMUONLocalTrigger.cxx:35
 AliMUONLocalTrigger.cxx:36
 AliMUONLocalTrigger.cxx:37
 AliMUONLocalTrigger.cxx:38
 AliMUONLocalTrigger.cxx:39
 AliMUONLocalTrigger.cxx:40
 AliMUONLocalTrigger.cxx:41
 AliMUONLocalTrigger.cxx:42
 AliMUONLocalTrigger.cxx:43
 AliMUONLocalTrigger.cxx:44
 AliMUONLocalTrigger.cxx:45
 AliMUONLocalTrigger.cxx:46
 AliMUONLocalTrigger.cxx:47
 AliMUONLocalTrigger.cxx:48
 AliMUONLocalTrigger.cxx:49
 AliMUONLocalTrigger.cxx:50
 AliMUONLocalTrigger.cxx:51
 AliMUONLocalTrigger.cxx:52
 AliMUONLocalTrigger.cxx:53
 AliMUONLocalTrigger.cxx:54
 AliMUONLocalTrigger.cxx:55
 AliMUONLocalTrigger.cxx:56
 AliMUONLocalTrigger.cxx:57
 AliMUONLocalTrigger.cxx:58
 AliMUONLocalTrigger.cxx:59
 AliMUONLocalTrigger.cxx:60
 AliMUONLocalTrigger.cxx:61
 AliMUONLocalTrigger.cxx:62
 AliMUONLocalTrigger.cxx:63
 AliMUONLocalTrigger.cxx:64
 AliMUONLocalTrigger.cxx:65
 AliMUONLocalTrigger.cxx:66
 AliMUONLocalTrigger.cxx:67
 AliMUONLocalTrigger.cxx:68
 AliMUONLocalTrigger.cxx:69
 AliMUONLocalTrigger.cxx:70
 AliMUONLocalTrigger.cxx:71
 AliMUONLocalTrigger.cxx:72
 AliMUONLocalTrigger.cxx:73
 AliMUONLocalTrigger.cxx:74
 AliMUONLocalTrigger.cxx:75
 AliMUONLocalTrigger.cxx:76
 AliMUONLocalTrigger.cxx:77
 AliMUONLocalTrigger.cxx:78
 AliMUONLocalTrigger.cxx:79
 AliMUONLocalTrigger.cxx:80
 AliMUONLocalTrigger.cxx:81
 AliMUONLocalTrigger.cxx:82
 AliMUONLocalTrigger.cxx:83
 AliMUONLocalTrigger.cxx:84
 AliMUONLocalTrigger.cxx:85
 AliMUONLocalTrigger.cxx:86
 AliMUONLocalTrigger.cxx:87
 AliMUONLocalTrigger.cxx:88
 AliMUONLocalTrigger.cxx:89
 AliMUONLocalTrigger.cxx:90
 AliMUONLocalTrigger.cxx:91
 AliMUONLocalTrigger.cxx:92
 AliMUONLocalTrigger.cxx:93
 AliMUONLocalTrigger.cxx:94
 AliMUONLocalTrigger.cxx:95
 AliMUONLocalTrigger.cxx:96
 AliMUONLocalTrigger.cxx:97
 AliMUONLocalTrigger.cxx:98
 AliMUONLocalTrigger.cxx:99
 AliMUONLocalTrigger.cxx:100
 AliMUONLocalTrigger.cxx:101
 AliMUONLocalTrigger.cxx:102
 AliMUONLocalTrigger.cxx:103
 AliMUONLocalTrigger.cxx:104
 AliMUONLocalTrigger.cxx:105
 AliMUONLocalTrigger.cxx:106
 AliMUONLocalTrigger.cxx:107
 AliMUONLocalTrigger.cxx:108
 AliMUONLocalTrigger.cxx:109
 AliMUONLocalTrigger.cxx:110
 AliMUONLocalTrigger.cxx:111
 AliMUONLocalTrigger.cxx:112
 AliMUONLocalTrigger.cxx:113
 AliMUONLocalTrigger.cxx:114
 AliMUONLocalTrigger.cxx:115
 AliMUONLocalTrigger.cxx:116
 AliMUONLocalTrigger.cxx:117
 AliMUONLocalTrigger.cxx:118
 AliMUONLocalTrigger.cxx:119
 AliMUONLocalTrigger.cxx:120
 AliMUONLocalTrigger.cxx:121
 AliMUONLocalTrigger.cxx:122
 AliMUONLocalTrigger.cxx:123
 AliMUONLocalTrigger.cxx:124
 AliMUONLocalTrigger.cxx:125
 AliMUONLocalTrigger.cxx:126
 AliMUONLocalTrigger.cxx:127
 AliMUONLocalTrigger.cxx:128
 AliMUONLocalTrigger.cxx:129
 AliMUONLocalTrigger.cxx:130
 AliMUONLocalTrigger.cxx:131
 AliMUONLocalTrigger.cxx:132
 AliMUONLocalTrigger.cxx:133
 AliMUONLocalTrigger.cxx:134
 AliMUONLocalTrigger.cxx:135
 AliMUONLocalTrigger.cxx:136
 AliMUONLocalTrigger.cxx:137
 AliMUONLocalTrigger.cxx:138
 AliMUONLocalTrigger.cxx:139
 AliMUONLocalTrigger.cxx:140
 AliMUONLocalTrigger.cxx:141
 AliMUONLocalTrigger.cxx:142
 AliMUONLocalTrigger.cxx:143
 AliMUONLocalTrigger.cxx:144
 AliMUONLocalTrigger.cxx:145
 AliMUONLocalTrigger.cxx:146
 AliMUONLocalTrigger.cxx:147
 AliMUONLocalTrigger.cxx:148
 AliMUONLocalTrigger.cxx:149
 AliMUONLocalTrigger.cxx:150
 AliMUONLocalTrigger.cxx:151
 AliMUONLocalTrigger.cxx:152
 AliMUONLocalTrigger.cxx:153
 AliMUONLocalTrigger.cxx:154
 AliMUONLocalTrigger.cxx:155
 AliMUONLocalTrigger.cxx:156
 AliMUONLocalTrigger.cxx:157
 AliMUONLocalTrigger.cxx:158
 AliMUONLocalTrigger.cxx:159
 AliMUONLocalTrigger.cxx:160
 AliMUONLocalTrigger.cxx:161
 AliMUONLocalTrigger.cxx:162
 AliMUONLocalTrigger.cxx:163
 AliMUONLocalTrigger.cxx:164
 AliMUONLocalTrigger.cxx:165
 AliMUONLocalTrigger.cxx:166
 AliMUONLocalTrigger.cxx:167
 AliMUONLocalTrigger.cxx:168
 AliMUONLocalTrigger.cxx:169
 AliMUONLocalTrigger.cxx:170
 AliMUONLocalTrigger.cxx:171
 AliMUONLocalTrigger.cxx:172
 AliMUONLocalTrigger.cxx:173
 AliMUONLocalTrigger.cxx:174
 AliMUONLocalTrigger.cxx:175
 AliMUONLocalTrigger.cxx:176
 AliMUONLocalTrigger.cxx:177
 AliMUONLocalTrigger.cxx:178
 AliMUONLocalTrigger.cxx:179
 AliMUONLocalTrigger.cxx:180
 AliMUONLocalTrigger.cxx:181
 AliMUONLocalTrigger.cxx:182
 AliMUONLocalTrigger.cxx:183
 AliMUONLocalTrigger.cxx:184
 AliMUONLocalTrigger.cxx:185
 AliMUONLocalTrigger.cxx:186
 AliMUONLocalTrigger.cxx:187
 AliMUONLocalTrigger.cxx:188
 AliMUONLocalTrigger.cxx:189
 AliMUONLocalTrigger.cxx:190
 AliMUONLocalTrigger.cxx:191
 AliMUONLocalTrigger.cxx:192
 AliMUONLocalTrigger.cxx:193
 AliMUONLocalTrigger.cxx:194
 AliMUONLocalTrigger.cxx:195
 AliMUONLocalTrigger.cxx:196
 AliMUONLocalTrigger.cxx:197
 AliMUONLocalTrigger.cxx:198
 AliMUONLocalTrigger.cxx:199
 AliMUONLocalTrigger.cxx:200
 AliMUONLocalTrigger.cxx:201
 AliMUONLocalTrigger.cxx:202
 AliMUONLocalTrigger.cxx:203
 AliMUONLocalTrigger.cxx:204
 AliMUONLocalTrigger.cxx:205
 AliMUONLocalTrigger.cxx:206
 AliMUONLocalTrigger.cxx:207
 AliMUONLocalTrigger.cxx:208
 AliMUONLocalTrigger.cxx:209
 AliMUONLocalTrigger.cxx:210
 AliMUONLocalTrigger.cxx:211
 AliMUONLocalTrigger.cxx:212
 AliMUONLocalTrigger.cxx:213
 AliMUONLocalTrigger.cxx:214
 AliMUONLocalTrigger.cxx:215
 AliMUONLocalTrigger.cxx:216
 AliMUONLocalTrigger.cxx:217
 AliMUONLocalTrigger.cxx:218
 AliMUONLocalTrigger.cxx:219
 AliMUONLocalTrigger.cxx:220
 AliMUONLocalTrigger.cxx:221
 AliMUONLocalTrigger.cxx:222
 AliMUONLocalTrigger.cxx:223
 AliMUONLocalTrigger.cxx:224
 AliMUONLocalTrigger.cxx:225
 AliMUONLocalTrigger.cxx:226
 AliMUONLocalTrigger.cxx:227
 AliMUONLocalTrigger.cxx:228
 AliMUONLocalTrigger.cxx:229
 AliMUONLocalTrigger.cxx:230
 AliMUONLocalTrigger.cxx:231
 AliMUONLocalTrigger.cxx:232
 AliMUONLocalTrigger.cxx:233
 AliMUONLocalTrigger.cxx:234
 AliMUONLocalTrigger.cxx:235
 AliMUONLocalTrigger.cxx:236
 AliMUONLocalTrigger.cxx:237
 AliMUONLocalTrigger.cxx:238
 AliMUONLocalTrigger.cxx:239
 AliMUONLocalTrigger.cxx:240
 AliMUONLocalTrigger.cxx:241
 AliMUONLocalTrigger.cxx:242
 AliMUONLocalTrigger.cxx:243
 AliMUONLocalTrigger.cxx:244
 AliMUONLocalTrigger.cxx:245
 AliMUONLocalTrigger.cxx:246
 AliMUONLocalTrigger.cxx:247
 AliMUONLocalTrigger.cxx:248
 AliMUONLocalTrigger.cxx:249
 AliMUONLocalTrigger.cxx:250
 AliMUONLocalTrigger.cxx:251
 AliMUONLocalTrigger.cxx:252
 AliMUONLocalTrigger.cxx:253
 AliMUONLocalTrigger.cxx:254
 AliMUONLocalTrigger.cxx:255
 AliMUONLocalTrigger.cxx:256
 AliMUONLocalTrigger.cxx:257
 AliMUONLocalTrigger.cxx:258
 AliMUONLocalTrigger.cxx:259
 AliMUONLocalTrigger.cxx:260
 AliMUONLocalTrigger.cxx:261
 AliMUONLocalTrigger.cxx:262
 AliMUONLocalTrigger.cxx:263
 AliMUONLocalTrigger.cxx:264
 AliMUONLocalTrigger.cxx:265
 AliMUONLocalTrigger.cxx:266
 AliMUONLocalTrigger.cxx:267
 AliMUONLocalTrigger.cxx:268
 AliMUONLocalTrigger.cxx:269
 AliMUONLocalTrigger.cxx:270
 AliMUONLocalTrigger.cxx:271
 AliMUONLocalTrigger.cxx:272
 AliMUONLocalTrigger.cxx:273
 AliMUONLocalTrigger.cxx:274
 AliMUONLocalTrigger.cxx:275
 AliMUONLocalTrigger.cxx:276
 AliMUONLocalTrigger.cxx:277
 AliMUONLocalTrigger.cxx:278
 AliMUONLocalTrigger.cxx:279
 AliMUONLocalTrigger.cxx:280
 AliMUONLocalTrigger.cxx:281
 AliMUONLocalTrigger.cxx:282
 AliMUONLocalTrigger.cxx:283
 AliMUONLocalTrigger.cxx:284
 AliMUONLocalTrigger.cxx:285
 AliMUONLocalTrigger.cxx:286
 AliMUONLocalTrigger.cxx:287
 AliMUONLocalTrigger.cxx:288
 AliMUONLocalTrigger.cxx:289
 AliMUONLocalTrigger.cxx:290
 AliMUONLocalTrigger.cxx:291
 AliMUONLocalTrigger.cxx:292
 AliMUONLocalTrigger.cxx:293
 AliMUONLocalTrigger.cxx:294
 AliMUONLocalTrigger.cxx:295
 AliMUONLocalTrigger.cxx:296
 AliMUONLocalTrigger.cxx:297
 AliMUONLocalTrigger.cxx:298
 AliMUONLocalTrigger.cxx:299
 AliMUONLocalTrigger.cxx:300
 AliMUONLocalTrigger.cxx:301
 AliMUONLocalTrigger.cxx:302
 AliMUONLocalTrigger.cxx:303
 AliMUONLocalTrigger.cxx:304
 AliMUONLocalTrigger.cxx:305
 AliMUONLocalTrigger.cxx:306
 AliMUONLocalTrigger.cxx:307
 AliMUONLocalTrigger.cxx:308
 AliMUONLocalTrigger.cxx:309
 AliMUONLocalTrigger.cxx:310
 AliMUONLocalTrigger.cxx:311
 AliMUONLocalTrigger.cxx:312
 AliMUONLocalTrigger.cxx:313
 AliMUONLocalTrigger.cxx:314
 AliMUONLocalTrigger.cxx:315
 AliMUONLocalTrigger.cxx:316
 AliMUONLocalTrigger.cxx:317
 AliMUONLocalTrigger.cxx:318
 AliMUONLocalTrigger.cxx:319
 AliMUONLocalTrigger.cxx:320
 AliMUONLocalTrigger.cxx:321
 AliMUONLocalTrigger.cxx:322
 AliMUONLocalTrigger.cxx:323
 AliMUONLocalTrigger.cxx:324
 AliMUONLocalTrigger.cxx:325
 AliMUONLocalTrigger.cxx:326
 AliMUONLocalTrigger.cxx:327
 AliMUONLocalTrigger.cxx:328
 AliMUONLocalTrigger.cxx:329
 AliMUONLocalTrigger.cxx:330
 AliMUONLocalTrigger.cxx:331
 AliMUONLocalTrigger.cxx:332
 AliMUONLocalTrigger.cxx:333
 AliMUONLocalTrigger.cxx:334
 AliMUONLocalTrigger.cxx:335
 AliMUONLocalTrigger.cxx:336
 AliMUONLocalTrigger.cxx:337
 AliMUONLocalTrigger.cxx:338
 AliMUONLocalTrigger.cxx:339
 AliMUONLocalTrigger.cxx:340
 AliMUONLocalTrigger.cxx:341
 AliMUONLocalTrigger.cxx:342
 AliMUONLocalTrigger.cxx:343
 AliMUONLocalTrigger.cxx:344
 AliMUONLocalTrigger.cxx:345
 AliMUONLocalTrigger.cxx:346
 AliMUONLocalTrigger.cxx:347
 AliMUONLocalTrigger.cxx:348
 AliMUONLocalTrigger.cxx:349
 AliMUONLocalTrigger.cxx:350
 AliMUONLocalTrigger.cxx:351
 AliMUONLocalTrigger.cxx:352
 AliMUONLocalTrigger.cxx:353
 AliMUONLocalTrigger.cxx:354
 AliMUONLocalTrigger.cxx:355
 AliMUONLocalTrigger.cxx:356
 AliMUONLocalTrigger.cxx:357
 AliMUONLocalTrigger.cxx:358