Logo ROOT   6.21/01
Reference Guide
REvePathMark.hxx
Go to the documentation of this file.
1 // @(#)root/eve7:$Id$
2 // Author: Matevz Tadel 2010
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2019, 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 ROOT7_REvePathMark
13 #define ROOT7_REvePathMark
14 
15 #include <ROOT/REveVector.hxx>
16 
17 namespace ROOT {
18 namespace Experimental {
19 
20 //==============================================================================
21 // REvePathMark
22 //==============================================================================
23 
24 template <typename TT>
26 public:
28 
29  EType_e fType; // Mark-type.
30  REveVectorT<TT> fV; // Vertex.
31  REveVectorT<TT> fP; // Momentum.
32  REveVectorT<TT> fE; // Extra, meaning depends on fType.
33  TT fTime; // Time.
34 
36 
37  REvePathMarkT(EType_e type, const REveVectorT<TT> &v, TT time = 0) : fType(type), fV(v), fP(), fE(), fTime(time) {}
38 
39  REvePathMarkT(EType_e type, const REveVectorT<TT> &v, const REveVectorT<TT> &p, TT time = 0)
40  : fType(type), fV(v), fP(p), fE(), fTime(time)
41  {
42  }
43 
45  TT time = 0)
46  : fType(type), fV(v), fP(p), fE(e), fTime(time)
47  {
48  }
49 
50  template <typename OO>
52  : fType((EType_e)pm.fType), fV(pm.fV), fP(pm.fP), fE(pm.fE), fTime(pm.fTime)
53  {
54  }
55 
56  const char *TypeName();
57 };
58 
62 
63 } // namespace Experimental
64 } // namespace ROOT
65 
66 #endif
REvePathMarkT< Float_t > REvePathMarkF
const char * TypeName()
Return the name of path-mark type.
Returns the available number of logical cores.
Definition: StringConv.hxx:21
REvePathMarkT< Float_t > REvePathMark
REvePathMarkT< Double_t > REvePathMarkD
REvePathMarkT(EType_e type, const REveVectorT< TT > &v, TT time=0)
REvePathMarkT(EType_e type, const REveVectorT< TT > &v, const REveVectorT< TT > &p, const REveVectorT< TT > &e, TT time=0)
Special-point on track:
REvePathMarkT(EType_e type=kReference)
REvePathMarkT(EType_e type, const REveVectorT< TT > &v, const REveVectorT< TT > &p, TT time=0)
REvePathMarkT(const REvePathMarkT< OO > &pm)
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
REveVectorT A three-vector template without TObject inheritance and virtual functions.
Definition: REveVector.hxx:29