adb_client.h revision 59ab0c534095afdab0765240a6eaeaad2ab43ab0
14f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber#ifndef _ADB_CLIENT_H_ 24f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber#define _ADB_CLIENT_H_ 34f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 44f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber#include "adb.h" 54f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 64f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* connect to adb, connect to the named service, and return 74f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** a valid fd for interacting with that service upon success 84f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** or a negative number on failure 94f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber*/ 104f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberint adb_connect(const char *service); 114f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberint _adb_connect(const char *service); 124f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 134f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* connect to adb, connect to the named service, return 0 if 144f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** the connection succeeded AND the service returned OKAY 154f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber*/ 164f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberint adb_command(const char *service); 174f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 184f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* connect to adb, connect to the named service, return 194f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** a malloc'd string of its response upon success or NULL 204f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** on failure. 214f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber*/ 224f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberchar *adb_query(const char *service); 234f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 244f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* Set the preferred transport to connect to. 254f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber*/ 264f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Hubervoid adb_set_transport(transport_type type, const char* serial); 274f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 284f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* Return the console port of the currently connected emulator (if any) 294f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber * of -1 if there is no emulator, and -2 if there is more than one. 304f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber * assumes adb_set_transport() was alled previously... 314f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber */ 324f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberint adb_get_emulator_console_port(void); 334f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 344f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* send commands to the current emulator instance. will fail if there 354f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber * is zero, or more than one emulator connected (or if you use -s <serial> 364f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber * with a <serial> that does not designate an emulator) 374f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber */ 384f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberint adb_send_emulator_command(int argc, char** argv); 394f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 404f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* return verbose error string from last operation */ 414f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberconst char *adb_error(void); 424f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 434f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber/* read a standard adb status response (OKAY|FAIL) and 444f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** return 0 in the event of OKAY, -1 in the event of FAIL 454f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber** or protocol error 464f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber*/ 474f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberint adb_status(int fd); 484f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 494f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber#endif 504f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber