LCOV - code coverage report
Current view: top level - chart2/source/tools - RegressionCurveModel.cxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 86 170 50.6 %
Date: 2012-08-25 Functions: 36 79 45.6 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 60 238 25.2 %

           Branch data     Line data    Source code
       1                 :            : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2                 :            : /*
       3                 :            :  * This file is part of the LibreOffice project.
       4                 :            :  *
       5                 :            :  * This Source Code Form is subject to the terms of the Mozilla Public
       6                 :            :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7                 :            :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8                 :            :  *
       9                 :            :  * This file incorporates work covered by the following license notice:
      10                 :            :  *
      11                 :            :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12                 :            :  *   contributor license agreements. See the NOTICE file distributed
      13                 :            :  *   with this work for additional information regarding copyright
      14                 :            :  *   ownership. The ASF licenses this file to you under the Apache
      15                 :            :  *   License, Version 2.0 (the "License"); you may not use this file
      16                 :            :  *   except in compliance with the License. You may obtain a copy of
      17                 :            :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18                 :            :  */
      19                 :            : 
      20                 :            : #include "RegressionCurveModel.hxx"
      21                 :            : #include "macros.hxx"
      22                 :            : #include "LineProperties.hxx"
      23                 :            : #include "RegressionCurveHelper.hxx"
      24                 :            : #include "RegressionCalculationHelper.hxx"
      25                 :            : #include "RegressionEquation.hxx"
      26                 :            : #include "ContainerHelper.hxx"
      27                 :            : #include "CloneHelper.hxx"
      28                 :            : #include "PropertyHelper.hxx"
      29                 :            : #include <com/sun/star/beans/PropertyAttribute.hpp>
      30                 :            : #include <rtl/math.hxx>
      31                 :            : #include <rtl/ustrbuf.hxx>
      32                 :            : 
      33                 :            : using namespace ::com::sun::star;
      34                 :            : 
      35                 :            : using ::rtl::OUString;
      36                 :            : using ::rtl::OUStringBuffer;
      37                 :            : using ::com::sun::star::beans::Property;
      38                 :            : using ::osl::MutexGuard;
      39                 :            : 
      40                 :            : namespace
      41                 :            : {
      42                 :         16 : static const OUString lcl_aImplementationName_MeanValue(
      43                 :            :     RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.MeanValueRegressionCurve" ));
      44                 :         16 : static const OUString lcl_aImplementationName_Linear(
      45                 :            :     RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.LinearRegressionCurve" ));
      46                 :         16 : static const OUString lcl_aImplementationName_Logarithmic(
      47                 :            :     RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.LogarithmicRegressionCurve" ));
      48                 :         16 : static const OUString lcl_aImplementationName_Exponential(
      49                 :            :     RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.ExponentialRegressionCurve" ));
      50                 :         16 : static const OUString lcl_aImplementationName_Potential(
      51                 :            :     RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.PotentialRegressionCurve" ));
      52                 :            : 
      53                 :         16 : static const OUString lcl_aServiceName(
      54                 :            :     RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.chart2.RegressionCurve" ));
      55                 :            : 
      56                 :            : struct StaticXXXDefaults_Initializer
      57                 :            : {
      58                 :          2 :     ::chart::tPropertyValueMap* operator()()
      59                 :            :     {
      60 [ +  - ][ +  - ]:          2 :         static ::chart::tPropertyValueMap aStaticDefaults;
         [ +  - ][ #  # ]
      61                 :          2 :         lcl_AddDefaultsToMap( aStaticDefaults );
      62                 :          2 :         return &aStaticDefaults;
      63                 :            :     }
      64                 :            : private:
      65                 :          2 :     void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
      66                 :            :     {
      67                 :          2 :         ::chart::LineProperties::AddDefaultsToMap( rOutMap );
      68                 :          2 :     }
      69                 :            : };
      70                 :            : 
      71                 :            : struct StaticXXXDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticXXXDefaults_Initializer >
      72                 :            : {
      73                 :            : };
      74                 :            : 
      75                 :            : struct StaticRegressionCurveInfoHelper_Initializer
      76                 :            : {
      77                 :          2 :     ::cppu::OPropertyArrayHelper* operator()()
      78                 :            :     {
      79 [ +  - ][ +  - ]:          2 :         static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
         [ +  - ][ +  - ]
         [ +  - ][ #  # ]
      80                 :          2 :         return &aPropHelper;
      81                 :            :     }
      82                 :            : 
      83                 :            : private:
      84                 :          2 :     uno::Sequence< Property > lcl_GetPropertySequence()
      85                 :            :     {
      86         [ +  - ]:          2 :         ::std::vector< ::com::sun::star::beans::Property > aProperties;
      87         [ +  - ]:          2 :         ::chart::LineProperties::AddPropertiesToVector( aProperties );
      88                 :            : 
      89                 :            :         ::std::sort( aProperties.begin(), aProperties.end(),
      90         [ +  - ]:          2 :                      ::chart::PropertyNameLess() );
      91                 :            : 
      92         [ +  - ]:          2 :         return ::chart::ContainerHelper::ContainerToSequence( aProperties );
      93                 :            :     }
      94                 :            : };
      95                 :            : 
      96                 :            : struct StaticRegressionCurveInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticRegressionCurveInfoHelper_Initializer >
      97                 :            : {
      98                 :            : };
      99                 :            : 
     100                 :            : struct StaticRegressionCurveInfo_Initializer
     101                 :            : {
     102                 :          2 :     uno::Reference< beans::XPropertySetInfo >* operator()()
     103                 :            :     {
     104                 :            :         static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
     105 [ +  - ][ +  - ]:          2 :             ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticRegressionCurveInfoHelper::get() ) );
         [ +  - ][ +  - ]
                 [ #  # ]
     106                 :          2 :         return &xPropertySetInfo;
     107                 :            :     }
     108                 :            : };
     109                 :            : 
     110                 :            : struct StaticRegressionCurveInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticRegressionCurveInfo_Initializer >
     111                 :            : {
     112                 :            : };
     113                 :            : 
     114                 :            : } // anonymous namespace
     115                 :            : 
     116                 :            : namespace chart
     117                 :            : {
     118                 :            : 
     119                 :         14 : RegressionCurveModel::RegressionCurveModel(
     120                 :            :     uno::Reference< uno::XComponentContext > const & xContext,
     121                 :            :     tCurveType eCurveType ) :
     122                 :            :         ::property::OPropertySet( m_aMutex ),
     123                 :            :     m_xContext( xContext ),
     124                 :            :     m_eRegressionCurveType( eCurveType ),
     125                 :            :         m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
     126 [ +  - ][ +  - ]:         14 :         m_xEquationProperties( new RegressionEquation( xContext ))
         [ +  - ][ +  - ]
         [ +  - ][ +  - ]
     127                 :            : {
     128                 :            :     // set 0 line width (default) hard, so that it is always written to XML,
     129                 :            :     // because the old implementation uses different defaults
     130                 :            :     setFastPropertyValue_NoBroadcast(
     131 [ +  - ][ +  - ]:         14 :         LineProperties::PROP_LINE_WIDTH, uno::makeAny( sal_Int32( 0 )));
     132         [ +  - ]:         14 :     ModifyListenerHelper::addListener( m_xEquationProperties, m_xModifyEventForwarder );
     133                 :         14 : }
     134                 :            : 
     135                 :          0 : RegressionCurveModel::RegressionCurveModel( const RegressionCurveModel & rOther ) :
     136                 :            :         MutexContainer(),
     137                 :            :         impl::RegressionCurveModel_Base(),
     138                 :            :         ::property::OPropertySet( rOther, m_aMutex ),
     139                 :            :     m_xContext( rOther.m_xContext ),
     140                 :            :     m_eRegressionCurveType( rOther.m_eRegressionCurveType ),
     141 [ #  # ][ #  # ]:          0 :     m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
                 [ #  # ]
     142                 :            : {
     143 [ #  # ][ #  # ]:          0 :     m_xEquationProperties.set( CloneHelper::CreateRefClone< uno::Reference< beans::XPropertySet > >()( rOther.m_xEquationProperties ));
     144         [ #  # ]:          0 :     ModifyListenerHelper::addListener( m_xEquationProperties, m_xModifyEventForwarder );
     145                 :          0 : }
     146                 :            : 
     147 [ +  - ][ +  - ]:         14 : RegressionCurveModel::~RegressionCurveModel()
     148         [ -  + ]:         14 : {}
     149                 :            : 
     150                 :            : // ____ XRegressionCurve ____
     151                 :            : uno::Reference< chart2::XRegressionCurveCalculator > SAL_CALL
     152                 :        108 :     RegressionCurveModel::getCalculator()
     153                 :            :     throw (uno::RuntimeException)
     154                 :            : {
     155         [ +  - ]:        108 :     return RegressionCurveHelper::createRegressionCurveCalculatorByServiceName( getServiceName());
     156                 :            : }
     157                 :            : 
     158                 :        124 : uno::Reference< beans::XPropertySet > SAL_CALL RegressionCurveModel::getEquationProperties()
     159                 :            :     throw (uno::RuntimeException)
     160                 :            : {
     161                 :        124 :     return m_xEquationProperties;
     162                 :            : }
     163                 :            : 
     164                 :          0 : void SAL_CALL RegressionCurveModel::setEquationProperties( const uno::Reference< beans::XPropertySet >& xEquationProperties )
     165                 :            :     throw (uno::RuntimeException)
     166                 :            : {
     167         [ #  # ]:          0 :     if( xEquationProperties.is())
     168                 :            :     {
     169         [ #  # ]:          0 :         if( m_xEquationProperties.is())
     170                 :          0 :             ModifyListenerHelper::removeListener( m_xEquationProperties, m_xModifyEventForwarder );
     171                 :            : 
     172                 :          0 :         m_xEquationProperties.set( xEquationProperties );
     173                 :          0 :         ModifyListenerHelper::addListener( m_xEquationProperties, m_xModifyEventForwarder );
     174                 :          0 :         fireModifyEvent();
     175                 :            :     }
     176                 :          0 : }
     177                 :            : 
     178                 :            : // ____ XServiceName ____
     179                 :        462 : ::rtl::OUString SAL_CALL RegressionCurveModel::getServiceName()
     180                 :            :     throw (uno::RuntimeException)
     181                 :            : {
     182   [ +  -  -  -  :        462 :     switch( m_eRegressionCurveType )
                   +  - ]
     183                 :            :     {
     184                 :            :         case CURVE_TYPE_MEAN_VALUE:
     185                 :        340 :             return C2U( "com.sun.star.chart2.MeanValueRegressionCurve" );
     186                 :            :         case CURVE_TYPE_LINEAR:
     187                 :          0 :             return C2U( "com.sun.star.chart2.LinearRegressionCurve" );
     188                 :            :         case CURVE_TYPE_LOGARITHM:
     189                 :          0 :             return C2U( "com.sun.star.chart2.LogarithmicRegressionCurve" );
     190                 :            :         case CURVE_TYPE_EXPONENTIAL:
     191                 :          0 :             return C2U( "com.sun.star.chart2.ExponentialRegressionCurve" );
     192                 :            :         case CURVE_TYPE_POWER:
     193                 :        122 :             return C2U( "com.sun.star.chart2.PotentialRegressionCurve" );
     194                 :            :     }
     195                 :            : 
     196                 :        462 :     return ::rtl::OUString();
     197                 :            : }
     198                 :            : 
     199                 :            : // ____ XModifyBroadcaster ____
     200                 :         14 : void SAL_CALL RegressionCurveModel::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
     201                 :            :     throw (uno::RuntimeException)
     202                 :            : {
     203                 :            :     try
     204                 :            :     {
     205         [ +  - ]:         14 :         uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
     206 [ +  - ][ +  - ]:         14 :         xBroadcaster->addModifyListener( aListener );
                 [ #  # ]
     207                 :            :     }
     208                 :          0 :     catch( const uno::Exception & ex )
     209                 :            :     {
     210                 :            :         ASSERT_EXCEPTION( ex );
     211                 :            :     }
     212                 :         14 : }
     213                 :            : 
     214                 :         14 : void SAL_CALL RegressionCurveModel::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
     215                 :            :     throw (uno::RuntimeException)
     216                 :            : {
     217                 :            :     try
     218                 :            :     {
     219         [ +  - ]:         14 :         uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
     220 [ +  - ][ +  - ]:         14 :         xBroadcaster->removeModifyListener( aListener );
                 [ #  # ]
     221                 :            :     }
     222                 :          0 :     catch( const uno::Exception & ex )
     223                 :            :     {
     224                 :            :         ASSERT_EXCEPTION( ex );
     225                 :            :     }
     226                 :         14 : }
     227                 :            : 
     228                 :            : // ____ XModifyListener ____
     229                 :          0 : void SAL_CALL RegressionCurveModel::modified( const lang::EventObject& aEvent )
     230                 :            :     throw (uno::RuntimeException)
     231                 :            : {
     232                 :          0 :     m_xModifyEventForwarder->modified( aEvent );
     233                 :          0 : }
     234                 :            : 
     235                 :            : // ____ XEventListener (base of XModifyListener) ____
     236                 :          0 : void SAL_CALL RegressionCurveModel::disposing( const lang::EventObject& /* Source */ )
     237                 :            :     throw (uno::RuntimeException)
     238                 :            : {
     239                 :            :     // nothing
     240                 :          0 : }
     241                 :            : 
     242                 :            : // ____ OPropertySet ____
     243                 :         16 : void RegressionCurveModel::firePropertyChangeEvent()
     244                 :            : {
     245                 :         16 :     fireModifyEvent();
     246                 :         16 : }
     247                 :            : 
     248                 :         16 : void RegressionCurveModel::fireModifyEvent()
     249                 :            : {
     250 [ +  - ][ +  - ]:         16 :     m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
                 [ +  - ]
     251                 :         16 : }
     252                 :            : 
     253                 :            : // ================================================================================
     254                 :            : 
     255                 :            : // ____ OPropertySet ____
     256                 :       1118 : uno::Any RegressionCurveModel::GetDefaultValue( sal_Int32 nHandle ) const
     257                 :            :     throw(beans::UnknownPropertyException)
     258                 :            : {
     259         [ +  - ]:       1118 :     const tPropertyValueMap& rStaticDefaults = *StaticXXXDefaults::get();
     260         [ +  - ]:       1118 :     tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
     261         [ +  + ]:       1118 :     if( aFound == rStaticDefaults.end() )
     262                 :        194 :         return uno::Any();
     263                 :       1118 :     return (*aFound).second;
     264                 :            : }
     265                 :            : 
     266                 :       2448 : ::cppu::IPropertyArrayHelper & SAL_CALL RegressionCurveModel::getInfoHelper()
     267                 :            : {
     268                 :       2448 :     return *StaticRegressionCurveInfoHelper::get();
     269                 :            : }
     270                 :            : 
     271                 :            : // ____ XPropertySet ____
     272                 :         40 : uno::Reference< beans::XPropertySetInfo > SAL_CALL RegressionCurveModel::getPropertySetInfo()
     273                 :            :     throw (uno::RuntimeException)
     274                 :            : {
     275                 :         40 :     return *StaticRegressionCurveInfo::get();
     276                 :            : }
     277                 :            : 
     278                 :            : // ================================================================================
     279                 :            : 
     280                 :            : // needed by MSC compiler
     281                 :            : using impl::RegressionCurveModel_Base;
     282                 :            : 
     283 [ +  + ][ +  - ]:       3852 : IMPLEMENT_FORWARD_XINTERFACE2( RegressionCurveModel, RegressionCurveModel_Base, OPropertySet )
     284 [ #  # ][ #  # ]:          0 : IMPLEMENT_FORWARD_XTYPEPROVIDER2( RegressionCurveModel, RegressionCurveModel_Base, OPropertySet )
                 [ #  # ]
     285                 :            : 
     286                 :            : 
     287                 :            : 
     288                 :            : // implementations
     289                 :            : 
     290                 :            : // --------------------------------------------------------------------------------
     291                 :            : 
     292                 :          8 : MeanValueRegressionCurve::MeanValueRegressionCurve(
     293                 :            :     const uno::Reference< uno::XComponentContext > & xContext )
     294                 :          8 :         : RegressionCurveModel( xContext, RegressionCurveModel::CURVE_TYPE_MEAN_VALUE )
     295                 :          8 : {}
     296                 :          0 : MeanValueRegressionCurve::MeanValueRegressionCurve(
     297                 :            :     const MeanValueRegressionCurve & rOther ) :
     298                 :          0 :         RegressionCurveModel( rOther )
     299                 :          0 : {}
     300                 :          8 : MeanValueRegressionCurve::~MeanValueRegressionCurve()
     301         [ -  + ]:         16 : {}
     302                 :          2 : uno::Sequence< ::rtl::OUString > MeanValueRegressionCurve::getSupportedServiceNames_Static()
     303                 :            : {
     304                 :          2 :     uno::Sequence< ::rtl::OUString > aServices( 2 );
     305         [ +  - ]:          2 :     aServices[ 0 ] = lcl_aServiceName;
     306 [ +  - ][ +  - ]:          2 :     aServices[ 1 ] = C2U( "com.sun.star.chart2.MeanValueRegressionCurve" );
     307                 :          2 :     return aServices;
     308                 :            : }
     309                 :            : // implement XServiceInfo methods basing upon getSupportedServiceNames_Static
     310 [ +  - ][ +  - ]:         38 : APPHELPER_XSERVICEINFO_IMPL( MeanValueRegressionCurve, lcl_aImplementationName_MeanValue );
         [ -  + ][ +  + ]
                 [ +  - ]
     311                 :            : 
     312                 :          0 : uno::Reference< util::XCloneable > SAL_CALL MeanValueRegressionCurve::createClone()
     313                 :            :     throw (uno::RuntimeException)
     314                 :            : {
     315 [ #  # ][ #  # ]:          0 :     return uno::Reference< util::XCloneable >( new MeanValueRegressionCurve( *this ));
     316                 :            : }
     317                 :            : 
     318                 :            : // --------------------------------------------------------------------------------
     319                 :            : 
     320                 :          0 : LinearRegressionCurve::LinearRegressionCurve(
     321                 :            :     const uno::Reference< uno::XComponentContext > & xContext )
     322                 :          0 :         : RegressionCurveModel( xContext, RegressionCurveModel::CURVE_TYPE_LINEAR )
     323                 :          0 : {}
     324                 :          0 : LinearRegressionCurve::LinearRegressionCurve(
     325                 :            :     const LinearRegressionCurve & rOther ) :
     326                 :          0 :         RegressionCurveModel( rOther )
     327                 :          0 : {}
     328                 :          0 : LinearRegressionCurve::~LinearRegressionCurve()
     329         [ #  # ]:          0 : {}
     330                 :          0 : uno::Sequence< ::rtl::OUString > LinearRegressionCurve::getSupportedServiceNames_Static()
     331                 :            : {
     332                 :          0 :     uno::Sequence< ::rtl::OUString > aServices( 2 );
     333         [ #  # ]:          0 :     aServices[ 0 ] = lcl_aServiceName;
     334 [ #  # ][ #  # ]:          0 :     aServices[ 1 ] = C2U( "com.sun.star.chart2.LinearRegressionCurve" );
     335                 :          0 :     return aServices;
     336                 :            : }
     337                 :            : // implement XServiceInfo methods basing upon getSupportedServiceNames_Static
     338 [ #  # ][ #  # ]:         30 : APPHELPER_XSERVICEINFO_IMPL( LinearRegressionCurve, lcl_aImplementationName_Linear );
         [ #  # ][ #  # ]
                 [ #  # ]
     339                 :            : 
     340                 :          0 : uno::Reference< util::XCloneable > SAL_CALL LinearRegressionCurve::createClone()
     341                 :            :     throw (uno::RuntimeException)
     342                 :            : {
     343 [ #  # ][ #  # ]:          0 :     return uno::Reference< util::XCloneable >( new LinearRegressionCurve( *this ));
     344                 :            : }
     345                 :            : 
     346                 :            : // --------------------------------------------------------------------------------
     347                 :            : 
     348                 :          0 : LogarithmicRegressionCurve::LogarithmicRegressionCurve(
     349                 :            :     const uno::Reference< uno::XComponentContext > & xContext )
     350                 :          0 :         : RegressionCurveModel( xContext, RegressionCurveModel::CURVE_TYPE_LOGARITHM )
     351                 :          0 : {}
     352                 :          0 : LogarithmicRegressionCurve::LogarithmicRegressionCurve(
     353                 :            :     const LogarithmicRegressionCurve & rOther ) :
     354                 :          0 :         RegressionCurveModel( rOther )
     355                 :          0 : {}
     356                 :          0 : LogarithmicRegressionCurve::~LogarithmicRegressionCurve()
     357         [ #  # ]:          0 : {}
     358                 :          0 : uno::Sequence< ::rtl::OUString > LogarithmicRegressionCurve::getSupportedServiceNames_Static()
     359                 :            : {
     360                 :          0 :     uno::Sequence< ::rtl::OUString > aServices( 2 );
     361         [ #  # ]:          0 :     aServices[ 0 ] = lcl_aServiceName;
     362 [ #  # ][ #  # ]:          0 :     aServices[ 1 ] = C2U( "com.sun.star.chart2.LogarithmicRegressionCurve" );
     363                 :          0 :     return aServices;
     364                 :            : }
     365                 :            : // implement XServiceInfo methods basing upon getSupportedServiceNames_Static
     366 [ #  # ][ #  # ]:         30 : APPHELPER_XSERVICEINFO_IMPL( LogarithmicRegressionCurve, lcl_aImplementationName_Logarithmic );
         [ #  # ][ #  # ]
                 [ #  # ]
     367                 :            : 
     368                 :          0 : uno::Reference< util::XCloneable > SAL_CALL LogarithmicRegressionCurve::createClone()
     369                 :            :     throw (uno::RuntimeException)
     370                 :            : {
     371 [ #  # ][ #  # ]:          0 :     return uno::Reference< util::XCloneable >( new LogarithmicRegressionCurve( *this ));
     372                 :            : }
     373                 :            : 
     374                 :            : // --------------------------------------------------------------------------------
     375                 :            : 
     376                 :          0 : ExponentialRegressionCurve::ExponentialRegressionCurve(
     377                 :            :     const uno::Reference< uno::XComponentContext > & xContext )
     378                 :          0 :         : RegressionCurveModel( xContext, RegressionCurveModel::CURVE_TYPE_EXPONENTIAL )
     379                 :          0 : {}
     380                 :          0 : ExponentialRegressionCurve::ExponentialRegressionCurve(
     381                 :            :     const ExponentialRegressionCurve & rOther ) :
     382                 :          0 :         RegressionCurveModel( rOther )
     383                 :          0 : {}
     384                 :          0 : ExponentialRegressionCurve::~ExponentialRegressionCurve()
     385         [ #  # ]:          0 : {}
     386                 :          0 : uno::Sequence< ::rtl::OUString > ExponentialRegressionCurve::getSupportedServiceNames_Static()
     387                 :            : {
     388                 :          0 :     uno::Sequence< ::rtl::OUString > aServices( 2 );
     389         [ #  # ]:          0 :     aServices[ 0 ] = lcl_aServiceName;
     390 [ #  # ][ #  # ]:          0 :     aServices[ 1 ] = C2U( "com.sun.star.chart2.ExponentialRegressionCurve" );
     391                 :          0 :     return aServices;
     392                 :            : }
     393                 :            : // implement XServiceInfo methods basing upon getSupportedServiceNames_Static
     394 [ #  # ][ #  # ]:         30 : APPHELPER_XSERVICEINFO_IMPL( ExponentialRegressionCurve, lcl_aImplementationName_Exponential );
         [ #  # ][ #  # ]
                 [ #  # ]
     395                 :            : 
     396                 :          0 : uno::Reference< util::XCloneable > SAL_CALL ExponentialRegressionCurve::createClone()
     397                 :            :     throw (uno::RuntimeException)
     398                 :            : {
     399 [ #  # ][ #  # ]:          0 :     return uno::Reference< util::XCloneable >( new ExponentialRegressionCurve( *this ));
     400                 :            : }
     401                 :            : 
     402                 :            : // --------------------------------------------------------------------------------
     403                 :            : 
     404                 :          6 : PotentialRegressionCurve::PotentialRegressionCurve(
     405                 :            :     const uno::Reference< uno::XComponentContext > & xContext )
     406                 :          6 :         : RegressionCurveModel( xContext, RegressionCurveModel::CURVE_TYPE_POWER )
     407                 :          6 : {}
     408                 :          0 : PotentialRegressionCurve::PotentialRegressionCurve(
     409                 :            :     const PotentialRegressionCurve & rOther ) :
     410                 :          0 :         RegressionCurveModel( rOther )
     411                 :          0 : {}
     412                 :          6 : PotentialRegressionCurve::~PotentialRegressionCurve()
     413         [ -  + ]:         12 : {}
     414                 :          0 : uno::Sequence< ::rtl::OUString > PotentialRegressionCurve::getSupportedServiceNames_Static()
     415                 :            : {
     416                 :          0 :     uno::Sequence< ::rtl::OUString > aServices( 2 );
     417         [ #  # ]:          0 :     aServices[ 0 ] = lcl_aServiceName;
     418 [ #  # ][ #  # ]:          0 :     aServices[ 1 ] = C2U( "com.sun.star.chart2.PotentialRegressionCurve" );
     419                 :          0 :     return aServices;
     420                 :            : }
     421                 :            : // implement XServiceInfo methods basing upon getSupportedServiceNames_Static
     422 [ #  # ][ #  # ]:         30 : APPHELPER_XSERVICEINFO_IMPL( PotentialRegressionCurve, lcl_aImplementationName_Potential );
         [ #  # ][ #  # ]
                 [ #  # ]
     423                 :            : 
     424                 :          0 : uno::Reference< util::XCloneable > SAL_CALL PotentialRegressionCurve::createClone()
     425                 :            :     throw (uno::RuntimeException)
     426                 :            : {
     427 [ #  # ][ #  # ]:          0 :     return uno::Reference< util::XCloneable >( new PotentialRegressionCurve( *this ));
     428                 :            : }
     429                 :            : 
     430                 :            : 
     431 [ +  - ][ +  - ]:         48 : } //  namespace chart
     432                 :            : 
     433                 :            : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10