Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXIODevice Class Reference

FXIODevice manipulates a handle to operating system i/o device, such as pipes, sockets, or files. More...

#include <FXIODevice.h>

Inheritance diagram for FX::FXIODevice:
FX::FXIO FX::FXFile FX::FXMappedFile FX::FXPipe FX::FXSocket

Public Member Functions

 FXIODevice ()
 FXIODevice (FXInputHandle h)
 Construct device and attach existing handle h.
FXInputHandle handle () const
 Return handle.
virtual FXbool isOpen () const
 Return true if open.
virtual FXuint mode () const
 Return access mode.
virtual FXbool mode (FXuint m)
 Change access mode of open device.
virtual FXuint perms () const
 Return permissions.
virtual FXbool perms (FXuint p)
 Set permissions.
virtual FXbool attach (FXInputHandle h)
 Attach existing device handle, taking ownership of the handle.
virtual FXbool detach ()
 Detach device handle.
virtual FXival readBlock (void *ptr, FXival count)
 Read block of bytes, returning number of bytes read.
virtual FXival writeBlock (const void *ptr, FXival count)
 Write block of bytes, returning number of bytes written.
virtual FXlong truncate (FXlong sz)
 Truncate file.
virtual FXbool flush ()
 Flush to disk.
virtual FXint eof ()
 Test if we're at the end; -1 if error.
virtual FXlong size ()
 Return size.
virtual FXbool close ()
 Close handle.
virtual ~FXIODevice ()
 Destroy and close.
- Public Member Functions inherited from FX::FXIO
virtual FXbool isSerial () const
 Return true if serial access only.
virtual FXlong position () const
 Get current file position.
virtual FXlong position (FXlong offset, FXuint from=FXIO::Begin)
 Change file position, returning new position from start.
FXbool readChar (FXchar &ch)
 Read character.
FXbool writeChar (FXchar ch)
 Write character.
virtual ~FXIO ()
 Destroy and close.

Static Public Member Functions

static FXbool valid (FXInputHandle hnd)
 Check handle validity.

Protected Attributes

FXInputHandle device

Additional Inherited Members

- Public Types inherited from FX::FXIO
enum  {
  NoAccess = 0, ReadOnly = 1, WriteOnly = 2, ReadWrite = ReadOnly|WriteOnly,
  Append = 4, Truncate = 8, Create = 16, Exclusive = 32,
  NonBlocking = 64, Executable = 128, OwnHandle = 256, NoAccessTime = 512,
  Inheritable = 1024, Reading = ReadOnly, Writing = ReadWrite|Create|Truncate
 Access modes. More...
enum  { Begin = 0, Current = 1, End = 2 }
 Positioning modes. More...
enum  {
  OtherExec = 0x00001, OtherWrite = 0x00002, OtherRead = 0x00004, OtherReadWrite = OtherRead|OtherWrite,
  OtherFull = OtherReadWrite|OtherExec, GroupExec = 0x00008, GroupWrite = 0x00010, GroupRead = 0x00020,
  GroupReadWrite = GroupRead|GroupWrite, GroupFull = GroupReadWrite|GroupExec, OwnerExec = 0x00040, OwnerWrite = 0x00080,
  OwnerRead = 0x00100, OwnerReadWrite = OwnerRead|OwnerWrite, OwnerFull = OwnerReadWrite|OwnerExec, AllRead = OtherRead|GroupRead|OwnerRead,
  AllWrite = OtherWrite|GroupWrite|OwnerWrite, AllExec = OtherExec|GroupExec|OwnerExec, AllReadWrite = AllRead|AllWrite, AllFull = AllReadWrite|AllExec,
  Hidden = 0x00200, Directory = 0x00400, File = 0x00800, SymLink = 0x01000,
  SetUser = 0x02000, SetGroup = 0x04000, Sticky = 0x08000, Character = 0x10000,
  Block = 0x20000, Socket = 0x40000, Fifo = 0x80000
 Permissions. More...
enum  { Error = -1, Again = -2, Broken = -3 }
 Error return codes for readBlock() and writeBlock() More...

Detailed Description

FXIODevice manipulates a handle to operating system i/o device, such as pipes, sockets, or files.

The documentation for this class was generated from the following file:

Copyright © 1997-2022 Jeroen van der Zijp