FlightGear
next
flitevoice.hxx
Go to the documentation of this file.
1
// speech synthesis interface subsystem
2
//
3
// Written by Torsten Dreyer, started April 2014
4
//
5
// Copyright (C) 2014 Torsten Dreyer - torsten (at) t3r (dot) de
6
//
7
// This program is free software; you can redistribute it and/or
8
// modify it under the terms of the GNU General Public License as
9
// published by the Free Software Foundation; either version 2 of the
10
// License, or (at your option) any later version.
11
//
12
// This program is distributed in the hope that it will be useful, but
13
// WITHOUT ANY WARRANTY; without even the implied warranty of
14
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
// General Public License for more details.
16
//
17
// You should have received a copy of the GNU General Public License
18
// along with this program; if not, write to the Free Software
19
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20
//
21
// $Id$
22
23
#ifndef _FLITEVOICE_HXX
24
#define _FLITEVOICE_HXX
25
26
#include "
voice.hxx
"
27
#include <simgear/sound/soundmgr.hxx>
28
#include <simgear/sound/sample.hxx>
29
#include <simgear/threads/SGQueue.hxx>
30
31
class
VoiceSynthesizer
;
32
33
class
FGFLITEVoice
:
public
FGVoiceMgr::FGVoice
{
34
public
:
35
FGFLITEVoice
(
FGVoiceMgr
*,
const
SGPropertyNode_ptr,
const
char
* sampleGroupRefName =
"flite-voice"
);
36
virtual
~FGFLITEVoice
();
37
virtual
void
speak
(
const
std::string & msg);
38
virtual
void
update
(
double
dt);
39
40
private
:
41
FGFLITEVoice
(
const
FGFLITEVoice
& other);
42
FGFLITEVoice
& operator =(
const
FGFLITEVoice
& other);
43
44
SGSharedPtr<SGSampleGroup> _sgr;
45
VoiceSynthesizer
* _synthesizer;
46
SGLockedQueue<SGSharedPtr<SGSoundSample> > _sampleQueue;
47
std::string _sampleName;
48
double
_seconds_to_run;
49
};
50
51
#endif
// _FLITEVOICE_HXX
FGFLITEVoice::update
virtual void update(double dt)
Definition
flitevoice.cxx:71
FGFLITEVoice::~FGFLITEVoice
virtual ~FGFLITEVoice()
Definition
flitevoice.cxx:57
FGFLITEVoice::FGFLITEVoice
FGFLITEVoice(FGVoiceMgr *, const SGPropertyNode_ptr, const char *sampleGroupRefName="flite-voice")
Definition
flitevoice.cxx:35
FGVoiceMgr::FGVoice
Definition
voice.hxx:99
FGVoiceMgr::FGVoice::speak
bool speak()
Definition
voice.cxx:190
FGVoiceMgr
Definition
voice.hxx:46
VoiceSynthesizer
A Voice Synthesizer Interface.
Definition
VoiceSynthesizer.hxx:31
voice.hxx
src
Sound
flitevoice.hxx
Generated on Tue Jun 3 2025 12:58:41 for FlightGear by
1.13.2