BmnRoot
Loading...
Searching...
No Matches
CbmStsSenzor.cxx
Go to the documentation of this file.
1
7#include "TGeoMatrix.h"
8#include "TGeoPhysicalNode.h"
9#include "CbmStsPoint.h"
10#include "CbmStsSenzor.h"
11#include "setup/CbmStsAddress.h"
14
15
16// ----- Constructor ---------------------------------------------------
18 : TNamed(),
19 fAddress(0),
20 fNode(NULL),
21 fType(NULL),
22 fModule(NULL)
23{
24}
25// -------------------------------------------------------------------------
26
27
28
29
30// ----- Process a CbmStsPoint ------------------------------------------
32
33 Double_t global[3];
34 Double_t local[3];
35
36 // --- Transform entry coordinates into local C.S.
37 global[0] = point->GetXIn();
38 global[1] = point->GetYIn();
39 global[2] = point->GetZIn();
40 fNode->GetMatrix()->MasterToLocal(global, local);
41 Double_t x1 = local[0];
42 Double_t y1 = local[1];
43
44 // --- Transform exit coordinates into local C.S.
45 global[0] = point->GetXOut();
46 global[1] = point->GetYOut();
47 global[2] = point->GetZOut();
48 fNode->GetMatrix()->MasterToLocal(global, local);
49 Double_t x2 = local[0];
50 Double_t y2 = local[1];
51
52 // Create SensorPoint
53 CbmStsSensorPoint* sPoint = new CbmStsSensorPoint(x1, y1, x2, y2,
54 point->GetEnergyLoss(),
55 point->GetTime());
56
57 // --- Call ProcessPoint method from sensor type
58 fType->ProcessPoint(sPoint, this);
59
60}
61// -------------------------------------------------------------------------
Double_t GetXIn() const
Definition CbmStsPoint.h:69
Double_t GetZOut() const
Definition CbmStsPoint.h:74
Double_t GetYOut() const
Definition CbmStsPoint.h:73
Double_t GetZIn() const
Definition CbmStsPoint.h:71
Double_t GetYIn() const
Definition CbmStsPoint.h:70
Double_t GetXOut() const
Definition CbmStsPoint.h:72
Container class for a local point in a STS sensor.
virtual void ProcessPoint(CbmStsSensorPoint *point, const CbmStsSenzor *sensor) const =0
void ProcessPoint(CbmStsPoint *point) const