QXP33Header.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3 * This file is part of the libqxp 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 #ifndef QXP33HEADER_H_INCLUDED
11 #define QXP33HEADER_H_INCLUDED
12
13 #include "libqxp_utils.h"
14 #include "QXP3HeaderBase.h"
15 #include "QXPTypes.h"
16
17 namespace libqxp
18 {
19
20 class QXP33Header : public QXP3HeaderBase, public std::enable_shared_from_this<QXP33Header>
21 {
22 public:
23 explicit QXP33Header(const boost::optional<QXPDocument::Type> &fileType = boost::none);
24
25 bool load(const std::shared_ptr<librevenge::RVNGInputStream> &input) override;
26
27 QXPDocument::Type getType() const override;
28
29 std::unique_ptr<QXPParser> createParser(const std::shared_ptr<librevenge::RVNGInputStream> &input, librevenge::RVNGDrawingInterface *painter) override;
30
31 uint16_t pagesCount() const;
32 uint16_t masterPagesCount() const;
33 uint16_t seed() const;
34 uint16_t increment() const;
35 const QXPDocumentProperties &documentProperties() const;
36
37 private:
38 uint16_t m_pagesCount;
39 uint16_t m_masterPagesCount;
40 uint16_t m_seed;
41 uint16_t m_increment;
42 QXPDocumentProperties m_documentProperties;
43 };
44
45 }
46
47 #endif // QXP33HEADER_H_INCLUDED
48
49 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libqxp::QXP33Header::m_pagesCount
uint16_t m_pagesCount
Definition: QXP33Header.h:38
libqxp::readU16
uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libqxp_utils.cpp:111
libqxp::QXPDocumentProperties::superscriptHScale
double superscriptHScale
Definition: QXPTypes.h:576
libqxp::QXP33Header::masterPagesCount
uint16_t masterPagesCount() const
Definition: QXP33Header.cpp:73
libqxp::QXPDocumentProperties::subscriptHScale
double subscriptHScale
Definition: QXPTypes.h:579
libqxp::QXPHeader::isLittleEndian
bool isLittleEndian() const
Definition: QXPHeader.cpp:25
QXP33Parser.h
libqxp::QXPDocumentProperties::subscriptVScale
double subscriptVScale
Definition: QXPTypes.h:580
libqxp::QXPDocumentProperties::setAutoLeading
void setAutoLeading(const double val)
Definition: QXPTypes.cpp:159
libqxp
Definition: libqxp_utils.cpp:24
libqxp::QXP33Parser
Definition: QXP33Parser.h:24
libqxp::QXP33Header::documentProperties
const QXPDocumentProperties & documentProperties() const
Definition: QXP33Header.cpp:88
QXP3HeaderBase.h
libqxp::QXP3HeaderBase::load
bool load(const std::shared_ptr< librevenge::RVNGInputStream > &input) override
Definition: QXP3HeaderBase.cpp:23
libqxp::QXP33Header::m_seed
uint16_t m_seed
Definition: QXP33Header.h:40
libqxp::QXPDocumentProperties::superiorVScale
double superiorVScale
Definition: QXPTypes.h:582
libqxp::QXP33Header::createParser
std::unique_ptr< QXPParser > createParser(const std::shared_ptr< librevenge::RVNGInputStream > &input, librevenge::RVNGDrawingInterface *painter) override
Definition: QXP33Header.cpp:63
libqxp::QXP33Header::getType
QXPDocument::Type getType() const override
Definition: QXP33Header.cpp:58
libqxp::QXP33Header
Definition: QXP33Header.h:20
libqxp::QXP33Header::increment
uint16_t increment() const
Definition: QXP33Header.cpp:83
libqxp::seek
void seek(librevenge::RVNGInputStream *const input, const unsigned long pos)
Definition: libqxp_utils.cpp:241
libqxp::QXPHeader::m_fileType
boost::optional< QXPDocument::Type > m_fileType
Definition: QXPHeader.h:61
libqxp::QXPDocumentProperties::superscriptVScale
double superscriptVScale
Definition: QXPTypes.h:577
libqxp_utils.h
libqxp::QXP3HeaderBase
Definition: QXP3HeaderBase.h:20
libqxp::QXPDocumentProperties::superscriptOffset
double superscriptOffset
Definition: QXPTypes.h:575
libqxp::QXP33Header::m_masterPagesCount
uint16_t m_masterPagesCount
Definition: QXP33Header.h:39
libqxp::QXPDocumentProperties::subscriptOffset
double subscriptOffset
Definition: QXPTypes.h:578
libqxp::readFraction
double readFraction(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libqxp_utils.cpp:174
libqxp::seekRelative
void seekRelative(librevenge::RVNGInputStream *const input, const long pos)
Definition: libqxp_utils.cpp:250
libqxp::QXPDocumentProperties
Definition: QXPTypes.h:560
libqxp::QXP33Header::load
bool load(const std::shared_ptr< librevenge::RVNGInputStream > &input) override
Definition: QXP33Header.cpp:27
libqxp::QXP33Header::seed
uint16_t seed() const
Definition: QXP33Header.cpp:78
libqxp::QXPHeader::isBigEndian
bool isBigEndian() const
Definition: QXPHeader.cpp:30
QXPTypes.h
libqxp::QXP33Header::m_documentProperties
QXPDocumentProperties m_documentProperties
Definition: QXP33Header.h:42
libqxp::readU8
uint8_t readU8(librevenge::RVNGInputStream *input, bool)
Definition: libqxp_utils.cpp:99
libqxp::QXPDocumentProperties::superiorHScale
double superiorHScale
Definition: QXPTypes.h:581
libqxp::QXP33Header::QXP33Header
QXP33Header(const boost::optional< QXPDocument::Type > &fileType=boost::none)
Definition: QXP33Header.cpp:17
libqxp::QXP33Header::pagesCount
uint16_t pagesCount() const
Definition: QXP33Header.cpp:68
libqxp::skip
void skip(librevenge::RVNGInputStream *input, unsigned long numBytes)
Definition: libqxp_utils.cpp:234
libqxp::QXP33Header::m_increment
uint16_t m_increment
Definition: QXP33Header.h:41
QXP33Header.h