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 "AliMUONRealDigit.h"

//-----------------------------------------------------------------------------
/// \class AliMUONRealDigit
///
/// Implementation of AliMUONVDigit for real digit.
/// 
/// This class should store the bare minimum in order to save disk space
///
/// \author Laurent Aphecetche
//-----------------------------------------------------------------------------

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

//_____________________________________________________________________________
AliMUONRealDigit::AliMUONRealDigit() 
  : AliMUONVDigit(),
  fCharge(0),
  fPadXY(0),
  fADC(0),
  fStatusMap(0)
{
      /// default ctor
}

//_____________________________________________________________________________
AliMUONRealDigit::AliMUONRealDigit(Int_t detElemId, Int_t manuId, 
                                   Int_t manuChannel, Int_t cathode)
: AliMUONVDigit(detElemId,manuId,manuChannel,cathode),
fCharge(0),
fPadXY(0),
fADC(0),
fStatusMap(0)
{
  /// normal ctor
}

//_____________________________________________________________________________
AliMUONRealDigit::~AliMUONRealDigit()
{
  /// empty ctor
}

//_____________________________________________________________________________
Bool_t
AliMUONRealDigit::MergeWith(const AliMUONVDigit& src)
{
  /// Merge with src.
  
  Bool_t check = ( src.DetElemId() == DetElemId() &&
                   src.PadX() == PadX() &&
                   src.PadY() == PadY() &&
                   src.Cathode() == Cathode() );
  if (!check)
  {
    return kFALSE;
  }
  
  AddCharge(src.Charge());
  return kTRUE;
}

//_____________________________________________________________________________
Int_t
AliMUONRealDigit::PadX() const
{
  /// Return (integer) position in x (within the detection element)
  return fPadXY & 0xFFFF;
}

//_____________________________________________________________________________
Int_t
AliMUONRealDigit::PadY() const
{
  /// Return (integer) position in y (within the detection element)
  return ( fPadXY & 0xFFFF0000 ) >> 16;
}

//_____________________________________________________________________________
void
AliMUONRealDigit::SetPadXY(Int_t padx, Int_t pady)
{
  /// Set the pad (integer) positions
  fPadXY = ( padx | (pady << 16) );
}

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