1 #ifndef __JDETECTOR__JPMTSIMULATOR__
2 #define __JDETECTOR__JPMTSIMULATOR__
17 namespace JDETECTOR {}
18 namespace JPP {
using namespace JDETECTOR; }
137 const double __tot_ns) :
164 template<
class JElement_t>
180 std::vector<JElement_t>()
189 std::sort(this->begin(), this->end());
200 iterator i = std::lower_bound(this->begin(), this->end(), element);
232 for (iterator i = this->begin(); i != this->end(); ++i) {
286 for (JModuleData::const_iterator frame = input.begin(); frame != input.end(); ++frame) {
287 for (JModuleData::value_type::const_iterator hit = frame->begin(); hit != frame->end(); ++hit) {
288 timeRange.include(hit->t_ns);
virtual void processHits(const JPMTIdentifier &id, const JCalibration &calibration, const JPMTData< JPMTSignal > &input, JPMTData< JPMTPulse > &output) const =0
Process hits.
void reset(size_t size)
Reset buffers.
Data structure for PMT analogue signal.
Data structure for PMT digital pulse.
Interface for PMT simulation.
Data structure for PMT data corresponding to a detector module.
PMT calibration (including definition of sign of time offset).
JPMTData()
Default constructor.
bool operator<(const Head &first, const Head &second)
Less than operator.
Data structure for single photo-electron.
int npe
number of photo-electrons
JPMTSignal(const double __t_ns, const int __npe)
Constructor.
JPhotoElectron(const double __t_ns)
Constructor.
std::vector< JElement_t >::const_reverse_iterator const_reverse_iterator
JModuleData()
Default constructor.
Data structure for PMT calibration.
double tot_ns
time-over-threshold [ns]
JPhotoElectron()
Default constructor.
JTimeRange getTimeRange(const Evt &event)
Get time range (i.e.
std::vector< JElement_t >::iterator iterator
JPMTSimulator()
Default constructor.
JPMTPulse()
Default constructor.
virtual ~JPMTSimulator()
Virtual destructor.
JPMTPulse(const double __t_ns, const double __tot_ns)
Constructor.
static JPhotoElectron getEndMarker()
Get end marker.
void insert(const JElement_t &element)
Insert element whilst maintaining order.
Template data structure for PMT I/O.
std::vector< JElement_t >::reverse_iterator reverse_iterator
JPMTSignal()
Default constructor.
std::vector< JElement_t >::const_iterator const_iterator