83 std::size_t spectrum_size = spectrum.size();
85 if(spectrum_size == 0)
89 std::pair<std::map<unsigned int, QByteArray>::iterator,
bool> ret =
90 m_sliceBufferMap.insert(std::pair<unsigned int, QByteArray>(slice_number, QByteArray()));
95 ret.first->second.resize(0);
96 QDataStream outstream(&ret.first->second, QIODevice::WriteOnly);
97 outstream << (quint32)ipos;
98 outstream << spectrum;
102 QDataStream outstream(&ret.first->second, QIODevice::WriteOnly | QIODevice::Append);
103 outstream << (quint32)ipos;
104 outstream << spectrum;
111 .arg(error_pappso.
qwhat()));
113 catch(std::exception &error)
116 QObject::tr(
"appendSliceInBuffer slice_number=%1 ipos=%2 error :\n%3")
135 if(buffer_pair.second.size() > 0)
139 bool new_file =
false;
140 if(!slice_file.exists())
144 if(!slice_file.open(QIODevice::WriteOnly))
147 QObject::tr(
"unable to open file %1").arg(slice_file.fileName()));
152 if(!slice_file.open(QIODevice::WriteOnly | QIODevice::Append))
155 QObject::tr(
"unable to open file %1").arg(slice_file.fileName()));
159 QDataStream stream(&slice_file);
163 stream << (quint32)buffer_pair.first;
165 stream.writeRawData(buffer_pair.second.constData(), buffer_pair.second.size());
169 stream.writeRawData(buffer_pair.second.constData(), buffer_pair.second.size());
185 QObject::tr(
"flushBufferOnDisk error :\n%1").arg(error_pappso.
qwhat()));
187 catch(std::exception &error)