CbmRoot
Loading...
Searching...
No Matches
CbmMustTube.cxx
Go to the documentation of this file.
1
/* Copyright (C) 2025 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2
SPDX-License-Identifier: GPL-3.0-only
3
Authors: Radoslaw Karabowicz [committer] */
4
6
// CbmMustTube header file
7
//
8
// Copied from PndFtsTube
9
//
10
// authors: Radoslaw Karabowicz, GSI, 2024
12
13
#include "
CbmMustTube.h
"
14
15
#include "
CbmMustAddress.h
"
16
17
CbmMustTube::CbmMustTube
() {}
18
19
CbmMustTube::CbmMustTube
(
CbmMustTube
& tube)
20
: TObject(tube)
21
,
fTubeIndex
(tube.
GetTubeIndex
())
22
,
fCenPosition
(tube.
GetPosition
())
23
,
fRotationMatrix
(TMatrixT<double>(3, 3))
24
,
fRadIn
(tube.
GetRadIn
())
25
,
fRadOut
(tube.
GetRadOut
())
26
,
fHalfLength
(tube.
GetHalfLength
())
27
{
28
fRotationMatrix
.ResizeTo(3, 3);
29
fRotationMatrix
= tube.
GetRotationMatrix
();
30
}
31
32
CbmMustTube::CbmMustTube
(uint32_t address,
int
tubeIndex, Double_t
x
, Double_t
y
, Double_t z, Double_t r11,
33
Double_t r12, Double_t r13, Double_t r21, Double_t r22, Double_t r23, Double_t r31,
34
Double_t r32, Double_t r33, Double_t radin, Double_t radout, Double_t hl)
35
:
fAddress
(address)
36
,
fTubeIndex
(tubeIndex)
37
,
fCenPosition
(TVector3(
x
,
y
, z))
38
,
fRotationMatrix
(TMatrixT<double>(3, 3))
39
,
fRadIn
(radin)
40
,
fRadOut
(radout)
41
,
fHalfLength
(hl)
42
{
43
44
fRotationMatrix
[0][0] = r11;
45
fRotationMatrix
[0][1] = r12;
46
fRotationMatrix
[0][2] = r13;
47
48
fRotationMatrix
[1][0] = r21;
49
fRotationMatrix
[1][1] = r22;
50
fRotationMatrix
[1][2] = r23;
51
52
fRotationMatrix
[2][0] = r31;
53
fRotationMatrix
[2][1] = r32;
54
fRotationMatrix
[2][2] = r33;
55
}
56
57
CbmMustTube::~CbmMustTube
() {}
58
59
int
CbmMustTube::CompareTubeIndex
(
const
CbmMustTube
* compTube)
const
60
{
61
if
(
CbmMustAddress::GetElementAddress
(compTube->
GetAddress
(),
kMustModule
)
62
==
CbmMustAddress::GetElementAddress
(this->GetAddress(),
kMustModule
)) {
63
if
(this->
GetTubeIndex
() == compTube->
GetTubeIndex
())
return
0;
64
if
(this->
GetTubeIndex
() > compTube->
GetTubeIndex
())
return
1;
65
return
-1;
66
}
67
return
-2;
68
}
CbmMustAddress.h
kMustModule
@ kMustModule
Module.
Definition
CbmMustAddress.h:26
CbmMustTube.h
y
Double_t y
Definition
CbmMvdSensorDigiToHitTask.cxx:64
x
Double_t x
Definition
CbmMvdSensorDigiToHitTask.cxx:64
CbmMustAddress::GetElementAddress
static int32_t GetElementAddress(int32_t address, int32_t level)
Definition
CbmMustAddress.h:100
CbmMustTube::fRadIn
Double_t fRadIn
Definition
CbmMustTube.h:63
CbmMustTube::CompareTubeIndex
int CompareTubeIndex(const CbmMustTube *compTube) const
Definition
CbmMustTube.cxx:59
CbmMustTube::GetRotationMatrix
TMatrixT< Double_t > GetRotationMatrix() const
Definition
CbmMustTube.h:37
CbmMustTube::fHalfLength
Double_t fHalfLength
Definition
CbmMustTube.h:65
CbmMustTube::fRadOut
Double_t fRadOut
Definition
CbmMustTube.h:64
CbmMustTube::GetPosition
TVector3 GetPosition() const
Definition
CbmMustTube.h:36
CbmMustTube::fCenPosition
TVector3 fCenPosition
Definition
CbmMustTube.h:61
CbmMustTube::CbmMustTube
CbmMustTube()
Definition
CbmMustTube.cxx:17
CbmMustTube::GetRadIn
Double_t GetRadIn() const
Definition
CbmMustTube.h:38
CbmMustTube::GetAddress
uint32_t GetAddress() const
Definition
CbmMustTube.h:34
CbmMustTube::fTubeIndex
int fTubeIndex
Definition
CbmMustTube.h:60
CbmMustTube::GetHalfLength
Double_t GetHalfLength() const
Definition
CbmMustTube.h:40
CbmMustTube::fRotationMatrix
TMatrixT< double > fRotationMatrix
Definition
CbmMustTube.h:62
CbmMustTube::~CbmMustTube
~CbmMustTube()
Definition
CbmMustTube.cxx:57
CbmMustTube::GetTubeIndex
int GetTubeIndex() const
Definition
CbmMustTube.h:35
CbmMustTube::GetRadOut
Double_t GetRadOut() const
Definition
CbmMustTube.h:39
CbmMustTube::fAddress
uint32_t fAddress
Definition
CbmMustTube.h:59
core
detectors
must
CbmMustTube.cxx
Generated on Fri Jan 30 2026 23:05:23 for CbmRoot by
1.13.2