Isis Developer Reference
CnetDisplayProperties.h
Go to the documentation of this file.
1#ifndef CnetDisplayProperties_H
2#define CnetDisplayProperties_H
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12#include <QObject>
13
14
15class QAtomicInt;
16template< typename T > class QFutureWatcher;
17template< typename A, typename B > class QMap;
18class QReadWriteLock;
19class QString;
20class QTimer;
21
22
23namespace Isis {
24 class ControlNet;
25
50 Q_OBJECT
51
52 public:
53 // this is a singleton class!
55 virtual ~CnetDisplayProperties();
56
57 bool currentlyComposing() const;
58
59 // enumeration of coordinate display type
64
65 QList<QString> getCubeList(ControlNet *cnet) const;
66 QString getFileName(QString fileName, bool forceFullPaths = false) const;
67 QString getImageName(QString cubeSerialNumber,
68 bool forceFullPaths = false) const;
69 QString getSerialNumber(QString imageId);
70 bool getShowsFullPaths() const;
72
73 void setCubeList(QString fileName);
74 void setFileNameUsage(bool preferFileNames);
75 void setShowsFullPaths(bool newState);
76 void setCoordinateDisplayType(enum coordinateDisplayType coordDisplay);
77
78
79 private:
81
82
83 private: // not implemented
86
87
88 signals:
92
93
94 private:
95 QMap< QString, QString > composeSerialNumbers(QStringList fileNames);
96 void nullify();
97
98
99 private slots:
100 void composeStatusUpdated();
101 void serialNumbersComposed();
102
103
104 private:
105 bool useFileNames;
106 QMap< QString, QString > * m_serialNumberToFileNameMap;
107
108 QFutureWatcher< QMap< QString, QString > > * m_composeWatcher;
109 QTimer *m_composeStatusPoller;
110
111 QAtomicInt *m_composedCount;
112 QAtomicInt *m_interruptFlag;
113 bool m_curComposing;
114 bool m_showFullPath;
115 QReadWriteLock *m_readWriteLock;
116 enum Isis::CnetDisplayProperties::coordinateDisplayType m_coordinateDisplayType;
117
118 static CnetDisplayProperties *m_instance;
119 };
120}
121
122#endif
Handles how control networks should be displayed to the user.
Definition CnetDisplayProperties.h:49
bool currentlyComposing() const
Definition CnetDisplayProperties.cpp:100
QList< QString > getCubeList(ControlNet *cnet) const
TODO comment me.
Definition CnetDisplayProperties.cpp:113
QString getImageName(QString cubeSerialNumber, bool forceFullPaths=false) const
Definition CnetDisplayProperties.cpp:153
QString getFileName(QString fileName, bool forceFullPaths=false) const
Definition CnetDisplayProperties.cpp:129
static CnetDisplayProperties * getInstance()
Definition CnetDisplayProperties.cpp:37
void setCoordinateDisplayType(enum coordinateDisplayType coordDisplay)
Sets the coordinate display type (0 = LatLonRadius, 1 = XYZ).
Definition CnetDisplayProperties.cpp:280
QString getSerialNumber(QString imageId)
Definition CnetDisplayProperties.cpp:176
virtual ~CnetDisplayProperties()
Definition CnetDisplayProperties.cpp:85
CnetDisplayProperties::coordinateDisplayType coordinateDisplayType()
void setCubeList(QString fileName)
Definition CnetDisplayProperties.cpp:215
void composeProgressRangeChanged(int, int)
bool getShowsFullPaths() const
Definition CnetDisplayProperties.cpp:199
coordinateDisplayType
Returns coordinate display type (0 = LatLonRadius, 1 = XYZ).
Definition CnetDisplayProperties.h:60
@ XYZ
Definition CnetDisplayProperties.h:62
@ LatLonRadius
Definition CnetDisplayProperties.h:61
void setShowsFullPaths(bool newState)
Definition CnetDisplayProperties.cpp:267
void setFileNameUsage(bool preferFileNames)
Definition CnetDisplayProperties.cpp:249
a control network
Definition ControlNet.h:258
This is free and unencumbered software released into the public domain.
Definition AbstractTableModel.h:24
This is free and unencumbered software released into the public domain.
Definition CubeIoHandler.h:22
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16