rockbox/rbutil/rbutilqt/base/ttsexes.h
Dominik Riebeling 4105c82e6b Centralize settings for executable based TTS systems.
The configuration values for executable based TTS systems is stored in member
variables. Instead of reading them multiple times provide a function for that
and move searching the executable to the loading function.

Previously the executable was only searched in the path when opening the TTS
configuration. Having this in the loading function removes that unnecessary
step in case the TTS is in the path (and doesn't require additional
configuration).

Change-Id: I06799b55545dcb719ee3c916795b20e01c248a15
2012-01-29 22:55:18 +01:00

57 lines
1.7 KiB
C++

/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
*
* Copyright (C) 2009 by Dominik Wenger
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
****************************************************************************/
#ifndef TTSEXES_H
#define TTSEXES_H
#include "ttsbase.h"
class TTSExes : public TTSBase
{
enum ESettings
{
eEXEPATH,
eOPTIONS
};
Q_OBJECT
public:
TTSExes(QString name,QObject* parent=NULL);
TTSStatus voice(QString text, QString wavfile, QString *errStr);
bool start(QString *errStr);
bool stop() {return true;}
QString voiceVendor(void) { return QString(); }
Capabilities capabilities();
// for settings
void generateSettings();
void saveSettings();
bool configOk();
private:
void loadSettings(void);
QString m_name;
QString m_TTSexec;
QString m_TTSOpts;
QString m_TTSTemplate;
QMap<QString,QString> m_TemplateMap;
};
#endif