File indexing completed on 2024-03-24 05:46:59
0001 /* 0002 SPDX-FileCopyrightText: 2011 Dmitry Risenberg <dmitry.risenberg@gmail.com> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef KOMPAREDIFF2_MARKER_H 0008 #define KOMPAREDIFF2_MARKER_H 0009 0010 // lib 0011 #include "komparediff2_export.h" 0012 // Qt 0013 #include <QList> 0014 0015 namespace KompareDiff2 0016 { 0017 0018 /** 0019 * @class Marker marker.h <KompareDiff2/Marker> 0020 * 0021 * A Marker. 0022 */ 0023 class KOMPAREDIFF2_EXPORT Marker 0024 { 0025 public: 0026 enum Type { 0027 Start = 0, 0028 End = 1, 0029 }; 0030 0031 public: 0032 Marker() 0033 { 0034 m_type = Marker::Start; 0035 m_offset = 0; 0036 } 0037 Marker(Marker::Type type, unsigned int offset) 0038 { 0039 m_type = type; 0040 m_offset = offset; 0041 } 0042 ~Marker() = default; 0043 0044 public: 0045 Marker::Type type() const 0046 { 0047 return m_type; 0048 } 0049 unsigned int offset() const 0050 { 0051 return m_offset; 0052 } 0053 0054 void setType(Marker::Type type) 0055 { 0056 m_type = type; 0057 } 0058 void setOffset(unsigned int offset) 0059 { 0060 m_offset = offset; 0061 } 0062 0063 bool operator==(const Marker &rhs) const 0064 { 0065 return this->type() == rhs.type() && this->offset() == rhs.offset(); 0066 } 0067 0068 private: 0069 Marker::Type m_type; 0070 unsigned int m_offset; 0071 }; 0072 0073 using MarkerList = QList<Marker *>; 0074 using MarkerListIterator = QList<Marker *>::iterator; 0075 using MarkerListConstIterator = QList<Marker *>::const_iterator; 0076 0077 } 0078 0079 #endif // KOMPAREDIFF2_MARKER_H