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$ */

//-----------------------------------------------------------------------------
// Class AliMUONTriggerElectronics
//--------------------------------
// Manager class for muon trigger electronics
// Client of trigger board classes
// Debugged by Ph. Crochet & Ch. Finck
// Interfaced with new mapping Ch. Finck
//
// Author: Rachid Guernane (LPCCFd)
//-----------------------------------------------------------------------------

#include "AliLoader.h"
#include "AliLog.h"
#include "AliMUONCalibrationData.h"
#include "AliMUONVDigit.h"
#include "AliMUONVDigitStore.h"
#include "AliMUONGlobalTrigger.h"
#include "AliMUONGlobalTriggerBoard.h"
#include "AliMUONLocalTrigger.h"
#include "AliMUONLocalTriggerBoard.h"
#include "AliMUONRegionalTrigger.h"
#include "AliMUONRegionalTriggerBoard.h"
#include "AliMUONTriggerCrate.h"
#include "AliMUONTriggerCrateStore.h"
#include "AliMUONTriggerElectronics.h"
#include "AliMUONTriggerCrateConfig.h"
#include "AliMUONRegionalTriggerConfig.h"
#include "AliMUONGlobalCrateConfig.h"
#include "AliMUONVTriggerStore.h"
#include "AliMUONVCalibParam.h"
#include "AliMpCathodType.h"
#include "AliMpCDB.h"
#include "AliMpDEManager.h"
#include "AliMpSegmentation.h"
#include "AliMpVSegmentation.h"
#include "AliMpCathodType.h"
#include "AliMpTriggerCrate.h"
#include "AliMpLocalBoard.h"
#include "AliMpDDLStore.h"
#include "AliMpExMap.h"
#include "AliMpIntPair.h"

#include "AliLog.h"
#include "AliLoader.h"
#include "AliRun.h"
#include <TBits.h>
#include <TSystem.h>

#include "AliCodeTimer.h"


/// \cond CLASSIMP
ClassImp(AliMUONTriggerElectronics)
/// \endcond

//___________________________________________
AliMUONTriggerElectronics::AliMUONTriggerElectronics(AliMUONCalibrationData* calibData) 
: TObject(),
  fCrates(new AliMUONTriggerCrateStore),
  fGlobalTriggerBoard(new AliMUONGlobalTriggerBoard)
{
 /// CONSTRUCTOR
///


  // force loading of mapping if not already done
  if ( !AliMpDDLStore::Instance(kFALSE) )
  {
    AliMpCDB::LoadDDLStore();
  }
  
  
  Factory(calibData);
  LoadMasks(calibData); 
}

//___________________________________________
AliMUONTriggerElectronics::~AliMUONTriggerElectronics()
{
/// DESTRUCTOR
///
  delete fGlobalTriggerBoard;
  delete fCrates;
    
}

//___________________________________________
void AliMUONTriggerElectronics::Factory(AliMUONCalibrationData* calibData)
{  
 /// BUILD ALL ELECTRONICS
 ///

    fCrates->ReadFromFile(calibData);
}

//___________________________________________
void AliMUONTriggerElectronics::Feed(const AliMUONVDigitStore& digitStore)
{
  /// FILL INPUTS
  ///

  AliCodeTimerAuto("",0);
  
  TIter next(digitStore.CreateTriggerIterator());
  AliMUONVDigit* mdig;
  
  while ( ( mdig = static_cast<AliMUONVDigit*>(next()) ) )
  {      
    //       CHECKME ! The TrackCharge is not ok with new digitizerV3 !
    //			for (Int_t ichg=0; ichg<10; ichg++) schg += mdig->TrackCharge(ichg);
    Int_t ichamber = AliMpDEManager::GetChamberId(mdig->DetElemId());
    Int_t schg = (Int_t)(mdig->Charge() + 0.5);
    
    //       APPLY CONDITION ON SOFT BACKGROUND	
    Int_t tchg = schg - (Int_t(schg/10))*10;	
    
    if (schg<=10 || tchg>0) 
    {
      Int_t detElemId  = mdig->DetElemId();
      Int_t cathode    = mdig->Cathode();
    
      const AliMpVSegmentation* seg = 
	  AliMpSegmentation::Instance()
	  ->GetMpSegmentation(detElemId,AliMp::GetCathodType(cathode));
  
      Int_t ix = mdig->PadX(), iy = mdig->PadY();
      
      AliDebug(3,Form("cathode %d ix %d iy %d ",cathode,ix,iy));

      AliMpPad pad = seg->PadByIndices(ix,iy,kTRUE);
      
      for (Int_t i=0; i<pad.GetNofLocations(); i++) 
      {
        Int_t nboard = pad.GetLocalBoardId(i);
        
        Int_t ibitxy = pad.GetLocalBoardChannel(i);
        
        AliMUONLocalTriggerBoard *b = fCrates->LocalBoard(nboard);
        
        if (b) 
        {
          if (cathode && b->GetSwitch(AliMpLocalBoard::kZeroAllYLSB)) ibitxy += 8;
          
          b->SetbitM(ibitxy,cathode,ichamber-10);
          
          if ( cathode == 0 ) {
            // Particular case of the columns with 22 local boards (2R(L) 3R(L))
            // Fill copy boards
            AliMpLocalBoard* mpLocalBoard = AliMpDDLStore::Instance()->GetLocalBoard(nboard);
            Int_t nboardCopy = mpLocalBoard->GetInputXto();
            if ( nboardCopy > 0 ) {
              AliMUONLocalTriggerBoard* copyBoard = fCrates->LocalBoard(nboardCopy);
              copyBoard->SetbitM(ibitxy,cathode,ichamber-10);
            }
          }
        }
        else
        {
          AliError(Form("Could not get local board number %d",nboard));
        }
      }
    }		
  }

  FeedCopyNeighbours();
}


//___________________________________________
void AliMUONTriggerElectronics::FeedCopyNeighbours()
{
  //
  /// Feed the local copies
  /// and complete the feed with the information of neighbours
  //
  
  // FILL UP/DOWN OF CURRENT BOARD (DONE VIA J3 BUS IN REAL LIFE)
  AliMUONTriggerCrate* cr;
  TIter next2(fCrates->CreateCrateIterator());
  
  while ( ( cr = static_cast<AliMUONTriggerCrate*>(next2()) ) )
  {            
    TObjArray *boards = cr->Boards();
    
    for (Int_t j = 1; j < boards->GetEntries()-1; j++)
    {
      TObject *o = boards->At(j);
			
      if (!o) break;
			
      AliMUONLocalTriggerBoard *currboard = (AliMUONLocalTriggerBoard*)o;
			
      AliMUONLocalTriggerBoard *neighbour = (AliMUONLocalTriggerBoard*)boards->At(j+1);
			
      UShort_t cXY[2][4];
			
      if (j==1) {neighbour->GetXY(cXY); currboard->SetXYU(cXY);}
			
      //       LAST BOARD IN THE CRATE HAS NO UP EXCEPT FOR CRATES 2 & 3
      if (j < boards->GetEntries()-2)  
      {
	      AliMUONLocalTriggerBoard *nextboard = (AliMUONLocalTriggerBoard*)boards->At(j+2);
				
	      currboard->GetXY(cXY); neighbour->SetXYD(cXY);
	      nextboard->GetXY(cXY); neighbour->SetXYU(cXY);
				
	      if (j==boards->GetEntries()-3) {neighbour->GetXY(cXY); nextboard->SetXYD(cXY);}
      }
    }
  }
 
}


//___________________________________________
void AliMUONTriggerElectronics::Feed(UShort_t pattern[2][4])
{
  /// FILL INPUTS
  ///
  AliMUONTriggerCrate* cr;
  TIter next(fCrates->CreateCrateIterator());
   
   while ( ( cr = static_cast<AliMUONTriggerCrate*>(next()) ) )
   {                 
     TObjArray *boards = cr->Boards();
     
     for (Int_t j = 1; j < boards->GetEntries(); j++)
     {
       TObject *o = boards->At(j);
       
       if (!o) break;
       
       AliMUONLocalTriggerBoard *board = (AliMUONLocalTriggerBoard*)o;
       
       board->SetXY(pattern);
     }
   }
}

