1 #ifndef CondFormats_HcalObjects_PiecewiseScalingPolynomial_h_ 2 #define CondFormats_HcalObjects_PiecewiseScalingPolynomial_h_ 6 #include "boost/serialization/vector.hpp" 7 #include "boost/serialization/version.hpp" 18 const unsigned nLimits(
limits_.size());
22 for (; which < nLimits; ++
which)
23 if (x < limits[which])
25 const std::vector<double>&
c(
coeffs_[which]);
26 const double*
a = &c[0];
27 for (
int deg = c.size() - 1; deg >= 0; --deg) {
45 std::vector<std::vector<double> >
coeffs_;
50 template <
class Archive>
51 inline void save(Archive& ar,
const unsigned )
const {
53 throw cms::Exception(
"In PiecewiseScalingPolynomial::save: invalid data");
57 template <
class Archive>
58 inline void load(Archive& ar,
const unsigned ) {
61 throw cms::Exception(
"In PiecewiseScalingPolynomial::load: invalid data");
64 BOOST_SERIALIZATION_SPLIT_MEMBER()
69 #endif // CondFormats_HcalObjects_PiecewiseScalingPolynomial_h_ bool operator==(const PiecewiseScalingPolynomial &r) const
bool operator!=(const PiecewiseScalingPolynomial &r) const
void load(Archive &ar, const unsigned)
void save(Archive &ar, const unsigned) const
PiecewiseScalingPolynomial()
std::vector< std::vector< double > > coeffs_
double operator()(const double x) const
std::vector< double > limits_
friend class boost::serialization::access