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

///////////////////////////////////////////////////////////////////////////////
//
// ESD format for TRD tracklet from FEE used for triggering
//
// Author: Jochen Klein <jochen.klein@cern.ch>
//
///////////////////////////////////////////////////////////////////////////////

#include "AliESDTrdTracklet.h"

ClassImp(AliESDTrdTracklet)

AliESDTrdTracklet::AliESDTrdTracklet() :
  AliVTrdTracklet(),
  fHCId(-1),
  fTrackletWord(0),
  fLabel(-1)
{
  // default ctor

}

AliESDTrdTracklet::AliESDTrdTracklet(UInt_t trackletWord, Short_t hcid, Int_t label) :
  AliVTrdTracklet(),
  fHCId(hcid),
  fTrackletWord(trackletWord),
  fLabel(label)
{
  // ctor with given tracklet word (and label)
}

AliESDTrdTracklet::~AliESDTrdTracklet()
{
  // dtor
}

AliESDTrdTracklet::AliESDTrdTracklet(const AliESDTrdTracklet &trkl) :
  AliVTrdTracklet(trkl),
  fHCId(trkl.fHCId),
  fTrackletWord(trkl.fTrackletWord),
  fLabel(trkl.fLabel)
{
  // copy ctor

}

AliESDTrdTracklet& AliESDTrdTracklet::operator=(const AliESDTrdTracklet &trkl)
{
  // assignment operator

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

  AliVTrdTracklet::operator=(trkl);
  fHCId = trkl.fHCId;
  fTrackletWord = trkl.fTrackletWord;
  fLabel = trkl.fLabel;

  return *this;
}

Int_t AliESDTrdTracklet::GetBinY() const
{
  // returns (signed) value of Y

  if (fTrackletWord & 0x1000) {
    return -((~(fTrackletWord-1)) & 0x1fff);
  }
  else {
    return (fTrackletWord & 0x1fff);
  }
}

Int_t AliESDTrdTracklet::GetBinDy() const
{
  // returns (signed) value of the deflection length

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