Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
RawTower_Prototype3.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file RawTower_Prototype3.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef PROTOTYPE3_RAWTOWERPROTOTYPE3_H
4
#define PROTOTYPE3_RAWTOWERPROTOTYPE3_H
5
6
#include "
PROTOTYPE3_FEM.h
"
7
8
#include <calobase/RawTower.h>
9
10
#include <calobase/RawTowerDefs.h>
11
12
#include <iostream>
// for cout, ostream
13
14
class
RawTower_Prototype3
:
public
RawTower
15
{
16
public
:
17
RawTower_Prototype3
();
18
RawTower_Prototype3
(
RawTowerDefs::keytype
id
);
19
RawTower_Prototype3
(
const
unsigned
int
icol,
const
unsigned
int
irow);
20
RawTower_Prototype3
(
const
RawTowerDefs::CalorimeterId
caloid,
21
const
unsigned
int
ieta,
const
unsigned
int
iphi);
22
23
virtual
~RawTower_Prototype3
() {}
24
25
void
Reset
()
override
;
26
int
isValid
()
const override
;
27
void
identify
(std::ostream &
os
= std::cout)
const override
;
28
29
void
set_id
(
RawTowerDefs::keytype
id
)
override
{
towerid
=
id
; }
30
RawTowerDefs::keytype
get_id
()
const override
{
return
towerid
; }
31
int
get_bineta
()
const override
{
return
RawTowerDefs::decode_index1
(
towerid
); }
32
int
get_binphi
()
const override
{
return
RawTowerDefs::decode_index2
(
towerid
); }
33
int
get_column
()
const override
{
return
RawTowerDefs::decode_index1
(
towerid
); }
34
int
get_row
()
const override
{
return
RawTowerDefs::decode_index2
(
towerid
); }
35
double
get_energy
()
const override
{
return
energy
; }
36
void
set_energy
(
const
double
e
)
override
{
energy
=
e
; }
37
float
get_time
()
const override
{
return
time
; }
38
void
set_time
(
const
float
t
)
override
{
time
=
t
; }
39
40
//---Raw data
41
// access------------------------------------------------------------
42
43
enum
44
{
45
NSAMPLES
=
PROTOTYPE3_FEM::NSAMPLES
46
};
47
typedef
float
signal_type
;
48
49
void
set_signal_samples
(
int
i
,
signal_type
sig);
50
signal_type
get_signal_samples
(
int
i
)
const
;
51
void
set_HBD_channel_number
(
int
i
) {
HBD_channel
=
i
; }
52
int
get_HBD_channel_number
()
const
{
return
HBD_channel
; }
53
54
//---Fits------------------------------------------------------------
55
56
double
get_energy_power_law_exp
(
int
verbosity
= 0);
57
58
protected
:
59
RawTowerDefs::keytype
towerid
;
60
63
double
energy
;
66
float
time
;
67
68
// Signal samples from DATA
69
signal_type
signal_samples
[
NSAMPLES
];
// Low Gain
70
int
HBD_channel
;
71
72
ClassDefOverride(
RawTower_Prototype3
, 3)
73
};
74
75
#endif
prototype
blob
master
offline
packages
Prototype3
RawTower_Prototype3.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:29
using
1.8.2 with
sPHENIX GitHub integration