libodsstream
Library for mass spectrometry
Loading...
Searching...
No Matches
odsdochandlerinterface.h
Go to the documentation of this file.
1/**
2 * \file odsstream/odsdochandlerinterface.h
3 * \date 10/03/2015
4 * \author Olivier Langella
5 * \brief interface to implement, needed to read an ODS document
6 * A developper has to create a new class implementing this interface.
7 * The member functions are triggered by the OdsDocReader class.
8 * It acts as a SAX handler to read ODS files as streams.
9 */
10
11/*******************************************************************************
12 * Copyright (c) 2013 Olivier Langella <Olivier.Langella@u-psud.fr>.
13 *
14 * This file is part of the libodsstream library.
15 *
16 * libodsstream is a library to read and write ODS documents as streams
17 * Copyright (C) 2013 Olivier Langella <Olivier.Langella@u-psud.fr>
18 *
19 * This program is free software: you can redistribute it and/or modify
20 * it under the terms of the GNU Lesser General Public License as published
21 *by the Free Software Foundation, either version 3 of the License, or (at your
22 *option) any later version.
23 *
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU Lesser General Public License for more details.
28 *
29 * You should have received a copy of the GNU Lesser General Public License
30 * along with this program. If not, see <http://www.gnu.org/licenses/>.
31 *
32 * Contributors:
33 * Olivier Langella <Olivier.Langella@u-psud.fr> - initial API and
34 *implementation
35 ******************************************************************************/
36
37#pragma once
38
39#include <QString>
40#include "reader/odscell.h"
41
43{
44 public:
45 /**
46 * callback that indicates the begining of a data sheet. Override it in
47 * order to retrieve information about the current data sheet.
48 *
49 */
50 virtual void startSheet(const QString &sheet_name) = 0;
51
52 /**
53 * callback that indicates the end of the current data sheet. Override it if
54 * needed
55 */
56 virtual void endSheet() = 0;
57
58 /**
59 * callback that indicates a new line start. Override it if needed.
60 */
61
62 virtual void startLine() = 0;
63
64 /**
65 * callback that indicates a line ending. Override it if needed.
66 */
67
68 virtual void endLine() = 0;
69
70 /**
71 * callback that report the content of the current cell in a dedicated Cell
72 * object. Override it if you need to retrieve cell content.
73 */
74 virtual void setCell(const OdsCell &) = 0;
75
76 /**
77 * callback that report the end of the ODS document. Override it if you need
78 * to know that reading is finished.
79 */
80 virtual void endDocument() = 0;
81};
82
virtual void endSheet()=0
virtual void setCell(const OdsCell &)=0
virtual void endDocument()=0
virtual void startLine()=0
virtual void startSheet(const QString &sheet_name)=0
virtual void endLine()=0