NUGU SDK Linux  1.7.5
session_interface.hh
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019 SK Telecom 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 
17 #ifndef __NUGU_SESSION_INTERFACE_H__
18 #define __NUGU_SESSION_INTERFACE_H__
19 
21 
22 namespace NuguCapability {
23 
24 using namespace NuguClientKit;
25 
41 enum class SessionState {
42  ACTIVE,
43  INACTIVE
44 };
45 
50 class ISessionListener : virtual public ICapabilityListener {
51 public:
52  virtual ~ISessionListener() = default;
53 
59  virtual void onState(SessionState state, const std::string& dialog_id) = 0;
60 };
61 
66 class ISessionHandler : virtual public ICapabilityInterface {
67 public:
68  virtual ~ISessionHandler() = default;
69 };
70 
75 } // NuguCapability
76 
77 #endif /* __NUGU_SESSION_INTERFACE_H__ */
session handler interface
Definition: session_interface.hh:66
session listener interface
Definition: session_interface.hh:50
virtual void onState(SessionState state, const std::string &dialog_id)=0
Receive callback when the session state is changed.
capability interface
Definition: capability_interface.hh:81
capability listener interface
Definition: capability_interface.hh:59
SessionState
Session State list.
Definition: session_interface.hh:41