//___________________________________________
void AliMUONTriggerElectronics::DumpOS()
{
/// DUMP IN THE OLD WAY
///
   for (Int_t i= 0; i < 234;i++)
   {
      AliMUONLocalTriggerBoard *board = fCrates->LocalBoard(i);

      if (board) board->Scan("ALL");
   }
}

//___________________________________________
void AliMUONTriggerElectronics::Scan(const Option_t *option)
{
  /// SCAN
  ///

  AliMUONTriggerCrate* cr;
  TIter next(fCrates->CreateCrateIterator());  
  
  while ( ( cr = static_cast<AliMUONTriggerCrate*>(next()) ) )
  {                
    TObjArray *boards = cr->Boards();
    
    for (Int_t j = 0; j < boards->GetEntries(); j++)
    {
      TObject *o = boards->At(j);
      
      TString op = option;
      
      Bool_t cdtion = kFALSE;
      
      if (op.Contains("LOCAL"))    cdtion = o->IsA() == AliMUONLocalTriggerBoard::Class();
      if (op.Contains("REGIONAL")) cdtion = o->IsA() == AliMUONRegionalTriggerBoard::Class();
      if (op.Contains("GLOBAL"))   cdtion = o->IsA() == AliMUONGlobalTriggerBoard::Class();
      
      if (!o || !cdtion) continue;
      
      AliMUONLocalTriggerBoard *board = (AliMUONLocalTriggerBoard*)o;
      
      board->Scan();
    }
  }
}

//___________________________________________
void AliMUONTriggerElectronics::Reset()
{
  /// RESET
  ///
  
   AliMUONTriggerCrate* cr;
  TIter next(fCrates->CreateCrateIterator());
   while ( ( cr = static_cast<AliMUONTriggerCrate*>(next()) ) )
   {            
      TObjArray *boards = cr->Boards();
            
      for (Int_t j=0; j<boards->GetEntries(); j++)
      {     
         AliMUONTriggerBoard *b = (AliMUONTriggerBoard*)boards->At(j);

         if (b) b->Reset();
      }
   }
}


//_______________________________________________________________________
void AliMUONTriggerElectronics::LoadMasks(AliMUONCalibrationData* calibData)
{
  /// Load mask from config in CDB 
  
  // Set mask
  
  AliMUONRegionalTriggerConfig* regionalConfig = calibData->RegionalTriggerConfig();
  if (!regionalConfig) {
     AliError("No valid regional trigger configuration in CDB");
     return;
  }   
  
  AliMUONTriggerCrate* cr;
  TIter next(fCrates->CreateCrateIterator());
  
  Int_t irb(0);
  
  while ( ( cr = static_cast<AliMUONTriggerCrate*>(next()) ) )
  {            
    TObjArray *boards = cr->Boards();
    
    AliMUONRegionalTriggerBoard *regb = (AliMUONRegionalTriggerBoard*)boards->At(0);

    AliMUONTriggerCrateConfig* crateConfig = regionalConfig->FindTriggerCrate(cr->GetName());
    
    if (!crateConfig)
    {
      AliError(Form("Crate %s not present in configuration !!!", cr->GetName()));
      return;
    }
    
    UShort_t rmask= crateConfig->GetMask();

    regb->Mask(rmask);
    
    for (Int_t j = 1; j < boards->GetEntries(); j++)
    {
      AliMUONLocalTriggerBoard *b = (AliMUONLocalTriggerBoard*)boards->At(j);
      
      Int_t cardNumber = b->GetNumber();
      
      if (cardNumber) // skip empty slots
      {
        AliMUONVCalibParam* localBoardMasks = calibData->LocalTriggerBoardMasks(cardNumber);
        for ( Int_t i = 0; i < localBoardMasks->Size(); ++i )
        {
          UShort_t lmask = static_cast<UShort_t>(localBoardMasks->ValueAsInt(i) & 0xFFFF);
          b->Mask(i,lmask);
        }
      }
    }
    ++irb;
  }
  
   AliMUONGlobalCrateConfig * globalConfig = calibData->GlobalTriggerCrateConfig();
   if (!globalConfig) {
     AliError("No valid trigger crate configuration in CDB");
     return;
   }   

    UInt_t gmask = 0;
    for (Int_t i = 0; i < 4; i++) {
      gmask = globalConfig->GetGlobalMask(i);
      fGlobalTriggerBoard->Mask(i,gmask);
    }
}

//___________________________________________
void AliMUONTriggerElectronics::LocalResponse()
{
/// Compute the response for local cards

  AliCodeTimerAuto("",0);
	
  AliMUONTriggerCrate* cr;
  TIter next(fCrates->CreateCrateIterator());

  UShort_t thisl[16];
  
  while ( ( cr = static_cast<AliMUONTriggerCrate*>(next()) ) )
  {            
    
    TObjArray *boards = cr->Boards();
    
    AliMUONRegionalTriggerBoard *regb = (AliMUONRegionalTriggerBoard*)boards->At(0);
    
    for (Int_t j=0; j<16; ++j) thisl[j] = 0;
  
    for (Int_t j = 1; j < boards->GetEntries(); j++)
    {     
	TObject *o = boards->At(j);
      
	if (!o) break;
      
	AliMUONLocalTriggerBoard *board = (AliMUONLocalTriggerBoard*)o;

	board->Response();
				
	UShort_t response = board->GetResponse();            
        
	// CRATE CONTAINING INTERFACE BOARD
  if (!board->IsNotified()) // copy boards
	{
	  if ( response != 0 ) 
	    AliWarning(Form("Interface board %s in slot %d of crate %s has a non zero response",
			    board->GetName(),j,cr->GetName()));
	  AliDebug(1, Form("local slot %d, number %d in crate %s\n", j, board->GetNumber(), cr->GetName()));
	  
	}
        
	thisl[j-1] = response;
    }
    
    regb->SetLocalResponse(thisl);
  }
}

//___________________________________________
void AliMUONTriggerElectronics::RegionalResponse()
{
  /// Compute the response for all regional cards.

  AliCodeTimerAuto("",0);

  AliMUONTriggerCrate* cr;
  TIter next(fCrates->CreateCrateIterator());
  
  while ( ( cr = static_cast<AliMUONTriggerCrate*>(next()) ) )
  {            
      TObjArray *boards = cr->Boards();

      AliMUONRegionalTriggerBoard *regb = (AliMUONRegionalTriggerBoard*)boards->At(0);

      regb->Response();

   }
}

//___________________________________________
void AliMUONTriggerElectronics::GlobalResponse()
{
  /// Compute the global response

  AliCodeTimerAuto("",0);

  UShort_t regional[16];
  
  AliMUONTriggerCrate* cr;
  Int_t irb(0);
  
  if ( fCrates->NumberOfCrates() > 16 ) 
  {
    AliFatal(Form("Something is wrong : too many crates %d",
                  fCrates->NumberOfCrates()));
  }

  // send regional responses to the global trigger in right order
  // do not used iterator order
  
  for (Int_t iSide = 0; iSide < 2; iSide++) // right & left side
  {            
    for (Int_t iReg = 0; iReg < 8; iReg++) // 8 crates/regional boards for each side.
    {
      cr = fCrates->Crate(iSide, iReg);     

      AliMUONTriggerBoard* rb = 
	static_cast<AliMUONTriggerBoard*>(cr->Boards()->At(0));
      regional[irb] = rb->GetResponse();
      ++irb;
    }
  }

  fGlobalTriggerBoard->SetRegionalResponse(regional);
  fGlobalTriggerBoard->Response();
}

