1e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber/*
2e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * Copyright (C) 2010 The Android Open Source Project
3e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber *
4e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * Licensed under the Apache License, Version 2.0 (the "License");
5e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * you may not use this file except in compliance with the License.
6e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * You may obtain a copy of the License at
7e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber *
8e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber *      http://www.apache.org/licenses/LICENSE-2.0
9e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber *
10e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * Unless required by applicable law or agreed to in writing, software
11e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * distributed under the License is distributed on an "AS IS" BASIS,
12e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * See the License for the specific language governing permissions and
14e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber * limitations under the License.
15e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber */
16e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber
17e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber//#define LOG_NDEBUG 0
18e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber#define LOG_TAG "AHandler"
19e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber#include <utils/Log.h>
20e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber
21e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber#include <media/stagefright/foundation/AHandler.h>
225804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar#include <media/stagefright/foundation/AMessage.h>
23e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber
24e2b20987c2652a984d10520ef3542d50d91119c5Andreas Hubernamespace android {
25e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber
265804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnarvoid AHandler::deliverMessage(const sp<AMessage> &msg) {
275804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar    onMessageReceived(msg);
285804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar    mMessageCounter++;
29e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber
305804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar    if (mVerboseStats) {
315804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar        uint32_t what = msg->what();
325804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar        ssize_t idx = mMessages.indexOfKey(what);
335804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar        if (idx < 0) {
345804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar            mMessages.add(what, 1);
355804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar        } else {
365804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar            mMessages.editValueAt(idx)++;
375804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar        }
385804a76ac5f9f3c311f1bbbcc5ebdc8f8568ae14Lajos Molnar    }
39e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber}
40e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber
41e2b20987c2652a984d10520ef3542d50d91119c5Andreas Huber}  // namespace android
42