SDRAngel
4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
|
#include <cwkeyer.h>
Inherits QObject.
Classes | |
class | MsgConfigureCWKeyer |
Public Types | |
enum | CWKeyIambicState { KeySilent, KeyDot, KeyDash } |
enum | CWTextState { TextStart, TextStartChar, TextStartElement, TextElement, TextCharSpace, TextWordSpace, TextEnd, TextStop } |
Public Member Functions | |
CWKeyer () | |
~CWKeyer () | |
void | resetToDefaults () |
QByteArray | serialize () const |
bool | deserialize (const QByteArray &data) |
MessageQueue * | getInputMessageQueue () |
Get the queue for asynchronous inbound communication. More... | |
void | setSampleRate (int sampleRate) |
const CWKeyerSettings & | getSettings () const |
void | reset () |
CWSmoother & | getCWSmoother () |
int | getSample () |
bool | eom () |
void | resetText () |
void | stopText () |
void | setKeyboardDots () |
void | setKeyboardDashes () |
void | setKeyboardSilence () |
Static Public Member Functions | |
static void | webapiSettingsPutPatch (const QStringList &channelSettingsKeys, CWKeyerSettings &cwKeyerSettings, SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings) |
static void | webapiFormatChannelSettings (SWGSDRangel::SWGCWKeyerSettings *apiCwKeyerSettings, const CWKeyerSettings &cwKeyerSettings) |
Private Slots | |
void | handleInputMessages () |
Private Member Functions | |
void | applySettings (const CWKeyerSettings &settings, bool force=false) |
bool | handleMessage (const Message &cmd) |
void | nextStateIambic () |
void | nextStateText () |
Private Attributes | |
QMutex | m_mutex |
CWKeyerSettings | m_settings |
MessageQueue | m_inputMessageQueue |
int | m_dotLength |
dot length in samples More... | |
int | m_textPointer |
int | m_elementPointer |
int | m_samplePointer |
bool | m_elementSpace |
bool | m_characterSpace |
bool | m_key |
bool | m_dot |
bool | m_dash |
bool | m_elementOn |
signed char | m_asciiChar |
CWKeyIambicState | m_keyIambicState |
CWTextState | m_textState |
CWSmoother | m_cwSmoother |
Static Private Attributes | |
static const signed char | m_asciiToMorse [128][7] |
Enumerator | |
---|---|
KeySilent | |
KeyDot | |
KeyDash |
enum CWKeyer::CWTextState |
Enumerator | |
---|---|
TextStart | |
TextStartChar | |
TextStartElement | |
TextElement | |
TextCharSpace | |
TextWordSpace | |
TextEnd | |
TextStop |
Definition at line 86 of file cwkeyer.h.
CWKeyer::CWKeyer | ( | ) |
Definition at line 163 of file cwkeyer.cpp.
References applySettings(), handleInputMessages(), m_inputMessageQueue, and m_settings.
CWKeyer::~CWKeyer | ( | ) |
Definition at line 182 of file cwkeyer.cpp.
|
private |
Definition at line 552 of file cwkeyer.cpp.
References CWKeyerSettings::CWDashes, CWKeyerSettings::CWDots, CWKeyerSettings::CWKeyboard, CWKeyerSettings::CWText, CWKeyerSettings::m_mode, CWSmoother::m_mutex, CWKeyerSettings::m_sampleRate, CWKeyerSettings::m_text, and CWKeyerSettings::m_wpm.
Referenced by CWKeyer().
bool CWKeyer::deserialize | ( | const QByteArray & | data | ) |
bool CWKeyer::eom | ( | ) |
Definition at line 418 of file cwkeyer.cpp.
References m_settings, CWKeyerSettings::m_text, and m_textPointer.
|
inline |
Definition at line 111 of file cwkeyer.h.
Referenced by WFMMod::pullAF(), AMMod::pullAF(), NFMMod::pullAF(), FreeDVMod::pullAF(), and SSBMod::pullAF().
|
inline |
Get the queue for asynchronous inbound communication.
Definition at line 104 of file cwkeyer.h.
Referenced by CWKeyerGUI::applySettings(), AMMod::webapiSettingsPutPatch(), WFMMod::webapiSettingsPutPatch(), NFMMod::webapiSettingsPutPatch(), SSBMod::webapiSettingsPutPatch(), and FreeDVMod::webapiSettingsPutPatch().
int CWKeyer::getSample | ( | ) |
Definition at line 194 of file cwkeyer.cpp.
References CWKeyerSettings::CWDashes, CWKeyerSettings::CWDots, CWKeyerSettings::CWKeyboard, CWKeyerSettings::CWText, m_dash, m_dot, m_key, CWKeyerSettings::m_keyboardIambic, CWKeyerSettings::m_mode, m_mutex, m_settings, nextStateIambic(), and nextStateText().
Referenced by WFMMod::pullAF(), AMMod::pullAF(), NFMMod::pullAF(), FreeDVMod::pullAF(), and SSBMod::pullAF().
|
inline |
Definition at line 107 of file cwkeyer.h.
Referenced by CWKeyerGUI::keyboardKeyPressed(), CWKeyerGUI::setCWKeyer(), WFMMod::webapiFormatChannelSettings(), AMMod::webapiFormatChannelSettings(), NFMMod::webapiFormatChannelSettings(), FreeDVMod::webapiFormatChannelSettings(), SSBMod::webapiFormatChannelSettings(), WFMMod::webapiReverseSendSettings(), AMMod::webapiReverseSendSettings(), NFMMod::webapiReverseSendSettings(), FreeDVMod::webapiReverseSendSettings(), SSBMod::webapiReverseSendSettings(), AMMod::webapiSettingsPutPatch(), WFMMod::webapiSettingsPutPatch(), NFMMod::webapiSettingsPutPatch(), SSBMod::webapiSettingsPutPatch(), and FreeDVMod::webapiSettingsPutPatch().
|
privateslot |
Definition at line 540 of file cwkeyer.cpp.
Referenced by CWKeyer().
|
private |
Definition at line 525 of file cwkeyer.cpp.
References CWKeyer::MsgConfigureCWKeyer::getForce(), and CWKeyer::MsgConfigureCWKeyer::getSettings().
|
private |
Definition at line 226 of file cwkeyer.cpp.
References KeyDash, KeyDot, KeySilent, m_dash, m_dot, m_dotLength, m_key, m_keyIambicState, and m_samplePointer.
Referenced by getSample(), and nextStateText().
|
private |
Definition at line 303 of file cwkeyer.cpp.
References KeySilent, m_asciiChar, m_asciiToMorse, m_dash, m_dot, m_dotLength, m_elementPointer, m_key, m_keyIambicState, CWKeyerSettings::m_loop, m_samplePointer, m_settings, CWKeyerSettings::m_text, m_textPointer, m_textState, nextStateIambic(), TextCharSpace, TextElement, TextEnd, TextStart, TextStartChar, TextStartElement, TextStop, and TextWordSpace.
Referenced by getSample().
|
inline |
Definition at line 109 of file cwkeyer.h.
Referenced by AMMod::AMMod(), WFMMod::applyChannelSettings(), FreeDVMod::FreeDVMod(), NFMMod::NFMMod(), SSBMod::SSBMod(), and WFMMod::WFMMod().
|
inline |
Definition at line 114 of file cwkeyer.h.
Referenced by CWKeyerGUI::on_playStop_toggled().
void CWKeyer::resetToDefaults | ( | ) |
QByteArray CWKeyer::serialize | ( | ) | const |
void CWKeyer::setKeyboardDashes | ( | ) |
Definition at line 430 of file cwkeyer.cpp.
References KeySilent, m_dash, m_dot, and m_keyIambicState.
Referenced by CWKeyerGUI::keyboardKeyPressed().
void CWKeyer::setKeyboardDots | ( | ) |
Definition at line 423 of file cwkeyer.cpp.
References KeySilent, m_dash, m_dot, and m_keyIambicState.
Referenced by CWKeyerGUI::keyboardKeyPressed().
void CWKeyer::setKeyboardSilence | ( | ) |
Definition at line 437 of file cwkeyer.cpp.
Referenced by CWKeyerGUI::keyboardKeyPressed().
void CWKeyer::setSampleRate | ( | int | sampleRate | ) |
Definition at line 186 of file cwkeyer.cpp.
References CWKeyer::MsgConfigureCWKeyer::create(), m_inputMessageQueue, CWKeyerSettings::m_sampleRate, m_settings, and MessageQueue::push().
Referenced by AMMod::AMMod(), AMMod::applyAudioSampleRate(), NFMMod::applyAudioSampleRate(), SSBMod::applyAudioSampleRate(), WFMMod::applyChannelSettings(), FreeDVMod::FreeDVMod(), NFMMod::NFMMod(), SSBMod::SSBMod(), and WFMMod::WFMMod().
|
inline |
Definition at line 115 of file cwkeyer.h.
Referenced by CWKeyerGUI::on_playStop_toggled().
|
static |
Definition at line 637 of file cwkeyer.cpp.
References SWGSDRangel::SWGCWKeyerSettings::getText(), CWKeyerSettings::m_dashKey, CWKeyerSettings::m_dashKeyModifiers, CWKeyerSettings::m_dotKey, CWKeyerSettings::m_dotKeyModifiers, CWKeyerSettings::m_keyboardIambic, CWKeyerSettings::m_loop, CWKeyerSettings::m_mode, CWKeyerSettings::m_sampleRate, CWKeyerSettings::m_text, CWKeyerSettings::m_wpm, SWGSDRangel::SWGCWKeyerSettings::setDashKey(), SWGSDRangel::SWGCWKeyerSettings::setDashKeyModifiers(), SWGSDRangel::SWGCWKeyerSettings::setDotKey(), SWGSDRangel::SWGCWKeyerSettings::setDotKeyModifiers(), SWGSDRangel::SWGCWKeyerSettings::setKeyboardIambic(), SWGSDRangel::SWGCWKeyerSettings::setLoop(), SWGSDRangel::SWGCWKeyerSettings::setMode(), SWGSDRangel::SWGCWKeyerSettings::setSampleRate(), SWGSDRangel::SWGCWKeyerSettings::setText(), and SWGSDRangel::SWGCWKeyerSettings::setWpm().
Referenced by WFMMod::webapiFormatChannelSettings(), AMMod::webapiFormatChannelSettings(), NFMMod::webapiFormatChannelSettings(), FreeDVMod::webapiFormatChannelSettings(), SSBMod::webapiFormatChannelSettings(), WFMMod::webapiReverseSendCWSettings(), AMMod::webapiReverseSendCWSettings(), NFMMod::webapiReverseSendCWSettings(), FreeDVMod::webapiReverseSendCWSettings(), SSBMod::webapiReverseSendCWSettings(), WFMMod::webapiReverseSendSettings(), AMMod::webapiReverseSendSettings(), NFMMod::webapiReverseSendSettings(), FreeDVMod::webapiReverseSendSettings(), and SSBMod::webapiReverseSendSettings().
|
static |
Definition at line 599 of file cwkeyer.cpp.
References SWGSDRangel::SWGCWKeyerSettings::getDashKey(), SWGSDRangel::SWGCWKeyerSettings::getDashKeyModifiers(), SWGSDRangel::SWGCWKeyerSettings::getDotKey(), SWGSDRangel::SWGCWKeyerSettings::getDotKeyModifiers(), SWGSDRangel::SWGCWKeyerSettings::getKeyboardIambic(), SWGSDRangel::SWGCWKeyerSettings::getLoop(), SWGSDRangel::SWGCWKeyerSettings::getMode(), SWGSDRangel::SWGCWKeyerSettings::getSampleRate(), SWGSDRangel::SWGCWKeyerSettings::getText(), SWGSDRangel::SWGCWKeyerSettings::getWpm(), CWKeyerSettings::m_dashKey, CWKeyerSettings::m_dashKeyModifiers, CWKeyerSettings::m_dotKey, CWKeyerSettings::m_dotKeyModifiers, CWKeyerSettings::m_loop, CWKeyerSettings::m_mode, CWKeyerSettings::m_sampleRate, CWKeyerSettings::m_text, and CWKeyerSettings::m_wpm.
Referenced by AMMod::webapiSettingsPutPatch(), WFMMod::webapiSettingsPutPatch(), NFMMod::webapiSettingsPutPatch(), SSBMod::webapiSettingsPutPatch(), and FreeDVMod::webapiSettingsPutPatch().
|
private |
Definition at line 145 of file cwkeyer.h.
Referenced by nextStateText().
|
staticprivate |
0: dot 1: dash -1: end of sequence
Definition at line 150 of file cwkeyer.h.
Referenced by nextStateText().
|
private |
|
private |
Definition at line 143 of file cwkeyer.h.
Referenced by getSample(), nextStateIambic(), nextStateText(), setKeyboardDashes(), setKeyboardDots(), and setKeyboardSilence().
|
private |
Definition at line 142 of file cwkeyer.h.
Referenced by getSample(), nextStateIambic(), nextStateText(), setKeyboardDashes(), setKeyboardDots(), and setKeyboardSilence().
|
private |
dot length in samples
Definition at line 135 of file cwkeyer.h.
Referenced by nextStateIambic(), and nextStateText().
|
private |
Definition at line 137 of file cwkeyer.h.
Referenced by nextStateText().
|
private |
Definition at line 134 of file cwkeyer.h.
Referenced by CWKeyer(), and setSampleRate().
|
private |
Definition at line 141 of file cwkeyer.h.
Referenced by getSample(), nextStateIambic(), and nextStateText().
|
private |
Definition at line 146 of file cwkeyer.h.
Referenced by nextStateIambic(), nextStateText(), setKeyboardDashes(), and setKeyboardDots().
|
private |
Definition at line 132 of file cwkeyer.h.
Referenced by getSample().
|
private |
Definition at line 138 of file cwkeyer.h.
Referenced by nextStateIambic(), and nextStateText().
|
private |
Definition at line 133 of file cwkeyer.h.
Referenced by CWKeyer(), eom(), getSample(), nextStateText(), and setSampleRate().
|
private |
Definition at line 136 of file cwkeyer.h.
Referenced by eom(), and nextStateText().
|
private |
Definition at line 147 of file cwkeyer.h.
Referenced by nextStateText().