LibreOffice Module sc (master) 1
pivotcachefragment.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 "excelhandlers.hxx"
23
24namespace oox::xls {
25
26class PivotCache;
27class PivotCacheField;
28
30{
31public:
33 WorkbookFragmentBase& rFragment,
34 PivotCacheField& rCacheField );
35
36protected:
37 virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) override;
38 virtual void onStartElement( const AttributeList& rAttribs ) override;
39 virtual ::oox::core::ContextHandlerRef onCreateRecordContext( sal_Int32 nRecId, SequenceInputStream& rStrm ) override;
40 virtual void onStartRecord( SequenceInputStream& rStrm ) override;
41
42private:
44};
45
47{
48public:
50 const WorkbookHelper& rHelper,
51 const OUString& rFragmentPath,
52 PivotCache& rPivotCache );
53
54protected:
55 virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) override;
56 virtual ::oox::core::ContextHandlerRef onCreateRecordContext( sal_Int32 nRecId, SequenceInputStream& rStrm ) override;
57 virtual const ::oox::core::RecordInfo* getRecordInfos() const override;
58 virtual void finalizeImport() override;
59
60private:
62};
63
65{
66public:
68 const WorksheetHelper& rHelper,
69 const OUString& rFragmentPath,
70 const PivotCache& rPivotCache );
71
72protected:
73 virtual ::oox::core::ContextHandlerRef onCreateContext( sal_Int32 nElement, const AttributeList& rAttribs ) override;
74 virtual ::oox::core::ContextHandlerRef onCreateRecordContext( sal_Int32 nRecId, SequenceInputStream& rStrm ) override;
75 virtual const ::oox::core::RecordInfo* getRecordInfos() const override;
76
77private:
78 void startCacheRecord();
80 void importPCRecordItem( sal_Int32 nRecId, SequenceInputStream& rStrm );
81
82private:
84 sal_Int32 mnColIdx;
85 sal_Int32 mnRowIdx;
87};
88
89} // namespace oox::xls
90
91/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
PivotCacheDefinitionFragment(const WorkbookHelper &rHelper, const OUString &rFragmentPath, PivotCache &rPivotCache)
virtual const ::oox::core::RecordInfo * getRecordInfos() const override
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
virtual ::oox::core::ContextHandlerRef onCreateRecordContext(sal_Int32 nRecId, SequenceInputStream &rStrm) override
PivotCacheFieldContext(WorkbookFragmentBase &rFragment, PivotCacheField &rCacheField)
virtual void onStartRecord(SequenceInputStream &rStrm) override
virtual void onStartElement(const AttributeList &rAttribs) override
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
virtual ::oox::core::ContextHandlerRef onCreateRecordContext(sal_Int32 nRecId, SequenceInputStream &rStrm) override
bool mbInRecord
Relative row index in source data.
virtual ::oox::core::ContextHandlerRef onCreateContext(sal_Int32 nElement, const AttributeList &rAttribs) override
PivotCacheRecordsFragment(const WorksheetHelper &rHelper, const OUString &rFragmentPath, const PivotCache &rPivotCache)
virtual const ::oox::core::RecordInfo * getRecordInfos() const override
void importPCRecord(SequenceInputStream &rStrm)
sal_Int32 mnRowIdx
Relative column index in source data.
void importPCRecordItem(sal_Int32 nRecId, SequenceInputStream &rStrm)
virtual ::oox::core::ContextHandlerRef onCreateRecordContext(sal_Int32 nRecId, SequenceInputStream &rStrm) override
Context handler derived from the WorkbookHelper helper class.
Fragment handler derived from the WorkbookHelper helper class.
Helper class to provide access to global workbook data.
Fragment handler derived from the WorksheetHelper helper class.
void SvStream & rStrm