1 #ifndef OVERLAY_DATAOVERLAY_RAWDIGITMIXER_CXX 2 #define OVERLAY_DATAOVERLAY_RAWDIGITMIXER_CXX 16 for(
size_t i_rd=0; i_rd<dataVector.size(); i_rd++){
18 std::vector<short> waveform;
23 dataVector[i_rd].GetPedestal(),
24 dataVector[i_rd].Compression());
28 waveform = dataVector[i_rd].ADCs();
32 throw std::runtime_error(
"RawDigitMixer::DeclareData : Input data RawDigit shape does not match what is expected.");
53 std::unordered_map<raw::ChannelID_t,float>
const& scale_map){
55 for(
auto const& rd : mcVector){
58 throw std::runtime_error(
"Error in RawDigitMixer::Mix : Compressed MC waveforms not supported. Turn it off and try again.");
61 throw std::runtime_error(
"RawDigitMixer::Mix : Input MC RawDigit shape does not match what is expected.");
69 size_t i_output = it_ch->second;
77 std::vector<short>
const mc_trimmed(rd.ADCs().begin()+
_mcstart,
89 output.emplace_back(rd_i.channel,
94 output.back().SetPedestal(rd_i.ped,rd_i.sigma);
void FillRawDigitOutput(std::vector< raw::RawDigit > &output)
Mixer function for putting together two raw digit collections.
RawDigitAdder_35t fRDAdderAlg
void SetStuckBitRetentionMethod(bool s)
void SetScaleInputs(float f1, float f2)
void AddRawDigits(std::vector< short > const &, std::vector< short > const &, std::vector< short > &)
void SetPedestalInputs(float f1, float f2)
void Mix(std::vector< raw::RawDigit > const &mcVector, std::unordered_map< raw::ChannelID_t, float > const &map)
std::unordered_map< raw::ChannelID_t, size_t > fChannelIndexMap
void DeclareData(std::vector< raw::RawDigit > const &dataVector)
void Uncompress(const std::vector< short > &adc, std::vector< short > &uncompressed, raw::Compress_t compress)
Uncompresses a raw data buffer.
std::vector< RD_Info > fOutputWaveforms