aboutsummaryrefslogtreecommitdiffstats
path: root/android/async-utils.h
diff options
context:
space:
mode:
authorVladimir Chtchetkine <vchtchetkine@google.com>2011-11-01 17:35:07 -0700
committerVladimir Chtchetkine <vchtchetkine@google.com>2011-11-09 18:13:02 -0800
commitdb611d57e0da9acd7ecf2a4a9b2a63e7620fe54d (patch)
tree66f81dbd4ae02a000478036b0d7210050929d564 /android/async-utils.h
parent6f3bc59f5099cdce5a939a5ab9ba33f3d7f2273e (diff)
downloadexternal_qemu-db611d57e0da9acd7ecf2a4a9b2a63e7620fe54d.zip
external_qemu-db611d57e0da9acd7ecf2a4a9b2a63e7620fe54d.tar.gz
external_qemu-db611d57e0da9acd7ecf2a4a9b2a63e7620fe54d.tar.bz2
Implements sensors emulation using a connected Android device
There are three major things in this CL: 1. Abstract a connection with an Android device that is connected to the host via USB, and there is a TCP port forwarding to this device via 'adb forward' command. This abstraction is implemented in android/android-device.* 2. A client for android device API that talks to an app on the connected device that provides values for sensors available on the device. This is implemented in android/sensors-port.* 3. Changes to the sensor emulation code in android/hw-sensors.c to use sensors port (when available) for sensors emulation. Change-Id: I12901e8db6b6a6262fc1703ed96a9f714335d666
Diffstat (limited to 'android/async-utils.h')
-rw-r--r--android/async-utils.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/android/async-utils.h b/android/async-utils.h
index 93148c1..6d460c2 100644
--- a/android/async-utils.h
+++ b/android/async-utils.h
@@ -137,6 +137,7 @@ typedef struct {
size_t buffsize;
size_t pos;
LoopIo* io;
+ char eol;
} AsyncLineReader;
/* Setup an AsyncLineReader to read at most 'buffsize' characters (bytes)
@@ -155,6 +156,17 @@ void asyncLineReader_init(AsyncLineReader* alr,
size_t buffsize,
LoopIo* io);
+/* Sets line terminator character for the reader.
+ * By default, asyncLineReader_init will set EOL to be '\n'. Sometimes it's more
+ * convenient to have '\0' as line terminator, so "line" reader easily becomes
+ * a "string" reader.
+ */
+AINLINED void
+asyncLineReader_setEOL(AsyncLineReader* alr, char eol)
+{
+ alr->eol = eol;
+}
+
/* Try to read line characters from 'io'.
* Returns:
* ASYNC_COMPLETE: An end-of-line was detected, call asyncLineReader_getLine