Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
JetClass.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file JetClass.h
1 /*******************************************************************************
2  * Copyright (c) The JETSCAPE Collaboration, 2018
3  *
4  * Modular, task-based framework for simulating all aspects of heavy-ion collisions
5  *
6  * For the list of contributors see AUTHORS.
7  *
8  * Report issues at https://github.com/JETSCAPE/JETSCAPE/issues
9  *
10  * or via email to bugs.jetscape@gmail.com
11  *
12  * Distributed under the GNU General Public License 3.0 (GPLv3 or later).
13  * See COPYING for details.
14  ******************************************************************************/
15 
16 #ifndef JetClass_h
17 #define JetClass_h
18 
19 #include <stdio.h>
20 #include <math.h>
21 #include "JetScapeParticles.h"
22 #include "JetScapeConstants.h"
23 #include "FourVector.h"
24 #include "fjcore.hh"
25 
26 #include <vector>
27 #include <iostream>
28 #include <sstream>
29 #include <iomanip>
30 
31 using std::ostream;
32 
33 namespace Jetscape {
34 
35 // class Parton;
36 class Vertex;
37 class FourVector;
38 
39 /**************************************************************************************************/
40 
41 // JET CLASS
42 
43 /*************************************************************************************************/
44 
45 //dummy for now figure out after graph structure ...
46 
47 class Jet {
48  Jet(){};
49  ~Jet(){};
50 };
51 
52 /**************************************************************************************************/
53 
54 // VERTEX CLASS
55 
56 /*************************************************************************************************/
57 
58 class Vertex {
59 
60 public:
61  Vertex() { x_in_.Set(0, 0, 0, 0); }
62  Vertex(double x, double y, double z, double t) { x_in_.Set(x, y, z, t); }
64  virtual ~Vertex();
65 
67 
68  FourVector &x_in() { return (x_in_); }
69 
70  friend ostream &operator<<(ostream &output, Vertex &vertex) {
71  output << vertex.x_in().x() << " " << vertex.x_in().y() << " "
72  << vertex.x_in().z() << " " << vertex.x_in().t();
73  return output;
74  }
75 
76 protected:
77  FourVector x_in_; //location of the vertex
78  // parents and siblings from Graph structure later ...
79 };
80 
81 }; // namespace Jetscape
82 
83 #endif /* JetClass_h */