• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.14
  • kdeedu
  • marble
  • src
  • lib
  • marble
  • geodata
  • data
GeoDataMultiTrack.h
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2012 Thibaut Gridel <tgridel@free.fr>
9 
10 #ifndef GEODATAMULTITRACK_H
11 #define GEODATAMULTITRACK_H
12 
13 #include "geodata_export.h"
14 
15 #include "GeoDataGeometry.h"
16 
17 #include <QVector>
18 
19 namespace Marble
20 {
21 
22 class GeoDataMultiTrackPrivate;
23 class GeoDataTrack;
24 
25 class GEODATA_EXPORT GeoDataMultiTrack : public GeoDataGeometry
26 {
27 public:
28  GeoDataMultiTrack();
29  explicit GeoDataMultiTrack( const GeoDataGeometry& other );
30 
31  virtual ~GeoDataMultiTrack();
32 
33  bool operator==( const GeoDataMultiTrack& other ) const;
34  bool operator!=( const GeoDataMultiTrack& other ) const;
35 
36  virtual const GeoDataLatLonAltBox& latLonAltBox() const;
37 
38  int size() const;
39  GeoDataTrack& at( int pos );
40  const GeoDataTrack& at( int pos ) const;
41  GeoDataTrack& operator[]( int pos );
42  const GeoDataTrack& operator[]( int pos ) const;
43 
44  GeoDataTrack& first();
45  const GeoDataTrack& first() const;
46  GeoDataTrack& last();
47  const GeoDataTrack& last() const;
48 
52  GeoDataTrack* child( int );
53 
57  const GeoDataTrack* child( int ) const;
58 
62  int childPosition( const GeoDataTrack *child ) const;
63 
67  void append( GeoDataTrack *other );
68 
69  GeoDataMultiTrack& operator << ( const GeoDataTrack& value );
70 
71  QVector<GeoDataTrack*>::Iterator begin();
72  QVector<GeoDataTrack*>::Iterator end();
73  QVector<GeoDataTrack*>::ConstIterator constBegin() const;
74  QVector<GeoDataTrack*>::ConstIterator constEnd() const;
75  void clear();
76  QVector<GeoDataTrack> vector() const;
77 
78  QVector<GeoDataTrack*>::Iterator erase ( QVector<GeoDataTrack*>::Iterator pos );
79  QVector<GeoDataTrack*>::Iterator erase ( QVector<GeoDataTrack*>::Iterator begin,
80  QVector<GeoDataTrack*>::Iterator end );
81 
82  // Serialize the Placemark to @p stream
83  virtual void pack( QDataStream& stream ) const;
84  // Unserialize the Placemark from @p stream
85  virtual void unpack( QDataStream& stream );
86  private:
87  GeoDataMultiTrackPrivate *p();
88  const GeoDataMultiTrackPrivate *p() const;
89 };
90 
91 }
92 
93 #endif // GEODATAMULTITRACK_H
Marble::GeoDataMultiTrackPrivate
Definition: GeoDataMultiTrack_p.h:21
Marble::GeoDataMultiTrack
Definition: GeoDataMultiTrack.h:25
Marble::GeoDataTrack
A geometry for tracking objects made of (time, coordinates) pairs.
Definition: GeoDataTrack.h:54
QDataStream
Marble::GeoDataGeometry
A base class for all geodata features.
Definition: GeoDataGeometry.h:47
Marble::operator==
bool operator==(const DownloadPolicyKey &lhs, const DownloadPolicyKey &rhs)
Definition: DownloadPolicy.h:49
Marble::operator!=
bool operator!=(GeoDataLatLonBox const &lhs, GeoDataLatLonBox const &rhs)
Definition: GeoDataLatLonBox.cpp:59
QVector
GEODATA_EXPORT
#define GEODATA_EXPORT
Definition: geodata_export.h:22
geodata_export.h
Marble::operator<<
QTextStream & operator<<(QTextStream &stream, const RoutingInstruction &i)
Definition: RoutingInstruction.cpp:461
GeoDataGeometry.h
Marble::GeoDataLatLonAltBox
A class that defines a 3D bounding box for geographic data.
Definition: GeoDataLatLonAltBox.h:49
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:39 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal