PandaRoot
PndEmcWaveformData.h
Go to the documentation of this file.
1
//****************************************************************************
2
//* This file is part of PandaRoot. *
3
//* *
4
//* PandaRoot is distributed under the terms of the *
5
//* GNU General Public License (GPL) version 3, *
6
//* copied verbatim in the file "LICENSE". *
7
//* *
8
//* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9
//* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10
//* The authors are listed in the file "AUTHORS". *
11
//****************************************************************************
12
13
//#pragma once
14
#ifndef PNDEMCWAVEFORMDATA_H
15
#define PNDEMCWAVEFORMDATA_H
16
17
#include "FairTimeStamp.h"
18
#include "FairLink.h"
19
#include "
PndEmcAbsWaveformSimulator.h
"
20
21
#include "TRef.h"
22
#include "TObject.h"
23
24
#include <ostream>
25
#include <map>
26
27
class
PndEmcWaveform
;
28
34
class
PndEmcWaveformData
:
public
FairTimeStamp {
35
36
public
:
37
PndEmcWaveformData
();
38
PndEmcWaveformData
(Int_t detId,
PndEmcAbsWaveformSimulator
*wfSimulator);
39
40
virtual
~PndEmcWaveformData
(){};
41
42
virtual
bool
operator<
(
const
PndEmcWaveformData
&wfData)
const
;
43
friend
std::ostream &
operator<<
(std::ostream &out,
PndEmcWaveformData
&wfData);
44
virtual
PndEmcWaveformData
&
operator+=
(
const
PndEmcWaveformData
&toAdd);
45
46
virtual
bool
equal
(FairTimeStamp *data);
47
48
virtual
void
AddHit
(
const
FairLink &linkToHit, Double_t absEventTime, Double_t energy);
49
50
Int_t
GetDetectorId
() {
return
fDetectorId
; };
51
Int_t
GetNHits
() {
return
fHitMap
.size(); };
52
const
std::map<Double_t, Double_t> &
GetHitMap
() {
return
fHitMap
; };
53
PndEmcAbsWaveformSimulator
*
GetWaveformSimulator
() {
return
dynamic_cast<
PndEmcAbsWaveformSimulator
*
>
(
fWfSimulator
.GetObject()); };
54
Double_t
GetTimeOfLastSample
() {
return
fTimeOfLastSample
; };
55
void
GetHitParameter
(Int_t hitNo, Double_t &time, Double_t &energy);
56
57
void
SetWaveformSimulator
(
PndEmcAbsWaveformSimulator
*wfSimulator) {
fWfSimulator
.SetObject(wfSimulator); };
58
void
SetTimeOfLastSample
(Double_t time) {
fTimeOfLastSample
= time; };
59
60
protected
:
61
Int_t
fDetectorId
;
62
Double_t
fTimeOfLastSample
;
63
64
TRef
fWfSimulator
;
65
std::map<Double_t, Double_t>
fHitMap
;
66
67
ClassDef(
PndEmcWaveformData
, 1)
68
};
69
70
#endif
PndEmcWaveformData::GetDetectorId
Int_t GetDetectorId()
Definition:
PndEmcWaveformData.h:50
PndEmcWaveformData::SetTimeOfLastSample
void SetTimeOfLastSample(Double_t time)
Definition:
PndEmcWaveformData.h:58
PndEmcWaveformData::fWfSimulator
TRef fWfSimulator
Definition:
PndEmcWaveformData.h:64
PndEmcWaveformData::GetHitParameter
void GetHitParameter(Int_t hitNo, Double_t &time, Double_t &energy)
PndEmcWaveformData::operator<
virtual bool operator<(const PndEmcWaveformData &wfData) const
PndEmcWaveformData::SetWaveformSimulator
void SetWaveformSimulator(PndEmcAbsWaveformSimulator *wfSimulator)
Definition:
PndEmcWaveformData.h:57
PndEmcWaveformData::GetHitMap
const std::map< Double_t, Double_t > & GetHitMap()
Definition:
PndEmcWaveformData.h:52
PndEmcAbsWaveformSimulator
Abstract base class for waveform simulator.
Definition:
PndEmcAbsWaveformSimulator.h:36
PndEmcWaveformData::fDetectorId
Int_t fDetectorId
Definition:
PndEmcWaveformData.h:58
PndEmcWaveformData::AddHit
virtual void AddHit(const FairLink &linkToHit, Double_t absEventTime, Double_t energy)
PndEmcWaveformData::GetNHits
Int_t GetNHits()
Definition:
PndEmcWaveformData.h:51
PndEmcWaveformData::GetWaveformSimulator
PndEmcAbsWaveformSimulator * GetWaveformSimulator()
Definition:
PndEmcWaveformData.h:53
PndEmcWaveformData::operator+=
virtual PndEmcWaveformData & operator+=(const PndEmcWaveformData &toAdd)
PndEmcWaveform
represents a simulated waveform in an emc crystal
Definition:
PndEmcWaveform.h:68
PndEmcAbsWaveformSimulator.h
PndEmcWaveformData::GetTimeOfLastSample
Double_t GetTimeOfLastSample()
Definition:
PndEmcWaveformData.h:54
PndEmcWaveformData::fHitMap
std::map< Double_t, Double_t > fHitMap
Definition:
PndEmcWaveformData.h:65
PndEmcWaveformData::fTimeOfLastSample
Double_t fTimeOfLastSample
Definition:
PndEmcWaveformData.h:62
PndEmcWaveformData
represents a simulated waveform in an emc crystal, used by PndEmcFWEndcapTimebasedWaveforms ...
Definition:
PndEmcWaveformData.h:34
PndEmcWaveformData::~PndEmcWaveformData
virtual ~PndEmcWaveformData()
Definition:
PndEmcWaveformData.h:40
PndEmcWaveformData::operator<<
friend std::ostream & operator<<(std::ostream &out, PndEmcWaveformData &wfData)
PndEmcWaveformData::equal
virtual bool equal(FairTimeStamp *data)
PndEmcWaveformData::PndEmcWaveformData
PndEmcWaveformData()
home
gitlab-runner
builds
Vxspf1vo
0
PandaRootGroup
PandaRoot
detectors
emc
EmcData
PndEmcWaveformData.h
Generated on Fri Nov 29 2024 06:04:41 for PandaRoot by
1.8.13