| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | #ifndef INCLUDE_PREFERENCES_H
 | 
					
						
							|  |  |  | #define INCLUDE_PREFERENCES_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <QString>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-20 13:49:21 +01:00
										 |  |  | #include "export.h"
 | 
					
						
							| 
									
										
										
										
											2018-03-03 20:23:38 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | class SDRBASE_API Preferences { | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | public: | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  |     enum ElementType | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         SourceDevice = 2, | 
					
						
							|  |  |  |         AudioType, | 
					
						
							|  |  |  |         AudioDevice, | 
					
						
							|  |  |  |         SourceIndex, | 
					
						
							|  |  |  |         Latitude, | 
					
						
							|  |  |  |         Longitude, | 
					
						
							|  |  |  |         ConsoleMinLogLevel, | 
					
						
							|  |  |  |         UseLogFile, | 
					
						
							|  |  |  |         LogFileName, | 
					
						
							|  |  |  |         FileMinLogLevel, | 
					
						
							|  |  |  |         StationName, | 
					
						
							|  |  |  |         Altitude, | 
					
						
							| 
									
										
										
										
											2022-06-18 12:35:44 +01:00
										 |  |  |         SourceItemIndex, | 
					
						
							|  |  |  |         Multisampling | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  |     }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Preferences(); | 
					
						
							|  |  |  |     Preferences(const Preferences&) = default; | 
					
						
							|  |  |  |     Preferences& operator=(const Preferences&) = default; | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	void resetToDefaults(); | 
					
						
							|  |  |  | 	QByteArray serialize() const; | 
					
						
							|  |  |  | 	bool deserialize(const QByteArray& data); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	const QString& getSourceDevice() const { return m_sourceDevice; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setSourceDevice(const QString& value) { m_sourceDevice = value; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-10-02 02:22:56 +02:00
										 |  |  | 	int getSourceIndex() const { return m_sourceIndex; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setSourceIndex(const int value) { m_sourceIndex = value; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-05 12:35:39 +01:00
										 |  |  | 	int getSourceItemIndex() const { return m_sourceItemIndex; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setSourceItemIndex(const int value) { m_sourceItemIndex = value; } | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	const QString& getAudioType() const { return m_audioType; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setAudioType(const QString& value) { m_audioType = value; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | 	const QString& getAudioDevice() const { return m_audioDevice; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setAudioDevice(const QString& value) { m_audioDevice = value; } | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  |     QString getStationName() const { return m_stationName; } | 
					
						
							| 
									
										
										
										
											2020-10-27 16:22:10 +00:00
										 |  |  | 	void setStationName(const QString& name) { m_stationName = name; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-09-28 13:38:38 +02:00
										 |  |  | 	float getLatitude() const { return m_latitude; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  |     void setLatitude(float latitude) { m_latitude = latitude; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-09-28 13:38:38 +02:00
										 |  |  | 	float getLongitude() const { return m_longitude; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setLongitude(float longitude) { m_longitude = longitude; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-10-27 16:22:10 +00:00
										 |  |  | 	float getAltitude() const { return m_altitude; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setAltitude(float altitude) { m_altitude = altitude; } | 
					
						
							| 
									
										
										
										
											2016-09-28 13:38:38 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-11-12 02:23:55 +01:00
										 |  |  | 	QtMsgType getConsoleMinLogLevel() const { return m_consoleMinLogLevel; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setConsoleMinLogLevel(const QtMsgType& minLogLevel) { m_consoleMinLogLevel = minLogLevel; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-11-12 02:23:55 +01:00
										 |  |  |     QtMsgType getFileMinLogLevel() const { return m_fileMinLogLevel; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  |     void setFileMinLogLevel(const QtMsgType& minLogLevel) { m_fileMinLogLevel = minLogLevel; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-11-11 19:26:23 +01:00
										 |  |  | 	bool getUseLogFile() const { return m_useLogFile; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setUseLogFile(bool useLogFile) { m_useLogFile = useLogFile; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-11-11 19:26:23 +01:00
										 |  |  | 	const QString& getLogFileName() const { return m_logFileName; } | 
					
						
							| 
									
										
										
										
											2022-03-20 12:23:50 +01:00
										 |  |  | 	void setLogFileName(const QString& value) { m_logFileName = value; } | 
					
						
							| 
									
										
										
										
											2017-11-11 19:26:23 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-06-18 12:35:44 +01:00
										 |  |  |     int getMultisampling() const { return m_multisampling; } | 
					
						
							|  |  |  |     void setMultisampling(int samples) { m_multisampling = samples; } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | protected: | 
					
						
							| 
									
										
										
										
											2019-07-31 23:56:23 +02:00
										 |  |  | 	QString m_sourceDevice; //!< Identification of the source used in R0 tab (GUI flavor) at startup
 | 
					
						
							|  |  |  | 	int m_sourceIndex;      //!< Index of the source used in R0 tab (GUI flavor) at startup
 | 
					
						
							| 
									
										
										
										
											2021-12-05 12:35:39 +01:00
										 |  |  | 	int m_sourceItemIndex;  //!< Index of device item in the source used in R0 tab (GUI flavor) at startup
 | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	QString m_audioType; | 
					
						
							|  |  |  | 	QString m_audioDevice; | 
					
						
							| 
									
										
										
										
											2016-09-28 13:38:38 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-10-27 16:22:10 +00:00
										 |  |  | 	QString m_stationName;  //!< Name of the station (for drawing on the map)
 | 
					
						
							| 
									
										
										
										
											2021-12-05 12:35:39 +01:00
										 |  |  |     float m_latitude;       //!< Position of the station
 | 
					
						
							| 
									
										
										
										
											2016-09-28 13:38:38 +02:00
										 |  |  | 	float m_longitude; | 
					
						
							| 
									
										
										
										
											2021-12-05 12:35:39 +01:00
										 |  |  |     float m_altitude;       //!< Altitude in metres
 | 
					
						
							| 
									
										
										
										
											2017-11-11 19:26:23 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-11-12 02:23:55 +01:00
										 |  |  | 	QtMsgType m_consoleMinLogLevel; | 
					
						
							|  |  |  |     QtMsgType m_fileMinLogLevel; | 
					
						
							| 
									
										
										
										
											2017-11-11 19:26:23 +01:00
										 |  |  | 	bool m_useLogFile; | 
					
						
							|  |  |  | 	QString m_logFileName; | 
					
						
							| 
									
										
										
										
											2022-06-18 12:35:44 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     int m_multisampling;    //!< Number of samples to use for multisampling anti-aliasing (typically 0 or 4)
 | 
					
						
							| 
									
										
										
										
											2014-05-18 16:52:39 +01:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif // INCLUDE_PREFERENCES_H
 |