27 if (!Mantid::JsonHelpers::parse(source, &root)) {
28 throw std::invalid_argument(
"PeakShapeDetectorBinFactory:: Source JSON for "
29 "the peak shape is not valid: " +
33 const std::string shape = root[
"shape"].asString();
35 const std::string algorithmName(root[
"algorithm_name"].asString());
36 const int algorithmVersion(root[
"algorithm_version"].asInt());
39 std::vector<std::tuple<int32_t, double, double>> detectorBinList;
43 detectorBinList.emplace_back(detBinVal[
"detId"].asInt(), detBinVal[
"startX"].asDouble(),
44 detBinVal[
"endX"].asDouble());
51 throw std::invalid_argument(
"PeakShapeDetectorBinFactory:: No successor "
52 "factory able to process : " +