fixed Hawk and HawkStd for byte reading
This commit is contained in:
parent
102a773bed
commit
851d485499
@ -2384,11 +2384,16 @@ hawk_ooi_t Hawk::pipeHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_arg_
|
|||||||
{
|
{
|
||||||
case HAWK_RIO_CMD_OPEN:
|
case HAWK_RIO_CMD_OPEN:
|
||||||
return awk->pipe_handler->open(pipe);
|
return awk->pipe_handler->open(pipe);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_CLOSE:
|
case HAWK_RIO_CMD_CLOSE:
|
||||||
return awk->pipe_handler->close(pipe);
|
return awk->pipe_handler->close(pipe);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_READ:
|
case HAWK_RIO_CMD_READ:
|
||||||
return awk->pipe_handler->read(pipe, (hawk_ooch_t*)data, count);
|
return awk->pipe_handler->read(pipe, (hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
|
case HAWK_RIO_CMD_READ_BYTES:
|
||||||
|
return awk->pipe_handler->readBytes(pipe, (hawk_bch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE:
|
case HAWK_RIO_CMD_WRITE:
|
||||||
return awk->pipe_handler->write(pipe, (const hawk_ooch_t*)data, count);
|
return awk->pipe_handler->write(pipe, (const hawk_ooch_t*)data, count);
|
||||||
case HAWK_RIO_CMD_WRITE_BYTES:
|
case HAWK_RIO_CMD_WRITE_BYTES:
|
||||||
@ -2408,13 +2413,19 @@ hawk_ooi_t Hawk::pipeHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_arg_
|
|||||||
{
|
{
|
||||||
case HAWK_RIO_CMD_OPEN:
|
case HAWK_RIO_CMD_OPEN:
|
||||||
return awk->openPipe(pipe);
|
return awk->openPipe(pipe);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_CLOSE:
|
case HAWK_RIO_CMD_CLOSE:
|
||||||
return awk->closePipe(pipe);
|
return awk->closePipe(pipe);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_READ:
|
case HAWK_RIO_CMD_READ:
|
||||||
return awk->readPipe(pipe, (hawk_ooch_t*)data, count);
|
return awk->readPipe(pipe, (hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
|
case HAWK_RIO_CMD_READ_BYTES:
|
||||||
|
return awk->readPipeBytes(pipe, (hawk_bch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE:
|
case HAWK_RIO_CMD_WRITE:
|
||||||
return awk->writePipe(pipe, (const hawk_ooch_t*)data, count);
|
return awk->writePipe(pipe, (const hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE_BYTES:
|
case HAWK_RIO_CMD_WRITE_BYTES:
|
||||||
return awk->writePipeBytes(pipe, (const hawk_bch_t*)data, count);
|
return awk->writePipeBytes(pipe, (const hawk_bch_t*)data, count);
|
||||||
|
|
||||||
@ -2450,11 +2461,16 @@ hawk_ooi_t Hawk::fileHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_arg_
|
|||||||
{
|
{
|
||||||
case HAWK_RIO_CMD_OPEN:
|
case HAWK_RIO_CMD_OPEN:
|
||||||
return awk->file_handler->open(file);
|
return awk->file_handler->open(file);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_CLOSE:
|
case HAWK_RIO_CMD_CLOSE:
|
||||||
return awk->file_handler->close(file);
|
return awk->file_handler->close(file);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_READ:
|
case HAWK_RIO_CMD_READ:
|
||||||
return awk->file_handler->read(file, (hawk_ooch_t*)data, count);
|
return awk->file_handler->read(file, (hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
|
case HAWK_RIO_CMD_READ_BYTES:
|
||||||
|
return awk->file_handler->readBytes(file, (hawk_bch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE:
|
case HAWK_RIO_CMD_WRITE:
|
||||||
return awk->file_handler->write(file, (const hawk_ooch_t*)data, count);
|
return awk->file_handler->write(file, (const hawk_ooch_t*)data, count);
|
||||||
case HAWK_RIO_CMD_WRITE_BYTES:
|
case HAWK_RIO_CMD_WRITE_BYTES:
|
||||||
@ -2474,13 +2490,19 @@ hawk_ooi_t Hawk::fileHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_arg_
|
|||||||
{
|
{
|
||||||
case HAWK_RIO_CMD_OPEN:
|
case HAWK_RIO_CMD_OPEN:
|
||||||
return awk->openFile(file);
|
return awk->openFile(file);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_CLOSE:
|
case HAWK_RIO_CMD_CLOSE:
|
||||||
return awk->closeFile(file);
|
return awk->closeFile(file);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_READ:
|
case HAWK_RIO_CMD_READ:
|
||||||
return awk->readFile(file, (hawk_ooch_t*)data, count);
|
return awk->readFile(file, (hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
|
case HAWK_RIO_CMD_READ_BYTES:
|
||||||
|
return awk->readFileBytes(file, (hawk_bch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE:
|
case HAWK_RIO_CMD_WRITE:
|
||||||
return awk->writeFile(file, (const hawk_ooch_t*)data, count);
|
return awk->writeFile(file, (const hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE_BYTES:
|
case HAWK_RIO_CMD_WRITE_BYTES:
|
||||||
return awk->writeFileBytes(file, (const hawk_bch_t*)data, count);
|
return awk->writeFileBytes(file, (const hawk_bch_t*)data, count);
|
||||||
|
|
||||||
@ -2516,11 +2538,15 @@ hawk_ooi_t Hawk::consoleHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_a
|
|||||||
{
|
{
|
||||||
case HAWK_RIO_CMD_OPEN:
|
case HAWK_RIO_CMD_OPEN:
|
||||||
return awk->console_handler->open(console);
|
return awk->console_handler->open(console);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_CLOSE:
|
case HAWK_RIO_CMD_CLOSE:
|
||||||
return awk->console_handler->close(console);
|
return awk->console_handler->close(console);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_READ:
|
case HAWK_RIO_CMD_READ:
|
||||||
return awk->console_handler->read(console, (hawk_ooch_t*)data, count);
|
return awk->console_handler->read(console, (hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
|
case HAWK_RIO_CMD_READ_BYTES:
|
||||||
|
return awk->console_handler->readBytes(console, (hawk_bch_t*)data, count);
|
||||||
case HAWK_RIO_CMD_WRITE:
|
case HAWK_RIO_CMD_WRITE:
|
||||||
return awk->console_handler->write(console, (const hawk_ooch_t*)data, count);
|
return awk->console_handler->write(console, (const hawk_ooch_t*)data, count);
|
||||||
case HAWK_RIO_CMD_WRITE_BYTES:
|
case HAWK_RIO_CMD_WRITE_BYTES:
|
||||||
@ -2528,6 +2554,7 @@ hawk_ooi_t Hawk::consoleHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_a
|
|||||||
|
|
||||||
case HAWK_RIO_CMD_FLUSH:
|
case HAWK_RIO_CMD_FLUSH:
|
||||||
return awk->console_handler->flush(console);
|
return awk->console_handler->flush(console);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_NEXT:
|
case HAWK_RIO_CMD_NEXT:
|
||||||
return awk->console_handler->next(console);
|
return awk->console_handler->next(console);
|
||||||
|
|
||||||
@ -2542,18 +2569,25 @@ hawk_ooi_t Hawk::consoleHandler (hawk_rtx_t* rtx, hawk_rio_cmd_t cmd, hawk_rio_a
|
|||||||
{
|
{
|
||||||
case HAWK_RIO_CMD_OPEN:
|
case HAWK_RIO_CMD_OPEN:
|
||||||
return awk->openConsole(console);
|
return awk->openConsole(console);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_CLOSE:
|
case HAWK_RIO_CMD_CLOSE:
|
||||||
return awk->closeConsole(console);
|
return awk->closeConsole(console);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_READ:
|
case HAWK_RIO_CMD_READ:
|
||||||
return awk->readConsole(console, (hawk_ooch_t*)data, count);
|
return awk->readConsole(console, (hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
|
case HAWK_RIO_CMD_READ_BYTES:
|
||||||
|
return awk->readConsoleBytes(console, (hawk_bch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE:
|
case HAWK_RIO_CMD_WRITE:
|
||||||
return awk->writeConsole(console, (const hawk_ooch_t*)data, count);
|
return awk->writeConsole(console, (const hawk_ooch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_WRITE_BYTES:
|
case HAWK_RIO_CMD_WRITE_BYTES:
|
||||||
return awk->writeConsoleBytes(console, (const hawk_bch_t*)data, count);
|
return awk->writeConsoleBytes(console, (const hawk_bch_t*)data, count);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_FLUSH:
|
case HAWK_RIO_CMD_FLUSH:
|
||||||
return awk->flushConsole(console);
|
return awk->flushConsole(console);
|
||||||
|
|
||||||
case HAWK_RIO_CMD_NEXT:
|
case HAWK_RIO_CMD_NEXT:
|
||||||
return awk->nextConsole(console);
|
return awk->nextConsole(console);
|
||||||
|
|
||||||
@ -2587,6 +2621,12 @@ hawk_ooi_t Hawk::readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hawk_ooi_t Hawk::readPipeBytes (Pipe& io, hawk_bch_t* buf, hawk_oow_t len)
|
||||||
|
{
|
||||||
|
((Run*)io)->setError (HAWK_ENOIMPL);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
hawk_ooi_t Hawk::writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
hawk_ooi_t Hawk::writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
||||||
{
|
{
|
||||||
((Run*)io)->setError (HAWK_ENOIMPL);
|
((Run*)io)->setError (HAWK_ENOIMPL);
|
||||||
@ -2623,6 +2663,12 @@ hawk_ooi_t Hawk::readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hawk_ooi_t Hawk::readFileBytes (File& io, hawk_bch_t* buf, hawk_oow_t len)
|
||||||
|
{
|
||||||
|
((Run*)io)->setError (HAWK_ENOIMPL);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
hawk_ooi_t Hawk::writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
hawk_ooi_t Hawk::writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
||||||
{
|
{
|
||||||
((Run*)io)->setError (HAWK_ENOIMPL);
|
((Run*)io)->setError (HAWK_ENOIMPL);
|
||||||
@ -2659,6 +2705,12 @@ hawk_ooi_t Hawk::readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hawk_ooi_t Hawk::readConsoleBytes (Console& io, hawk_bch_t* buf, hawk_oow_t len)
|
||||||
|
{
|
||||||
|
((Run*)io)->setError (HAWK_ENOIMPL);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
hawk_ooi_t Hawk::writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
hawk_ooi_t Hawk::writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
||||||
{
|
{
|
||||||
((Run*)io)->setError (HAWK_ENOIMPL);
|
((Run*)io)->setError (HAWK_ENOIMPL);
|
||||||
|
@ -683,6 +683,7 @@ public:
|
|||||||
virtual int open (Pipe& io) = 0;
|
virtual int open (Pipe& io) = 0;
|
||||||
virtual int close (Pipe& io) = 0;
|
virtual int close (Pipe& io) = 0;
|
||||||
virtual hawk_ooi_t read (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t read (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
||||||
|
virtual hawk_ooi_t readBytes (Pipe& io, hawk_bch_t* buf, hawk_oow_t len) = 0;
|
||||||
virtual hawk_ooi_t write (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t write (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
||||||
virtual hawk_ooi_t writeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t writeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len) = 0;
|
||||||
virtual int flush (Pipe& io) = 0;
|
virtual int flush (Pipe& io) = 0;
|
||||||
@ -728,6 +729,7 @@ public:
|
|||||||
virtual int open (File& io) = 0;
|
virtual int open (File& io) = 0;
|
||||||
virtual int close (File& io) = 0;
|
virtual int close (File& io) = 0;
|
||||||
virtual hawk_ooi_t read (File& io, hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t read (File& io, hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
||||||
|
virtual hawk_ooi_t readBytes (File& io, hawk_bch_t* buf, hawk_oow_t len) = 0;
|
||||||
virtual hawk_ooi_t write (File& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t write (File& io, const hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
||||||
virtual hawk_ooi_t writeBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t writeBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len) = 0;
|
||||||
virtual int flush (File& io) = 0;
|
virtual int flush (File& io) = 0;
|
||||||
@ -786,6 +788,8 @@ public:
|
|||||||
/// return 0 to indicate EOF and -1 for failure.
|
/// return 0 to indicate EOF and -1 for failure.
|
||||||
virtual hawk_ooi_t read (Console& io, hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
virtual hawk_ooi_t read (Console& io, hawk_ooch_t* buf, hawk_oow_t len) = 0;
|
||||||
|
|
||||||
|
virtual hawk_ooi_t readBytes (Console& io, hawk_bch_t* buf, hawk_oow_t len) = 0;
|
||||||
|
|
||||||
/// The write() function is called when the console
|
/// The write() function is called when the console
|
||||||
/// is written for output. It can write upto \a len characters
|
/// is written for output. It can write upto \a len characters
|
||||||
/// available in the buffer \a buf and return the number of
|
/// available in the buffer \a buf and return the number of
|
||||||
@ -1671,6 +1675,7 @@ protected:
|
|||||||
virtual int closePipe (Pipe& io);
|
virtual int closePipe (Pipe& io);
|
||||||
|
|
||||||
virtual hawk_ooi_t readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
|
virtual hawk_ooi_t readPipeBytes (Pipe& io, hawk_bch_t* buf, hawk_oow_t len);
|
||||||
virtual hawk_ooi_t writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
virtual hawk_ooi_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len);
|
||||||
virtual int flushPipe (Pipe& io);
|
virtual int flushPipe (Pipe& io);
|
||||||
@ -1685,6 +1690,7 @@ protected:
|
|||||||
virtual int openFile (File& io);
|
virtual int openFile (File& io);
|
||||||
virtual int closeFile (File& io);
|
virtual int closeFile (File& io);
|
||||||
virtual hawk_ooi_t readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
|
virtual hawk_ooi_t readFileBytes (File& io, hawk_bch_t* buf, hawk_oow_t len);
|
||||||
virtual hawk_ooi_t writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
virtual hawk_ooi_t writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len);
|
||||||
virtual int flushFile (File& io);
|
virtual int flushFile (File& io);
|
||||||
@ -1699,6 +1705,7 @@ protected:
|
|||||||
virtual int openConsole (Console& io);
|
virtual int openConsole (Console& io);
|
||||||
virtual int closeConsole (Console& io);
|
virtual int closeConsole (Console& io);
|
||||||
virtual hawk_ooi_t readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
|
virtual hawk_ooi_t readConsoleBytes (Console& io, hawk_bch_t* buf, hawk_oow_t len);
|
||||||
virtual hawk_ooi_t writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
virtual hawk_ooi_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len);
|
virtual hawk_ooi_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len);
|
||||||
virtual int flushConsole (Console& io);
|
virtual int flushConsole (Console& io);
|
||||||
|
@ -689,6 +689,17 @@ hawk_ooi_t HawkStd::readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hawk_ooi_t HawkStd::readPipeBytes (Pipe& io, hawk_bch_t* buf, hawk_oow_t len)
|
||||||
|
{
|
||||||
|
#if defined(ENABLE_NWIO)
|
||||||
|
return (io.getUflags() > 0)?
|
||||||
|
hawk_nwio_readbytes((hawk_nwio_t*)io.getHandle(), buf, len):
|
||||||
|
hawk_pio_readbytes((hawk_pio_t*)io.getHandle(), HAWK_PIO_OUT, buf, len);
|
||||||
|
#else
|
||||||
|
return hawk_pio_readbytes((hawk_pio_t*)io.getHandle(), HAWK_PIO_OUT, buf, len);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
hawk_ooi_t HawkStd::writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
hawk_ooi_t HawkStd::writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
||||||
{
|
{
|
||||||
#if defined(ENABLE_NWIO)
|
#if defined(ENABLE_NWIO)
|
||||||
@ -763,6 +774,11 @@ hawk_ooi_t HawkStd::readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len)
|
|||||||
return hawk_sio_getoochars((hawk_sio_t*)io.getHandle(), buf, len);
|
return hawk_sio_getoochars((hawk_sio_t*)io.getHandle(), buf, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hawk_ooi_t HawkStd::readFileBytes (File& io, hawk_bch_t* buf, hawk_oow_t len)
|
||||||
|
{
|
||||||
|
return hawk_sio_getbchars((hawk_sio_t*)io.getHandle(), buf, len);
|
||||||
|
}
|
||||||
|
|
||||||
hawk_ooi_t HawkStd::writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
hawk_ooi_t HawkStd::writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len)
|
||||||
{
|
{
|
||||||
return hawk_sio_putoochars((hawk_sio_t*)io.getHandle(), buf, len);
|
return hawk_sio_putoochars((hawk_sio_t*)io.getHandle(), buf, len);
|
||||||
@ -773,7 +789,6 @@ hawk_ooi_t HawkStd::writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t
|
|||||||
return hawk_sio_putbchars((hawk_sio_t*)io.getHandle(), buf, len);
|
return hawk_sio_putbchars((hawk_sio_t*)io.getHandle(), buf, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int HawkStd::flushFile (File& io)
|
int HawkStd::flushFile (File& io)
|
||||||
{
|
{
|
||||||
return hawk_sio_flush((hawk_sio_t*)io.getHandle());
|
return hawk_sio_flush((hawk_sio_t*)io.getHandle());
|
||||||
@ -1090,6 +1105,30 @@ hawk_ooi_t HawkStd::readConsole (Console& io, hawk_ooch_t* data, hawk_oow_t size
|
|||||||
return nn;
|
return nn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hawk_ooi_t HawkStd::readConsoleBytes (Console& io, hawk_bch_t* data, hawk_oow_t size)
|
||||||
|
{
|
||||||
|
hawk_ooi_t nn;
|
||||||
|
|
||||||
|
while ((nn = hawk_sio_getbchars((hawk_sio_t*)io.getHandle(), data, size)) == 0)
|
||||||
|
{
|
||||||
|
int n;
|
||||||
|
hawk_sio_t* sio = (hawk_sio_t*)io.getHandle();
|
||||||
|
|
||||||
|
n = open_console_in(io);
|
||||||
|
if (n == -1) return -1;
|
||||||
|
|
||||||
|
if (n == 0)
|
||||||
|
{
|
||||||
|
/* no more input console */
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sio) hawk_sio_close (sio);
|
||||||
|
}
|
||||||
|
|
||||||
|
return nn;
|
||||||
|
}
|
||||||
|
|
||||||
hawk_ooi_t HawkStd::writeConsole (Console& io, const hawk_ooch_t* data, hawk_oow_t size)
|
hawk_ooi_t HawkStd::writeConsole (Console& io, const hawk_ooch_t* data, hawk_oow_t size)
|
||||||
{
|
{
|
||||||
return hawk_sio_putoochars((hawk_sio_t*)io.getHandle(), data, size);
|
return hawk_sio_putoochars((hawk_sio_t*)io.getHandle(), data, size);
|
||||||
|
@ -173,6 +173,7 @@ protected:
|
|||||||
int openPipe (Pipe& io);
|
int openPipe (Pipe& io);
|
||||||
int closePipe (Pipe& io);
|
int closePipe (Pipe& io);
|
||||||
hawk_ooi_t readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len);
|
hawk_ooi_t readPipe (Pipe& io, hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
|
hawk_ooi_t readPipeBytes (Pipe& io, hawk_bch_t* buf, hawk_oow_t len);
|
||||||
hawk_ooi_t writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
hawk_ooi_t writePipe (Pipe& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
hawk_ooi_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len);
|
hawk_ooi_t writePipeBytes (Pipe& io, const hawk_bch_t* buf, hawk_oow_t len);
|
||||||
int flushPipe (Pipe& io);
|
int flushPipe (Pipe& io);
|
||||||
@ -181,6 +182,7 @@ protected:
|
|||||||
int openFile (File& io);
|
int openFile (File& io);
|
||||||
int closeFile (File& io);
|
int closeFile (File& io);
|
||||||
hawk_ooi_t readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len);
|
hawk_ooi_t readFile (File& io, hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
|
hawk_ooi_t readFileBytes (File& io, hawk_bch_t* buf, hawk_oow_t len);
|
||||||
hawk_ooi_t writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
hawk_ooi_t writeFile (File& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
hawk_ooi_t writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len);
|
hawk_ooi_t writeFileBytes (File& io, const hawk_bch_t* buf, hawk_oow_t len);
|
||||||
int flushFile (File& io);
|
int flushFile (File& io);
|
||||||
@ -189,6 +191,7 @@ protected:
|
|||||||
int openConsole (Console& io);
|
int openConsole (Console& io);
|
||||||
int closeConsole (Console& io);
|
int closeConsole (Console& io);
|
||||||
hawk_ooi_t readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len);
|
hawk_ooi_t readConsole (Console& io, hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
|
hawk_ooi_t readConsoleBytes (Console& io, hawk_bch_t* buf, hawk_oow_t len);
|
||||||
hawk_ooi_t writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
hawk_ooi_t writeConsole (Console& io, const hawk_ooch_t* buf, hawk_oow_t len);
|
||||||
hawk_ooi_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len);
|
hawk_ooi_t writeConsoleBytes (Console& io, const hawk_bch_t* buf, hawk_oow_t len);
|
||||||
int flushConsole (Console& io);
|
int flushConsole (Console& io);
|
||||||
|
Loading…
Reference in New Issue
Block a user