File indexing completed on 2025-08-06 08:17:14
0001 #include "MicromegasRawHitv2.h"
0002
0003 MicromegasRawHitv2::MicromegasRawHitv2(MicromegasRawHit *source)
0004 {
0005 MicromegasRawHitv2::set_bco(source->get_bco());
0006 MicromegasRawHitv2::set_gtm_bco(source->get_gtm_bco());
0007 MicromegasRawHitv2::set_packetid(source->get_packetid());
0008 MicromegasRawHitv2::set_fee(source->get_fee());
0009 MicromegasRawHitv2::set_channel(source->get_channel());
0010 MicromegasRawHitv2::set_sampaaddress(source->get_sampaaddress());
0011 MicromegasRawHitv2::set_sampachannel(source->get_sampachannel());
0012 MicromegasRawHitv2::set_sample_begin(source->get_sample_begin());
0013 MicromegasRawHitv2::set_sample_end(source->get_sample_end());
0014
0015 for (size_t i = source->get_sample_begin(); i < source->get_sample_end(); ++i)
0016 {
0017 MicromegasRawHitv2::set_adc(i, source->get_adc(i));
0018 }
0019 }
0020
0021 void MicromegasRawHitv2::identify(std::ostream &os) const
0022 {
0023 os << "BCO: 0x" << std::hex << bco << std::dec << std::endl;
0024 os << "packet id: " << packetid << std::endl;
0025 }
0026
0027 uint16_t MicromegasRawHitv2::get_adc(const uint16_t sample) const
0028 {
0029 const auto adc = adcmap.find(sample);
0030 if (adc != adcmap.end())
0031 {
0032 return adc->second;
0033 }
0034 return 0;
0035 }
0036
0037 void MicromegasRawHitv2::Clear(Option_t * )
0038 {
0039 adcmap.clear();
0040 }