summaryrefslogtreecommitdiffstats
path: root/tools/aapt/Main.h
blob: 0b8adbe5dbc8661d7742168266ed46c6780d8374 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
//
// Copyright 2006 The Android Open Source Project
//
// Some global defines that don't really merit their own header.
//
#ifndef __MAIN_H
#define __MAIN_H

#include <utils/Log.h>
#include <utils/threads.h>
#include <utils/List.h>
#include <utils/Errors.h>
#include <utils/StrongPointer.h>

#include "AaptAssets.h"
#include "ApkBuilder.h"
#include "Bundle.h"
#include "ResourceFilter.h"
#include "ZipFile.h"


/* Benchmarking Flag */
//#define BENCHMARK 1

#if BENCHMARK
    #include <time.h>
#endif /* BENCHMARK */

class OutputSet;

extern int doVersion(Bundle* bundle);
extern int doList(Bundle* bundle);
extern int doDump(Bundle* bundle);
extern int doAdd(Bundle* bundle);
extern int doRemove(Bundle* bundle);
extern int doPackage(Bundle* bundle);
extern int doCrunch(Bundle* bundle);
extern int doSingleCrunch(Bundle* bundle);
extern int runInDaemonMode(Bundle* bundle);

extern int calcPercent(long uncompressedLen, long compressedLen);

extern android::status_t writeAPK(Bundle* bundle,
    const android::String8& outputFile,
    const android::sp<OutputSet>& outputSet,
    bool isOverlay);
extern android::status_t writeAPK(Bundle* bundle,
    int fd,
    const android::sp<OutputSet>& outputSet,
    bool isOverlay);
extern android::status_t writeResFile(FILE* fp, const sp<AaptAssets>& assets, sp<ApkBuilder>& builder);
extern sp<AaptFile> getResourceFile(const sp<AaptAssets>& assets, bool makeIfNecessary=true);

extern android::status_t updatePreProcessedCache(Bundle* bundle);

extern android::status_t buildResources(Bundle* bundle,
    const sp<AaptAssets>& assets, sp<ApkBuilder>& builder);

extern android::status_t writeResourceSymbols(Bundle* bundle,
        const sp<AaptAssets>& assets, const String8& pkgName,
        bool includePrivate, bool emitCallback);

extern android::status_t writeProguardFile(Bundle* bundle, const sp<AaptAssets>& assets);

extern bool isValidResourceType(const String8& type);

extern status_t filterResources(Bundle* bundle, const sp<AaptAssets>& assets);

int dumpResources(Bundle* bundle);

status_t writeDependencyPreReqs(Bundle* bundle, const sp<AaptAssets>& assets,
                                FILE* fp, bool includeRaw);

android::String8 parseResourceName(const String8& pathLeaf);

#endif // __MAIN_H