ROOT logo
//-*- Mode: C++ -*-
// $Id$
//**************************************************************************
//* This file is property of and copyright by the ALICE HLT Project        * 
//* ALICE Experiment at CERN, All rights reserved.                         *
//*                                                                        *
//* Primary Authors: Jochen Thaeder <thaeder@kip.uni-heidelberg.de>        *
//*                  for The ALICE HLT Project.                            *
//*                                                                        *
//* 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.                  *
//**************************************************************************

/** @file   AliHLTHOMERManager.cxx
    @author Jochen Thaeder
    @date
    @brief  Manger for HOMER in aliroot
*/

// see header file for class documentation
// or
// refer to README to build package
// or
// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt

#define EVE_DEBUG 0

#include "AliHLTHOMERManager.h"
// -- -- -- -- -- -- -- 
#include "AliHLTHOMERLibManager.h"
#include "AliHLTHOMERSourceDesc.h"
#include "AliHLTHOMERBlockDesc.h"
// -- -- -- -- -- -- -- 
#include "AliHLTGlobalTriggerDecision.h"
#include "AliHLTTriggerDecision.h"
//---------------------------

using std::cout;

ClassImp(AliHLTHOMERManager)

/*
 * ---------------------------------------------------------------------------------
 *                            Constructor / Destructor
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
  AliHLTHOMERManager::AliHLTHOMERManager() :
  fLibManager(new AliHLTHOMERLibManager),
  fStateHasChanged(kTRUE),
  fProxyHandler(NULL),
  fCurrentReader(NULL),
  fReaderList(NULL),
  fSourceList(NULL),
  fNBlks(0),
  fEventID(),
  fEventId(-1),
  fCurrentBlk(0),
  fAsyncBlockList(NULL),
  fBlockList(NULL),
   fEventBuffer(NULL),
  fBufferTopIdx(-1),
  fBufferLowIdx(-1),
  fCurrentBufferIdx(-1),
  fNavigateBufferIdx(-1),
  fNEventsAvailable(0),
  fConnected(kFALSE), 
  fTriggerString("ALL"), 
  fNEventsNotTriggered(0),
  fRetryNextEvent(kFALSE),
  fIsBlockOwner(kTRUE)
{
  // see header file for class documentation
  // or
  // refer to README to build package
  // or
  // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt

}

//##################################################################################
AliHLTHOMERManager::~AliHLTHOMERManager() {
  // see header file for class documentation

  if ( fLibManager ) {

    if ( fReaderList ) {
      TIter next(fReaderList);
      TObject * object = NULL;
      while ( ( object = next()) )
	fLibManager->DeleteReader(static_cast<AliHLTHOMERReader*>(object) );
      
      fReaderList->Clear();
      delete fReaderList;
    }
    fReaderList = NULL;   
    
    delete fLibManager;
  } 
  fLibManager = NULL;

  if ( fProxyHandler != NULL )
    delete fProxyHandler;
  fProxyHandler = NULL;

  if ( fSourceList != NULL )
    delete fSourceList;
  fSourceList = NULL;

  if ( fEventBuffer ) {
    fEventBuffer->Clear();
    delete fEventBuffer;
  }
  fEventBuffer = NULL;

  if(fBlockList) {
    fBlockList->Clear();
    delete fBlockList;
  }
  fBlockList = NULL;

  if ( fAsyncBlockList ) {
    fAsyncBlockList->Delete();
    delete fAsyncBlockList;
  }
  fAsyncBlockList = NULL;
}

//##################################################################################
Int_t AliHLTHOMERManager::Initialize() {
  // see header file for class documentation

  HLTInfo("Initializing");

  Int_t iResult = 0;

  // -- Initialize ProxyHandler
  if ( !fProxyHandler )
    fProxyHandler = new AliHLTHOMERProxyHandler();
  
  if ( fProxyHandler ) {
    iResult = fProxyHandler->Initialize();
    if (iResult)
      HLTError("Initialize of ProxyHandler failed.");
  
  } else {
    iResult = -1;
    HLTError("Creating of ProxyHandler failed.");
  }
 
  // -- Initialize ReaderList
  //    List ist not owner, as reader have to be created/deleted by the LibManager
  if( !fReaderList )
    fReaderList = new TList();
  
  // -- Initialize asynchronous BlockList
  if( !fAsyncBlockList ) {
    fAsyncBlockList = new TList();
    fAsyncBlockList->SetOwner(kTRUE);
  }

  //initialize normal block list
  if( !fBlockList ) {
    fBlockList = new TList();
    fBlockList->SetOwner(kFALSE);
  }

  // -- Initialize Event Buffer and EventID array
  if ( !fEventBuffer ) {
    fEventBuffer = new TClonesArray( "TList", BUFFERSIZE );
  }

  for ( Int_t idx = 0; idx < BUFFERSIZE; ++idx ) {
    new ((*fEventBuffer)[idx]) TList( );
    (reinterpret_cast<TList*>((*fEventBuffer)[idx]))->SetOwner(kTRUE);
    
    fEventID[idx] = 0;
  }

  return iResult;
}

/*
 * ---------------------------------------------------------------------------------
 *                                 Source Handling
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
Int_t AliHLTHOMERManager::CreateSourcesList() {
  // see header file for class documentation

  if (fProxyHandler == NULL)
  {
    HLTError("The object must first be initialised with a call to Initialize().");
    return -1;
  }

  Int_t iResult = 0;

  if ( fSourceList != NULL )
    delete fSourceList;
  fSourceList = NULL;

  fSourceList = new TList();
  fSourceList->SetOwner( kTRUE );

  iResult = fProxyHandler->FillSourceList( fSourceList );
  if ( iResult < 0 ) {
    HLTWarning("There have been errors, while creating the sources list.");
  }
  else if ( iResult > 0 ) {
    HLTWarning("No active services found.");
  }
  else if ( fSourceList->IsEmpty() ) {
    HLTWarning("No active services in the list.");
    iResult = 2;
  }
  else {
     HLTInfo("New sources list created.");

    // -- New SourceList has been created 
    // --> All Sources are new --> State has changed
    fStateHasChanged = kTRUE;
  }

  return iResult;
}

//##################################################################################
void AliHLTHOMERManager::SetSourceState( AliHLTHOMERSourceDesc * source, Bool_t state ) {
  // see header file for class documentation

  if ( source->IsSelected() != state ) {
    source->SetState( state );
    fStateHasChanged = kTRUE;
  }

  return;
}

/*
 * ---------------------------------------------------------------------------------
 *                         Connection Handling - public
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
Int_t AliHLTHOMERManager::ConnectHOMER( TString detector ){
  // see header file for class documentation

  if (fReaderList == NULL or fSourceList == NULL)
  {
    HLTError("Must first create a source list with a call to CreateSourcesList().");
    return -1;
  }
  
  Int_t iResult = 0;

  // HAck Jochen
  //----
  detector="ALL";

  // -- Check if LibManager is present
  if ( ! fLibManager ) {
    HLTError("No LibManager present.");
    return -1;
  }
  
  // -- Check if already connected and state has not changed
  if ( fStateHasChanged == kFALSE && IsConnected() ) {
    HLTInfo("No need for reconnection.");
    return 0;
  }
  
  // -- If already connected, disconnect before connect
  //    or if ReaderList already filled
  if ( IsConnected() || fReaderList->GetSize() != 0 ) {
    HLTInfo(Form("IsConnected: %d      fReaderList.Size:   %d", IsConnected(), fReaderList->GetSize()));
    DisconnectHOMER();
  }
  // -- Create the Readoutlist
  UShort_t* sourcePorts = new UShort_t [fSourceList->GetEntries()];
  const Char_t ** sourceHostnames = new const Char_t* [fSourceList->GetEntries()];
  for(Int_t i = 0; i < fSourceList->GetEntries(); i++) {
   sourceHostnames[i] = "";
  }
  UInt_t sourceCount = 0;

  CreateReadoutList( sourceHostnames, sourcePorts, sourceCount, detector );
  if ( sourceCount == 0 ) {
    HLTError("No sources selected, aborting.");
    delete [] sourcePorts;
    delete [] sourceHostnames;
    return -2;
  }

  // ***
  // *** Connect to data sources
  // ***
  
  for (UInt_t idx = 0; idx < sourceCount; idx++) {
    
    if (sourcePorts[idx] > 60000)
      continue;

    HLTInfo(Form("Adding source %d as %s : %d", idx, sourceHostnames[idx], sourcePorts[idx]));
    
    fReaderList->Add(dynamic_cast<TObject*>(fLibManager->OpenReader(sourceHostnames[idx], sourcePorts[idx])));
    AliHLTHOMERReader *reader = static_cast<AliHLTHOMERReader*>(fReaderList->Last());
    if ( !reader ) {
      HLTError("Adding reader failed, aborting");
      delete [] sourcePorts;
      delete [] sourceHostnames;
      return -3;
    }

    if ( (iResult = reader->GetConnectionStatus()) )  {

      // -- Connection to source failed
      
      HLTError(Form("Error establishing connection to TCP source %s:%hu: %s (%d)",
		    sourceHostnames[idx], sourcePorts[idx], strerror(iResult), iResult));

      if( !(TString(sourceHostnames[idx]).CompareTo("localhost")) ) {
	HLTInfo("The failed connection is on localhost. is SSH tunnel up????? ");
	HLTInfo(Form("Do: 'ssh -L %d:alihlt-vobox0.cern.ch:%d cernUser@lxplus.cern.ch -fN'",
		     sourcePorts[idx], sourcePorts[idx]));
      }
      
      // -- Remove reader
      fReaderList->RemoveLast();

      if ( reader )
	fLibManager->DeleteReader( reader );
      reader = NULL;
      
      HLTInfo(Form("Removed source %d,  %s : %d from sourceList", idx, sourceHostnames[idx], sourcePorts[idx]));
      
    } 
    else {
      // -- Connection succeded
      fConnected = kTRUE;

      HLTInfo(Form("Connection established to source %s on port %d", sourceHostnames[idx], sourcePorts[idx]));
    }
    
  } // for (Int_t idx = 0; idx < sourceCount; idx++) {
  
  delete[] sourceHostnames;
  delete[] sourcePorts;

  return iResult;

}

//##################################################################################
void AliHLTHOMERManager::DisconnectHOMER(){
  // see header file for class documentation

  HLTInfo("Disconnecting");

  if ( fReaderList && fLibManager ) {
    HLTInfo("Deleting readerlist and libmanager");
    TIter next(fReaderList);
    TObject * object = NULL;
    while ( ( object = next()) ) 
      fLibManager->DeleteReader(static_cast<AliHLTHOMERReader*>(object) );
      

    HLTInfo(Form("fReaderList size %d", fReaderList->GetSize()));
    fReaderList->Clear();
    HLTInfo(Form("fReaderList size %d", fReaderList->GetSize()));
    delete fReaderList;
    fReaderList = new TList ();
    HLTInfo(Form("fReaderList size %d", fReaderList->GetSize()));
  }
  
  fStateHasChanged = kTRUE;
  fConnected = kFALSE;
  
  HLTInfo("Connection closed.");

  return;
}

//##################################################################################
Int_t AliHLTHOMERManager::ReconnectHOMER( TString detector="" ){
  // see header file for class documentation
  
  Int_t iResult = 0;

  if ( IsConnected() )
    DisconnectHOMER();

  iResult = ConnectHOMER(detector);
  if ( iResult ) {
    HLTError("Error reconnecting.");
  }

  return iResult;
}

/*
 * ---------------------------------------------------------------------------------
 *                            Event Handling - public
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
Int_t AliHLTHOMERManager::NextEvent(){
 
  // see header file for class documentation
  
  Int_t iResult = 0;
  Int_t iRetryCount = 0;
  
  if ( !IsConnected() || fStateHasChanged ) {
    HLTInfo("Not connected or state has changed, returning to AliEveHOMERManager, which will deal with this situation");
    //    cout << "connectecd  " << IsConnected()  << "haschanged  "<<fStateHasChanged << endl;
    return 55;//ConnectHOMER();
  }
  if ( !IsConnected() ) {
    HLTWarning("Not connected yet.");
    return -1;
  }

  // -- Reset asyncronous BlockList
  fAsyncBlockList->Delete();

  // ***
  // *** Loop over all readers and get new event data
  // ***
  
  TIter next(fReaderList);
  TObject * object = NULL;
  
  while( (object = next()) ) {
    
    fCurrentReader = static_cast<AliHLTHOMERReader*>(object);
    
    // -- Read next event data and error handling for HOMER (error codes and empty blocks)
    while ( 1 ) {
      
      iResult = fCurrentReader->ReadNextEvent( 40000000 /*timeout in us*/);
      
      if ( iResult == 111 || iResult == 32 || iResult == 6 ) {
	HLTError(Form("No connection to source %d: %s (%d)", 
		      fCurrentReader->GetErrorConnectionNdx(), strerror(iResult), iResult));
	break;
      } 
      else if ( iResult == 110 ) {
	HLTError(Form("Timeout occured, reading event from source %d: %s (%d)", 
		      fCurrentReader->GetErrorConnectionNdx(), strerror(iResult), iResult));
	break;
      } 
      else if ( iResult == 56 ) {
	++iRetryCount;
      
	if ( iRetryCount >= 20 ) {
	  HLTError(Form("Retry Failed: Error reading event from source %d: %s (%d), returning", 
			fCurrentReader->GetErrorConnectionNdx(), strerror(iResult), iResult));
	  break;
	} 
	else {
	  HLTError(Form("Retry: Error reading event from source %d: %s (%d), making another attempt (no %d out of 20)", 
			fCurrentReader->GetErrorConnectionNdx(), strerror(iResult), iResult, iRetryCount));
	  //break;
	  continue;
	}
      }
      else if ( iResult ) {
	HLTError(Form("General Error reading event from source %d: %s (%d), giving up", 
		      fCurrentReader->GetErrorConnectionNdx(), strerror(iResult), iResult));
	fConnected = kFALSE;
	break;
      } 
      else {
	HLTDebug("Successfully read out event from source");
	break;
      }

    } // while( 1 ) {
    
    // -- Check if event could be read
    if ( iResult ) {
      HLTInfo("Reading event from source failed");
      continue;
    }

    // -- Handle Blocks from current reader
    iResult = HandleBlocks();
    if ( iResult ) {
      HLTError("Handling of blocks failed.");
    }

  } // while( (object = next()) ) {

  return iResult;  
}

