Jpp
Public Member Functions | Private Attributes | List of all members
SuperPMT Class Reference

Class containing a JPMT and a NBPulse object. More...

#include <SUPERPMT.hh>

Public Member Functions

 SuperPMT ()
 Default constructor. More...
 
 SuperPMT (JPMT pmt_)
 Constructor. More...
 
 SuperPMT (JPMT pmt_, TH2D *timetot_)
 Constructor. More...
 
 SuperPMT (JPMT pmt_, TH2D *timetot_, int ch)
 Constructor. More...
 
 ~SuperPMT ()
 Destructor. More...
 
NBPulsegetNBPulse ()
 Returns a pointer to the NBPulse of this SUPERPMT. More...
 
JPMT getPMT ()
 Returns the JPMT from of this SUPERPMT. More...
 
int getID ()
 Returns the id of the JPMT of this SUPERPMT. More...
 
int getChannel ()
 Returns the FPGA channel of the JPMT of this SUPERPMT. More...
 
void setNBPulse (TH2D *timetot_)
 Sets the time vs ToT distribution of the hits recorded by the JPMT of this SUPERPMT. More...
 
void setPMT (JPMT pmt_)
 Sets the JPMT of this SUPERPMT. More...
 
void analyzeFast ()
 Performs a fast analysis of the NBPulse of this SUPERPMT. More...
 
void fit ()
 Fits the NBPulse of this SUPERPMT. More...
 

Private Attributes

JPMT pmt
 
int channel
 
NBPulsepulse
 

Detailed Description

Class containing a JPMT and a NBPulse object.

Author
rgruiz

Definition at line 22 of file SUPERPMT.hh.

Constructor & Destructor Documentation

◆ SuperPMT() [1/4]

SuperPMT::SuperPMT ( )
inline

Default constructor.

Definition at line 35 of file SUPERPMT.hh.

35 {}

◆ SuperPMT() [2/4]

SuperPMT::SuperPMT ( JPMT  pmt_)
inline

Constructor.

This constructor initializes the SUPERPMT with a JPMT.

Parameters
pmt_A JPMT.

Definition at line 45 of file SUPERPMT.hh.

45  {
46 
47  pmt = pmt_ ;
48 
49  }

◆ SuperPMT() [3/4]

SuperPMT::SuperPMT ( JPMT  pmt_,
TH2D *  timetot_ 
)
inline

Constructor.

This constructor initializes the SUPERPMT from a JPMT and a 2D histogram

Parameters
pmt_A JPMT.
timetot_The time vs ToT distribution of hits detected by the pmt_

Definition at line 60 of file SUPERPMT.hh.

60  {
61 
62  pmt = pmt_ ;
63 
64  pulse = new NBPulse (timetot_) ;
65 
66  }

◆ SuperPMT() [4/4]

SuperPMT::SuperPMT ( JPMT  pmt_,
TH2D *  timetot_,
int  ch 
)
inline

Constructor.

This constructor initializes the SUPERPMT from a JPMT and a 2D histogram

Parameters
pmt_A JPMT.
timetot_The time vs ToT distribution of hits detected by the pmt_
chFPGA channel of the PMT

Definition at line 77 of file SUPERPMT.hh.

77  {
78 
79  pmt = pmt_ ;
80 
81  pulse = new NBPulse (timetot_) ;
82 
83  channel = ch ;
84 
85  }

◆ ~SuperPMT()

SuperPMT::~SuperPMT ( )
inline

Destructor.

Definition at line 92 of file SUPERPMT.hh.

92  {
93 
94  delete(pulse) ;
95 
96  }

Member Function Documentation

◆ getNBPulse()

NBPulse* SuperPMT::getNBPulse ( )
inline

Returns a pointer to the NBPulse of this SUPERPMT.

Returns
A pulse and all its characteristics

Definition at line 105 of file SUPERPMT.hh.

105  {
106 
107  return pulse ;
108 
109  }

◆ getPMT()

JPMT SuperPMT::getPMT ( )
inline

Returns the JPMT from of this SUPERPMT.

Returns
The corresponding JPMT

Definition at line 118 of file SUPERPMT.hh.

118  {
119 
120  return pmt ;
121 
122  }

◆ getID()

int SuperPMT::getID ( )
inline

Returns the id of the JPMT of this SUPERPMT.

Returns
The PMT id

Definition at line 131 of file SUPERPMT.hh.

131  {
132 
133  return pmt.getID();
134 
135  }

◆ getChannel()

int SuperPMT::getChannel ( )
inline

Returns the FPGA channel of the JPMT of this SUPERPMT.

Returns
The PMT FPGA channel

Definition at line 143 of file SUPERPMT.hh.

143  {
144 
145  return channel;
146 
147  }

◆ setNBPulse()

void SuperPMT::setNBPulse ( TH2D *  timetot_)
inline

Sets the time vs ToT distribution of the hits recorded by the JPMT of this SUPERPMT.

Parameters
timetot_a pointer to a TH2D containing the time vs ToT distribution of the hits detected by the SUPERPMT.

Definition at line 155 of file SUPERPMT.hh.

155  {
156 
157  pulse = new NBPulse (timetot_) ;
158 
159  }

◆ setPMT()

void SuperPMT::setPMT ( JPMT  pmt_)
inline

Sets the JPMT of this SUPERPMT.

Parameters
pmt_theJPMT of this SUPERPMT.

Definition at line 167 of file SUPERPMT.hh.

167  {
168 
169  pmt = pmt_ ;
170 
171  }

◆ analyzeFast()

void SuperPMT::analyzeFast ( )
inline

Performs a fast analysis of the NBPulse of this SUPERPMT.

Definition at line 178 of file SUPERPMT.hh.

178  {
179 
180  pulse->analyzeFast() ;
181 
182  }

◆ fit()

void SuperPMT::fit ( )
inline

Fits the NBPulse of this SUPERPMT.

Definition at line 189 of file SUPERPMT.hh.

189  {
190 
191  pulse->fit() ;
192 
193  }

Member Data Documentation

◆ pmt

JPMT SuperPMT::pmt
private

Definition at line 24 of file SUPERPMT.hh.

◆ channel

int SuperPMT::channel
private

Definition at line 26 of file SUPERPMT.hh.

◆ pulse

NBPulse* SuperPMT::pulse
private

Definition at line 28 of file SUPERPMT.hh.


The documentation for this class was generated from the following file:
NBPulse::analyzeFast
void analyzeFast()
Performs a fast analysis of the hit time distribution.
Definition: NBPulse.hh:198
SuperPMT::channel
int channel
Definition: SUPERPMT.hh:26
SuperPMT::pmt
JPMT pmt
Definition: SUPERPMT.hh:24
NBPulse
Analyzes the signal of a nanobeacon in a PMT.
Definition: NBPulse.hh:33
JLANG::JObjectID::getID
int getID() const
Get identifier.
Definition: JObjectID.hh:55
SuperPMT::pulse
NBPulse * pulse
Definition: SUPERPMT.hh:28
NBPulse::fit
void fit()
Fits the hit nanobeacon signal to a model composed by a Landau and a Gauss functions.
Definition: NBPulse.hh:355