Formatting API
[platform/core/uifw/dali-adaptor.git] / dali / public-api / adaptor-framework / tts-player.cpp
1 /*
2  * Copyright (c) 2020 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 // CLASS HEADER
19 #include <dali/public-api/adaptor-framework/tts-player.h>
20
21 // INTERNAL INCLUDES
22 #include <dali/internal/accessibility/common/tts-player-impl.h>
23 #include <dali/internal/adaptor/common/adaptor-impl.h>
24
25 namespace Dali
26 {
27 TtsPlayer::TtsPlayer()
28 {
29 }
30
31 TtsPlayer TtsPlayer::Get(Dali::TtsPlayer::Mode mode)
32 {
33   TtsPlayer ttsPlayer;
34
35   if(Adaptor::IsAvailable())
36   {
37     ttsPlayer = Internal::Adaptor::Adaptor::GetImplementation(Adaptor::Get()).GetTtsPlayer(mode);
38   }
39
40   return ttsPlayer;
41 }
42
43 TtsPlayer::~TtsPlayer()
44 {
45 }
46
47 TtsPlayer::TtsPlayer(const TtsPlayer& copy) = default;
48
49 TtsPlayer& TtsPlayer::operator=(const TtsPlayer& rhs) = default;
50
51 TtsPlayer::TtsPlayer(TtsPlayer&& rhs) = default;
52
53 TtsPlayer& TtsPlayer::operator=(TtsPlayer&& rhs) = default;
54
55 void TtsPlayer::Play(const std::string& text)
56 {
57   GetImplementation(*this).Play(text);
58 }
59
60 void TtsPlayer::Stop()
61 {
62   GetImplementation(*this).Stop();
63 }
64
65 void TtsPlayer::Pause()
66 {
67   GetImplementation(*this).Pause();
68 }
69
70 void TtsPlayer::Resume()
71 {
72   GetImplementation(*this).Resume();
73 }
74
75 TtsPlayer::State TtsPlayer::GetState()
76 {
77   return GetImplementation(*this).GetState();
78 }
79
80 TtsPlayer::StateChangedSignalType& TtsPlayer::StateChangedSignal()
81 {
82   return GetImplementation(*this).StateChangedSignal();
83 }
84
85 TtsPlayer::TtsPlayer(Internal::Adaptor::TtsPlayer* player)
86 : BaseHandle(player)
87 {
88 }
89
90 } // namespace Dali