1  /**************************************************************
2   *
3   * Licensed to the Apache Software Foundation (ASF) under one
4   * or more contributor license agreements.  See the NOTICE file
5   * distributed with this work for additional information
6   * regarding copyright ownership.  The ASF licenses this file
7   * to you under the Apache License, Version 2.0 (the
8   * "License"); you may not use this file except in compliance
9   * with the License.  You may obtain a copy of the License at
10   *
11   *   http://www.apache.org/licenses/LICENSE-2.0
12   *
13   * Unless required by applicable law or agreed to in writing,
14   * software distributed under the License is distributed on an
15   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16   * KIND, either express or implied.  See the License for the
17   * specific language governing permissions and limitations
18   * under the License.
19   *
20   *************************************************************/
21  
22  
23  #ifndef CHART2_MEANVALUEREGRESSIONCURVECALCULATOR_HXX
24  #define CHART2_MEANVALUEREGRESSIONCURVECALCULATOR_HXX
25  
26  #include "RegressionCurveCalculator.hxx"
27  
28  namespace chart
29  {
30  
31  class MeanValueRegressionCurveCalculator :
32          public RegressionCurveCalculator
33  {
34  public:
35  	MeanValueRegressionCurveCalculator();
36  	virtual ~MeanValueRegressionCurveCalculator();
37  
38  protected:
39      virtual ::rtl::OUString ImplGetRepresentation(
40          const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter >& xNumFormatter,
41          ::sal_Int32 nNumberFormatKey ) const;
42  
43  private:
44      // ____ XRegressionCurveCalculator ____
45      virtual void SAL_CALL recalculateRegression(
46          const ::com::sun::star::uno::Sequence< double >& aXValues,
47          const ::com::sun::star::uno::Sequence< double >& aYValues )
48          throw (::com::sun::star::uno::RuntimeException);
49      virtual double SAL_CALL getCurveValue( double x )
50          throw (::com::sun::star::lang::IllegalArgumentException,
51                 ::com::sun::star::uno::RuntimeException);
52      virtual ::com::sun::star::uno::Sequence< ::com::sun::star::geometry::RealPoint2D > SAL_CALL getCurveValues(
53          double min,
54          double max,
55          ::sal_Int32 nPointCount,
56          const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XScaling >& xScalingX,
57          const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XScaling >& xScalingY,
58          ::sal_Bool bMaySkipPointsInCalculation )
59          throw (::com::sun::star::lang::IllegalArgumentException,
60                 ::com::sun::star::uno::RuntimeException);
61  
62      // formula is: f(x) = m_fMeanValue
63      double m_fMeanValue;
64  };
65  
66  } //  namespace chart
67  
68  // CHART2_MEANVALUEREGRESSIONCURVECALCULATOR_HXX
69  #endif
70