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

// $Id$

#include "AliMUONDigitStoreV2S.h"

//-----------------------------------------------------------------------------
/// \class AliMUONDigitStoreV2S
///
/// Concrete implementation of AliMUONVDigitStore for simulated digits, using
/// the AliMUONDigitStoreVImpl base implementation
/// 
/// \author Laurent Aphecetche
//-----------------------------------------------------------------------------


#include "AliMUONDigit.h"
#include <TClonesArray.h>

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

//_____________________________________________________________________________
AliMUONDigitStoreV2S::AliMUONDigitStoreV2S()
: AliMUONDigitStoreVImpl("AliMUONDigit")
{
  /// ctor
}

//_____________________________________________________________________________
AliMUONDigitStoreV2S::~AliMUONDigitStoreV2S()
{
  /// dtor
}

//_____________________________________________________________________________
AliMUONVDigit*
AliMUONDigitStoreV2S::AddConcreteDigit(TClonesArray& a, 
                                       const AliMUONVDigit& digit,
                                       Int_t index)
{
  /// add a digit to this store  
  
  if ( digit.IsA() != AliMUONDigit::Class() ) 
  {
    AliMUONDigit d(digit.DetElemId(),digit.ManuId(),digit.ManuChannel(),digit.Cathode());
    d.SetCharge(digit.Charge());
    d.SetADC(digit.ADC());
    d.SetPadXY(digit.PadX(),digit.PadY());
    d.ChargeInFC();
    d.Converted();
    return new(a[index]) AliMUONDigit(d);
  }

  return new(a[index]) AliMUONDigit(static_cast<const AliMUONDigit&>(digit));
}

//_____________________________________________________________________________
AliMUONVDigitStore* 
AliMUONDigitStoreV2S::Create() const
{
  /// create an empty store
  return new AliMUONDigitStoreV2S;
}

//_____________________________________________________________________________
AliMUONVDigit* 
AliMUONDigitStoreV2S::CreateDigit(Int_t detElemId, Int_t manuId,                                 
                                  Int_t manuChannel, Int_t cathode) const
{
  /// create a digit, compatible with this store
  return new AliMUONDigit(detElemId,manuId,manuChannel,cathode);
}


 AliMUONDigitStoreV2S.cxx:1
 AliMUONDigitStoreV2S.cxx:2
 AliMUONDigitStoreV2S.cxx:3
 AliMUONDigitStoreV2S.cxx:4
 AliMUONDigitStoreV2S.cxx:5
 AliMUONDigitStoreV2S.cxx:6
 AliMUONDigitStoreV2S.cxx:7
 AliMUONDigitStoreV2S.cxx:8
 AliMUONDigitStoreV2S.cxx:9
 AliMUONDigitStoreV2S.cxx:10
 AliMUONDigitStoreV2S.cxx:11
 AliMUONDigitStoreV2S.cxx:12
 AliMUONDigitStoreV2S.cxx:13
 AliMUONDigitStoreV2S.cxx:14
 AliMUONDigitStoreV2S.cxx:15
 AliMUONDigitStoreV2S.cxx:16
 AliMUONDigitStoreV2S.cxx:17
 AliMUONDigitStoreV2S.cxx:18
 AliMUONDigitStoreV2S.cxx:19
 AliMUONDigitStoreV2S.cxx:20
 AliMUONDigitStoreV2S.cxx:21
 AliMUONDigitStoreV2S.cxx:22
 AliMUONDigitStoreV2S.cxx:23
 AliMUONDigitStoreV2S.cxx:24
 AliMUONDigitStoreV2S.cxx:25
 AliMUONDigitStoreV2S.cxx:26
 AliMUONDigitStoreV2S.cxx:27
 AliMUONDigitStoreV2S.cxx:28
 AliMUONDigitStoreV2S.cxx:29
 AliMUONDigitStoreV2S.cxx:30
 AliMUONDigitStoreV2S.cxx:31
 AliMUONDigitStoreV2S.cxx:32
 AliMUONDigitStoreV2S.cxx:33
 AliMUONDigitStoreV2S.cxx:34
 AliMUONDigitStoreV2S.cxx:35
 AliMUONDigitStoreV2S.cxx:36
 AliMUONDigitStoreV2S.cxx:37
 AliMUONDigitStoreV2S.cxx:38
 AliMUONDigitStoreV2S.cxx:39
 AliMUONDigitStoreV2S.cxx:40
 AliMUONDigitStoreV2S.cxx:41
 AliMUONDigitStoreV2S.cxx:42
 AliMUONDigitStoreV2S.cxx:43
 AliMUONDigitStoreV2S.cxx:44
 AliMUONDigitStoreV2S.cxx:45
 AliMUONDigitStoreV2S.cxx:46
 AliMUONDigitStoreV2S.cxx:47
 AliMUONDigitStoreV2S.cxx:48
 AliMUONDigitStoreV2S.cxx:49
 AliMUONDigitStoreV2S.cxx:50
 AliMUONDigitStoreV2S.cxx:51
 AliMUONDigitStoreV2S.cxx:52
 AliMUONDigitStoreV2S.cxx:53
 AliMUONDigitStoreV2S.cxx:54
 AliMUONDigitStoreV2S.cxx:55
 AliMUONDigitStoreV2S.cxx:56
 AliMUONDigitStoreV2S.cxx:57
 AliMUONDigitStoreV2S.cxx:58
 AliMUONDigitStoreV2S.cxx:59
 AliMUONDigitStoreV2S.cxx:60
 AliMUONDigitStoreV2S.cxx:61
 AliMUONDigitStoreV2S.cxx:62
 AliMUONDigitStoreV2S.cxx:63
 AliMUONDigitStoreV2S.cxx:64
 AliMUONDigitStoreV2S.cxx:65
 AliMUONDigitStoreV2S.cxx:66
 AliMUONDigitStoreV2S.cxx:67
 AliMUONDigitStoreV2S.cxx:68
 AliMUONDigitStoreV2S.cxx:69
 AliMUONDigitStoreV2S.cxx:70
 AliMUONDigitStoreV2S.cxx:71
 AliMUONDigitStoreV2S.cxx:72
 AliMUONDigitStoreV2S.cxx:73
 AliMUONDigitStoreV2S.cxx:74
 AliMUONDigitStoreV2S.cxx:75
 AliMUONDigitStoreV2S.cxx:76
 AliMUONDigitStoreV2S.cxx:77
 AliMUONDigitStoreV2S.cxx:78
 AliMUONDigitStoreV2S.cxx:79
 AliMUONDigitStoreV2S.cxx:80
 AliMUONDigitStoreV2S.cxx:81
 AliMUONDigitStoreV2S.cxx:82
 AliMUONDigitStoreV2S.cxx:83
 AliMUONDigitStoreV2S.cxx:84
 AliMUONDigitStoreV2S.cxx:85
 AliMUONDigitStoreV2S.cxx:86
 AliMUONDigitStoreV2S.cxx:87
 AliMUONDigitStoreV2S.cxx:88
 AliMUONDigitStoreV2S.cxx:89