1b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent/* 2b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * Copyright (C) 2014 The Android Open Source Project 3b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * 4b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * Licensed under the Apache License, Version 2.0 (the "License"); 5b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * you may not use this file except in compliance with the License. 6b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * You may obtain a copy of the License at 7b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * 8b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * http://www.apache.org/licenses/LICENSE-2.0 9b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * 10b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * Unless required by applicable law or agreed to in writing, software 11b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * distributed under the License is distributed on an "AS IS" BASIS, 12b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * See the License for the specific language governing permissions and 14b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent * limitations under the License. 15b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent */ 16b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 17b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent#ifndef ANDROID_HARDWARE_SOUNDTRIGGER_CALLBACK_H 18b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent#define ANDROID_HARDWARE_SOUNDTRIGGER_CALLBACK_H 19b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 20b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent#include <utils/RefBase.h> 21b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent#include <system/sound_trigger.h> 22b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 23b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurentnamespace android { 24b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 25b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurentclass SoundTriggerCallback : public RefBase 26b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent{ 27b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurentpublic: 28b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 29b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent SoundTriggerCallback() {} 30b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent virtual ~SoundTriggerCallback() {} 31b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 32b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent virtual void onRecognitionEvent(struct sound_trigger_recognition_event *event) = 0; 33b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 34df3dc7e2fe6c639529b70e3f3a7d2bf0f4c6e871Eric Laurent virtual void onSoundModelEvent(struct sound_trigger_model_event *event) = 0; 35df3dc7e2fe6c639529b70e3f3a7d2bf0f4c6e871Eric Laurent 36df3dc7e2fe6c639529b70e3f3a7d2bf0f4c6e871Eric Laurent virtual void onServiceStateChange(sound_trigger_service_state_t state) = 0; 37df3dc7e2fe6c639529b70e3f3a7d2bf0f4c6e871Eric Laurent 38b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent virtual void onServiceDied() = 0; 39b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 40b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent}; 41b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 42b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent}; // namespace android 43b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent 44b7a11d83f749ad0200778c4815e907d011d4b5d3Eric Laurent#endif //ANDROID_HARDWARE_SOUNDTRIGGER_CALLBACK_H 45