File indexing completed on 2024-05-05 08:41:14
0001 /* 0002 * Copyright (C) 2010-2015 by Stephen Allewell 0003 * steve.allewell@gmail.com 0004 * 0005 * This program is free software; you can redistribute it and/or modify 0006 * it under the terms of the GNU General Public License as published by 0007 * the Free Software Foundation; either version 2 of the License, or 0008 * (at your option) any later version. 0009 */ 0010 0011 #include "Layer.h" 0012 0013 Layer::Layer() 0014 { 0015 } 0016 0017 Layer::Layer(int number, const QString &name) 0018 : m_number(number) 0019 , m_name(name) 0020 { 0021 } 0022 0023 int Layer::number() const 0024 { 0025 return m_number; 0026 } 0027 0028 const QString &Layer::name() const 0029 { 0030 return m_name; 0031 } 0032 0033 void Layer::setNumber(int number) 0034 { 0035 m_number = number; 0036 } 0037 0038 void Layer::setName(const QString &name) 0039 { 0040 m_name = name; 0041 } 0042 0043 QDataStream &operator<<(QDataStream &stream, const Layer &layer) 0044 { 0045 stream << qint32(layer.version); 0046 stream << qint32(layer.m_number); 0047 stream << layer.m_name; 0048 0049 return stream; 0050 } 0051 0052 QDataStream &operator>>(QDataStream &stream, Layer &layer) 0053 { 0054 qint32 version; 0055 qint32 number; 0056 0057 stream >> version; 0058 0059 switch (version) { 0060 case 100: 0061 stream >> number; 0062 layer.m_number = number; 0063 stream >> layer.m_name; 0064 break; 0065 0066 default: 0067 // not supported 0068 // throw exception 0069 break; 0070 } 0071 0072 return stream; 0073 }