AMSDST
myPoint.cxx
Go to the documentation of this file.
1 // Authors: M.Duranti - INFN di Perugia
2 #include "myPoint.h"
3 #include "debug.h"
4 #include "TClass.h"
5 using namespace std;
6 
7 //--------------------------------------------------------------------
8 
11 
12 //--------------------------------------------------------------------
13 
14 myPoint::myPoint(float x, float y, float z, bool ignstream){
15 #ifdef PDEBUG
16  printf("In myPoint::myPoint\n");
17 #endif
18  PRINTDEBUG;
19  if (ignstream) myPoint::Class()->IgnoreTObjectStreamer();
20  PRINTDEBUG;
21  _x=x;
22  _y=y;
23  _z=z;
24 }
25 
26 myPoint::myPoint(const myPoint& pt, bool ignstream){
27  if (ignstream) myPoint::Class()->IgnoreTObjectStreamer();
28  PRINTDEBUG;
29  _x=pt.x();
30  _y=pt.y();
31  _z=pt.z();
32 }
33 
35 #ifdef PDEBUG
36  printf("In myPoint::~myPoint\n");
37 #endif
38  PRINTDEBUG;
39 }
40 
41 #ifdef _WITHGBATCH_
42 myPoint::myPoint(const AMSPoint& apt, bool ignstream){
43  if (ignstream) myPoint::Class()->IgnoreTObjectStreamer();
44  PRINTDEBUG;
45  _x=apt.x();
46  _y=apt.y();
47  _z=apt.z();
48 }
49 
50 void myPoint::CopyAMSPoint(const AMSPoint& apt){
51  _x=apt.x();
52  _y=apt.y();
53  _z=apt.z();
54  return;
55 }
56 #endif
57 
58 #ifdef _WITHGBATCH_
59 AMSPoint myPoint::GetAMSPoint() const{
60  AMSPoint apt(_x, _y, _z);
61  return apt;
62 }
63 #endif
64 
65 void myPoint::setp(float x, float y, float z){
66  _x=x;
67  _y=y;
68  _z=z;
69  return;
70 }
71 
72 void myPoint::Print(Option_t* option) const{
73  printf("point: %f %f %f\n", _x, _y, _z);
74  return;
75 }
76 
77 myDir::myDir(float theta, float phi, bool ignstream){
78 #ifdef PDEBUG
79  printf("In myDir::myDir\n");
80 #endif
81  PRINTDEBUG;
82  if (ignstream) myDir::Class()->IgnoreTObjectStreamer();
83  PRINTDEBUG;
84  _theta=theta;
85  _phi=phi;
86 #ifndef _WITHGBATCH_
87  // if (!(fabs(theta-PI/2.0)<0.0000001 && fabs(phi-0)<0.0000001)) {//otherwise is the default constructor AND x,y,z=0,0,0 is correct
88  // printf("myDir was compiled without the gabtch support so (x,y,z) will be setted to (0,0,0)\n");
89  // }
90  _x=0;
91  _y=0;
92  _y=0;
93 #else
94  AMSDir adir(_theta, _phi);
95  _x=adir.x();
96  _y=adir.y();
97  _z=adir.z();
98 #endif
99 }
100 
101 myDir::myDir(const myDir& dir, bool ignstream){
102  if (ignstream) myDir::Class()->IgnoreTObjectStreamer();
103  PRINTDEBUG;
104  _theta=dir.theta();
105  _phi=dir.phi();
106  _x=dir.x();
107  _y=dir.y();
108  _z=dir.z();
109 }
110 
112 #ifdef PDEBUG
113  printf("In myDir::~myDir\n");
114 #endif
115  PRINTDEBUG;
116 }
117 
118 #ifdef _WITHGBATCH_
119 myDir::myDir(const myPoint& pt, bool ignstream){
120  if (ignstream) myDir::Class()->IgnoreTObjectStreamer();
121  PRINTDEBUG;
122  _x=pt.x();
123  _y=pt.y();
124  _z=pt.z();
125  AMSPoint apt = pt.GetAMSPoint();
126  AMSDir adir(apt);
127  _theta = adir.gettheta();
128  _phi = adir.getphi();
129 }
130 
131 myDir::myDir(const AMSPoint& apt, bool ignstream){
132  if (ignstream) myDir::Class()->IgnoreTObjectStreamer();
133  PRINTDEBUG;
134  _x=apt.x();
135  _y=apt.y();
136  _z=apt.z();
137  AMSDir adir(apt);
138  _theta = adir.gettheta();
139  _phi = adir.getphi();
140 }
141 
142 myDir::myDir(const AMSDir& adir, bool ignstream){
143  if (ignstream) myDir::Class()->IgnoreTObjectStreamer();
144  PRINTDEBUG;
145  _theta = adir.gettheta();
146  _phi = adir.getphi();
147  _x=adir.x();
148  _y=adir.y();
149  _z=adir.z();
150 }
151 
152 void myDir::CopyAMSPoint(const AMSPoint& apt){
153  AMSDir adir(apt);
154  _theta = adir.gettheta();
155  _phi = adir.getphi();
156  _x=adir.x();
157  _y=adir.y();
158  _z=adir.z();
159  return;
160 }
161 
162 void myDir::CopyAMSDir(const AMSDir& adir){
163  _theta = adir.gettheta();
164  _phi = adir.getphi();
165  _x=adir.x();
166  _y=adir.y();
167  _z=adir.z();
168  return;
169 }
170 #endif
171 
172 #ifdef _WITHGBATCH_
173 AMSDir myDir::GetAMSDir() const{
174  AMSDir adir(_theta, _phi);
175  return adir;
176 }
177 #endif
178 
179 void myDir::setd(float theta, float phi){
180  _theta=theta;
181  _phi=phi;
182 #ifndef _WITHGBATCH_
183  // printf("myDir was compiled without the gabtch support so (x,y,z) will be setted to (0,0,0)\n");
184  _x=0;
185  _y=0;
186  _y=0;
187 #else
188  AMSDir adir(_theta, _phi);
189  _x=adir.x();
190  _y=adir.y();
191  _z=adir.z();
192 #endif
193  return;
194 }