WP3VariableLengthGroup.h Source File documentation

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

WP3VariableLengthGroup.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 /* libwpd
3 * Version: MPL 2.0 / LGPLv2.1+
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 * Major Contributor(s):
10 * Copyright (C) 2004 Marc Maurer (uwog@uwog.net)
11 * Copyright (C) 2005-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
12 *
13 * For minor contributions see the git repository.
14 *
15 * Alternatively, the contents of this file may be used under the terms
16 * of the GNU Lesser General Public License Version 2.1 or later
17 * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
18 * applicable instead of those above.
19 *
20 * For further information visit http://libwpd.sourceforge.net
21 */
22
23 /* "This product is not manufactured, approved, or supported by
24 * Corel Corporation or Corel Corporation Limited."
25 */
26
27 #ifndef WP3VARIABLELENGTHGROUP_H
28 #define WP3VARIABLELENGTHGROUP_H
29
30 #include "WP3Part.h"
31
32 class WPXEncryption;
33
34 class WP3VariableLengthGroup : public WP3Part
35 {
36 public:
37 WP3VariableLengthGroup(); // WP3VariableLengthGroup should _never_ be constructed, only its inherited classes
38 virtual ~WP3VariableLengthGroup() {}
39
40 static WP3VariableLengthGroup *constructVariableLengthGroup(librevenge::RVNGInputStream *input, WPXEncryption *encryption, const unsigned char group);
41
42 static bool isGroupConsistent(librevenge::RVNGInputStream *input, WPXEncryption *encryption, const unsigned char group);
43
44 protected:
45 void _read(librevenge::RVNGInputStream *input, WPXEncryption *encryption);
46 virtual void _readContents(librevenge::RVNGInputStream * /* input */, WPXEncryption * /* encryption */) {} // we don't always need more information than that provided generically
47
48 unsigned char getSubGroup() const
49 {
50 return m_subGroup;
51 }
52 unsigned short getSize() const
53 {
54 return m_size;
55 }
56
57 private:
58 unsigned char m_subGroup;
59 unsigned short m_size;
60 };
61
62 #endif /* WP3VARIABLELENGTHGROUP_H */
63 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
WP3VariableLengthGroup::_readContents
virtual void _readContents(librevenge::RVNGInputStream *, WPXEncryption *)
Definition: WP3VariableLengthGroup.h:46
WP3VariableLengthGroup::isGroupConsistent
static bool isGroupConsistent(librevenge::RVNGInputStream *input, WPXEncryption *encryption, const unsigned char group)
Definition: WP3VariableLengthGroup.cpp:79
WP3VariableLengthGroup::~WP3VariableLengthGroup
virtual ~WP3VariableLengthGroup()
Definition: WP3VariableLengthGroup.h:38
WP3VariableLengthGroup::m_size
unsigned short m_size
Definition: WP3VariableLengthGroup.h:59
WP3Part.h
WP3Part
Definition: WP3Part.h:35
WP3VariableLengthGroup
Definition: WP3VariableLengthGroup.h:34
WP3VariableLengthGroup::getSize
unsigned short getSize() const
Definition: WP3VariableLengthGroup.h:52
WP3VariableLengthGroup::getSubGroup
unsigned char getSubGroup() const
Definition: WP3VariableLengthGroup.h:48
WP3VariableLengthGroup::_read
void _read(librevenge::RVNGInputStream *input, WPXEncryption *encryption)
Definition: WP3VariableLengthGroup.cpp:126
WP3VariableLengthGroup::m_subGroup
unsigned char m_subGroup
Definition: WP3VariableLengthGroup.h:58
WP3VariableLengthGroup::constructVariableLengthGroup
static WP3VariableLengthGroup * constructVariableLengthGroup(librevenge::RVNGInputStream *input, WPXEncryption *encryption, const unsigned char group)
Definition: WP3VariableLengthGroup.cpp:49
WPXEncryption
Definition: WPXEncryption.h:33
WP3VariableLengthGroup::WP3VariableLengthGroup
WP3VariableLengthGroup()
Definition: WP3VariableLengthGroup.cpp:43