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

/// \class AliMpManuUID
///
/// Unique ID for manus
/// 
/// \author Laurent Aphecetche, Subatech

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

//_____________________________________________________________________________
AliMpManuUID::AliMpManuUID()
  : TObject()
{
    /// default ctor
}

//_____________________________________________________________________________
AliMpManuUID::AliMpManuUID(Int_t detElemId, Int_t manuId)
: TObject()
{
  /// normal ctor
  SetUniqueID(BuildUniqueID(detElemId,manuId));                            
}

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

//_____________________________________________________________________________
UInt_t 
AliMpManuUID::BuildUniqueID(Int_t detElemId, Int_t manuId)
{
  /// Build a unique id from (de,manu) pair
  
  return ( ( detElemId ) | ( manuId << 12 ) );
}

//_____________________________________________________________________________
Int_t AliMpManuUID::DetElemId(UInt_t uniqueID)
{
  /// Return detection element id part of the uniqueID
  return uniqueID & 0xFFF;
}

//_____________________________________________________________________________
Int_t AliMpManuUID::ManuId(UInt_t uniqueID)
{  
  /// Return manuId part of the uniqueID
  return ( uniqueID & 0xFFF000 ) >> 12;
}

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