RefSpectrum::RefSpectrum(const Spectrum& s) { length = 0; annot = -1; copies = 1; id = -1; //or could do data = s.data and then change type and peaks data.type = REFERENCE; data.scanNumber = s.getScanNum(); data.mz = s.getMz(); data.numPeaks = s.getNumPeaks(); if(data.numPeaks) { data.peaks = new PEAK_T[data.numPeaks]; //add if(data.numPeaks?) s.getPeaks(data.peaks, data.numPeaks); } }