KaliVeda
Toolkit for HIC analysis
KVKinematicalFrame.h
1 
4 #ifndef __KVKINEMATICALFRAME_H
5 #define __KVKINEMATICALFRAME_H
6 
7 #include "TNamed.h"
8 #include "KVParticle.h"
9 #include "KVFrameTransform.h"
10 
22 class KVKinematicalFrame : public TNamed {
24  std::unique_ptr<KVParticle> fParticle;
25 
26 public:
27  KVKinematicalFrame(const Char_t* name, const KVParticle* original, const KVFrameTransform& trans);
29  KVKinematicalFrame(const KVFrameTransform& trans, const KVParticle* original);
32  virtual ~KVKinematicalFrame() {}
33 
35  {
36  return fParticle.get();
37  }
38  const KVParticle* operator->() const
39  {
40  return (const KVParticle*)GetParticle();
41  }
42  void ReapplyTransform(const KVParticle* original);
43  void ApplyTransform(const KVParticle* original, const KVFrameTransform& trans);
44 
46  {
47  return fTransform;
48  }
50  {
51  fTransform = f;
52  }
53 
54  ClassDef(KVKinematicalFrame, 0) //Handle representation of a particle in different kinematical frames
55 };
56 
57 #endif
#define f(i)
char Char_t
#define ClassDef(name, id)
Utility class for kinematical transformations of KVParticle class.
Kinematical representation of a particle in different reference frames.
std::unique_ptr< KVParticle > fParticle
kinematically transformed particle
KVParticle * GetParticle() const
KVKinematicalFrame & operator=(const KVKinematicalFrame &)
Assignment operator required for rootcint (not rootcling)
KVFrameTransform fTransform
kinematical transform wrt 'parent' frame
void ReapplyTransform(const KVParticle *original)
Apply stored kinematical transformation to the particle.
KVKinematicalFrame(const Char_t *name, const KVParticle *original, const KVFrameTransform &trans)
const KVParticle * operator->() const
void ApplyTransform(const KVParticle *original, const KVFrameTransform &trans)
Apply new kinematical transformation to the particle and update all subframes.
const KVFrameTransform & GetTransform() const
void SetTransform(const KVFrameTransform &f)
Base class for relativistic kinematics of massive particles.
Definition: KVParticle.h:396