1df37269852ea92bafd939fe793209d0581c4a574François Gaffie/*
2df37269852ea92bafd939fe793209d0581c4a574François Gaffie * Copyright (C) 2015 The Android Open Source Project
3df37269852ea92bafd939fe793209d0581c4a574François Gaffie *
4df37269852ea92bafd939fe793209d0581c4a574François Gaffie * Licensed under the Apache License, Version 2.0 (the "License");
5df37269852ea92bafd939fe793209d0581c4a574François Gaffie * you may not use this file except in compliance with the License.
6df37269852ea92bafd939fe793209d0581c4a574François Gaffie * You may obtain a copy of the License at
7df37269852ea92bafd939fe793209d0581c4a574François Gaffie *
8df37269852ea92bafd939fe793209d0581c4a574François Gaffie *      http://www.apache.org/licenses/LICENSE-2.0
9df37269852ea92bafd939fe793209d0581c4a574François Gaffie *
10df37269852ea92bafd939fe793209d0581c4a574François Gaffie * Unless required by applicable law or agreed to in writing, software
11df37269852ea92bafd939fe793209d0581c4a574François Gaffie * distributed under the License is distributed on an "AS IS" BASIS,
12df37269852ea92bafd939fe793209d0581c4a574François Gaffie * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13df37269852ea92bafd939fe793209d0581c4a574François Gaffie * See the License for the specific language governing permissions and
14df37269852ea92bafd939fe793209d0581c4a574François Gaffie * limitations under the License.
15df37269852ea92bafd939fe793209d0581c4a574François Gaffie */
16df37269852ea92bafd939fe793209d0581c4a574François Gaffie
17df37269852ea92bafd939fe793209d0581c4a574François Gaffie#define LOG_TAG "APM::SoundTriggerSession"
18df37269852ea92bafd939fe793209d0581c4a574François Gaffie//#define LOG_NDEBUG 0
19df37269852ea92bafd939fe793209d0581c4a574François Gaffie
20df37269852ea92bafd939fe793209d0581c4a574François Gaffie#include "SoundTriggerSession.h"
21df37269852ea92bafd939fe793209d0581c4a574François Gaffie
22df37269852ea92bafd939fe793209d0581c4a574François Gaffie
23df37269852ea92bafd939fe793209d0581c4a574François Gaffienamespace android {
24df37269852ea92bafd939fe793209d0581c4a574François Gaffie
25df37269852ea92bafd939fe793209d0581c4a574François Gaffiestatus_t SoundTriggerSessionCollection::acquireSession(audio_session_t session,
26df37269852ea92bafd939fe793209d0581c4a574François Gaffie                                                                   audio_io_handle_t ioHandle)
27df37269852ea92bafd939fe793209d0581c4a574François Gaffie{
28df37269852ea92bafd939fe793209d0581c4a574François Gaffie    add(session, ioHandle);
29df37269852ea92bafd939fe793209d0581c4a574François Gaffie
30df37269852ea92bafd939fe793209d0581c4a574François Gaffie    return NO_ERROR;
31df37269852ea92bafd939fe793209d0581c4a574François Gaffie}
32df37269852ea92bafd939fe793209d0581c4a574François Gaffie
33df37269852ea92bafd939fe793209d0581c4a574François Gaffiestatus_t SoundTriggerSessionCollection::releaseSession(audio_session_t session)
34df37269852ea92bafd939fe793209d0581c4a574François Gaffie{
35df37269852ea92bafd939fe793209d0581c4a574François Gaffie    ssize_t index = indexOfKey(session);
36df37269852ea92bafd939fe793209d0581c4a574François Gaffie    if (index < 0) {
37df37269852ea92bafd939fe793209d0581c4a574François Gaffie        ALOGW("acquireSoundTriggerSession() session %d not registered", session);
38df37269852ea92bafd939fe793209d0581c4a574François Gaffie        return BAD_VALUE;
39df37269852ea92bafd939fe793209d0581c4a574François Gaffie    }
40df37269852ea92bafd939fe793209d0581c4a574François Gaffie
41df37269852ea92bafd939fe793209d0581c4a574François Gaffie    removeItem(session);
42df37269852ea92bafd939fe793209d0581c4a574François Gaffie    return NO_ERROR;
43df37269852ea92bafd939fe793209d0581c4a574François Gaffie}
44df37269852ea92bafd939fe793209d0581c4a574François Gaffie
45df37269852ea92bafd939fe793209d0581c4a574François Gaffie}; //namespace android
46