Change source file permissions to 0644
[platform/core/uifw/inputdelegator.git] / inc / WInputSttMicEffect.h
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
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 #pragma once
17
18 #include <vector>
19
20 extern "C" {
21         #include <stt.h>
22 }
23
24 #include <Evas.h>
25 #include <Ecore.h>
26
27 #include "MicEffector.h"
28
29 namespace is {
30 namespace ui {
31
32 class WInputSttMicEffect : public IMicEffector
33 {
34         private :
35                 unsigned long long square_sum;
36                 unsigned int count;
37
38
39         public :
40                 WInputSttMicEffect();
41
42                 virtual ~WInputSttMicEffect();
43
44                 std::vector<int> GetVolume();
45
46                 void ProcessingAnimationStart();
47
48                 void ProcessingAnimationStop();
49
50                 float GetDecibel() const;
51
52                 int ConvertLevel();
53
54                 void SetSttHandle(stt_h handle);
55
56                 void SetProgressBar(Evas_Object *progress);
57
58                 stt_h handle;
59
60                 Ecore_Timer *processing_effect_timer;
61                 Evas_Object *progressbar;
62 };
63
64 }} /** end of is::ui */