diff options
author | Fede85 <f.vanzati@gmail.com> | 2013-09-06 15:38:07 +0200 |
---|---|---|
committer | Fede85 <f.vanzati@gmail.com> | 2013-09-06 15:38:07 +0200 |
commit | a3e2e68e2b7edb9f5434734bed4001df1e65451c (patch) | |
tree | d4ef938bd8179a15d41b19197c51ca0a7f93936f /libraries/Bridge/Process.h | |
parent | 35f10e412f5d00027f9d7f2036243c681dbec406 (diff) |
Bridge library to the 1.5 format
Diffstat (limited to 'libraries/Bridge/Process.h')
-rw-r--r-- | libraries/Bridge/Process.h | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/libraries/Bridge/Process.h b/libraries/Bridge/Process.h deleted file mode 100644 index cacf516..0000000 --- a/libraries/Bridge/Process.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - Copyright (c) 2013 Arduino LLC. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#ifndef PROCESS_H_ -#define PROCESS_H_ - -#include <Bridge.h> - -class Process : public Stream { -public: - // Constructor with a user provided BridgeClass instance - Process(BridgeClass &_b = Bridge) : - bridge(_b), started(false), buffered(0), readPos(0) { } - ~Process(); - - void begin(const String &command); - void addParameter(const String ¶m); - unsigned int run(); - void runAsynchronously(); - boolean running(); - unsigned int exitValue(); - void close(); - - unsigned int runShellCommand(const String &command); - void runShellCommandAsynchronously(const String &command); - - operator bool () { return started; } - - // Stream methods - // (read from process stdout) - int available(); - int read(); - int peek(); - // (write to process stdin) - size_t write(uint8_t); - void flush(); - // TODO: add optimized function for block write - -private: - BridgeClass &bridge; - unsigned int handle; - String *cmdline; - boolean started; - -private: - void doBuffer(); - uint8_t buffered; - uint8_t readPos; - static const int BUFFER_SIZE = 64; - uint8_t buffer[BUFFER_SIZE]; - -}; - -#endif |