/usr/include/marble/GeoDataMultiGeometry.h is in libmarble-dev 4:17.12.3-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | //
// This file is part of the Marble Virtual Globe.
//
// This program is free software licensed under the GNU LGPL. You can
// find a copy of this license in LICENSE.txt in the top directory of
// the source code.
//
// Copyright 2008 Patrick Spendrin <ps_ml@gmx.de>
//
#ifndef MARBLE_GEODATAMULTIGEOMETRY_H
#define MARBLE_GEODATAMULTIGEOMETRY_H
#include "geodata_export.h"
#include "GeoDataGeometry.h"
#include <QVector>
namespace Marble
{
class GeoDataMultiGeometryPrivate;
/**
* @short A class that can contain other GeoDataGeometry objects
*
* GeoDataMultiGeometry is a collection of other GeoDataGeometry objects.
* As one can add GeoDataMultiGeometry to itself, you can make up a collection
* of different objects to form one Placemark.
*/
class GEODATA_EXPORT GeoDataMultiGeometry : public GeoDataGeometry
{
public:
GeoDataMultiGeometry();
explicit GeoDataMultiGeometry( const GeoDataGeometry& other );
~GeoDataMultiGeometry() override;
const char *nodeType() const override;
EnumGeometryId geometryId() const override;
GeoDataGeometry *copy() const override;
bool operator==(const GeoDataMultiGeometry &other) const;
bool operator!=(const GeoDataMultiGeometry &other) const { return !(*this == other); }
const GeoDataLatLonAltBox& latLonAltBox() const override;
int size() const;
GeoDataGeometry& at( int pos );
const GeoDataGeometry& at( int pos ) const;
GeoDataGeometry& operator[]( int pos );
const GeoDataGeometry& operator[]( int pos ) const;
GeoDataGeometry& first();
const GeoDataGeometry& first() const;
GeoDataGeometry& last();
const GeoDataGeometry& last() const;
/**
* @brief returns the requested child item
*/
GeoDataGeometry* child( int );
/**
* @brief returns the requested child item
*/
const GeoDataGeometry* child( int ) const;
/**
* @brief returns the position of an item in the list
*/
int childPosition( const GeoDataGeometry *child ) const;
/**
* @brief add an element
*/
void append( GeoDataGeometry *other );
GeoDataMultiGeometry& operator << ( const GeoDataGeometry& value );
QVector<GeoDataGeometry*>::Iterator begin();
QVector<GeoDataGeometry*>::Iterator end();
QVector<GeoDataGeometry*>::ConstIterator constBegin() const;
QVector<GeoDataGeometry*>::ConstIterator constEnd() const;
void clear();
QVector<GeoDataGeometry *> vector();
QVector<GeoDataGeometry*>::Iterator erase ( QVector<GeoDataGeometry*>::Iterator pos );
QVector<GeoDataGeometry*>::Iterator erase ( QVector<GeoDataGeometry*>::Iterator begin,
QVector<GeoDataGeometry*>::Iterator end );
// Serialize the Placemark to @p stream
void pack( QDataStream& stream ) const override;
// Unserialize the Placemark from @p stream
void unpack( QDataStream& stream ) override;
private:
Q_DECLARE_PRIVATE(GeoDataMultiGeometry)
};
}
#endif
|