00001 #include <iostream> 00002 #include "RawEvent/RawData.h" 00003 00004 RawData::RawData(const Identifier& id, const unsigned int timeChannel, const unsigned int chargeChannel) : 00005 m_id(id), m_timeChannel(timeChannel), m_chargeChannel(chargeChannel), m_intId(id.get_value()) 00006 { 00007 } 00008 00009 RawData::RawData(const unsigned int id) : 00010 m_id(Identifier(id)), m_timeChannel(0), m_chargeChannel(0), m_intId(id) 00011 { 00012 } 00013 00014 // Get associated id 00015 Identifier RawData::identify() const { 00016 return m_id; 00017 } 00018 00019 // Get time channel 00020 unsigned int RawData::getIntId() const { 00021 return m_intId; 00022 } 00023 00024 // Set time channel 00025 void RawData::setTimeChannel(const unsigned int timeChannel) { 00026 m_timeChannel = timeChannel; 00027 } 00028 00029 // Set charge channel 00030 void RawData::setChargeChannel(const unsigned int chargeChannel) { 00031 m_chargeChannel = chargeChannel; 00032 } 00033 00034 // Set track index 00035 void RawData::setTrackIndex(const int trackIndex) { 00036 m_trackIndex = trackIndex; 00037 } 00038 00039 // Get time channel 00040 unsigned int RawData::getTimeChannel() const { 00041 return m_timeChannel; 00042 } 00043 00044 // Get charge channel 00045 unsigned int RawData::getChargeChannel() const { 00046 return m_chargeChannel; 00047 } 00048 00049 // Get track index 00050 int RawData::getTrackIndex() const { 00051 return m_trackIndex; 00052 } 00053 00054 RawData& RawData::operator+=(const RawData &rval) 00055 { 00056 if(m_id != rval.identify()) // do nothing 00057 return *this; 00058 00059 if( rval.getTimeChannel() < m_timeChannel ) 00060 m_timeChannel = rval.getTimeChannel(); 00061 00062 m_chargeChannel += rval.getChargeChannel(); 00063 return *this; 00064 }