libdrmconf 0.15.0
A library to program DMR radios.
Loading...
Searching...
No Matches
audiosettings.hh
1#ifndef AUDIOSETTINGS_HH
2#define AUDIOSETTINGS_HH
3
4#include "configobject.hh"
5#include "level.hh"
6#include "interval.hh"
7
8
11{
12 Q_OBJECT
13
14 Q_PROPERTY(Level squelch READ squelch WRITE setSquelch)
15 Q_PROPERTY(Level dmrSquelch READ dmrSquelch WRITE setDMRSquelch)
16 Q_PROPERTY(Level micGain READ micGain WRITE setMicGain)
17 Q_PROPERTY(Level fmMicGain READ fmMicGain WRITE setFMMicGain)
18 Q_PROPERTY(Level m17MicGain READ m17MicGain WRITE setM17MicGain)
19 Q_PROPERTY(Level maxSpeakerVolume READ maxSpeakerVolume WRITE setMaxSpeakerVolume)
20 Q_PROPERTY(Level maxHeadphoneVolume READ maxHeadphoneVolume WRITE setMaxHeadphoneVolume)
21 Q_PROPERTY(Level vox READ vox WRITE setVox)
22 Q_PROPERTY(Interval voxDelay READ voxDelay WRITE setVOXDelay)
23 Q_PROPERTY(bool speech READ speechSynthesisEnabled WRITE enableSpeechSynthesis)
24
25public:
27 explicit AudioSettings(QObject *parent = nullptr);
28
29 ConfigItem *clone() const override;
30
32 Level squelch() const;
34 void setSquelch(Level squelch);
35
37 bool dmrSquelchEnabled() const;
39 Level dmrSquelch() const;
41 void setDMRSquelch(Level dmrSquelch);
43 void disableDMRSquelch();
44
46 Level micGain() const;
48 void setMicGain(Level micGain);
49
51 bool fmMicGainEnabled() const;
53 Level fmMicGain() const;
55 void setFMMicGain(Level fmMicGain);
57 void disableFMMicGain();
58
60 bool m17MicGainEnabled() const;
62 Level m17MicGain() const;
64 void setM17MicGain(Level m17MicGain);
66 void disableM17MicGain();
67
69 bool voxEnabled() const;
71 Level vox() const;
73 void setVox(Level vox);
75 void disableVox();
76
78 Interval voxDelay() const;
80 void setVOXDelay(Interval ms);
81
83 Level maxSpeakerVolume() const;
85 void setMaxSpeakerVolume(Level maxSpeakerVolume);
89 void setMaxHeadphoneVolume(Level maxHeadphoneVolume);
90
92 bool speechSynthesisEnabled() const;
94 void enableSpeechSynthesis(bool enabled);
95
96protected:
117};
118
119
120
121#endif //QDMR_AUDIOSETTINGS_HH
void enableSpeechSynthesis(bool enabled)
Enable speech synthesis.
Definition audiosettings.cc:199
void disableVox()
Disables VOX.
Definition audiosettings.cc:148
Level maxHeadphoneVolume() const
Returns the maximum headphone volume.
Definition audiosettings.cc:167
Level maxSpeakerVolume() const
Returns the maximum speaker volume.
Definition audiosettings.cc:154
void disableDMRSquelch()
Disables the DMR squelch setting.
Definition audiosettings.cc:59
bool speechSynthesisEnabled() const
Returns true if the speech synthesis is enabled.
Definition audiosettings.cc:194
Level fmMicGain() const
Returns the FM mic gain.
Definition audiosettings.cc:86
void disableFMMicGain()
Disables FM mic gain.
Definition audiosettings.cc:99
Level micGain() const
Returns the default mic gain.
Definition audiosettings.cc:65
void setMaxHeadphoneVolume(Level maxHeadphoneVolume)
Sets the maximum headphone volume.
Definition audiosettings.cc:172
bool fmMicGainEnabled() const
Returns true if the FM mic gain is enabled.
Definition audiosettings.cc:81
void setFMMicGain(Level fmMicGain)
Sets the FM mic gain.
Definition audiosettings.cc:91
Level m17MicGain() const
Returns the M17 mic gain.
Definition audiosettings.cc:109
Level _dmrSquelch
DMR squelch setting.
Definition audiosettings.hh:100
Level _squelch
Default (FM) squelch.
Definition audiosettings.hh:98
void setVOXDelay(Interval ms)
Sets the VOX delay.
Definition audiosettings.cc:186
bool m17MicGainEnabled() const
Returns true if the M17 mic gain is enabled.
Definition audiosettings.cc:104
Interval _voxDelay
Specifies the VOX delay.
Definition audiosettings.hh:114
void setM17MicGain(Level m17MicGain)
Sets the M17 mic gain.
Definition audiosettings.cc:114
bool voxEnabled() const
Returns true, if the VOX is enabled.
Definition audiosettings.cc:128
Level squelch() const
Returns the default (FM) squelch.
Definition audiosettings.cc:24
Level _maxHeadphoneVolume
Maximum headphone volume.
Definition audiosettings.hh:110
Level _vox
Specifies the VOX level.
Definition audiosettings.hh:112
ConfigItem * clone() const override
Clones this item.
Definition audiosettings.cc:14
Level dmrSquelch() const
Returns the DMR squelch.
Definition audiosettings.cc:46
bool dmrSquelchEnabled() const
Returns true if the DMR squelch is set.
Definition audiosettings.cc:41
void setSquelch(Level squelch)
Sets the default squelch.
Definition audiosettings.cc:29
void setMaxSpeakerVolume(Level maxSpeakerVolume)
Sets the maximum speaker volume.
Definition audiosettings.cc:159
Level _maxSpeakerVolume
Maximum speaker volume.
Definition audiosettings.hh:108
void setMicGain(Level micGain)
Sets the default mic gain.
Definition audiosettings.cc:70
bool _speech
Enables speech synthesis.
Definition audiosettings.hh:116
Level _m17MicGain
The M17 mic gain.
Definition audiosettings.hh:106
Level _micGain
Default mic gain.
Definition audiosettings.hh:102
Interval voxDelay() const
Returns the VOX delay.
Definition audiosettings.cc:181
void setDMRSquelch(Level dmrSquelch)
Set the DMR squelch.
Definition audiosettings.cc:51
Level _fmMicGain
The FM mic gain.
Definition audiosettings.hh:104
void disableM17MicGain()
Disables M17 mic gain.
Definition audiosettings.cc:122
AudioSettings(QObject *parent=nullptr)
Default constructor.
Definition audiosettings.cc:4
Level vox() const
Returns the VOX sensitivity.
Definition audiosettings.cc:133
void setVox(Level vox)
Sets the VOX sensitivity.
Definition audiosettings.cc:138
ConfigItem(QObject *parent=nullptr)
Hidden constructor.
Definition configobject.cc:158
Represents a time interval.
Definition interval.hh:11
Some simple class implementing a [1-10] level setting.
Definition level.hh:15