//_______________________________________________________________________
void AliMUONTriggerElectronics::Digits2Trigger(const AliMUONVDigitStore& digitStore,
                                               AliMUONVTriggerStore& triggerStore)
{
  AliCodeTimerAuto("",0);

  /// Main method to go from digits to trigger decision
  AliMUONRegionalTrigger pRegTrig;
  
  triggerStore.Clear();

  // NOW RESET ELECTRONICS
  Reset();
  
  // RUN THE FULL BEE CHAIN
  Feed(digitStore);
  LocalResponse();
  RegionalResponse();      
  GlobalResponse();
  //    DumpOS();
	
  AliMUONTriggerCrate* cr;
  AliMUONLocalTrigger localTrigger;
  
  // stored in right order
  // do not used iterator order
  
  for (Int_t iSide = 0; iSide < 2; iSide++) // right & left side
  {            
    for (Int_t iReg = 0; iReg < 8; iReg++) // 8 crates/regional boards for each side.
    {
      cr = fCrates->Crate(iSide, iReg);     
      TObjArray *boards = cr->Boards();
      
      UInt_t regInpLpt = 0;
      UInt_t regInpHpt = 0;
      
      AliMUONRegionalTriggerBoard *regBoard = (AliMUONRegionalTriggerBoard*)boards->At(0);
      
      for (Int_t j = 1; j < boards->GetEntries(); j++)
      {     
        TObject *o = boards->At(j);
        
        if (!o) break;
        
        AliMUONLocalTriggerBoard *board = (AliMUONLocalTriggerBoard*)o;
        
        if (board) 
        {
          //          L0 TRIGGER
          // pcrochet 181206: MOOD needs ALL boards
          //	  if (board->Triggered())
          //	  {
          
          Int_t icirc = board->GetNumber();
            localTrigger.SetLoCircuit(icirc);
            localTrigger.SetLoStripX(board->GetStripX11());
            localTrigger.SetLoDev(board->GetDev());
            localTrigger.SetLoSdev(board->GetSdev());
            localTrigger.SetLoTrigY(board->GetTrigY());
            localTrigger.SetLoStripY(board->GetStripY11());
            
            //             SAVE LUT OUTPUT 
            UShort_t response = board->GetResponse();
            localTrigger.SetLoHpt((response & 12) >> 2);
            localTrigger.SetLoLpt(response &  3);
            
            // calculates regional inputs from local for the moment
            UInt_t hPt = (response >> 2) & 0x3;
            UInt_t lPt =  response       & 0x3;
            
            regInpHpt |= hPt << (30 - (j-1)*2);
            regInpLpt |= lPt << (30 - (j-1)*2);
            
            TBits rrr;
            rrr.Set(6,&response);	  
            
            //             SAVE BIT PATTERN
            localTrigger.SetX1Pattern(board->GetXY(0,0));
            localTrigger.SetX2Pattern(board->GetXY(0,1));
            localTrigger.SetX3Pattern(board->GetXY(0,2));
            localTrigger.SetX4Pattern(board->GetXY(0,3));
            
            localTrigger.SetY1Pattern(board->GetXY(1,0));
            localTrigger.SetY2Pattern(board->GetXY(1,1));
            localTrigger.SetY3Pattern(board->GetXY(1,2));
            localTrigger.SetY4Pattern(board->GetXY(1,3));
            
            //             ADD A NEW LOCAL TRIGGER          
            triggerStore.Add(localTrigger);  
            
          }
        }
      pRegTrig.SetId(iReg + 8*iSide);
      pRegTrig.SetLocalOutput(regInpLpt, 0);
      pRegTrig.SetLocalOutput(regInpHpt, 1);
      pRegTrig.SetOutput(regBoard->GetResponse());
      
      triggerStore.Add(pRegTrig);  
      }
    }
  
  // GLOBAL TRIGGER INFORMATION
  UShort_t global = fGlobalTriggerBoard->GetResponse();
  UInt_t *globalInput = fGlobalTriggerBoard->GetGlobalInput();  

  AliMUONGlobalTrigger globalTrigger;
  
  globalTrigger.SetFromGlobalResponse(global);
  globalTrigger.SetFromGlobalInput(globalInput);
  // ADD A LOCAL TRIGGER IN THE LIST 
  triggerStore.SetGlobal(globalTrigger);

}

//___________________________________________
void AliMUONTriggerElectronics::Feed(const AliMUONVTriggerStore& triggerStore)
{
  //
  /// Fill inputs from reconstructed local trigger store
  //
  AliMUONLocalTrigger* locTrg;
  TIter next(triggerStore.CreateLocalIterator());
  TArrayS xyPattern[2];
  UShort_t xy[2][4];
  Int_t loCircuit;
  while ( ( locTrg = static_cast<AliMUONLocalTrigger*>( next() )) != NULL ){
    locTrg->GetXPattern(xyPattern[0]);
    locTrg->GetYPattern(xyPattern[1]);
    loCircuit = locTrg->LoCircuit();
    AliMUONLocalTriggerBoard* localBoard = fCrates->LocalBoard(loCircuit);
    for (Int_t icath = 0; icath<2; ++icath){
      for (Int_t ich = 0; ich < 4; ++ich){
	xy[icath][ich] = xyPattern[icath][ich];
      }
    }
    localBoard->SetXY(xy);
  }

  FeedCopyNeighbours();
}

//_______________________________________________________________________
Bool_t AliMUONTriggerElectronics::ModifiedLocalResponse(Int_t loCircuit,
							Bool_t& bendingPlaneResp,
							Bool_t& nonBendingPlaneResp,
							Bool_t isCoinc44,
							Int_t removeChamber)
{
  //
  /// Re-compute the local trigger response
  /// with some modifications (i.e. setting coinc44 or after removing one chamber)
  //

  bendingPlaneResp = kFALSE;
  nonBendingPlaneResp = kFALSE;

  Bool_t isTriggered = kFALSE;

  AliMUONLocalTriggerBoard* currBoard = fCrates->LocalBoard(loCircuit);

  if ( ! currBoard ) return isTriggered;

  AliMUONLocalTriggerBoard localBoard (*currBoard);

  if (removeChamber>=0 && removeChamber<=3){

    // Set the bit pattern of selected chamber to 0
    UShort_t xy[2][4];
    UShort_t xyu[2][4];
    UShort_t xyd[2][4];

    localBoard.GetXY(xy);
    localBoard.GetXYU(xyu);
    localBoard.GetXYD(xyd);

    for(Int_t icath=0; icath<2; icath++){
      xy[icath][removeChamber] = 0;
      xyu[icath][removeChamber] = 0;
      xyd[icath][removeChamber] = 0;
    }

    localBoard.SetXY(xy);
    localBoard.SetXYU(xyu);
    localBoard.SetXYD(xyd);
  }

  localBoard.ResetResponse();

  localBoard.SetCoinc44((Int_t)isCoinc44);
  localBoard.Response();

  bendingPlaneResp = localBoard.IsTrigX();
  nonBendingPlaneResp = localBoard.IsTrigY();
  isTriggered = localBoard.Triggered();

  return isTriggered;
}


