00001 // @(#)root/eve:$Id: TEvePathMark.cxx 32934 2010-04-09 19:55:19Z matevz $ 00002 // Author: Matevz Tadel 2010 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #include "TEvePathMark.h" 00013 00014 //============================================================================== 00015 // TEvePathMark 00016 //============================================================================== 00017 00018 //______________________________________________________________________________ 00019 // 00020 // Special-point on track: 00021 // kDaughter - daughter creation; fP is momentum of the daughter, it is subtracted from 00022 // momentum of the track 00023 // kReference - position/momentum reference 00024 // kDecay - decay point, fP not used 00025 // kCluster2D - measurement with large error in one direction (like strip detectors): 00026 // fP - normal to detector plane, 00027 // fE - large error direction, must be normalized. 00028 // Track is propagated to plane and correction in fE direction is discarded. 00029 00030 ClassImp(TEvePathMarkT<Float_t>); 00031 ClassImp(TEvePathMarkT<Double_t>); 00032 00033 //______________________________________________________________________________ 00034 template<typename TT> const char* TEvePathMarkT<TT>::TypeName() 00035 { 00036 // Return the name of path-mark type. 00037 00038 switch (fType) 00039 { 00040 case kDaughter: return "Daughter"; 00041 case kReference: return "Reference"; 00042 case kDecay: return "Decay"; 00043 case kCluster2D: return "Cluster2D"; 00044 default: return "Unknown"; 00045 } 00046 } 00047 00048 template class TEvePathMarkT<Float_t>; 00049 template class TEvePathMarkT<Double_t>;