LCOV - code coverage report
Current view: top level - sc/source/filter/xml - cachedattraccess.cxx (source / functions) Hit Total Coverage
Test: commit 10e77ab3ff6f4314137acd6e2702a6e5c1ce1fae Lines: 19 19 100.0 %
Date: 2014-11-03 Functions: 7 7 100.0 %
Legend: Lines: hit not hit

          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             : 
      10             : #include "cachedattraccess.hxx"
      11             : #include "document.hxx"
      12             : 
      13        1316 : ScXMLCachedRowAttrAccess::Cache::Cache() :
      14        1316 :     mnTab(-1), mnRow1(-1), mnRow2(-1), mbValue(false) {}
      15             : 
      16    25166364 : bool ScXMLCachedRowAttrAccess::Cache::hasCache(sal_Int32 nTab, sal_Int32 nRow) const
      17             : {
      18    25166364 :     return mnTab == nTab && mnRow1 <= nRow && nRow <= mnRow2;
      19             : }
      20             : 
      21         658 : ScXMLCachedRowAttrAccess::ScXMLCachedRowAttrAccess(ScDocument* pDoc) :
      22         658 :     mpDoc(pDoc) {}
      23             : 
      24    12583182 : bool ScXMLCachedRowAttrAccess::rowHidden(sal_Int32 nTab, sal_Int32 nRow)
      25             : {
      26    12583182 :     if (!maHidden.hasCache(nTab, nRow))
      27             :     {
      28             :         SCROW nRow1, nRow2;
      29             :         maHidden.mbValue = mpDoc->RowHidden(
      30    12583182 :             static_cast<SCROW>(nRow), static_cast<SCTAB>(nTab), &nRow1, &nRow2);
      31    12583182 :         maHidden.mnRow1 = static_cast<sal_Int32>(nRow1);
      32    12583182 :         maHidden.mnRow2 = static_cast<sal_Int32>(nRow2);
      33             :     }
      34    12583182 :     return maHidden.mbValue;
      35             : }
      36             : 
      37    12583182 : bool ScXMLCachedRowAttrAccess::rowFiltered(sal_Int32 nTab, sal_Int32 nRow)
      38             : {
      39    12583182 :     if (!maFiltered.hasCache(nTab, nRow))
      40             :     {
      41             :         SCROW nRow1, nRow2;
      42             :         maFiltered.mbValue = mpDoc->RowFiltered(
      43    12583182 :             static_cast<SCROW>(nRow), static_cast<SCTAB>(nTab), &nRow1, &nRow2);
      44    12583182 :         maFiltered.mnRow1 = static_cast<sal_Int32>(nRow1);
      45    12583182 :         maFiltered.mnRow2 = static_cast<sal_Int32>(nRow2);
      46             :     }
      47    12583182 :     return maFiltered.mbValue;
      48         228 : }
      49             : 
      50             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10