platform_system_core/libs/utils
Mathias Agopian d0ef3d46f9 some work to try to reduce the code size of some native libraries
- make sure that all binder Bn classes define a ctor and dtor in their respective library.
  This avoids duplication of the ctor/dtor in libraries where these objects are instantiated.
  This is also cleaner, should we want these ctor/dtor to do something one day.

- same change as above for some Bp classes and various other non-binder classes

- moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere.

- improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere

- IBinder::getInterfaceDescriptor() now returns a "const String16&" instead of String16, which saves calls to String16 and ~String16

- implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called.
  The cache makes BpBinder bigger, so we need to figure out if we need this method at all.
2013-07-30 13:56:50 -07:00
..
Android.mk checkpoint: split libutils into libutils + libbinder 2013-07-30 13:56:50 -07:00
Asset.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
AssetDir.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
AssetManager.cpp Update aapt badging for native code, configs, density, etc. 2013-07-30 13:56:50 -07:00
backup_data.cpp Hook up the backup data writer, and add a utility to read the backup data files. 2013-07-30 13:56:50 -07:00
backup_helper_file.cpp Fix for the simultor build breakage. 2013-07-30 13:56:50 -07:00
BufferedTextOutput.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
CallStack.cpp some work to try to reduce the code size of some native libraries 2013-07-30 13:56:50 -07:00
characterData.h auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
Debug.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
executablepath_darwin.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
executablepath_linux.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
file_backup_helper.cpp donut snapshot 2013-07-30 13:56:50 -07:00
FileMap.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
futex_synchro.c This should fix the simulator build. 2013-07-30 13:56:50 -07:00
InetAddress.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
LogSocket.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
misc.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
NOTICE auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
Pipe.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
ported.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
README auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
RefBase.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
ResourceTypes.cpp Squashed commit of the following: 2013-07-30 13:56:49 -07:00
SharedBuffer.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
Socket.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
Static.cpp checkpoint: split libutils into libutils + libbinder 2013-07-30 13:56:50 -07:00
StopWatch.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
String8.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
String16.cpp auto import from //branches/cupcake/...@137873 2013-07-30 13:56:49 -07:00
SystemClock.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
TextOutput.cpp some work to try to reduce the code size of some native libraries 2013-07-30 13:56:50 -07:00
Threads.cpp auto import from //depot/cupcake/@136594 2013-07-30 13:56:49 -07:00
TimerProbe.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
Timers.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
Unicode.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
VectorImpl.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
ZipEntry.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
ZipFile.cpp AI 146964: tabs -> spaces 2013-07-30 13:56:49 -07:00
ZipFileCRO.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
ZipFileRO.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00
ZipUtils.cpp auto import from //depot/cupcake/@135843 2013-07-30 13:56:49 -07:00

Android Utility Function Library

If you need a feature that is native to Linux but not present on other
platforms, construct a platform-dependent implementation that shares
the Linux interface.  That way the actual device runs as "light" as
possible.

If that isn't feasible, create a system-independent interface and hide
the details.

The ultimate goal is *not* to create a super-duper platform abstraction
layer.  The goal is to provide an optimized solution for Linux with
reasonable implementations for other platforms.