/* ---------------------------------------------------------------------------------
 *                           Buffer Handling - public
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
Int_t AliHLTHOMERManager::NavigateEventBufferBack() { 
  // see header file for class documentation

  // -- reached the end of the buffer
  if ( fNavigateBufferIdx == fBufferLowIdx )
    return -1;

  Int_t newIdx = fNavigateBufferIdx - 1;
  if ( newIdx == -1 )
    newIdx = BUFFERSIZE-1;

  fCurrentBufferIdx = fNavigateBufferIdx = newIdx;

  return newIdx;
}

//##################################################################################
Int_t AliHLTHOMERManager::NavigateEventBufferFwd() {
  // see header file for class documentation

  HLTInfo(Form("fNavigateBufferIdx: %d, fCurrentBufferIdx %d, fBufferTopIdx %d", fNavigateBufferIdx, fCurrentBufferIdx, fBufferTopIdx));

  // -- reached the top of the buffer
  if ( fNavigateBufferIdx == fBufferTopIdx )
    return -1;

  Int_t newIdx = fNavigateBufferIdx + 1;
  if ( newIdx == BUFFERSIZE )
    newIdx = 0;
  
  fCurrentBufferIdx = fNavigateBufferIdx = newIdx;
  fNEventsAvailable -= 1;

  HLTInfo(Form("fNavigateBufferIdx: %d, fCurrentBufferIdx %d, fBufferTopIdx %d", fNavigateBufferIdx, fCurrentBufferIdx, fBufferTopIdx));


  return 0;
}

 ///////////////////////////////////////////////////////////////////////////////////

/*
 * ---------------------------------------------------------------------------------
 *                            Connection Handling - private
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
void AliHLTHOMERManager::CreateReadoutList( const char** sourceHostnames, UShort_t *sourcePorts, 
					    UInt_t &sourceCount, TString detector ){
  // see header file for class documentation

  AliHLTHOMERSourceDesc * source= NULL;

  // -- Read all sources and check if they should be read out
  TIter next( fSourceList );
  while ( ( source = dynamic_cast<AliHLTHOMERSourceDesc*>(next()) ) ) {

    ///Don't use sources from dev cluster
    if(source->GetPort() > 60000) continue;

    // -- If detector NO detector name given
    if ( ! detector.CompareTo("ALL") ) {
      // -- Continue if source is not selected
      // HACK Jochen
      //if ( ! source->IsSelected() )
      //	continue;
    }
    // -- DetectorName given
    else {
      // -- Continue if detector name doesn't match
      if ( detector.CompareTo(source->GetDetector()) )
	continue;
      else
	source->Select();
    }
    
    Bool_t exists = kFALSE;
    
    // -- Loop over existing entries and check if entry is already in readout list
    for ( UInt_t ii = 0; ii < sourceCount; ii++ ){
      if ( !strcmp( sourceHostnames[ii], source->GetHostname().Data() ) 
	   && sourcePorts[ii] == source->GetPort() ) {
	exists = kTRUE;
	break;
      }
    }

    // -- Add new entires to readout list
    if ( ! exists ) {
      sourcePorts[sourceCount] = source->GetPort();
      sourceHostnames[sourceCount] = source->GetHostname().Data();
      sourceCount++;
    }

  } // while ( ( source = (AliHLTHOMERSourceDesc*)next() ) ) {

  fStateHasChanged = kFALSE;

  return;
}

/*
 * ---------------------------------------------------------------------------------
 *                          Buffer Handling - private
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
void AliHLTHOMERManager::AddBlockListToBuffer() {
  // see header file for class documentation
  // -- Check if event is already in buffer
  ULong_t eventID = static_cast<ULong64_t>(fCurrentReader->GetEventID());  
  
  if ( fEventID[fBufferTopIdx] == eventID ) {
    HLTInfo(Form("Event 0x%016lX (%lu) already in buffer.", eventID, eventID));
    return;
  }

  // -- Check if event should be selected on basis of trigger string
  if( fTriggerString.CompareTo("ALL") ){
    if ( !CheckTriggerDecision() ) {
      HLTInfo("Event not triggered");
      return;
    } else {
      HLTInfo("Event triggered");
    }
  }
  else {
    HLTDebug("No trigger selection.");
  }

  // -- Set Top mark 
  ++fBufferTopIdx;
  if ( fBufferTopIdx == BUFFERSIZE )
    fBufferTopIdx = 0;

  // -- Change the low mark if necessary
  if ( fBufferLowIdx == -1 )
    fBufferLowIdx = 0;
  else if ( fBufferTopIdx == fBufferLowIdx ) {
    ++fBufferLowIdx;
    if ( fBufferLowIdx == BUFFERSIZE )
      fBufferLowIdx = 0;
  }


  // -- Fill EventID
  fEventID[fBufferTopIdx] = eventID;

  // -- Clear Buffer slot
  (reinterpret_cast<TList*>((*fEventBuffer)[fBufferTopIdx]))->Clear();
  if(fBlockList->IsOwner()) HLTWarning("block list is owner!!");
  HLTInfo(Form("fBlockList size %d", fBlockList->GetSize()));
  //fBlockList->Clear();
  fBlockList = new TList();
  HLTInfo(Form("fBlockList size %d", fBlockList->GetSize()));

  GetFirstBlk();

  // -- Fill block list
  do {

    // -- Create new block
    AliHLTHOMERBlockDesc * block = new AliHLTHOMERBlockDesc();
    block->SetBlock( GetBlk(), GetBlkSize(), GetBlkOrigin(),
		     GetBlkType(), GetBlkSpecification() );
    
    // -- Check sources list if block is requested
    if ( CheckIfRequested( block ) ) {
      (reinterpret_cast<TList*>((*fEventBuffer)[fBufferTopIdx]))->Add( block );
      fBlockList->Add(block);
    }
    else {
      // XXX HACK Jochen
      (reinterpret_cast<TList*>((*fEventBuffer)[fBufferTopIdx]))->Add( block );
      fBlockList->Add(block);
      // delete block;
      // block = NULL;
    }
 
  } while( GetNextBlk() );

  //We have one more event available
  fNEventsAvailable++;
  HLTInfo(Form("fNEventsAvailable %d", fNEventsAvailable));
  return;
}

//##################################################################################
void AliHLTHOMERManager::AddToAsyncBlockList() {
  // see header file for class documentation

  HLTInfo("Adding blocks to the asynchroneous block list");

  GetFirstBlk();

  do {
    
    AliHLTHOMERBlockDesc * block = new AliHLTHOMERBlockDesc();
    block->SetBlock( GetBlk(), GetBlkSize(), GetBlkOrigin(),
		     GetBlkType(), GetBlkSpecification() );
    

    fAsyncBlockList->Add( block );
 
  } while( GetNextBlk() );

  return;
}
//__________________________________________________________________________________
void AliHLTHOMERManager::AddToBlockList() {
  // see header file for class documentation
  HLTInfo("Adding blocks to the synchroneous block list");

  ULong_t eventID = static_cast<ULong64_t>(fCurrentReader->GetEventID());  
  
  if ( fEventId == eventID ) {
    HLTInfo(Form("Event 0x%016lX (%lu) already in buffer.", eventID, eventID));
    return;
  }

  fEventId = eventID;

  GetFirstBlk();
  do {

    AliHLTHOMERBlockDesc * block = new AliHLTHOMERBlockDesc();
    block->SetBlock( GetBlk(), GetBlkSize(), GetBlkOrigin(),
		     GetBlkType(), GetBlkSpecification() );
    fBlockList->Add( block );
  
  } while( GetNextBlk() );  
}

//__________________________________________________________________________________
TList* AliHLTHOMERManager::GetBlockListEventBuffer() {
  // see header file for class documentation

  if(fBlockList)
    return fBlockList;
  else 
    return NULL;


}


//__________________________________________________________________________________
Int_t AliHLTHOMERManager::HandleBlocks() {
  // see header file for class documentation
  
  Int_t iResult = 0;

  // -- Get blockCnt and eventID
  fNBlks = static_cast<ULong_t>(fCurrentReader->GetBlockCnt());
  ULong_t eventID = static_cast<ULong64_t>(fCurrentReader->GetEventID());  
  fCurrentBlk = 0;

  // -- Check if blocks present
  if ( fNBlks ==  0 ) {
    HLTWarning(Form("Event 0x%016lX (%lu) with no blocks", eventID, eventID));
    return -1;
  }

  HLTInfo(Form("Event 0x%016lX (%lu) with %lu blocks", eventID, eventID, fNBlks));
    
  if ( IsSyncBlocks() ) {
    //AddBlockListToBuffer();
    fBlockList->Clear();
    AddToBlockList();
  } else {
    AddToAsyncBlockList();
  }

  return iResult;
}

//__________________________________________________________________________________
Bool_t AliHLTHOMERManager::IsSyncBlocks() {
  // see header file for class documentation
  
  Bool_t bResult = kFALSE;

  GetFirstBlk();
  
  do {          
    
    if ( !GetBlkType().CompareTo("ALIESDV0")) {
      bResult = kTRUE;
      break;
    }

    if ( !GetBlkType().CompareTo("GLOBTRIG")) {
      bResult = kTRUE;
      break;
    }
    
    if ( !GetBlkType().CompareTo("ROOTTOBJ") ) {
      AliHLTHOMERBlockDesc blockDesc;
      
      blockDesc.SetBlock( GetBlk(), GetBlkSize(), GetBlkOrigin(),
			  GetBlkType(), GetBlkSpecification() );
      if ( !blockDesc.GetClassName().CompareTo("AliHLTGlobalTriggerDecision") ) {

	bResult = kTRUE;
	break;
      }
    }

  } while( GetNextBlk() );


  return bResult;
}

//##################################################################################
void* AliHLTHOMERManager::GetBlk( Int_t ndx ) {
  // see header file for class documentation
  // Get pointer to current block in current event
   
  if ( !fCurrentReader || !IsConnected() ) {
    HLTError("Not connected yet.");
    return NULL;
  }
  if ( ndx < static_cast<Int_t>(fNBlks) )
    return  const_cast<void*> (fCurrentReader->GetBlockData(ndx));
  else
    return NULL;
}

//##################################################################################
ULong_t AliHLTHOMERManager::GetBlkSize( Int_t ndx ) {
  // see header file for class documentation
   
  if ( !fCurrentReader || !IsConnected() ) {
    HLTError("Not connected yet.");
    return 0;
  }
  
  if ( ndx < static_cast<Int_t>(fNBlks) )
    return static_cast<ULong_t> (fCurrentReader->GetBlockDataLength(ndx));
  else
    return 0;
}

//##################################################################################
TString AliHLTHOMERManager::GetBlkOrigin( Int_t ndx ) {
  // see header file for class documentation

  TString origin = "";

  // -- Check for Connection
  if ( !fCurrentReader || ! IsConnected() ) {
    HLTError("Not connected yet.");
    return origin;
  }

  // -- Check block index
  if ( ndx >= static_cast<Int_t>(fNBlks) ) {
    HLTError(Form("Block index %d out of range.", ndx ));
    return origin;
  }

  // -- Get origin
  union{
    UInt_t data;
    Char_t array[4];
  } reverseOrigin;

  reverseOrigin.data = static_cast<UInt_t>(fCurrentReader->GetBlockDataOrigin(ndx));

  // -- Reverse the order
  for (Int_t ii = 3; ii >= 0; ii-- )
    if ( reverseOrigin.array[ii] != ' ')
      origin.Append( reverseOrigin.array[ii] );

  origin.Remove( TString::kTrailing, ' ' );

  return origin;
}

//##################################################################################
TString AliHLTHOMERManager::GetBlkType( Int_t ndx ) {
  // see header file for class documentation

  TString type = "";

  // -- Check for Connection
  if ( !fCurrentReader || ! IsConnected() ) {
    HLTError("Not connected yet.");
    return type;
  }

  // -- Check block index
  if ( ndx >= static_cast<Int_t>(fNBlks) ) {
    HLTError(Form("Block index %d out of range.", ndx ));
    return type;
  }

  // -- Get type
  union{
    ULong64_t data;
    Char_t array[8];
  } reverseType;

  reverseType.data = static_cast<ULong64_t> (fCurrentReader->GetBlockDataType(ndx));

  // -- Reverse the order
  for (Int_t ii = 7; ii >= 0; ii-- )
    if ( reverseType.array[ii] != ' ')
      type.Append( reverseType.array[ii] );
  
  type.Remove( TString::kTrailing, ' ' );

  return type;
}

//##################################################################################
ULong_t AliHLTHOMERManager::GetBlkSpecification( Int_t ndx ) {
  // see header file for class documentation

  // -- Check for Connection
  if ( !fCurrentReader || ! IsConnected() ) {
    HLTError("Not connected yet.");
    return 0;
  }

  // -- Check block index
  if ( ndx >= static_cast<Int_t>(fNBlks) ) {
    HLTError(Form("Block index %d out of range.", ndx ));
    return 0;
  }

  return static_cast<ULong_t>(fCurrentReader->GetBlockDataSpec(ndx));
}

//##################################################################################
Bool_t AliHLTHOMERManager::CheckIfRequested( AliHLTHOMERBlockDesc * block ) {
  // see header file for class documentation

  Bool_t requested = kFALSE;

  AliHLTHOMERSourceDesc * source= NULL;

  // -- Read all sources and check if they should be read out
  TIter next( fSourceList );
  while ( ( source = dynamic_cast<AliHLTHOMERSourceDesc*>(next()) ) ) {
    
    // -- Check if source is selected
    if ( ! source->IsSelected() )
      continue;
    
    // -- Check if detector matches
    if ( source->GetSourceName().CompareTo( block->GetBlockName() ) )
      continue;

    requested = kTRUE;
    break;

  } // while ( ( source = dynamic_cast<AliHLTHOMERSourceDesc*>(next()) ) ) {
  
#if EVE_DEBUG
  if ( requested ) {
    HLTInfo(Form("Block requested : %s", block->GetBlockName().Data())); 
  }
  else {
    HLTInfo(Form("Block NOT requested : %s", block->GetBlockName().Data())); 
  }
#endif

  return requested;
}

/* ---------------------------------------------------------------------------------
 *                          Trigger Handling - private
 * ---------------------------------------------------------------------------------
 */

