diff options
| author | 2011-06-28 19:09:31 -0700 | |
|---|---|---|
| committer | 2011-06-29 15:05:41 -0700 | |
| commit | 698c0873cf2e07bdc7fd1e72169aee2a19fa40d7 (patch) | |
| tree | cf1a8a26a6568ad5dd1fa30d238b9651e09d3800 /libs/gui/LayerState.cpp | |
| parent | 0748907d6a9a052fe54541cd7f6ec66b998fec3b (diff) | |
SF transactions are now O(1) wrt IPC instead of O(N).
Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
Diffstat (limited to 'libs/gui/LayerState.cpp')
| -rw-r--r-- | libs/gui/LayerState.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libs/gui/LayerState.cpp b/libs/gui/LayerState.cpp index 01c4c7ebfe..87901e87f7 100644 --- a/libs/gui/LayerState.cpp +++ b/libs/gui/LayerState.cpp @@ -17,6 +17,7 @@ #include <utils/Errors.h> #include <binder/Parcel.h> #include <private/surfaceflinger/LayerState.h> +#include <surfaceflinger/ISurfaceComposerClient.h> namespace android { @@ -58,4 +59,14 @@ status_t layer_state_t::read(const Parcel& input) return NO_ERROR; } +status_t ComposerState::write(Parcel& output) const { + output.writeStrongBinder(client->asBinder()); + return state.write(output); +} + +status_t ComposerState::read(const Parcel& input) { + client = interface_cast<ISurfaceComposerClient>(input.readStrongBinder()); + return state.read(input); +} + }; // namespace android |