175 {
176 std::string help;
177 help = "";
178 std::getline(in, help, '\t');
179 if (help.length() < 2) {return in;}
180 dset.exp = std::stoi(help);
181 help = "";
182 std::getline(in, help, '\t');
183 dset.run = std::stoi(help);
184 help = "";
185 std::getline(in, help, '\t');
186 dset.subrun = std::stoi(help);
187 help = "";
188 std::getline(in, help, '\t');
189 dset.evt = std::stoi(help);
190 help = "";
191 std::getline(in, help, '\t');
192 dset.track = std::stoi(help);
193 help = "";
194 std::getline(in, help, '\t');
195 dset.ntracks = std::stoi(help);
196 help = "";
197 std::getline(in, help, '\t');
198 dset.expert = std::stoul(help);
199
200 std::string insize = "";
201 std::string outsize = "";
202 std::getline(in, insize, '\t');
203 dset.input.assign(std::stoul(insize), -1);
204
205
206
207
208
209 std::getline(in, outsize, '\t');
210 dset.target.assign(std::stoul(outsize), -1);
211
212
213
214
215
216 for (unsigned i = 0; i < std::stoul(insize); ++i) {
217 help = "";
218 std::getline(in, help, '\t');
219 try {
220 dset.input[i] = std::stof(help);
221 } catch (const std::out_of_range& oor) {
222 B2WARNING("out of range error: " << help << " is not in float range!");
223 dset.input[i] = 0.;
224 }
225 }
226 for (unsigned i = 0; i < std::stoul(outsize); ++i) {
227 help = "";
228 std::getline(in, help, '\t');
229 try {
230 dset.target[i] = std::stof(help);
231 } catch (const std::out_of_range& oor) {
232 B2WARNING("out of range error: " << help << " is not in float range!");
233 dset.target[i] = 0.;
234 }
235 }
236 help = "";
237 std::getline(in, help, '\t');
238 dset.nnscalez = std::stof(help);
239 help = "";
240 std::getline(in, help, '\t');
241 dset.nnrawz = std::stoi(help);
242 help = "";
243 std::getline(in, help, '\t');
244 dset.nnscaletheta = std::stof(help);
245 help = "";
246 std::getline(in, help, '\t');
247 dset.nnrawtheta = std::stoi(help);
248 help = "";
249 std::getline(in, help, '\t');
250 dset.inphi = std::stof(help);
251 help = "";
252 std::getline(in, help, '\t');
253 dset.intheta = std::stof(help);
254 help = "";
255 std::getline(in, help, '\t');
256 dset.ininvpt = std::stof(help);
257 help = "";
258 return in;
259 }