Logo ROOT   master
Reference Guide
TEvePathMark.h
Go to the documentation of this file.
1 // @(#)root/eve:$Id$
2 // Author: Matevz Tadel 2010
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TEvePathMark
13 #define ROOT_TEvePathMark
14 
15 #include <TEveVector.h>
16 
17 //==============================================================================
18 // TEvePathMark
19 //==============================================================================
20 
21 template <typename TT>
23 {
24 public:
26 
27  EType_e fType; // Mark-type.
28  TEveVectorT<TT> fV; // Vertex.
29  TEveVectorT<TT> fP; // Momentum.
30  TEveVectorT<TT> fE; // Extra, meaning depends on fType.
31  TT fTime; // Time.
32 
34  fType(type), fV(), fP(), fE(), fTime(0) {}
35 
36  TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, TT time=0) :
37  fType(type), fV(v), fP(), fE(), fTime(time) {}
38 
39  TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, const TEveVectorT<TT>& p, TT time=0) :
40  fType(type), fV(v), fP(p), fE(), fTime(time) {}
41 
42  TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, const TEveVectorT<TT>& p, const TEveVectorT<TT>& e, TT time=0) :
43  fType(type), fV(v), fP(p), fE(e), fTime(time) {}
44 
45  template <typename OO>
47  fType((EType_e)pm.fType), fV(pm.fV), fP(pm.fP), fE(pm.fE), fTime(pm.fTime) {}
48 
49  const char* TypeName();
50 
51  ClassDefNV(TEvePathMarkT, 1); // Template for a special point on a track: position/momentum reference, daughter creation or decay.
52 };
53 
57 
58 #endif
TEvePathMarkT(EType_e type, const TEveVectorT< TT > &v, const TEveVectorT< TT > &p, const TEveVectorT< TT > &e, TT time=0)
Definition: TEvePathMark.h:42
ClassDefNV(TEvePathMarkT, 1)
EType_e fType
Definition: TEvePathMark.h:27
TEveVectorT< TT > fP
Definition: TEvePathMark.h:29
TEvePathMarkT< Float_t > TEvePathMark
Definition: TEvePathMark.h:54
TEveVectorT< TT > fV
Definition: TEvePathMark.h:28
const char * TypeName()
Return the name of path-mark type.
Minimal, templated three-vector.
Definition: TEveVector.h:26
TEvePathMarkT< Double_t > TEvePathMarkD
Definition: TEvePathMark.h:56
TEvePathMarkT(EType_e type, const TEveVectorT< TT > &v, TT time=0)
Definition: TEvePathMark.h:36
TEvePathMarkT< Float_t > TEvePathMarkF
Definition: TEvePathMark.h:55
TEveVectorT< TT > fE
Definition: TEvePathMark.h:30
Special-point on track:
Definition: TEvePathMark.h:22
TEvePathMarkT(const TEvePathMarkT< OO > &pm)
Definition: TEvePathMark.h:46
TEvePathMarkT(EType_e type=kReference)
Definition: TEvePathMark.h:33
int type
Definition: TGX11.cxx:120
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Definition: TRolke.cxx:630
TEvePathMarkT(EType_e type, const TEveVectorT< TT > &v, const TEveVectorT< TT > &p, TT time=0)
Definition: TEvePathMark.h:39