LibreOffice Module sc (master)  1
xltracer.hxx
Go to the documentation of this file.
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 #pragma once
21 
22 #include <address.hxx>
23 #include <vector>
24 
25 // As Trace features become implemented, we can safely delete the enum entry as
26 // we use the member mnID to keep track of the actual trace tag ID value.
28 {
47 };
48 
50 class XclTracer final
51 {
52 public:
53  explicit XclTracer( std::u16string_view rDocUrl );
54  ~XclTracer();
55 
57  bool IsEnabled() const { return mbEnabled; }
58 
60  void ProcessTraceOnce(XclTracerId eProblem);
61 
62  void TraceInvalidAddress(const ScAddress& rPos, const ScAddress& rMaxPos);
63  void TraceInvalidRow( sal_uInt32 nRow, sal_uInt32 nMaxrow );
64  void TraceInvalidTab( SCTAB nTab, SCTAB nMaxTab);
65  void TracePrintRange();
66  void TraceDates(sal_uInt16 nNumFmt);
67  void TraceBorderLineStyle(bool bBorderLineStyle);
68  void TraceFillPattern(bool bFillPattern);
70  void TracePivotDataSource(bool bExternal);
71  void TracePivotChartExists();
72  void TraceChartUnKnownType();
73  void TraceChartOnlySheet();
74  void TraceChartDataTable();
78  void TraceDVType(bool bType);
79 
80 private:
81  bool mbEnabled;
83  std::vector<bool> maFirstTimes;
84 };
85 
86 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
void TraceBorderLineStyle(bool bBorderLineStyle)
Definition: xltracer.cxx:71
This class wraps an MSFilterTracer to create trace logs for import/export filters.
Definition: xltracer.hxx:50
void TraceFillPattern(bool bFillPattern)
Definition: xltracer.cxx:77
unused but allows us to set the correct index
Definition: xltracer.hxx:30
XclTracer(std::u16string_view rDocUrl)
Definition: xltracer.cxx:28
~XclTracer()
Definition: xltracer.cxx:34
void TracePivotDataSource(bool bExternal)
Definition: xltracer.cxx:89
void TraceChartLegendPosition()
Definition: xltracer.cxx:111
void TraceDVType(bool bType)
Definition: xltracer.cxx:126
std::vector< bool > maFirstTimes
array of flags corresponding to each entry in the XclTracerDetails table.
Definition: xltracer.hxx:83
XclTracerId
Definition: xltracer.hxx:27
void TracePivotChartExists()
Definition: xltracer.cxx:95
void TraceObjectNotPrintable()
Definition: xltracer.cxx:124
void TraceInvalidRow(sal_uInt32 nRow, sal_uInt32 nMaxrow)
Definition: xltracer.cxx:50
void TraceInvalidTab(SCTAB nTab, SCTAB nMaxTab)
Definition: xltracer.cxx:56
void TraceFormulaMissingArg()
Definition: xltracer.cxx:83
bool mbEnabled
Definition: xltracer.hxx:81
void TraceChartOnlySheet()
Definition: xltracer.cxx:103
void ProcessTraceOnce(XclTracerId eProblem)
Ensure that particular traces are logged once per document.
Definition: xltracer.cxx:36
this should always be the final entry
Definition: xltracer.hxx:46
void TraceChartDataTable()
Definition: xltracer.cxx:105
bool IsEnabled() const
Returns true, if tracing is enabled.
Definition: xltracer.hxx:57
void TraceChartUnKnownType()
Definition: xltracer.cxx:101
void TraceInvalidAddress(const ScAddress &rPos, const ScAddress &rMaxPos)
Definition: xltracer.cxx:44
void TracePrintRange()
Definition: xltracer.cxx:62
void TraceUnsupportedObjects()
Definition: xltracer.cxx:118
void TraceDates(sal_uInt16 nNumFmt)
Definition: xltracer.cxx:64
sal_Int16 SCTAB
Definition: types.hxx:22