1cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie/*
2cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * Copyright (C) 2015 The Android Open Source Project
3cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie *
4cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * Licensed under the Apache License, Version 2.0 (the "License");
5cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * you may not use this file except in compliance with the License.
6cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * You may obtain a copy of the License at
7cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie *
8cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie *      http://www.apache.org/licenses/LICENSE-2.0
9cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie *
10cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * Unless required by applicable law or agreed to in writing, software
11cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * distributed under the License is distributed on an "AS IS" BASIS,
12cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * See the License for the specific language governing permissions and
14cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie * limitations under the License.
15cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie */
16cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
17cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#pragma once
18cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
19cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#include <utils/String8.h>
20cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#include <utils/Vector.h>
21cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#include <utils/RefBase.h>
22cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#include <utils/Errors.h>
23cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#include <system/audio.h>
24cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie#include <cutils/config_utils.h>
25cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
26cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffienamespace android {
27cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
28cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffieclass AudioPort;
29cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffieclass AudioRoute;
30cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
31cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffieclass AudioPortVector : public Vector<sp<AudioPort> >
32cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie{
33cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffiepublic:
34cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie    sp<AudioPort> findByTagName(const String8 &tagName) const;
35cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie};
36cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
37cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
38cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffieclass AudioRouteVector : public Vector<sp<AudioRoute> >
39cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie{
40cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffiepublic:
41f4ad6e5637b6deccdac4b60615383f290b3806cfFrançois Gaffie    status_t dump(int fd, int spaces) const;
42cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie};
43cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie
44cbb3044d6bfa9ab30c83b67874f40344e29805e1François Gaffie}; // namespace android
45