RVNGPropertyListVector.h Source File documentation

RVNGPropertyListVector.h
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2/* librevenge
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) 2005 William Lachance (wrlach@gmail.com)
11 * Copyright (C) 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
21#ifndef RVNGPROPERTYLISTVECTOR_H
22#define RVNGPROPERTYLISTVECTOR_H
23
24#include "librevenge-api.h"
25
26#include "RVNGPropertyList.h"
27
28namespace librevenge
29{
30
31class RVNGPropertyListVectorImpl;
32class RVNGPropertyListVectorIterImpl;
33
34 class REVENGE_API RVNGPropertyListVector : public RVNGProperty
35{
36public:
37 RVNGPropertyListVector(const RVNGPropertyListVector &);
38 RVNGPropertyListVector();
39 virtual ~RVNGPropertyListVector();
40
41 // RVNGProperty methods
42 int getInt() const;
43 double getDouble() const;
44 RVNGUnit getUnit() const;
45 RVNGString getStr() const;
46 RVNGProperty *clone() const;
47
48 void append(const RVNGPropertyList &elem);
49 void append(const RVNGPropertyListVector &vec);
50 unsigned long count() const;
51 bool empty() const;
52 void clear();
53 const RVNGPropertyList &operator[](unsigned long index) const;
54 RVNGPropertyListVector &operator=(const RVNGPropertyListVector &vect);
55
56 RVNGString getPropString() const;
57
58 class REVENGE_API Iter
59 {
60 public:
61 Iter(const RVNGPropertyListVector &vect);
62 virtual ~Iter();
63 void rewind();
64 bool next();
65 bool last();
66 const RVNGPropertyList &operator()() const;
67
68 private:
69 RVNGPropertyListVectorIterImpl *m_iterImpl;
70 Iter(const Iter &);
71 Iter &operator=(const Iter &);
72 };
73
74 friend class RVNGPropertyListVector::Iter;
75
76private:
77 RVNGPropertyListVectorImpl *m_impl;
78};
79
80}
81
82#endif /* RVNGPROPERTYLISTVECTOR_H */
83/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
RVNGPropertyList.h
librevenge::RVNGPropertyListVectorImpl
Definition RVNGPropertyListVector.cpp:29
librevenge::RVNGPropertyListVectorIterImpl
Definition RVNGPropertyListVector.cpp:57
librevenge::RVNGPropertyListVector::Iter
Definition RVNGPropertyListVector.h:59
librevenge::RVNGPropertyListVector::Iter::rewind
void rewind()
Definition RVNGPropertyListVector.cpp:206
librevenge::RVNGPropertyListVector::Iter::Iter
Iter(const Iter &)
librevenge::RVNGPropertyListVector::Iter::m_iterImpl
RVNGPropertyListVectorIterImpl * m_iterImpl
Definition RVNGPropertyListVector.h:69
librevenge::RVNGPropertyListVector::Iter::next
bool next()
Definition RVNGPropertyListVector.cpp:211
librevenge::RVNGPropertyListVector::Iter::Iter
Iter(const RVNGPropertyListVector &vect)
Definition RVNGPropertyListVector.cpp:171
librevenge::RVNGPropertyListVector::Iter::operator=
Iter & operator=(const Iter &)
librevenge::RVNGPropertyListVector::Iter::operator()
const RVNGPropertyList & operator()() const
Definition RVNGPropertyListVector.cpp:221
librevenge::RVNGPropertyListVector::Iter::last
bool last()
Definition RVNGPropertyListVector.cpp:216
librevenge::RVNGPropertyListVector::getDouble
double getDouble() const
Definition RVNGPropertyListVector.cpp:113
librevenge::RVNGPropertyListVector::clear
void clear()
Definition RVNGPropertyListVector.cpp:155
librevenge::RVNGPropertyListVector::getStr
RVNGString getStr() const
Definition RVNGPropertyListVector.cpp:123
librevenge::RVNGPropertyListVector::clone
RVNGProperty * clone() const
Definition RVNGPropertyListVector.cpp:128
librevenge::RVNGPropertyListVector::getInt
int getInt() const
Definition RVNGPropertyListVector.cpp:108
librevenge::RVNGPropertyListVector::count
unsigned long count() const
Definition RVNGPropertyListVector.cpp:145
librevenge::RVNGPropertyListVector::getPropString
RVNGString getPropString() const
Definition RVNGPropertyListVector.cpp:176
librevenge::RVNGPropertyListVector::RVNGPropertyListVector
RVNGPropertyListVector(const RVNGPropertyListVector &)
Definition RVNGPropertyListVector.cpp:93
librevenge::RVNGPropertyListVector::operator=
RVNGPropertyListVector & operator=(const RVNGPropertyListVector &vect)
Definition RVNGPropertyListVector.cpp:165
librevenge::RVNGPropertyListVector::operator[]
const RVNGPropertyList & operator[](unsigned long index) const
Definition RVNGPropertyListVector.cpp:160
librevenge::RVNGPropertyListVector::getUnit
RVNGUnit getUnit() const
returns the property unit when possible.
Definition RVNGPropertyListVector.cpp:118
librevenge::RVNGPropertyListVector::append
void append(const RVNGPropertyList &elem)
Definition RVNGPropertyListVector.cpp:133
librevenge::RVNGPropertyListVector::empty
bool empty() const
Definition RVNGPropertyListVector.cpp:150
librevenge::RVNGPropertyListVector::m_impl
RVNGPropertyListVectorImpl * m_impl
Definition RVNGPropertyListVector.h:77
librevenge::RVNGPropertyList
Definition RVNGPropertyList.h:39
librevenge::RVNGProperty
Definition RVNGProperty.h:33
librevenge::RVNGString
UTF-8 string.
Definition RVNGString.h:34
librevenge-api.h
REVENGE_API
#define REVENGE_API
Definition librevenge-api.h:34
librevenge
Definition RVNGBinaryData.cpp:40
librevenge::RVNGUnit
RVNGUnit
Definition RVNGProperty.h:30