//##################################################################################
Bool_t AliHLTHOMERManager::CheckTriggerDecision() {
  // see header file for class documentation

  Bool_t triggered = kFALSE;

  if ( !fCurrentReader || !IsConnected() ) {
    HLTError("Not connected yet.");
    return kFALSE;
  }

  AliHLTHOMERBlockDesc blockDesc;

  GetFirstBlk();
  
  // -- Fill block list
  Bool_t foundTriggerBlock = kFALSE;
  
  do {
    if ( (GetBlkType().CompareTo("ROOTTOBJ") == 0) ) {
      blockDesc.SetBlock( GetBlk(), GetBlkSize(), GetBlkOrigin(),
			  GetBlkType(), GetBlkSpecification() );

      if ( ! blockDesc.GetClassName().CompareTo("AliHLTGlobalTriggerDecision") ) {

	foundTriggerBlock = kTRUE;
	break;
      }
      
    }
  } while( GetNextBlk() );
  
  if ( !foundTriggerBlock ) {
    HLTError("No trigger decision object found");
    return kFALSE;
  }

  // -- Get the global decision object
  AliHLTGlobalTriggerDecision* globalDecision = 
    static_cast<AliHLTGlobalTriggerDecision*>(blockDesc.GetTObject());

  if ( fTriggerString.CompareTo("HLTGlobalTrigger") == 0 ) {
    triggered = globalDecision->EventTriggered();
  } 
  else {
    
    for (Int_t idx = 0; idx < globalDecision->NumberOfInputObjects(); idx++) {
       
      const AliHLTTriggerDecision* triggerDecision = 
	reinterpret_cast<const AliHLTTriggerDecision*>(globalDecision->InputObject(idx));
    
      if ( !(fTriggerString.CompareTo(triggerDecision->Description())) ) {
	triggered = triggerDecision->EventTriggered();
	break;
      }
    } // for (Int_t idx = 0; idx < globalDecision->NumberOfInputObjects(); idx++) {
  }



  if ( triggered ) {
    fRetryNextEvent = kFALSE;
    fNEventsNotTriggered = 0;
  }
  else {
    fRetryNextEvent = kTRUE;
    ++fNEventsNotTriggered;
  }

  return triggered;
}
 AliHLTHOMERManager.cxx:1
 AliHLTHOMERManager.cxx:2
 AliHLTHOMERManager.cxx:3
 AliHLTHOMERManager.cxx:4
 AliHLTHOMERManager.cxx:5
 AliHLTHOMERManager.cxx:6
 AliHLTHOMERManager.cxx:7
 AliHLTHOMERManager.cxx:8
 AliHLTHOMERManager.cxx:9
 AliHLTHOMERManager.cxx:10
 AliHLTHOMERManager.cxx:11
 AliHLTHOMERManager.cxx:12
 AliHLTHOMERManager.cxx:13
 AliHLTHOMERManager.cxx:14
 AliHLTHOMERManager.cxx:15
 AliHLTHOMERManager.cxx:16
 AliHLTHOMERManager.cxx:17
 AliHLTHOMERManager.cxx:18
 AliHLTHOMERManager.cxx:19
 AliHLTHOMERManager.cxx:20
 AliHLTHOMERManager.cxx:21
 AliHLTHOMERManager.cxx:22
 AliHLTHOMERManager.cxx:23
 AliHLTHOMERManager.cxx:24
 AliHLTHOMERManager.cxx:25
 AliHLTHOMERManager.cxx:26
 AliHLTHOMERManager.cxx:27
 AliHLTHOMERManager.cxx:28
 AliHLTHOMERManager.cxx:29
 AliHLTHOMERManager.cxx:30
 AliHLTHOMERManager.cxx:31
 AliHLTHOMERManager.cxx:32
 AliHLTHOMERManager.cxx:33
 AliHLTHOMERManager.cxx:34
 AliHLTHOMERManager.cxx:35
 AliHLTHOMERManager.cxx:36
 AliHLTHOMERManager.cxx:37
 AliHLTHOMERManager.cxx:38
 AliHLTHOMERManager.cxx:39
 AliHLTHOMERManager.cxx:40
 AliHLTHOMERManager.cxx:41
 AliHLTHOMERManager.cxx:42
 AliHLTHOMERManager.cxx:43
 AliHLTHOMERManager.cxx:44
 AliHLTHOMERManager.cxx:45
 AliHLTHOMERManager.cxx:46
 AliHLTHOMERManager.cxx:47
 AliHLTHOMERManager.cxx:48
 AliHLTHOMERManager.cxx:49
 AliHLTHOMERManager.cxx:50
 AliHLTHOMERManager.cxx:51
 AliHLTHOMERManager.cxx:52
 AliHLTHOMERManager.cxx:53
 AliHLTHOMERManager.cxx:54
 AliHLTHOMERManager.cxx:55
 AliHLTHOMERManager.cxx:56
 AliHLTHOMERManager.cxx:57
 AliHLTHOMERManager.cxx:58
 AliHLTHOMERManager.cxx:59
 AliHLTHOMERManager.cxx:60
 AliHLTHOMERManager.cxx:61
 AliHLTHOMERManager.cxx:62
 AliHLTHOMERManager.cxx:63
 AliHLTHOMERManager.cxx:64
 AliHLTHOMERManager.cxx:65
 AliHLTHOMERManager.cxx:66
 AliHLTHOMERManager.cxx:67
 AliHLTHOMERManager.cxx:68
 AliHLTHOMERManager.cxx:69
 AliHLTHOMERManager.cxx:70
 AliHLTHOMERManager.cxx:71
 AliHLTHOMERManager.cxx:72
 AliHLTHOMERManager.cxx:73
 AliHLTHOMERManager.cxx:74
 AliHLTHOMERManager.cxx:75
 AliHLTHOMERManager.cxx:76
 AliHLTHOMERManager.cxx:77
 AliHLTHOMERManager.cxx:78
 AliHLTHOMERManager.cxx:79
 AliHLTHOMERManager.cxx:80
 AliHLTHOMERManager.cxx:81
 AliHLTHOMERManager.cxx:82
 AliHLTHOMERManager.cxx:83
 AliHLTHOMERManager.cxx:84
 AliHLTHOMERManager.cxx:85
 AliHLTHOMERManager.cxx:86
 AliHLTHOMERManager.cxx:87
 AliHLTHOMERManager.cxx:88
 AliHLTHOMERManager.cxx:89
 AliHLTHOMERManager.cxx:90
 AliHLTHOMERManager.cxx:91
 AliHLTHOMERManager.cxx:92
 AliHLTHOMERManager.cxx:93
 AliHLTHOMERManager.cxx:94
 AliHLTHOMERManager.cxx:95
 AliHLTHOMERManager.cxx:96
 AliHLTHOMERManager.cxx:97
 AliHLTHOMERManager.cxx:98
 AliHLTHOMERManager.cxx:99
 AliHLTHOMERManager.cxx:100
 AliHLTHOMERManager.cxx:101
 AliHLTHOMERManager.cxx:102
 AliHLTHOMERManager.cxx:103
 AliHLTHOMERManager.cxx:104
 AliHLTHOMERManager.cxx:105
 AliHLTHOMERManager.cxx:106
 AliHLTHOMERManager.cxx:107
 AliHLTHOMERManager.cxx:108
 AliHLTHOMERManager.cxx:109
 AliHLTHOMERManager.cxx:110
 AliHLTHOMERManager.cxx:111
 AliHLTHOMERManager.cxx:112
 AliHLTHOMERManager.cxx:113
 AliHLTHOMERManager.cxx:114
 AliHLTHOMERManager.cxx:115
 AliHLTHOMERManager.cxx:116
 AliHLTHOMERManager.cxx:117
 AliHLTHOMERManager.cxx:118
 AliHLTHOMERManager.cxx:119
 AliHLTHOMERManager.cxx:120
 AliHLTHOMERManager.cxx:121
 AliHLTHOMERManager.cxx:122
 AliHLTHOMERManager.cxx:123
 AliHLTHOMERManager.cxx:124
 AliHLTHOMERManager.cxx:125
 AliHLTHOMERManager.cxx:126
 AliHLTHOMERManager.cxx:127
 AliHLTHOMERManager.cxx:128
 AliHLTHOMERManager.cxx:129
 AliHLTHOMERManager.cxx:130
 AliHLTHOMERManager.cxx:131
 AliHLTHOMERManager.cxx:132
 AliHLTHOMERManager.cxx:133
 AliHLTHOMERManager.cxx:134
 AliHLTHOMERManager.cxx:135
 AliHLTHOMERManager.cxx:136
 AliHLTHOMERManager.cxx:137
 AliHLTHOMERManager.cxx:138
 AliHLTHOMERManager.cxx:139
 AliHLTHOMERManager.cxx:140
 AliHLTHOMERManager.cxx:141
 AliHLTHOMERManager.cxx:142
 AliHLTHOMERManager.cxx:143
 AliHLTHOMERManager.cxx:144
 AliHLTHOMERManager.cxx:145
 AliHLTHOMERManager.cxx:146
 AliHLTHOMERManager.cxx:147
 AliHLTHOMERManager.cxx:148
 AliHLTHOMERManager.cxx:149
 AliHLTHOMERManager.cxx:150
 AliHLTHOMERManager.cxx:151
 AliHLTHOMERManager.cxx:152
 AliHLTHOMERManager.cxx:153
 AliHLTHOMERManager.cxx:154
 AliHLTHOMERManager.cxx:155
 AliHLTHOMERManager.cxx:156
 AliHLTHOMERManager.cxx:157
 AliHLTHOMERManager.cxx:158
 AliHLTHOMERManager.cxx:159
 AliHLTHOMERManager.cxx:160
 AliHLTHOMERManager.cxx:161
 AliHLTHOMERManager.cxx:162
 AliHLTHOMERManager.cxx:163
 AliHLTHOMERManager.cxx:164
 AliHLTHOMERManager.cxx:165
 AliHLTHOMERManager.cxx:166
 AliHLTHOMERManager.cxx:167
 AliHLTHOMERManager.cxx:168
 AliHLTHOMERManager.cxx:169
 AliHLTHOMERManager.cxx:170
 AliHLTHOMERManager.cxx:171
 AliHLTHOMERManager.cxx:172
 AliHLTHOMERManager.cxx:173
 AliHLTHOMERManager.cxx:174
 AliHLTHOMERManager.cxx:175
 AliHLTHOMERManager.cxx:176
 AliHLTHOMERManager.cxx:177
 AliHLTHOMERManager.cxx:178
 AliHLTHOMERManager.cxx:179
 AliHLTHOMERManager.cxx:180
 AliHLTHOMERManager.cxx:181
 AliHLTHOMERManager.cxx:182
 AliHLTHOMERManager.cxx:183
 AliHLTHOMERManager.cxx:184
 AliHLTHOMERManager.cxx:185
 AliHLTHOMERManager.cxx:186
 AliHLTHOMERManager.cxx:187
 AliHLTHOMERManager.cxx:188
 AliHLTHOMERManager.cxx:189
 AliHLTHOMERManager.cxx:190
 AliHLTHOMERManager.cxx:191
 AliHLTHOMERManager.cxx:192
 AliHLTHOMERManager.cxx:193
 AliHLTHOMERManager.cxx:194
 AliHLTHOMERManager.cxx:195
 AliHLTHOMERManager.cxx:196
 AliHLTHOMERManager.cxx:197
 AliHLTHOMERManager.cxx:198
 AliHLTHOMERManager.cxx:199
 AliHLTHOMERManager.cxx:200
 AliHLTHOMERManager.cxx:201
 AliHLTHOMERManager.cxx:202
 AliHLTHOMERManager.cxx:203
 AliHLTHOMERManager.cxx:204
 AliHLTHOMERManager.cxx:205
 AliHLTHOMERManager.cxx:206
 AliHLTHOMERManager.cxx:207
 AliHLTHOMERManager.cxx:208
 AliHLTHOMERManager.cxx:209
 AliHLTHOMERManager.cxx:210
 AliHLTHOMERManager.cxx:211
 AliHLTHOMERManager.cxx:212
 AliHLTHOMERManager.cxx:213
 AliHLTHOMERManager.cxx:214
 AliHLTHOMERManager.cxx:215
 AliHLTHOMERManager.cxx:216
 AliHLTHOMERManager.cxx:217
 AliHLTHOMERManager.cxx:218
 AliHLTHOMERManager.cxx:219
 AliHLTHOMERManager.cxx:220
 AliHLTHOMERManager.cxx:221
 AliHLTHOMERManager.cxx:222
 AliHLTHOMERManager.cxx:223
 AliHLTHOMERManager.cxx:224
 AliHLTHOMERManager.cxx:225
 AliHLTHOMERManager.cxx:226
 AliHLTHOMERManager.cxx:227
 AliHLTHOMERManager.cxx:228
 AliHLTHOMERManager.cxx:229
 AliHLTHOMERManager.cxx:230
 AliHLTHOMERManager.cxx:231
 AliHLTHOMERManager.cxx:232
 AliHLTHOMERManager.cxx:233
 AliHLTHOMERManager.cxx:234
 AliHLTHOMERManager.cxx:235
 AliHLTHOMERManager.cxx:236
 AliHLTHOMERManager.cxx:237
 AliHLTHOMERManager.cxx:238
 AliHLTHOMERManager.cxx:239
 AliHLTHOMERManager.cxx:240
 AliHLTHOMERManager.cxx:241
 AliHLTHOMERManager.cxx:242
 AliHLTHOMERManager.cxx:243
 AliHLTHOMERManager.cxx:244
 AliHLTHOMERManager.cxx:245
 AliHLTHOMERManager.cxx:246
 AliHLTHOMERManager.cxx:247
 AliHLTHOMERManager.cxx:248
 AliHLTHOMERManager.cxx:249
 AliHLTHOMERManager.cxx:250
 AliHLTHOMERManager.cxx:251
 AliHLTHOMERManager.cxx:252
 AliHLTHOMERManager.cxx:253
 AliHLTHOMERManager.cxx:254
 AliHLTHOMERManager.cxx:255
 AliHLTHOMERManager.cxx:256
 AliHLTHOMERManager.cxx:257
 AliHLTHOMERManager.cxx:258
 AliHLTHOMERManager.cxx:259
 AliHLTHOMERManager.cxx:260
 AliHLTHOMERManager.cxx:261
 AliHLTHOMERManager.cxx:262
 AliHLTHOMERManager.cxx:263
 AliHLTHOMERManager.cxx:264
 AliHLTHOMERManager.cxx:265
 AliHLTHOMERManager.cxx:266
 AliHLTHOMERManager.cxx:267
 AliHLTHOMERManager.cxx:268
 AliHLTHOMERManager.cxx:269
 AliHLTHOMERManager.cxx:270
 AliHLTHOMERManager.cxx:271
 AliHLTHOMERManager.cxx:272
 AliHLTHOMERManager.cxx:273
 AliHLTHOMERManager.cxx:274
 AliHLTHOMERManager.cxx:275
 AliHLTHOMERManager.cxx:276
 AliHLTHOMERManager.cxx:277
 AliHLTHOMERManager.cxx:278
 AliHLTHOMERManager.cxx:279
 AliHLTHOMERManager.cxx:280
 AliHLTHOMERManager.cxx:281
 AliHLTHOMERManager.cxx:282
 AliHLTHOMERManager.cxx:283
 AliHLTHOMERManager.cxx:284
 AliHLTHOMERManager.cxx:285
 AliHLTHOMERManager.cxx:286
 AliHLTHOMERManager.cxx:287
 AliHLTHOMERManager.cxx:288
 AliHLTHOMERManager.cxx:289
 AliHLTHOMERManager.cxx:290
 AliHLTHOMERManager.cxx:291
 AliHLTHOMERManager.cxx:292
 AliHLTHOMERManager.cxx:293
 AliHLTHOMERManager.cxx:294
 AliHLTHOMERManager.cxx:295
 AliHLTHOMERManager.cxx:296
 AliHLTHOMERManager.cxx:297
 AliHLTHOMERManager.cxx:298
 AliHLTHOMERManager.cxx:299
 AliHLTHOMERManager.cxx:300
 AliHLTHOMERManager.cxx:301
 AliHLTHOMERManager.cxx:302
 AliHLTHOMERManager.cxx:303
 AliHLTHOMERManager.cxx:304
 AliHLTHOMERManager.cxx:305
 AliHLTHOMERManager.cxx:306
 AliHLTHOMERManager.cxx:307
 AliHLTHOMERManager.cxx:308
 AliHLTHOMERManager.cxx:309
 AliHLTHOMERManager.cxx:310
 AliHLTHOMERManager.cxx:311
 AliHLTHOMERManager.cxx:312
 AliHLTHOMERManager.cxx:313
 AliHLTHOMERManager.cxx:314
 AliHLTHOMERManager.cxx:315
 AliHLTHOMERManager.cxx:316
 AliHLTHOMERManager.cxx:317
 AliHLTHOMERManager.cxx:318
 AliHLTHOMERManager.cxx:319
 AliHLTHOMERManager.cxx:320
 AliHLTHOMERManager.cxx:321
 AliHLTHOMERManager.cxx:322
 AliHLTHOMERManager.cxx:323
 AliHLTHOMERManager.cxx:324
 AliHLTHOMERManager.cxx:325
 AliHLTHOMERManager.cxx:326
 AliHLTHOMERManager.cxx:327
 AliHLTHOMERManager.cxx:328
 AliHLTHOMERManager.cxx:329
 AliHLTHOMERManager.cxx:330
 AliHLTHOMERManager.cxx:331
 AliHLTHOMERManager.cxx:332
 AliHLTHOMERManager.cxx:333
 AliHLTHOMERManager.cxx:334
 AliHLTHOMERManager.cxx:335
 AliHLTHOMERManager.cxx:336
 AliHLTHOMERManager.cxx:337
 AliHLTHOMERManager.cxx:338
 AliHLTHOMERManager.cxx:339
 AliHLTHOMERManager.cxx:340
 AliHLTHOMERManager.cxx:341
 AliHLTHOMERManager.cxx:342
 AliHLTHOMERManager.cxx:343
 AliHLTHOMERManager.cxx:344
 AliHLTHOMERManager.cxx:345
 AliHLTHOMERManager.cxx:346
 AliHLTHOMERManager.cxx:347
 AliHLTHOMERManager.cxx:348
 AliHLTHOMERManager.cxx:349
 AliHLTHOMERManager.cxx:350
 AliHLTHOMERManager.cxx:351
 AliHLTHOMERManager.cxx:352
 AliHLTHOMERManager.cxx:353
 AliHLTHOMERManager.cxx:354
 AliHLTHOMERManager.cxx:355
 AliHLTHOMERManager.cxx:356
 AliHLTHOMERManager.cxx:357
 AliHLTHOMERManager.cxx:358
 AliHLTHOMERManager.cxx:359
 AliHLTHOMERManager.cxx:360
 AliHLTHOMERManager.cxx:361
 AliHLTHOMERManager.cxx:362
 AliHLTHOMERManager.cxx:363
 AliHLTHOMERManager.cxx:364
 AliHLTHOMERManager.cxx:365
 AliHLTHOMERManager.cxx:366
 AliHLTHOMERManager.cxx:367
 AliHLTHOMERManager.cxx:368
 AliHLTHOMERManager.cxx:369
 AliHLTHOMERManager.cxx:370
 AliHLTHOMERManager.cxx:371
 AliHLTHOMERManager.cxx:372
 AliHLTHOMERManager.cxx:373
 AliHLTHOMERManager.cxx:374
 AliHLTHOMERManager.cxx:375
 AliHLTHOMERManager.cxx:376
 AliHLTHOMERManager.cxx:377
 AliHLTHOMERManager.cxx:378
 AliHLTHOMERManager.cxx:379
 AliHLTHOMERManager.cxx:380
 AliHLTHOMERManager.cxx:381
 AliHLTHOMERManager.cxx:382
 AliHLTHOMERManager.cxx:383
 AliHLTHOMERManager.cxx:384
 AliHLTHOMERManager.cxx:385
 AliHLTHOMERManager.cxx:386
 AliHLTHOMERManager.cxx:387
 AliHLTHOMERManager.cxx:388
 AliHLTHOMERManager.cxx:389
 AliHLTHOMERManager.cxx:390
 AliHLTHOMERManager.cxx:391
 AliHLTHOMERManager.cxx:392
 AliHLTHOMERManager.cxx:393
 AliHLTHOMERManager.cxx:394
 AliHLTHOMERManager.cxx:395
 AliHLTHOMERManager.cxx:396
 AliHLTHOMERManager.cxx:397
 AliHLTHOMERManager.cxx:398
 AliHLTHOMERManager.cxx:399
 AliHLTHOMERManager.cxx:400
 AliHLTHOMERManager.cxx:401
 AliHLTHOMERManager.cxx:402
 AliHLTHOMERManager.cxx:403
 AliHLTHOMERManager.cxx:404
 AliHLTHOMERManager.cxx:405
 AliHLTHOMERManager.cxx:406
 AliHLTHOMERManager.cxx:407
 AliHLTHOMERManager.cxx:408
 AliHLTHOMERManager.cxx:409
 AliHLTHOMERManager.cxx:410
 AliHLTHOMERManager.cxx:411
 AliHLTHOMERManager.cxx:412
 AliHLTHOMERManager.cxx:413
 AliHLTHOMERManager.cxx:414
 AliHLTHOMERManager.cxx:415
 AliHLTHOMERManager.cxx:416
 AliHLTHOMERManager.cxx:417
 AliHLTHOMERManager.cxx:418
 AliHLTHOMERManager.cxx:419
 AliHLTHOMERManager.cxx:420
 AliHLTHOMERManager.cxx:421
 AliHLTHOMERManager.cxx:422
 AliHLTHOMERManager.cxx:423
 AliHLTHOMERManager.cxx:424
 AliHLTHOMERManager.cxx:425
 AliHLTHOMERManager.cxx:426
 AliHLTHOMERManager.cxx:427
 AliHLTHOMERManager.cxx:428
 AliHLTHOMERManager.cxx:429
 AliHLTHOMERManager.cxx:430
 AliHLTHOMERManager.cxx:431
 AliHLTHOMERManager.cxx:432
 AliHLTHOMERManager.cxx:433
 AliHLTHOMERManager.cxx:434
 AliHLTHOMERManager.cxx:435
 AliHLTHOMERManager.cxx:436
 AliHLTHOMERManager.cxx:437
 AliHLTHOMERManager.cxx:438
 AliHLTHOMERManager.cxx:439
 AliHLTHOMERManager.cxx:440
 AliHLTHOMERManager.cxx:441
 AliHLTHOMERManager.cxx:442
 AliHLTHOMERManager.cxx:443
 AliHLTHOMERManager.cxx:444
 AliHLTHOMERManager.cxx:445
 AliHLTHOMERManager.cxx:446
 AliHLTHOMERManager.cxx:447
 AliHLTHOMERManager.cxx:448
 AliHLTHOMERManager.cxx:449
 AliHLTHOMERManager.cxx:450
 AliHLTHOMERManager.cxx:451
 AliHLTHOMERManager.cxx:452
 AliHLTHOMERManager.cxx:453
 AliHLTHOMERManager.cxx:454
 AliHLTHOMERManager.cxx:455
 AliHLTHOMERManager.cxx:456
 AliHLTHOMERManager.cxx:457
 AliHLTHOMERManager.cxx:458
 AliHLTHOMERManager.cxx:459
 AliHLTHOMERManager.cxx:460
 AliHLTHOMERManager.cxx:461
 AliHLTHOMERManager.cxx:462
 AliHLTHOMERManager.cxx:463
 AliHLTHOMERManager.cxx:464
 AliHLTHOMERManager.cxx:465
 AliHLTHOMERManager.cxx:466
 AliHLTHOMERManager.cxx:467
 AliHLTHOMERManager.cxx:468
 AliHLTHOMERManager.cxx:469
 AliHLTHOMERManager.cxx:470
 AliHLTHOMERManager.cxx:471
 AliHLTHOMERManager.cxx:472
 AliHLTHOMERManager.cxx:473
 AliHLTHOMERManager.cxx:474
 AliHLTHOMERManager.cxx:475
 AliHLTHOMERManager.cxx:476
 AliHLTHOMERManager.cxx:477
 AliHLTHOMERManager.cxx:478
 AliHLTHOMERManager.cxx:479
 AliHLTHOMERManager.cxx:480
 AliHLTHOMERManager.cxx:481
 AliHLTHOMERManager.cxx:482
 AliHLTHOMERManager.cxx:483
 AliHLTHOMERManager.cxx:484
 AliHLTHOMERManager.cxx:485
 AliHLTHOMERManager.cxx:486
 AliHLTHOMERManager.cxx:487
 AliHLTHOMERManager.cxx:488
 AliHLTHOMERManager.cxx:489
 AliHLTHOMERManager.cxx:490
 AliHLTHOMERManager.cxx:491
 AliHLTHOMERManager.cxx:492
 AliHLTHOMERManager.cxx:493
 AliHLTHOMERManager.cxx:494
 AliHLTHOMERManager.cxx:495
 AliHLTHOMERManager.cxx:496
 AliHLTHOMERManager.cxx:497
 AliHLTHOMERManager.cxx:498
 AliHLTHOMERManager.cxx:499
 AliHLTHOMERManager.cxx:500
 AliHLTHOMERManager.cxx:501
 AliHLTHOMERManager.cxx:502
 AliHLTHOMERManager.cxx:503
 AliHLTHOMERManager.cxx:504
 AliHLTHOMERManager.cxx:505
 AliHLTHOMERManager.cxx:506
 AliHLTHOMERManager.cxx:507
 AliHLTHOMERManager.cxx:508
 AliHLTHOMERManager.cxx:509
 AliHLTHOMERManager.cxx:510
 AliHLTHOMERManager.cxx:511
 AliHLTHOMERManager.cxx:512
 AliHLTHOMERManager.cxx:513
 AliHLTHOMERManager.cxx:514
 AliHLTHOMERManager.cxx:515
 AliHLTHOMERManager.cxx:516
 AliHLTHOMERManager.cxx:517
 AliHLTHOMERManager.cxx:518
 AliHLTHOMERManager.cxx:519
 AliHLTHOMERManager.cxx:520
 AliHLTHOMERManager.cxx:521
 AliHLTHOMERManager.cxx:522
 AliHLTHOMERManager.cxx:523
 AliHLTHOMERManager.cxx:524
 AliHLTHOMERManager.cxx:525
 AliHLTHOMERManager.cxx:526
 AliHLTHOMERManager.cxx:527
 AliHLTHOMERManager.cxx:528
 AliHLTHOMERManager.cxx:529
 AliHLTHOMERManager.cxx:530
 AliHLTHOMERManager.cxx:531
 AliHLTHOMERManager.cxx:532
 AliHLTHOMERManager.cxx:533
 AliHLTHOMERManager.cxx:534
 AliHLTHOMERManager.cxx:535
 AliHLTHOMERManager.cxx:536
 AliHLTHOMERManager.cxx:537
 AliHLTHOMERManager.cxx:538
 AliHLTHOMERManager.cxx:539
 AliHLTHOMERManager.cxx:540
 AliHLTHOMERManager.cxx:541
 AliHLTHOMERManager.cxx:542
 AliHLTHOMERManager.cxx:543
 AliHLTHOMERManager.cxx:544
 AliHLTHOMERManager.cxx:545
 AliHLTHOMERManager.cxx:546
 AliHLTHOMERManager.cxx:547
 AliHLTHOMERManager.cxx:548
 AliHLTHOMERManager.cxx:549
 AliHLTHOMERManager.cxx:550
 AliHLTHOMERManager.cxx:551
 AliHLTHOMERManager.cxx:552
 AliHLTHOMERManager.cxx:553
 AliHLTHOMERManager.cxx:554
 AliHLTHOMERManager.cxx:555
 AliHLTHOMERManager.cxx:556
 AliHLTHOMERManager.cxx:557
 AliHLTHOMERManager.cxx:558
 AliHLTHOMERManager.cxx:559
 AliHLTHOMERManager.cxx:560
 AliHLTHOMERManager.cxx:561
 AliHLTHOMERManager.cxx:562
 AliHLTHOMERManager.cxx:563
 AliHLTHOMERManager.cxx:564
 AliHLTHOMERManager.cxx:565
 AliHLTHOMERManager.cxx:566
 AliHLTHOMERManager.cxx:567
 AliHLTHOMERManager.cxx:568
 AliHLTHOMERManager.cxx:569
 AliHLTHOMERManager.cxx:570
 AliHLTHOMERManager.cxx:571
 AliHLTHOMERManager.cxx:572
 AliHLTHOMERManager.cxx:573
 AliHLTHOMERManager.cxx:574
 AliHLTHOMERManager.cxx:575
 AliHLTHOMERManager.cxx:576
 AliHLTHOMERManager.cxx:577
 AliHLTHOMERManager.cxx:578
 AliHLTHOMERManager.cxx:579
 AliHLTHOMERManager.cxx:580
 AliHLTHOMERManager.cxx:581
 AliHLTHOMERManager.cxx:582
 AliHLTHOMERManager.cxx:583
 AliHLTHOMERManager.cxx:584
 AliHLTHOMERManager.cxx:585
 AliHLTHOMERManager.cxx:586
 AliHLTHOMERManager.cxx:587
 AliHLTHOMERManager.cxx:588
 AliHLTHOMERManager.cxx:589
 AliHLTHOMERManager.cxx:590
 AliHLTHOMERManager.cxx:591
 AliHLTHOMERManager.cxx:592
 AliHLTHOMERManager.cxx:593
 AliHLTHOMERManager.cxx:594
 AliHLTHOMERManager.cxx:595
 AliHLTHOMERManager.cxx:596
 AliHLTHOMERManager.cxx:597
 AliHLTHOMERManager.cxx:598
 AliHLTHOMERManager.cxx:599
 AliHLTHOMERManager.cxx:600
 AliHLTHOMERManager.cxx:601
 AliHLTHOMERManager.cxx:602
 AliHLTHOMERManager.cxx:603
 AliHLTHOMERManager.cxx:604
 AliHLTHOMERManager.cxx:605
 AliHLTHOMERManager.cxx:606
 AliHLTHOMERManager.cxx:607
 AliHLTHOMERManager.cxx:608
 AliHLTHOMERManager.cxx:609
 AliHLTHOMERManager.cxx:610
 AliHLTHOMERManager.cxx:611
 AliHLTHOMERManager.cxx:612
 AliHLTHOMERManager.cxx:613
 AliHLTHOMERManager.cxx:614
 AliHLTHOMERManager.cxx:615
 AliHLTHOMERManager.cxx:616
 AliHLTHOMERManager.cxx:617
 AliHLTHOMERManager.cxx:618
 AliHLTHOMERManager.cxx:619
 AliHLTHOMERManager.cxx:620
 AliHLTHOMERManager.cxx:621
 AliHLTHOMERManager.cxx:622
 AliHLTHOMERManager.cxx:623
 AliHLTHOMERManager.cxx:624
 AliHLTHOMERManager.cxx:625
 AliHLTHOMERManager.cxx:626
 AliHLTHOMERManager.cxx:627
 AliHLTHOMERManager.cxx:628
 AliHLTHOMERManager.cxx:629
 AliHLTHOMERManager.cxx:630
 AliHLTHOMERManager.cxx:631
 AliHLTHOMERManager.cxx:632
 AliHLTHOMERManager.cxx:633
 AliHLTHOMERManager.cxx:634
 AliHLTHOMERManager.cxx:635
 AliHLTHOMERManager.cxx:636
 AliHLTHOMERManager.cxx:637
 AliHLTHOMERManager.cxx:638
 AliHLTHOMERManager.cxx:639
 AliHLTHOMERManager.cxx:640
 AliHLTHOMERManager.cxx:641
 AliHLTHOMERManager.cxx:642
 AliHLTHOMERManager.cxx:643
 AliHLTHOMERManager.cxx:644
 AliHLTHOMERManager.cxx:645
 AliHLTHOMERManager.cxx:646
 AliHLTHOMERManager.cxx:647
 AliHLTHOMERManager.cxx:648
 AliHLTHOMERManager.cxx:649
 AliHLTHOMERManager.cxx:650
 AliHLTHOMERManager.cxx:651
 AliHLTHOMERManager.cxx:652
 AliHLTHOMERManager.cxx:653
 AliHLTHOMERManager.cxx:654
 AliHLTHOMERManager.cxx:655
 AliHLTHOMERManager.cxx:656
 AliHLTHOMERManager.cxx:657
 AliHLTHOMERManager.cxx:658
 AliHLTHOMERManager.cxx:659
 AliHLTHOMERManager.cxx:660
 AliHLTHOMERManager.cxx:661
 AliHLTHOMERManager.cxx:662
 AliHLTHOMERManager.cxx:663
 AliHLTHOMERManager.cxx:664
 AliHLTHOMERManager.cxx:665
 AliHLTHOMERManager.cxx:666
 AliHLTHOMERManager.cxx:667
 AliHLTHOMERManager.cxx:668
 AliHLTHOMERManager.cxx:669
 AliHLTHOMERManager.cxx:670
 AliHLTHOMERManager.cxx:671
 AliHLTHOMERManager.cxx:672
 AliHLTHOMERManager.cxx:673
 AliHLTHOMERManager.cxx:674
 AliHLTHOMERManager.cxx:675
 AliHLTHOMERManager.cxx:676
 AliHLTHOMERManager.cxx:677
 AliHLTHOMERManager.cxx:678
 AliHLTHOMERManager.cxx:679
 AliHLTHOMERManager.cxx:680
 AliHLTHOMERManager.cxx:681
 AliHLTHOMERManager.cxx:682
 AliHLTHOMERManager.cxx:683
 AliHLTHOMERManager.cxx:684
 AliHLTHOMERManager.cxx:685
 AliHLTHOMERManager.cxx:686
 AliHLTHOMERManager.cxx:687
 AliHLTHOMERManager.cxx:688
 AliHLTHOMERManager.cxx:689
 AliHLTHOMERManager.cxx:690
 AliHLTHOMERManager.cxx:691
 AliHLTHOMERManager.cxx:692
 AliHLTHOMERManager.cxx:693
 AliHLTHOMERManager.cxx:694
 AliHLTHOMERManager.cxx:695
 AliHLTHOMERManager.cxx:696
 AliHLTHOMERManager.cxx:697
 AliHLTHOMERManager.cxx:698
 AliHLTHOMERManager.cxx:699
 AliHLTHOMERManager.cxx:700
 AliHLTHOMERManager.cxx:701
 AliHLTHOMERManager.cxx:702
 AliHLTHOMERManager.cxx:703
 AliHLTHOMERManager.cxx:704
 AliHLTHOMERManager.cxx:705
 AliHLTHOMERManager.cxx:706
 AliHLTHOMERManager.cxx:707
 AliHLTHOMERManager.cxx:708
 AliHLTHOMERManager.cxx:709
 AliHLTHOMERManager.cxx:710
 AliHLTHOMERManager.cxx:711
 AliHLTHOMERManager.cxx:712
 AliHLTHOMERManager.cxx:713
 AliHLTHOMERManager.cxx:714
 AliHLTHOMERManager.cxx:715
 AliHLTHOMERManager.cxx:716
 AliHLTHOMERManager.cxx:717
 AliHLTHOMERManager.cxx:718
 AliHLTHOMERManager.cxx:719
 AliHLTHOMERManager.cxx:720
 AliHLTHOMERManager.cxx:721
 AliHLTHOMERManager.cxx:722
 AliHLTHOMERManager.cxx:723
 AliHLTHOMERManager.cxx:724
 AliHLTHOMERManager.cxx:725
 AliHLTHOMERManager.cxx:726
 AliHLTHOMERManager.cxx:727
 AliHLTHOMERManager.cxx:728
 AliHLTHOMERManager.cxx:729
 AliHLTHOMERManager.cxx:730
 AliHLTHOMERManager.cxx:731
 AliHLTHOMERManager.cxx:732
 AliHLTHOMERManager.cxx:733
 AliHLTHOMERManager.cxx:734
 AliHLTHOMERManager.cxx:735
 AliHLTHOMERManager.cxx:736
 AliHLTHOMERManager.cxx:737
 AliHLTHOMERManager.cxx:738
 AliHLTHOMERManager.cxx:739
 AliHLTHOMERManager.cxx:740
 AliHLTHOMERManager.cxx:741
 AliHLTHOMERManager.cxx:742
 AliHLTHOMERManager.cxx:743
 AliHLTHOMERManager.cxx:744
 AliHLTHOMERManager.cxx:745
 AliHLTHOMERManager.cxx:746
 AliHLTHOMERManager.cxx:747
 AliHLTHOMERManager.cxx:748
 AliHLTHOMERManager.cxx:749
 AliHLTHOMERManager.cxx:750
 AliHLTHOMERManager.cxx:751
 AliHLTHOMERManager.cxx:752
 AliHLTHOMERManager.cxx:753
 AliHLTHOMERManager.cxx:754
 AliHLTHOMERManager.cxx:755
 AliHLTHOMERManager.cxx:756
 AliHLTHOMERManager.cxx:757
 AliHLTHOMERManager.cxx:758
 AliHLTHOMERManager.cxx:759
 AliHLTHOMERManager.cxx:760
 AliHLTHOMERManager.cxx:761
 AliHLTHOMERManager.cxx:762
 AliHLTHOMERManager.cxx:763
 AliHLTHOMERManager.cxx:764
 AliHLTHOMERManager.cxx:765
 AliHLTHOMERManager.cxx:766
 AliHLTHOMERManager.cxx:767
 AliHLTHOMERManager.cxx:768
 AliHLTHOMERManager.cxx:769
 AliHLTHOMERManager.cxx:770
 AliHLTHOMERManager.cxx:771
 AliHLTHOMERManager.cxx:772
 AliHLTHOMERManager.cxx:773
 AliHLTHOMERManager.cxx:774
 AliHLTHOMERManager.cxx:775
 AliHLTHOMERManager.cxx:776
 AliHLTHOMERManager.cxx:777
 AliHLTHOMERManager.cxx:778
 AliHLTHOMERManager.cxx:779
 AliHLTHOMERManager.cxx:780
 AliHLTHOMERManager.cxx:781
 AliHLTHOMERManager.cxx:782
 AliHLTHOMERManager.cxx:783
 AliHLTHOMERManager.cxx:784
 AliHLTHOMERManager.cxx:785
 AliHLTHOMERManager.cxx:786
 AliHLTHOMERManager.cxx:787
 AliHLTHOMERManager.cxx:788
 AliHLTHOMERManager.cxx:789
 AliHLTHOMERManager.cxx:790
 AliHLTHOMERManager.cxx:791
 AliHLTHOMERManager.cxx:792
 AliHLTHOMERManager.cxx:793
 AliHLTHOMERManager.cxx:794
 AliHLTHOMERManager.cxx:795
 AliHLTHOMERManager.cxx:796
 AliHLTHOMERManager.cxx:797
 AliHLTHOMERManager.cxx:798
 AliHLTHOMERManager.cxx:799
 AliHLTHOMERManager.cxx:800
 AliHLTHOMERManager.cxx:801
 AliHLTHOMERManager.cxx:802
 AliHLTHOMERManager.cxx:803
 AliHLTHOMERManager.cxx:804
 AliHLTHOMERManager.cxx:805
 AliHLTHOMERManager.cxx:806
 AliHLTHOMERManager.cxx:807
 AliHLTHOMERManager.cxx:808
 AliHLTHOMERManager.cxx:809
 AliHLTHOMERManager.cxx:810
 AliHLTHOMERManager.cxx:811
 AliHLTHOMERManager.cxx:812
 AliHLTHOMERManager.cxx:813
 AliHLTHOMERManager.cxx:814
 AliHLTHOMERManager.cxx:815
 AliHLTHOMERManager.cxx:816
 AliHLTHOMERManager.cxx:817
 AliHLTHOMERManager.cxx:818
 AliHLTHOMERManager.cxx:819
 AliHLTHOMERManager.cxx:820
 AliHLTHOMERManager.cxx:821
 AliHLTHOMERManager.cxx:822
 AliHLTHOMERManager.cxx:823
 AliHLTHOMERManager.cxx:824
 AliHLTHOMERManager.cxx:825
 AliHLTHOMERManager.cxx:826
 AliHLTHOMERManager.cxx:827
 AliHLTHOMERManager.cxx:828
 AliHLTHOMERManager.cxx:829
 AliHLTHOMERManager.cxx:830
 AliHLTHOMERManager.cxx:831
 AliHLTHOMERManager.cxx:832
 AliHLTHOMERManager.cxx:833
 AliHLTHOMERManager.cxx:834
 AliHLTHOMERManager.cxx:835
 AliHLTHOMERManager.cxx:836
 AliHLTHOMERManager.cxx:837
 AliHLTHOMERManager.cxx:838
 AliHLTHOMERManager.cxx:839
 AliHLTHOMERManager.cxx:840
 AliHLTHOMERManager.cxx:841
 AliHLTHOMERManager.cxx:842
 AliHLTHOMERManager.cxx:843
 AliHLTHOMERManager.cxx:844
 AliHLTHOMERManager.cxx:845
 AliHLTHOMERManager.cxx:846
 AliHLTHOMERManager.cxx:847
 AliHLTHOMERManager.cxx:848
 AliHLTHOMERManager.cxx:849
 AliHLTHOMERManager.cxx:850
 AliHLTHOMERManager.cxx:851
 AliHLTHOMERManager.cxx:852
 AliHLTHOMERManager.cxx:853
 AliHLTHOMERManager.cxx:854
 AliHLTHOMERManager.cxx:855
 AliHLTHOMERManager.cxx:856
 AliHLTHOMERManager.cxx:857
 AliHLTHOMERManager.cxx:858
 AliHLTHOMERManager.cxx:859
 AliHLTHOMERManager.cxx:860
 AliHLTHOMERManager.cxx:861
 AliHLTHOMERManager.cxx:862
 AliHLTHOMERManager.cxx:863
 AliHLTHOMERManager.cxx:864
 AliHLTHOMERManager.cxx:865
 AliHLTHOMERManager.cxx:866
 AliHLTHOMERManager.cxx:867
 AliHLTHOMERManager.cxx:868
 AliHLTHOMERManager.cxx:869
 AliHLTHOMERManager.cxx:870
 AliHLTHOMERManager.cxx:871
 AliHLTHOMERManager.cxx:872
 AliHLTHOMERManager.cxx:873
 AliHLTHOMERManager.cxx:874
 AliHLTHOMERManager.cxx:875
 AliHLTHOMERManager.cxx:876
 AliHLTHOMERManager.cxx:877
 AliHLTHOMERManager.cxx:878
 AliHLTHOMERManager.cxx:879
 AliHLTHOMERManager.cxx:880
 AliHLTHOMERManager.cxx:881
 AliHLTHOMERManager.cxx:882
 AliHLTHOMERManager.cxx:883
 AliHLTHOMERManager.cxx:884
 AliHLTHOMERManager.cxx:885
 AliHLTHOMERManager.cxx:886
 AliHLTHOMERManager.cxx:887
 AliHLTHOMERManager.cxx:888
 AliHLTHOMERManager.cxx:889
 AliHLTHOMERManager.cxx:890
 AliHLTHOMERManager.cxx:891
 AliHLTHOMERManager.cxx:892
 AliHLTHOMERManager.cxx:893
 AliHLTHOMERManager.cxx:894
 AliHLTHOMERManager.cxx:895
 AliHLTHOMERManager.cxx:896
 AliHLTHOMERManager.cxx:897
 AliHLTHOMERManager.cxx:898
 AliHLTHOMERManager.cxx:899
 AliHLTHOMERManager.cxx:900
 AliHLTHOMERManager.cxx:901
 AliHLTHOMERManager.cxx:902
 AliHLTHOMERManager.cxx:903
 AliHLTHOMERManager.cxx:904
 AliHLTHOMERManager.cxx:905
 AliHLTHOMERManager.cxx:906
 AliHLTHOMERManager.cxx:907
 AliHLTHOMERManager.cxx:908
 AliHLTHOMERManager.cxx:909
 AliHLTHOMERManager.cxx:910
 AliHLTHOMERManager.cxx:911
 AliHLTHOMERManager.cxx:912
 AliHLTHOMERManager.cxx:913
 AliHLTHOMERManager.cxx:914
 AliHLTHOMERManager.cxx:915
 AliHLTHOMERManager.cxx:916
 AliHLTHOMERManager.cxx:917
 AliHLTHOMERManager.cxx:918
 AliHLTHOMERManager.cxx:919
 AliHLTHOMERManager.cxx:920
 AliHLTHOMERManager.cxx:921
 AliHLTHOMERManager.cxx:922
 AliHLTHOMERManager.cxx:923
 AliHLTHOMERManager.cxx:924
 AliHLTHOMERManager.cxx:925
 AliHLTHOMERManager.cxx:926
 AliHLTHOMERManager.cxx:927
 AliHLTHOMERManager.cxx:928
 AliHLTHOMERManager.cxx:929
 AliHLTHOMERManager.cxx:930
 AliHLTHOMERManager.cxx:931
 AliHLTHOMERManager.cxx:932
 AliHLTHOMERManager.cxx:933
 AliHLTHOMERManager.cxx:934
 AliHLTHOMERManager.cxx:935
 AliHLTHOMERManager.cxx:936
 AliHLTHOMERManager.cxx:937
 AliHLTHOMERManager.cxx:938
 AliHLTHOMERManager.cxx:939
 AliHLTHOMERManager.cxx:940
 AliHLTHOMERManager.cxx:941
 AliHLTHOMERManager.cxx:942
 AliHLTHOMERManager.cxx:943
 AliHLTHOMERManager.cxx:944
 AliHLTHOMERManager.cxx:945
 AliHLTHOMERManager.cxx:946
 AliHLTHOMERManager.cxx:947
 AliHLTHOMERManager.cxx:948
 AliHLTHOMERManager.cxx:949
 AliHLTHOMERManager.cxx:950
 AliHLTHOMERManager.cxx:951
 AliHLTHOMERManager.cxx:952
 AliHLTHOMERManager.cxx:953
 AliHLTHOMERManager.cxx:954
 AliHLTHOMERManager.cxx:955
 AliHLTHOMERManager.cxx:956
 AliHLTHOMERManager.cxx:957
 AliHLTHOMERManager.cxx:958
 AliHLTHOMERManager.cxx:959
 AliHLTHOMERManager.cxx:960
 AliHLTHOMERManager.cxx:961
 AliHLTHOMERManager.cxx:962
 AliHLTHOMERManager.cxx:963
 AliHLTHOMERManager.cxx:964
 AliHLTHOMERManager.cxx:965
 AliHLTHOMERManager.cxx:966
 AliHLTHOMERManager.cxx:967
 AliHLTHOMERManager.cxx:968
 AliHLTHOMERManager.cxx:969
 AliHLTHOMERManager.cxx:970
 AliHLTHOMERManager.cxx:971
 AliHLTHOMERManager.cxx:972
 AliHLTHOMERManager.cxx:973
 AliHLTHOMERManager.cxx:974
 AliHLTHOMERManager.cxx:975
 AliHLTHOMERManager.cxx:976
 AliHLTHOMERManager.cxx:977
 AliHLTHOMERManager.cxx:978
 AliHLTHOMERManager.cxx:979
 AliHLTHOMERManager.cxx:980
 AliHLTHOMERManager.cxx:981
 AliHLTHOMERManager.cxx:982
 AliHLTHOMERManager.cxx:983
 AliHLTHOMERManager.cxx:984
 AliHLTHOMERManager.cxx:985
 AliHLTHOMERManager.cxx:986
 AliHLTHOMERManager.cxx:987
 AliHLTHOMERManager.cxx:988
 AliHLTHOMERManager.cxx:989
 AliHLTHOMERManager.cxx:990
 AliHLTHOMERManager.cxx:991
 AliHLTHOMERManager.cxx:992
 AliHLTHOMERManager.cxx:993
 AliHLTHOMERManager.cxx:994
 AliHLTHOMERManager.cxx:995
 AliHLTHOMERManager.cxx:996
 AliHLTHOMERManager.cxx:997
 AliHLTHOMERManager.cxx:998
 AliHLTHOMERManager.cxx:999
 AliHLTHOMERManager.cxx:1000
 AliHLTHOMERManager.cxx:1001
 AliHLTHOMERManager.cxx:1002
 AliHLTHOMERManager.cxx:1003
 AliHLTHOMERManager.cxx:1004
 AliHLTHOMERManager.cxx:1005
 AliHLTHOMERManager.cxx:1006
 AliHLTHOMERManager.cxx:1007
 AliHLTHOMERManager.cxx:1008
 AliHLTHOMERManager.cxx:1009
 AliHLTHOMERManager.cxx:1010
 AliHLTHOMERManager.cxx:1011
 AliHLTHOMERManager.cxx:1012
 AliHLTHOMERManager.cxx:1013
 AliHLTHOMERManager.cxx:1014
 AliHLTHOMERManager.cxx:1015
 AliHLTHOMERManager.cxx:1016
 AliHLTHOMERManager.cxx:1017
 AliHLTHOMERManager.cxx:1018
 AliHLTHOMERManager.cxx:1019
 AliHLTHOMERManager.cxx:1020
 AliHLTHOMERManager.cxx:1021
 AliHLTHOMERManager.cxx:1022
 AliHLTHOMERManager.cxx:1023
 AliHLTHOMERManager.cxx:1024
 AliHLTHOMERManager.cxx:1025
 AliHLTHOMERManager.cxx:1026
 AliHLTHOMERManager.cxx:1027
 AliHLTHOMERManager.cxx:1028
 AliHLTHOMERManager.cxx:1029
 AliHLTHOMERManager.cxx:1030
 AliHLTHOMERManager.cxx:1031
 AliHLTHOMERManager.cxx:1032
 AliHLTHOMERManager.cxx:1033
 AliHLTHOMERManager.cxx:1034
 AliHLTHOMERManager.cxx:1035
 AliHLTHOMERManager.cxx:1036
 AliHLTHOMERManager.cxx:1037
 AliHLTHOMERManager.cxx:1038
 AliHLTHOMERManager.cxx:1039
 AliHLTHOMERManager.cxx:1040
 AliHLTHOMERManager.cxx:1041
 AliHLTHOMERManager.cxx:1042
 AliHLTHOMERManager.cxx:1043
 AliHLTHOMERManager.cxx:1044
 AliHLTHOMERManager.cxx:1045
 AliHLTHOMERManager.cxx:1046
 AliHLTHOMERManager.cxx:1047
 AliHLTHOMERManager.cxx:1048
 AliHLTHOMERManager.cxx:1049
 AliHLTHOMERManager.cxx:1050
 AliHLTHOMERManager.cxx:1051
 AliHLTHOMERManager.cxx:1052
 AliHLTHOMERManager.cxx:1053
 AliHLTHOMERManager.cxx:1054
 AliHLTHOMERManager.cxx:1055
 AliHLTHOMERManager.cxx:1056
 AliHLTHOMERManager.cxx:1057
 AliHLTHOMERManager.cxx:1058
 AliHLTHOMERManager.cxx:1059
 AliHLTHOMERManager.cxx:1060
 AliHLTHOMERManager.cxx:1061
 AliHLTHOMERManager.cxx:1062
 AliHLTHOMERManager.cxx:1063