summaryrefslogtreecommitdiff
path: root/utils/rbutilqt/base/ttssapi.h
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2021-12-15 21:04:28 +0100
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2021-12-24 18:05:53 +0100
commitc876d3bbefe0dc00c27ca0c12d29da5874946962 (patch)
tree69f468a185a369b01998314bc3ecc19b70f4fcaa /utils/rbutilqt/base/ttssapi.h
parent6c6f0757d7a902feb293be165d1490c42bc8e7ad (diff)
downloadrockbox-c876d3bbefe0dc00c27ca0c12d29da5874946962.tar.gz
rockbox-c876d3bbefe0dc00c27ca0c12d29da5874946962.zip
rbutil: Merge rbutil with utils folder.
rbutil uses several components from the utils folder, and can be considered part of utils too. Having it in a separate folder is an arbitrary split that doesn't help anymore these days, so merge them. This also allows other utils to easily use libtools.make without the need to navigate to a different folder. Change-Id: I3fc2f4de19e3e776553efb5dea5f779dfec0dc21
Diffstat (limited to 'utils/rbutilqt/base/ttssapi.h')
-rw-r--r--utils/rbutilqt/base/ttssapi.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/utils/rbutilqt/base/ttssapi.h b/utils/rbutilqt/base/ttssapi.h
new file mode 100644
index 0000000000..25d7d3dab7
--- /dev/null
+++ b/utils/rbutilqt/base/ttssapi.h
@@ -0,0 +1,77 @@
1/***************************************************************************
2* __________ __ ___.
3* Open \______ \ ____ ____ | | _\_ |__ _______ ___
4* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7* \/ \/ \/ \/ \/
8*
9* Copyright (C) 2009 by Dominik Wenger
10*
11* This program is free software; you can redistribute it and/or
12* modify it under the terms of the GNU General Public License
13* as published by the Free Software Foundation; either version 2
14* of the License, or (at your option) any later version.
15*
16* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
17* KIND, either express or implied.
18*
19****************************************************************************/
20
21#ifndef TTSSAPI_H
22#define TTSSAPI_H
23
24#include "ttsbase.h"
25
26class TTSSapi : public TTSBase
27{
28 //! Enum to identify the settings
29 enum ESettings
30 {
31 eLANGUAGE,
32 eVOICE,
33 eSPEED,
34 eOPTIONS
35 };
36
37 Q_OBJECT
38 public:
39 TTSSapi(QObject* parent=nullptr);
40
41 TTSStatus voice(QString text,QString wavfile, QString *errStr);
42 bool start(QString *errStr);
43 bool stop();
44 QString voiceVendor(void);
45 Capabilities capabilities();
46
47 // for settings
48 bool configOk();
49 void generateSettings();
50 void saveSettings();
51
52 private slots:
53 void updateVoiceList();
54
55 private:
56 QStringList getVoiceList(QString language);
57
58 QProcess* voicescript;
59 QTextStream* voicestream;
60 QString defaultLanguage;
61
62 QString m_TTSexec;
63 QString m_TTSOpts;
64 QString m_TTSLanguage;
65 QString m_TTSVoice;
66 QString m_TTSSpeed;
67 bool m_started;
68
69 protected:
70 QString m_TTSTemplate;
71 QString m_TTSVoiceTemplate;
72 QString m_TTSType;
73};
74
75
76
77#endif