summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Brown <jeffbrown@google.com>2010-09-16 18:28:12 -0700
committerJeff Brown <jeffbrown@google.com>2010-09-16 18:51:15 -0700
commita1361e48fa5ac353b70f90eef8c1ca63f66ded19 (patch)
tree54704d13b404313142c1af2df2624ff500aac975
parent0f5843069bd419fba4fb253986645dfbca0784b7 (diff)
downloadframeworks_base-a1361e48fa5ac353b70f90eef8c1ca63f66ded19.zip
frameworks_base-a1361e48fa5ac353b70f90eef8c1ca63f66ded19.tar.gz
frameworks_base-a1361e48fa5ac353b70f90eef8c1ca63f66ded19.tar.bz2
Looper: Drop default parameters in favor of a safer overload.
The idea is that if you're writing code that wants fd/events/data on return from pollOnce() / pollAll() you should really pass in all of those arguments. When I changed the Looper API earlier, it was difficult to ensure that all callers were passing the right parameters since they were relying on default parameters to some degree so usage mistakes would not have been caught by the compiler. Change-Id: I1f2812894270aaf1515017ac1616b6b312d9b565
-rw-r--r--include/utils/Looper.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/include/utils/Looper.h b/include/utils/Looper.h
index 92e4b0a..7d90866 100644
--- a/include/utils/Looper.h
+++ b/include/utils/Looper.h
@@ -83,16 +83,20 @@ public:
* This method does not return until it has finished invoking the appropriate callbacks
* for all file descriptors that were signalled.
*/
- int pollOnce(int timeoutMillis,
- int* outFd = NULL, int* outEvents = NULL, void** outData = NULL);
+ int pollOnce(int timeoutMillis, int* outFd, int* outEvents, void** outData);
+ inline int pollOnce(int timeoutMillis) {
+ return pollOnce(timeoutMillis, NULL, NULL, NULL);
+ }
/**
* Like pollOnce(), but performs all pending callbacks until all
* data has been consumed or a file descriptor is available with no callback.
* This function will never return ALOOPER_POLL_CALLBACK.
*/
- int pollAll(int timeoutMillis,
- int* outFd = NULL, int* outEvents = NULL, void** outData = NULL);
+ int pollAll(int timeoutMillis, int* outFd, int* outEvents, void** outData);
+ inline int pollAll(int timeoutMillis) {
+ return pollAll(timeoutMillis, NULL, NULL, NULL);
+ }
/**
* Wakes the poll asynchronously.
@@ -128,8 +132,7 @@ public:
* This method can be called on any thread.
* This method may block briefly if it needs to wake the poll.
*/
- int addFd(int fd, int ident,
- int events, ALooper_callbackFunc callback, void* data = NULL);
+ int addFd(int fd, int ident, int events, ALooper_callbackFunc callback, void* data);
/**
* Removes a previously added file descriptor from the looper.