//_______________________________________________________________________
void AliMUONTriggerElectronics::ResponseRemovingChambers(AliMUONVTriggerStore& triggerStore)
{
  /// Update local board information with the trigger response after removing each chamber

  AliCodeTimerAuto("", 0);

  Reset();
  Feed(triggerStore);

  AliMUONLocalTrigger* locTrg;
  TIter next(triggerStore.CreateLocalIterator());
  Int_t loCircuit;
  Bool_t planeResp[2], isTrig44;
  Bool_t bendPlaneRespNoCh, nonBendPlaneRespNoCh, isTrigWithoutCh;
  while ( ( locTrg = static_cast<AliMUONLocalTrigger*>( next() )) != NULL ){
    if ( ! ( locTrg->IsTrigX() && locTrg->IsTrigY() ) ) continue;
    loCircuit = locTrg->LoCircuit();
    isTrig44 = ModifiedLocalResponse(loCircuit, planeResp[0], planeResp[1], kTRUE);
    for (Int_t ich=0; ich<4; ++ich){
      if ( ! isTrig44 ){
	isTrigWithoutCh = ModifiedLocalResponse(loCircuit, bendPlaneRespNoCh, nonBendPlaneRespNoCh, kFALSE, ich);
	if ( ! isTrigWithoutCh ) continue;
	for (Int_t icath=0; icath<2; icath++){
	  if ( ! planeResp[icath] )
	    locTrg->SetNoHitInPlane(icath, ich);
	} // loop on cathodes
      }
      locTrg->SetTriggerWithoutChamber(ich);
    } // loop on chambers
    AliDebug(1, Form("Is44 %i  triggers %i  pattern %i", isTrig44, locTrg->GetTriggerWithoutChamber(), locTrg->GetHitPatternFromResponse()));
  }
}
 AliMUONTriggerElectronics.cxx:1
 AliMUONTriggerElectronics.cxx:2
 AliMUONTriggerElectronics.cxx:3
 AliMUONTriggerElectronics.cxx:4
 AliMUONTriggerElectronics.cxx:5
 AliMUONTriggerElectronics.cxx:6
 AliMUONTriggerElectronics.cxx:7
 AliMUONTriggerElectronics.cxx:8
 AliMUONTriggerElectronics.cxx:9
 AliMUONTriggerElectronics.cxx:10
 AliMUONTriggerElectronics.cxx:11
 AliMUONTriggerElectronics.cxx:12
 AliMUONTriggerElectronics.cxx:13
 AliMUONTriggerElectronics.cxx:14
 AliMUONTriggerElectronics.cxx:15
 AliMUONTriggerElectronics.cxx:16
 AliMUONTriggerElectronics.cxx:17
 AliMUONTriggerElectronics.cxx:18
 AliMUONTriggerElectronics.cxx:19
 AliMUONTriggerElectronics.cxx:20
 AliMUONTriggerElectronics.cxx:21
 AliMUONTriggerElectronics.cxx:22
 AliMUONTriggerElectronics.cxx:23
 AliMUONTriggerElectronics.cxx:24
 AliMUONTriggerElectronics.cxx:25
 AliMUONTriggerElectronics.cxx:26
 AliMUONTriggerElectronics.cxx:27
 AliMUONTriggerElectronics.cxx:28
 AliMUONTriggerElectronics.cxx:29
 AliMUONTriggerElectronics.cxx:30
 AliMUONTriggerElectronics.cxx:31
 AliMUONTriggerElectronics.cxx:32
 AliMUONTriggerElectronics.cxx:33
 AliMUONTriggerElectronics.cxx:34
 AliMUONTriggerElectronics.cxx:35
 AliMUONTriggerElectronics.cxx:36
 AliMUONTriggerElectronics.cxx:37
 AliMUONTriggerElectronics.cxx:38
 AliMUONTriggerElectronics.cxx:39
 AliMUONTriggerElectronics.cxx:40
 AliMUONTriggerElectronics.cxx:41
 AliMUONTriggerElectronics.cxx:42
 AliMUONTriggerElectronics.cxx:43
 AliMUONTriggerElectronics.cxx:44
 AliMUONTriggerElectronics.cxx:45
 AliMUONTriggerElectronics.cxx:46
 AliMUONTriggerElectronics.cxx:47
 AliMUONTriggerElectronics.cxx:48
 AliMUONTriggerElectronics.cxx:49
 AliMUONTriggerElectronics.cxx:50
 AliMUONTriggerElectronics.cxx:51
 AliMUONTriggerElectronics.cxx:52
 AliMUONTriggerElectronics.cxx:53
 AliMUONTriggerElectronics.cxx:54
 AliMUONTriggerElectronics.cxx:55
 AliMUONTriggerElectronics.cxx:56
 AliMUONTriggerElectronics.cxx:57
 AliMUONTriggerElectronics.cxx:58
 AliMUONTriggerElectronics.cxx:59
 AliMUONTriggerElectronics.cxx:60
 AliMUONTriggerElectronics.cxx:61
 AliMUONTriggerElectronics.cxx:62
 AliMUONTriggerElectronics.cxx:63
 AliMUONTriggerElectronics.cxx:64
 AliMUONTriggerElectronics.cxx:65
 AliMUONTriggerElectronics.cxx:66
 AliMUONTriggerElectronics.cxx:67
 AliMUONTriggerElectronics.cxx:68
 AliMUONTriggerElectronics.cxx:69
 AliMUONTriggerElectronics.cxx:70
 AliMUONTriggerElectronics.cxx:71
 AliMUONTriggerElectronics.cxx:72
 AliMUONTriggerElectronics.cxx:73
 AliMUONTriggerElectronics.cxx:74
 AliMUONTriggerElectronics.cxx:75
 AliMUONTriggerElectronics.cxx:76
 AliMUONTriggerElectronics.cxx:77
 AliMUONTriggerElectronics.cxx:78
 AliMUONTriggerElectronics.cxx:79
 AliMUONTriggerElectronics.cxx:80
 AliMUONTriggerElectronics.cxx:81
 AliMUONTriggerElectronics.cxx:82
 AliMUONTriggerElectronics.cxx:83
 AliMUONTriggerElectronics.cxx:84
 AliMUONTriggerElectronics.cxx:85
 AliMUONTriggerElectronics.cxx:86
 AliMUONTriggerElectronics.cxx:87
 AliMUONTriggerElectronics.cxx:88
 AliMUONTriggerElectronics.cxx:89
 AliMUONTriggerElectronics.cxx:90
 AliMUONTriggerElectronics.cxx:91
 AliMUONTriggerElectronics.cxx:92
 AliMUONTriggerElectronics.cxx:93
 AliMUONTriggerElectronics.cxx:94
 AliMUONTriggerElectronics.cxx:95
 AliMUONTriggerElectronics.cxx:96
 AliMUONTriggerElectronics.cxx:97
 AliMUONTriggerElectronics.cxx:98
 AliMUONTriggerElectronics.cxx:99
 AliMUONTriggerElectronics.cxx:100
 AliMUONTriggerElectronics.cxx:101
 AliMUONTriggerElectronics.cxx:102
 AliMUONTriggerElectronics.cxx:103
 AliMUONTriggerElectronics.cxx:104
 AliMUONTriggerElectronics.cxx:105
 AliMUONTriggerElectronics.cxx:106
 AliMUONTriggerElectronics.cxx:107
 AliMUONTriggerElectronics.cxx:108
 AliMUONTriggerElectronics.cxx:109
 AliMUONTriggerElectronics.cxx:110
 AliMUONTriggerElectronics.cxx:111
 AliMUONTriggerElectronics.cxx:112
 AliMUONTriggerElectronics.cxx:113
 AliMUONTriggerElectronics.cxx:114
 AliMUONTriggerElectronics.cxx:115
 AliMUONTriggerElectronics.cxx:116
 AliMUONTriggerElectronics.cxx:117
 AliMUONTriggerElectronics.cxx:118
 AliMUONTriggerElectronics.cxx:119
 AliMUONTriggerElectronics.cxx:120
 AliMUONTriggerElectronics.cxx:121
 AliMUONTriggerElectronics.cxx:122
 AliMUONTriggerElectronics.cxx:123
 AliMUONTriggerElectronics.cxx:124
 AliMUONTriggerElectronics.cxx:125
 AliMUONTriggerElectronics.cxx:126
 AliMUONTriggerElectronics.cxx:127
 AliMUONTriggerElectronics.cxx:128
 AliMUONTriggerElectronics.cxx:129
 AliMUONTriggerElectronics.cxx:130
 AliMUONTriggerElectronics.cxx:131
 AliMUONTriggerElectronics.cxx:132
 AliMUONTriggerElectronics.cxx:133
 AliMUONTriggerElectronics.cxx:134
 AliMUONTriggerElectronics.cxx:135
 AliMUONTriggerElectronics.cxx:136
 AliMUONTriggerElectronics.cxx:137
 AliMUONTriggerElectronics.cxx:138
 AliMUONTriggerElectronics.cxx:139
 AliMUONTriggerElectronics.cxx:140
 AliMUONTriggerElectronics.cxx:141
 AliMUONTriggerElectronics.cxx:142
 AliMUONTriggerElectronics.cxx:143
 AliMUONTriggerElectronics.cxx:144
 AliMUONTriggerElectronics.cxx:145
 AliMUONTriggerElectronics.cxx:146
 AliMUONTriggerElectronics.cxx:147
 AliMUONTriggerElectronics.cxx:148
 AliMUONTriggerElectronics.cxx:149
 AliMUONTriggerElectronics.cxx:150
 AliMUONTriggerElectronics.cxx:151
 AliMUONTriggerElectronics.cxx:152
 AliMUONTriggerElectronics.cxx:153
 AliMUONTriggerElectronics.cxx:154
 AliMUONTriggerElectronics.cxx:155
 AliMUONTriggerElectronics.cxx:156
 AliMUONTriggerElectronics.cxx:157
 AliMUONTriggerElectronics.cxx:158
 AliMUONTriggerElectronics.cxx:159
 AliMUONTriggerElectronics.cxx:160
 AliMUONTriggerElectronics.cxx:161
 AliMUONTriggerElectronics.cxx:162
 AliMUONTriggerElectronics.cxx:163
 AliMUONTriggerElectronics.cxx:164
 AliMUONTriggerElectronics.cxx:165
 AliMUONTriggerElectronics.cxx:166
 AliMUONTriggerElectronics.cxx:167
 AliMUONTriggerElectronics.cxx:168
 AliMUONTriggerElectronics.cxx:169
 AliMUONTriggerElectronics.cxx:170
 AliMUONTriggerElectronics.cxx:171
 AliMUONTriggerElectronics.cxx:172
 AliMUONTriggerElectronics.cxx:173
 AliMUONTriggerElectronics.cxx:174
 AliMUONTriggerElectronics.cxx:175
 AliMUONTriggerElectronics.cxx:176
 AliMUONTriggerElectronics.cxx:177
 AliMUONTriggerElectronics.cxx:178
 AliMUONTriggerElectronics.cxx:179
 AliMUONTriggerElectronics.cxx:180
 AliMUONTriggerElectronics.cxx:181
 AliMUONTriggerElectronics.cxx:182
 AliMUONTriggerElectronics.cxx:183
 AliMUONTriggerElectronics.cxx:184
 AliMUONTriggerElectronics.cxx:185
 AliMUONTriggerElectronics.cxx:186
 AliMUONTriggerElectronics.cxx:187
 AliMUONTriggerElectronics.cxx:188
 AliMUONTriggerElectronics.cxx:189
 AliMUONTriggerElectronics.cxx:190
 AliMUONTriggerElectronics.cxx:191
 AliMUONTriggerElectronics.cxx:192
 AliMUONTriggerElectronics.cxx:193
 AliMUONTriggerElectronics.cxx:194
 AliMUONTriggerElectronics.cxx:195
 AliMUONTriggerElectronics.cxx:196
 AliMUONTriggerElectronics.cxx:197
 AliMUONTriggerElectronics.cxx:198
 AliMUONTriggerElectronics.cxx:199
 AliMUONTriggerElectronics.cxx:200
 AliMUONTriggerElectronics.cxx:201
 AliMUONTriggerElectronics.cxx:202
 AliMUONTriggerElectronics.cxx:203
 AliMUONTriggerElectronics.cxx:204
 AliMUONTriggerElectronics.cxx:205
 AliMUONTriggerElectronics.cxx:206
 AliMUONTriggerElectronics.cxx:207
 AliMUONTriggerElectronics.cxx:208
 AliMUONTriggerElectronics.cxx:209
 AliMUONTriggerElectronics.cxx:210
 AliMUONTriggerElectronics.cxx:211
 AliMUONTriggerElectronics.cxx:212
 AliMUONTriggerElectronics.cxx:213
 AliMUONTriggerElectronics.cxx:214
 AliMUONTriggerElectronics.cxx:215
 AliMUONTriggerElectronics.cxx:216
 AliMUONTriggerElectronics.cxx:217
 AliMUONTriggerElectronics.cxx:218
 AliMUONTriggerElectronics.cxx:219
 AliMUONTriggerElectronics.cxx:220
 AliMUONTriggerElectronics.cxx:221
 AliMUONTriggerElectronics.cxx:222
 AliMUONTriggerElectronics.cxx:223
 AliMUONTriggerElectronics.cxx:224
 AliMUONTriggerElectronics.cxx:225
 AliMUONTriggerElectronics.cxx:226
 AliMUONTriggerElectronics.cxx:227
 AliMUONTriggerElectronics.cxx:228
 AliMUONTriggerElectronics.cxx:229
 AliMUONTriggerElectronics.cxx:230
 AliMUONTriggerElectronics.cxx:231
 AliMUONTriggerElectronics.cxx:232
 AliMUONTriggerElectronics.cxx:233
 AliMUONTriggerElectronics.cxx:234
 AliMUONTriggerElectronics.cxx:235
 AliMUONTriggerElectronics.cxx:236
 AliMUONTriggerElectronics.cxx:237
 AliMUONTriggerElectronics.cxx:238
 AliMUONTriggerElectronics.cxx:239
 AliMUONTriggerElectronics.cxx:240
 AliMUONTriggerElectronics.cxx:241
 AliMUONTriggerElectronics.cxx:242
 AliMUONTriggerElectronics.cxx:243
 AliMUONTriggerElectronics.cxx:244
 AliMUONTriggerElectronics.cxx:245
 AliMUONTriggerElectronics.cxx:246
 AliMUONTriggerElectronics.cxx:247
 AliMUONTriggerElectronics.cxx:248
 AliMUONTriggerElectronics.cxx:249
 AliMUONTriggerElectronics.cxx:250
 AliMUONTriggerElectronics.cxx:251
 AliMUONTriggerElectronics.cxx:252
 AliMUONTriggerElectronics.cxx:253
 AliMUONTriggerElectronics.cxx:254
 AliMUONTriggerElectronics.cxx:255
 AliMUONTriggerElectronics.cxx:256
 AliMUONTriggerElectronics.cxx:257
 AliMUONTriggerElectronics.cxx:258
 AliMUONTriggerElectronics.cxx:259
 AliMUONTriggerElectronics.cxx:260
 AliMUONTriggerElectronics.cxx:261
 AliMUONTriggerElectronics.cxx:262
 AliMUONTriggerElectronics.cxx:263
 AliMUONTriggerElectronics.cxx:264
 AliMUONTriggerElectronics.cxx:265
 AliMUONTriggerElectronics.cxx:266
 AliMUONTriggerElectronics.cxx:267
 AliMUONTriggerElectronics.cxx:268
 AliMUONTriggerElectronics.cxx:269
 AliMUONTriggerElectronics.cxx:270
 AliMUONTriggerElectronics.cxx:271
 AliMUONTriggerElectronics.cxx:272
 AliMUONTriggerElectronics.cxx:273
 AliMUONTriggerElectronics.cxx:274
 AliMUONTriggerElectronics.cxx:275
 AliMUONTriggerElectronics.cxx:276
 AliMUONTriggerElectronics.cxx:277
 AliMUONTriggerElectronics.cxx:278
 AliMUONTriggerElectronics.cxx:279
 AliMUONTriggerElectronics.cxx:280
 AliMUONTriggerElectronics.cxx:281
 AliMUONTriggerElectronics.cxx:282
 AliMUONTriggerElectronics.cxx:283
 AliMUONTriggerElectronics.cxx:284
 AliMUONTriggerElectronics.cxx:285
 AliMUONTriggerElectronics.cxx:286
 AliMUONTriggerElectronics.cxx:287
 AliMUONTriggerElectronics.cxx:288
 AliMUONTriggerElectronics.cxx:289
 AliMUONTriggerElectronics.cxx:290
 AliMUONTriggerElectronics.cxx:291
 AliMUONTriggerElectronics.cxx:292
 AliMUONTriggerElectronics.cxx:293
 AliMUONTriggerElectronics.cxx:294
 AliMUONTriggerElectronics.cxx:295
 AliMUONTriggerElectronics.cxx:296
 AliMUONTriggerElectronics.cxx:297
 AliMUONTriggerElectronics.cxx:298
 AliMUONTriggerElectronics.cxx:299
 AliMUONTriggerElectronics.cxx:300
 AliMUONTriggerElectronics.cxx:301
 AliMUONTriggerElectronics.cxx:302
 AliMUONTriggerElectronics.cxx:303
 AliMUONTriggerElectronics.cxx:304
 AliMUONTriggerElectronics.cxx:305
 AliMUONTriggerElectronics.cxx:306
 AliMUONTriggerElectronics.cxx:307
 AliMUONTriggerElectronics.cxx:308
 AliMUONTriggerElectronics.cxx:309
 AliMUONTriggerElectronics.cxx:310
 AliMUONTriggerElectronics.cxx:311
 AliMUONTriggerElectronics.cxx:312
 AliMUONTriggerElectronics.cxx:313
 AliMUONTriggerElectronics.cxx:314
 AliMUONTriggerElectronics.cxx:315
 AliMUONTriggerElectronics.cxx:316
 AliMUONTriggerElectronics.cxx:317
 AliMUONTriggerElectronics.cxx:318
 AliMUONTriggerElectronics.cxx:319
 AliMUONTriggerElectronics.cxx:320
 AliMUONTriggerElectronics.cxx:321
 AliMUONTriggerElectronics.cxx:322
 AliMUONTriggerElectronics.cxx:323
 AliMUONTriggerElectronics.cxx:324
 AliMUONTriggerElectronics.cxx:325
 AliMUONTriggerElectronics.cxx:326
 AliMUONTriggerElectronics.cxx:327
 AliMUONTriggerElectronics.cxx:328
 AliMUONTriggerElectronics.cxx:329
 AliMUONTriggerElectronics.cxx:330
 AliMUONTriggerElectronics.cxx:331
 AliMUONTriggerElectronics.cxx:332
 AliMUONTriggerElectronics.cxx:333
 AliMUONTriggerElectronics.cxx:334
 AliMUONTriggerElectronics.cxx:335
 AliMUONTriggerElectronics.cxx:336
 AliMUONTriggerElectronics.cxx:337
 AliMUONTriggerElectronics.cxx:338
 AliMUONTriggerElectronics.cxx:339
 AliMUONTriggerElectronics.cxx:340
 AliMUONTriggerElectronics.cxx:341
 AliMUONTriggerElectronics.cxx:342
 AliMUONTriggerElectronics.cxx:343
 AliMUONTriggerElectronics.cxx:344
 AliMUONTriggerElectronics.cxx:345
 AliMUONTriggerElectronics.cxx:346
 AliMUONTriggerElectronics.cxx:347
 AliMUONTriggerElectronics.cxx:348
 AliMUONTriggerElectronics.cxx:349
 AliMUONTriggerElectronics.cxx:350
 AliMUONTriggerElectronics.cxx:351
 AliMUONTriggerElectronics.cxx:352
 AliMUONTriggerElectronics.cxx:353
 AliMUONTriggerElectronics.cxx:354
 AliMUONTriggerElectronics.cxx:355
 AliMUONTriggerElectronics.cxx:356
 AliMUONTriggerElectronics.cxx:357
 AliMUONTriggerElectronics.cxx:358
 AliMUONTriggerElectronics.cxx:359
 AliMUONTriggerElectronics.cxx:360
 AliMUONTriggerElectronics.cxx:361
 AliMUONTriggerElectronics.cxx:362
 AliMUONTriggerElectronics.cxx:363
 AliMUONTriggerElectronics.cxx:364
 AliMUONTriggerElectronics.cxx:365
 AliMUONTriggerElectronics.cxx:366
 AliMUONTriggerElectronics.cxx:367
 AliMUONTriggerElectronics.cxx:368
 AliMUONTriggerElectronics.cxx:369
 AliMUONTriggerElectronics.cxx:370
 AliMUONTriggerElectronics.cxx:371
 AliMUONTriggerElectronics.cxx:372
 AliMUONTriggerElectronics.cxx:373
 AliMUONTriggerElectronics.cxx:374
 AliMUONTriggerElectronics.cxx:375
 AliMUONTriggerElectronics.cxx:376
 AliMUONTriggerElectronics.cxx:377
 AliMUONTriggerElectronics.cxx:378
 AliMUONTriggerElectronics.cxx:379
 AliMUONTriggerElectronics.cxx:380
 AliMUONTriggerElectronics.cxx:381
 AliMUONTriggerElectronics.cxx:382
 AliMUONTriggerElectronics.cxx:383
 AliMUONTriggerElectronics.cxx:384
 AliMUONTriggerElectronics.cxx:385
 AliMUONTriggerElectronics.cxx:386
 AliMUONTriggerElectronics.cxx:387
 AliMUONTriggerElectronics.cxx:388
 AliMUONTriggerElectronics.cxx:389
 AliMUONTriggerElectronics.cxx:390
 AliMUONTriggerElectronics.cxx:391
 AliMUONTriggerElectronics.cxx:392
 AliMUONTriggerElectronics.cxx:393
 AliMUONTriggerElectronics.cxx:394
 AliMUONTriggerElectronics.cxx:395
 AliMUONTriggerElectronics.cxx:396
 AliMUONTriggerElectronics.cxx:397
 AliMUONTriggerElectronics.cxx:398
 AliMUONTriggerElectronics.cxx:399
 AliMUONTriggerElectronics.cxx:400
 AliMUONTriggerElectronics.cxx:401
 AliMUONTriggerElectronics.cxx:402
 AliMUONTriggerElectronics.cxx:403
 AliMUONTriggerElectronics.cxx:404
 AliMUONTriggerElectronics.cxx:405
 AliMUONTriggerElectronics.cxx:406
 AliMUONTriggerElectronics.cxx:407
 AliMUONTriggerElectronics.cxx:408
 AliMUONTriggerElectronics.cxx:409
 AliMUONTriggerElectronics.cxx:410
 AliMUONTriggerElectronics.cxx:411
 AliMUONTriggerElectronics.cxx:412
 AliMUONTriggerElectronics.cxx:413
 AliMUONTriggerElectronics.cxx:414
 AliMUONTriggerElectronics.cxx:415
 AliMUONTriggerElectronics.cxx:416
 AliMUONTriggerElectronics.cxx:417
 AliMUONTriggerElectronics.cxx:418
 AliMUONTriggerElectronics.cxx:419
 AliMUONTriggerElectronics.cxx:420
 AliMUONTriggerElectronics.cxx:421
 AliMUONTriggerElectronics.cxx:422
 AliMUONTriggerElectronics.cxx:423
 AliMUONTriggerElectronics.cxx:424
 AliMUONTriggerElectronics.cxx:425
 AliMUONTriggerElectronics.cxx:426
 AliMUONTriggerElectronics.cxx:427
 AliMUONTriggerElectronics.cxx:428
 AliMUONTriggerElectronics.cxx:429
 AliMUONTriggerElectronics.cxx:430
 AliMUONTriggerElectronics.cxx:431
 AliMUONTriggerElectronics.cxx:432
 AliMUONTriggerElectronics.cxx:433
 AliMUONTriggerElectronics.cxx:434
 AliMUONTriggerElectronics.cxx:435
 AliMUONTriggerElectronics.cxx:436
 AliMUONTriggerElectronics.cxx:437
 AliMUONTriggerElectronics.cxx:438
 AliMUONTriggerElectronics.cxx:439
 AliMUONTriggerElectronics.cxx:440
 AliMUONTriggerElectronics.cxx:441
 AliMUONTriggerElectronics.cxx:442
 AliMUONTriggerElectronics.cxx:443
 AliMUONTriggerElectronics.cxx:444
 AliMUONTriggerElectronics.cxx:445
 AliMUONTriggerElectronics.cxx:446
 AliMUONTriggerElectronics.cxx:447
 AliMUONTriggerElectronics.cxx:448
 AliMUONTriggerElectronics.cxx:449
 AliMUONTriggerElectronics.cxx:450
 AliMUONTriggerElectronics.cxx:451
 AliMUONTriggerElectronics.cxx:452
 AliMUONTriggerElectronics.cxx:453
 AliMUONTriggerElectronics.cxx:454
 AliMUONTriggerElectronics.cxx:455
 AliMUONTriggerElectronics.cxx:456
 AliMUONTriggerElectronics.cxx:457
 AliMUONTriggerElectronics.cxx:458
 AliMUONTriggerElectronics.cxx:459
 AliMUONTriggerElectronics.cxx:460
 AliMUONTriggerElectronics.cxx:461
 AliMUONTriggerElectronics.cxx:462
 AliMUONTriggerElectronics.cxx:463
 AliMUONTriggerElectronics.cxx:464
 AliMUONTriggerElectronics.cxx:465
 AliMUONTriggerElectronics.cxx:466
 AliMUONTriggerElectronics.cxx:467
 AliMUONTriggerElectronics.cxx:468
 AliMUONTriggerElectronics.cxx:469
 AliMUONTriggerElectronics.cxx:470
 AliMUONTriggerElectronics.cxx:471
 AliMUONTriggerElectronics.cxx:472
 AliMUONTriggerElectronics.cxx:473
 AliMUONTriggerElectronics.cxx:474
 AliMUONTriggerElectronics.cxx:475
 AliMUONTriggerElectronics.cxx:476
 AliMUONTriggerElectronics.cxx:477
 AliMUONTriggerElectronics.cxx:478
 AliMUONTriggerElectronics.cxx:479
 AliMUONTriggerElectronics.cxx:480
 AliMUONTriggerElectronics.cxx:481
 AliMUONTriggerElectronics.cxx:482
 AliMUONTriggerElectronics.cxx:483
 AliMUONTriggerElectronics.cxx:484
 AliMUONTriggerElectronics.cxx:485
 AliMUONTriggerElectronics.cxx:486
 AliMUONTriggerElectronics.cxx:487
 AliMUONTriggerElectronics.cxx:488
 AliMUONTriggerElectronics.cxx:489
 AliMUONTriggerElectronics.cxx:490
 AliMUONTriggerElectronics.cxx:491
 AliMUONTriggerElectronics.cxx:492
 AliMUONTriggerElectronics.cxx:493
 AliMUONTriggerElectronics.cxx:494
 AliMUONTriggerElectronics.cxx:495
 AliMUONTriggerElectronics.cxx:496
 AliMUONTriggerElectronics.cxx:497
 AliMUONTriggerElectronics.cxx:498
 AliMUONTriggerElectronics.cxx:499
 AliMUONTriggerElectronics.cxx:500
 AliMUONTriggerElectronics.cxx:501
 AliMUONTriggerElectronics.cxx:502
 AliMUONTriggerElectronics.cxx:503
 AliMUONTriggerElectronics.cxx:504
 AliMUONTriggerElectronics.cxx:505
 AliMUONTriggerElectronics.cxx:506
 AliMUONTriggerElectronics.cxx:507
 AliMUONTriggerElectronics.cxx:508
 AliMUONTriggerElectronics.cxx:509
 AliMUONTriggerElectronics.cxx:510
 AliMUONTriggerElectronics.cxx:511
 AliMUONTriggerElectronics.cxx:512
 AliMUONTriggerElectronics.cxx:513
 AliMUONTriggerElectronics.cxx:514
 AliMUONTriggerElectronics.cxx:515
 AliMUONTriggerElectronics.cxx:516
 AliMUONTriggerElectronics.cxx:517
 AliMUONTriggerElectronics.cxx:518
 AliMUONTriggerElectronics.cxx:519
 AliMUONTriggerElectronics.cxx:520
 AliMUONTriggerElectronics.cxx:521
 AliMUONTriggerElectronics.cxx:522
 AliMUONTriggerElectronics.cxx:523
 AliMUONTriggerElectronics.cxx:524
 AliMUONTriggerElectronics.cxx:525
 AliMUONTriggerElectronics.cxx:526
 AliMUONTriggerElectronics.cxx:527
 AliMUONTriggerElectronics.cxx:528
 AliMUONTriggerElectronics.cxx:529
 AliMUONTriggerElectronics.cxx:530
 AliMUONTriggerElectronics.cxx:531
 AliMUONTriggerElectronics.cxx:532
 AliMUONTriggerElectronics.cxx:533
 AliMUONTriggerElectronics.cxx:534
 AliMUONTriggerElectronics.cxx:535
 AliMUONTriggerElectronics.cxx:536
 AliMUONTriggerElectronics.cxx:537
 AliMUONTriggerElectronics.cxx:538
 AliMUONTriggerElectronics.cxx:539
 AliMUONTriggerElectronics.cxx:540
 AliMUONTriggerElectronics.cxx:541
 AliMUONTriggerElectronics.cxx:542
 AliMUONTriggerElectronics.cxx:543
 AliMUONTriggerElectronics.cxx:544
 AliMUONTriggerElectronics.cxx:545
 AliMUONTriggerElectronics.cxx:546
 AliMUONTriggerElectronics.cxx:547
 AliMUONTriggerElectronics.cxx:548
 AliMUONTriggerElectronics.cxx:549
 AliMUONTriggerElectronics.cxx:550
 AliMUONTriggerElectronics.cxx:551
 AliMUONTriggerElectronics.cxx:552
 AliMUONTriggerElectronics.cxx:553
 AliMUONTriggerElectronics.cxx:554
 AliMUONTriggerElectronics.cxx:555
 AliMUONTriggerElectronics.cxx:556
 AliMUONTriggerElectronics.cxx:557
 AliMUONTriggerElectronics.cxx:558
 AliMUONTriggerElectronics.cxx:559
 AliMUONTriggerElectronics.cxx:560
 AliMUONTriggerElectronics.cxx:561
 AliMUONTriggerElectronics.cxx:562
 AliMUONTriggerElectronics.cxx:563
 AliMUONTriggerElectronics.cxx:564
 AliMUONTriggerElectronics.cxx:565
 AliMUONTriggerElectronics.cxx:566
 AliMUONTriggerElectronics.cxx:567
 AliMUONTriggerElectronics.cxx:568
 AliMUONTriggerElectronics.cxx:569
 AliMUONTriggerElectronics.cxx:570
 AliMUONTriggerElectronics.cxx:571
 AliMUONTriggerElectronics.cxx:572
 AliMUONTriggerElectronics.cxx:573
 AliMUONTriggerElectronics.cxx:574
 AliMUONTriggerElectronics.cxx:575
 AliMUONTriggerElectronics.cxx:576
 AliMUONTriggerElectronics.cxx:577
 AliMUONTriggerElectronics.cxx:578
 AliMUONTriggerElectronics.cxx:579
 AliMUONTriggerElectronics.cxx:580
 AliMUONTriggerElectronics.cxx:581
 AliMUONTriggerElectronics.cxx:582
 AliMUONTriggerElectronics.cxx:583
 AliMUONTriggerElectronics.cxx:584
 AliMUONTriggerElectronics.cxx:585
 AliMUONTriggerElectronics.cxx:586
 AliMUONTriggerElectronics.cxx:587
 AliMUONTriggerElectronics.cxx:588
 AliMUONTriggerElectronics.cxx:589
 AliMUONTriggerElectronics.cxx:590
 AliMUONTriggerElectronics.cxx:591
 AliMUONTriggerElectronics.cxx:592
 AliMUONTriggerElectronics.cxx:593
 AliMUONTriggerElectronics.cxx:594
 AliMUONTriggerElectronics.cxx:595
 AliMUONTriggerElectronics.cxx:596
 AliMUONTriggerElectronics.cxx:597
 AliMUONTriggerElectronics.cxx:598
 AliMUONTriggerElectronics.cxx:599
 AliMUONTriggerElectronics.cxx:600
 AliMUONTriggerElectronics.cxx:601
 AliMUONTriggerElectronics.cxx:602
 AliMUONTriggerElectronics.cxx:603
 AliMUONTriggerElectronics.cxx:604
 AliMUONTriggerElectronics.cxx:605
 AliMUONTriggerElectronics.cxx:606
 AliMUONTriggerElectronics.cxx:607
 AliMUONTriggerElectronics.cxx:608
 AliMUONTriggerElectronics.cxx:609
 AliMUONTriggerElectronics.cxx:610
 AliMUONTriggerElectronics.cxx:611
 AliMUONTriggerElectronics.cxx:612
 AliMUONTriggerElectronics.cxx:613
 AliMUONTriggerElectronics.cxx:614
 AliMUONTriggerElectronics.cxx:615
 AliMUONTriggerElectronics.cxx:616
 AliMUONTriggerElectronics.cxx:617
 AliMUONTriggerElectronics.cxx:618
 AliMUONTriggerElectronics.cxx:619
 AliMUONTriggerElectronics.cxx:620
 AliMUONTriggerElectronics.cxx:621
 AliMUONTriggerElectronics.cxx:622
 AliMUONTriggerElectronics.cxx:623
 AliMUONTriggerElectronics.cxx:624
 AliMUONTriggerElectronics.cxx:625
 AliMUONTriggerElectronics.cxx:626
 AliMUONTriggerElectronics.cxx:627
 AliMUONTriggerElectronics.cxx:628
 AliMUONTriggerElectronics.cxx:629
 AliMUONTriggerElectronics.cxx:630
 AliMUONTriggerElectronics.cxx:631
 AliMUONTriggerElectronics.cxx:632
 AliMUONTriggerElectronics.cxx:633
 AliMUONTriggerElectronics.cxx:634
 AliMUONTriggerElectronics.cxx:635
 AliMUONTriggerElectronics.cxx:636
 AliMUONTriggerElectronics.cxx:637
 AliMUONTriggerElectronics.cxx:638
 AliMUONTriggerElectronics.cxx:639
 AliMUONTriggerElectronics.cxx:640
 AliMUONTriggerElectronics.cxx:641
 AliMUONTriggerElectronics.cxx:642
 AliMUONTriggerElectronics.cxx:643
 AliMUONTriggerElectronics.cxx:644
 AliMUONTriggerElectronics.cxx:645
 AliMUONTriggerElectronics.cxx:646
 AliMUONTriggerElectronics.cxx:647
 AliMUONTriggerElectronics.cxx:648
 AliMUONTriggerElectronics.cxx:649
 AliMUONTriggerElectronics.cxx:650
 AliMUONTriggerElectronics.cxx:651
 AliMUONTriggerElectronics.cxx:652
 AliMUONTriggerElectronics.cxx:653
 AliMUONTriggerElectronics.cxx:654
 AliMUONTriggerElectronics.cxx:655
 AliMUONTriggerElectronics.cxx:656
 AliMUONTriggerElectronics.cxx:657
 AliMUONTriggerElectronics.cxx:658
 AliMUONTriggerElectronics.cxx:659
 AliMUONTriggerElectronics.cxx:660
 AliMUONTriggerElectronics.cxx:661
 AliMUONTriggerElectronics.cxx:662
 AliMUONTriggerElectronics.cxx:663
 AliMUONTriggerElectronics.cxx:664
 AliMUONTriggerElectronics.cxx:665
 AliMUONTriggerElectronics.cxx:666
 AliMUONTriggerElectronics.cxx:667
 AliMUONTriggerElectronics.cxx:668
 AliMUONTriggerElectronics.cxx:669
 AliMUONTriggerElectronics.cxx:670
 AliMUONTriggerElectronics.cxx:671
 AliMUONTriggerElectronics.cxx:672
 AliMUONTriggerElectronics.cxx:673
 AliMUONTriggerElectronics.cxx:674
 AliMUONTriggerElectronics.cxx:675
 AliMUONTriggerElectronics.cxx:676
 AliMUONTriggerElectronics.cxx:677
 AliMUONTriggerElectronics.cxx:678
 AliMUONTriggerElectronics.cxx:679
 AliMUONTriggerElectronics.cxx:680
 AliMUONTriggerElectronics.cxx:681
 AliMUONTriggerElectronics.cxx:682
 AliMUONTriggerElectronics.cxx:683
 AliMUONTriggerElectronics.cxx:684
 AliMUONTriggerElectronics.cxx:685
 AliMUONTriggerElectronics.cxx:686
 AliMUONTriggerElectronics.cxx:687
 AliMUONTriggerElectronics.cxx:688
 AliMUONTriggerElectronics.cxx:689
 AliMUONTriggerElectronics.cxx:690
 AliMUONTriggerElectronics.cxx:691
 AliMUONTriggerElectronics.cxx:692
 AliMUONTriggerElectronics.cxx:693
 AliMUONTriggerElectronics.cxx:694
 AliMUONTriggerElectronics.cxx:695
 AliMUONTriggerElectronics.cxx:696
 AliMUONTriggerElectronics.cxx:697
 AliMUONTriggerElectronics.cxx:698
 AliMUONTriggerElectronics.cxx:699
 AliMUONTriggerElectronics.cxx:700
 AliMUONTriggerElectronics.cxx:701
 AliMUONTriggerElectronics.cxx:702
 AliMUONTriggerElectronics.cxx:703
 AliMUONTriggerElectronics.cxx:704
 AliMUONTriggerElectronics.cxx:705
 AliMUONTriggerElectronics.cxx:706
 AliMUONTriggerElectronics.cxx:707
 AliMUONTriggerElectronics.cxx:708
 AliMUONTriggerElectronics.cxx:709
 AliMUONTriggerElectronics.cxx:710
 AliMUONTriggerElectronics.cxx:711
 AliMUONTriggerElectronics.cxx:712
 AliMUONTriggerElectronics.cxx:713
 AliMUONTriggerElectronics.cxx:714
 AliMUONTriggerElectronics.cxx:715
 AliMUONTriggerElectronics.cxx:716
 AliMUONTriggerElectronics.cxx:717
 AliMUONTriggerElectronics.cxx:718
 AliMUONTriggerElectronics.cxx:719
 AliMUONTriggerElectronics.cxx:720
 AliMUONTriggerElectronics.cxx:721
 AliMUONTriggerElectronics.cxx:722
 AliMUONTriggerElectronics.cxx:723
 AliMUONTriggerElectronics.cxx:724
 AliMUONTriggerElectronics.cxx:725
 AliMUONTriggerElectronics.cxx:726
 AliMUONTriggerElectronics.cxx:727
 AliMUONTriggerElectronics.cxx:728
 AliMUONTriggerElectronics.cxx:729
 AliMUONTriggerElectronics.cxx:730
 AliMUONTriggerElectronics.cxx:731
 AliMUONTriggerElectronics.cxx:732
 AliMUONTriggerElectronics.cxx:733
 AliMUONTriggerElectronics.cxx:734
 AliMUONTriggerElectronics.cxx:735