File indexing completed on 2023-05-30 09:06:33

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2016 Dennis Nienhüser <nienhueser@kde.org>
0004 //
0005 
0006 #ifndef TILEQUEUE_H
0007 #define TILEQUEUE_H
0008 
0009 #include "TileId.h"
0010 
0011 #include <QSharedMemory>
0012 
0013 namespace Marble {
0014 
0015 QDataStream& operator<<(QDataStream&, const TileId& tile);
0016 QDataStream& operator>>(QDataStream&, TileId& tile);
0017 
0018 class TileQueue
0019 {
0020 
0021 public:
0022     TileQueue();
0023     ~TileQueue();
0024 
0025     bool read(QSet<TileId> &tileQueue);
0026     bool write(const QSet<TileId> &tileQueue);
0027 
0028 private:
0029     void release();
0030 
0031     Q_DISABLE_COPY(TileQueue)
0032 
0033     QSharedMemory m_sharedMemory;
0034 };
0035 
0036 }
0037 
0038 #endif