Main.h revision 282e181b58cf72b6ca770dc7ca5f91f135444502
1282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski// 2282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski// Copyright 2006 The Android Open Source Project 3282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski// 4282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski// Some global defines that don't really merit their own header. 5282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski// 6282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#ifndef __MAIN_H 7282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#define __MAIN_H 8282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 9282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include <utils/Log.h> 10282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include <utils/threads.h> 11282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include <utils/List.h> 12282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include <utils/Errors.h> 13282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include "Bundle.h" 14282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include "AaptAssets.h" 15282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#include "ZipFile.h" 16282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 17282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 18282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski/* Benchmarking Flag */ 19282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski//#define BENCHMARK 1 20282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 21282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#if BENCHMARK 22282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski #include <time.h> 23282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#endif /* BENCHMARK */ 24282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 25282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doVersion(Bundle* bundle); 26282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doList(Bundle* bundle); 27282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doDump(Bundle* bundle); 28282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doAdd(Bundle* bundle); 29282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doRemove(Bundle* bundle); 30282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doPackage(Bundle* bundle); 31282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doCrunch(Bundle* bundle); 32282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int doSingleCrunch(Bundle* bundle); 33282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 34282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern int calcPercent(long uncompressedLen, long compressedLen); 35282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 36282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern android::status_t writeAPK(Bundle* bundle, 37282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski const sp<AaptAssets>& assets, 38282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski const android::String8& outputFile); 39282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 40282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern android::status_t updatePreProcessedCache(Bundle* bundle); 41282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 42282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern android::status_t buildResources(Bundle* bundle, 43282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski const sp<AaptAssets>& assets); 44282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 45282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern android::status_t writeResourceSymbols(Bundle* bundle, 46282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski const sp<AaptAssets>& assets, const String8& pkgName, bool includePrivate); 47282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 48282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern android::status_t writeProguardFile(Bundle* bundle, const sp<AaptAssets>& assets); 49282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 50282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern bool isValidResourceType(const String8& type); 51282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 52282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskissize_t processAssets(Bundle* bundle, ZipFile* zip, const sp<AaptAssets>& assets); 53282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 54282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiextern status_t filterResources(Bundle* bundle, const sp<AaptAssets>& assets); 55282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 56282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskiint dumpResources(Bundle* bundle); 57282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 58282e181b58cf72b6ca770dc7ca5f91f135444502Adam LesinskiString8 getAttribute(const ResXMLTree& tree, const char* ns, 59282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski const char* attr, String8* outError); 60282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski 61282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinskistatus_t writeDependencyPreReqs(Bundle* bundle, const sp<AaptAssets>& assets, 62282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski FILE* fp, bool includeRaw); 63282e181b58cf72b6ca770dc7ca5f91f135444502Adam Lesinski#endif // __MAIN_H 64