40 Run &operator=(
const Run &other);
45 std::shared_ptr<Run> clone();
51 void filterByTime(
const Types::Core::DateAndTime start,
const Types::Core::DateAndTime stop)
override;
55 size_t getMemorySize()
const override;
58 void setProtonCharge(
const double charge);
60 double getProtonCharge()
const;
63 void integrateProtonCharge(
const std::string &logname =
"proton_charge")
const;
65 std::tuple<double, double, double> getBadPulseRange(
const std::string &logname =
"proton_charge",
66 const double &cutoff = 95.)
const;
72 void storeHistogramBinBoundaries(
const std::vector<double> &histoBins);
74 std::pair<double, double> histogramBinBoundaries(
const double value)
const;
76 std::vector<double> getBinBoundaries()
const;
97 size_t getNumGoniometers()
const;
103 void clearGoniometers();
105 const std::vector<Kernel::Matrix<double>> getGoniometerMatrices()
const;
108 void saveNexus(Nexus::File *file,
const std::string &
group,
bool keepOpen =
false)
const override;
113 const std::string &prefix,
bool keepOpen =
false)
override;
115 void loadNexus(Nexus::File *file,
const std::string &
group,
bool keepOpen =
false)
override;
119 void calculateAverageGoniometerMatrix();
130 void copyGoniometers(
const Run &other);
133 void loadNexusCommon(Nexus::File *file,
const std::string &nameClass);