StagefrightMediaScanner.h revision 413f523afe96aff02d2b0a7459127b8f67b2b43c
1413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber/*
2413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * Copyright (C) 2009 The Android Open Source Project
3413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber *
4413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * Licensed under the Apache License, Version 2.0 (the "License");
5413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * you may not use this file except in compliance with the License.
6413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * You may obtain a copy of the License at
7413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber *
8413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber *      http://www.apache.org/licenses/LICENSE-2.0
9413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber *
10413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * Unless required by applicable law or agreed to in writing, software
11413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * distributed under the License is distributed on an "AS IS" BASIS,
12413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * See the License for the specific language governing permissions and
14413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber * limitations under the License.
15413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber */
16413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
17413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber#ifndef STAGEFRIGHT_MEDIA_SCANNER_H_
18413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
19413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber#define STAGEFRIGHT_MEDIA_SCANNER_H_
20413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
21413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber#include <media/mediascanner.h>
22413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
23413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Hubernamespace android {
24413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
25413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huberstruct StagefrightMediaScanner : public MediaScanner {
26413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber    StagefrightMediaScanner();
27413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber    virtual ~StagefrightMediaScanner();
28413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
29413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber    virtual status_t processFile(
30413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber            const char *path, const char *mimeType,
31413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber            MediaScannerClient &client);
32413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
33413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber    virtual char *extractAlbumArt(int fd);
34413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
35413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huberprivate:
36413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber    StagefrightMediaScanner(const StagefrightMediaScanner &);
37413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber    StagefrightMediaScanner &operator=(const StagefrightMediaScanner &);
38413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber};
39413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
40413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber}  // namespace android
41413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber
42413f523afe96aff02d2b0a7459127b8f67b2b43cAndreas Huber#endif  // STAGEFRIGHT_MEDIA_SCANNER_H_
43