casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Member Functions | Private Attributes
casa::RegularFileIO Class Reference

Class for IO on a regular file. More...

#include <RegularFileIO.h>

Inheritance diagram for casa::RegularFileIO:
casa::FilebufIO casa::ByteIO

List of all members.

Public Member Functions

 RegularFileIO (const RegularFile &regularFile, ByteIO::OpenOption=ByteIO::Old, uInt filebufSize=0)
 Create an IO stream object for a regular file with the given name.
 ~RegularFileIO ()
virtual void reopenRW ()
 Reopen the underlying file for read/write access.
virtual String fileName () const
 Get the file name of the file attached.

Private Member Functions

 RegularFileIO (const RegularFileIO &that)
 Copy constructor, should not be used.
RegularFileIOoperator= (const RegularFileIO &that)
 Assignment, should not be used.

Private Attributes

OpenOption itsOption
RegularFile itsRegularFile

Detailed Description

Class for IO on a regular file.

Intended use:

Public interface

Review Status

Reviewed By:
Friso Olnon
Date Reviewed:
Test programs:



This class is a specialization of class ByteIO . It uses a regular file as the data store.

The class is derived from FilebufIO , which contains all functions to access the file. The description of this class explains the use of the filebufSize argument in the constructor.


       // Create a file (which should not exist yet).
       RegularFileIO regio (RegularFile(""), ByeIO::NewNoReplace);
       // Use that as the sink of AipsIO.
       AipsIO stream (&regio);
       // Write values.
       stream << (Int)10;
       stream << True;
       // Seek to beginning of file and read data in.
       stream.setpos (0);
       Int vali;
       Bool valb;
       stream >> vali >> valb;

Definition at line 81 of file RegularFileIO.h.

Constructor & Destructor Documentation

casa::RegularFileIO::RegularFileIO ( const RegularFile regularFile,
ByteIO::OpenOption  = ByteIO::Old,
uInt  filebufSize = 0 
) [explicit]

Create an IO stream object for a regular file with the given name.

The ByteIO option determines if the file will be created or opened for input and/or output.
The argument filebufSize defines the length of the internal buffer in the underlying FilebufIO object. A zero length uses an appropriate default.

Copy constructor, should not be used.

Member Function Documentation

virtual String casa::RegularFileIO::fileName ( ) const [virtual]

Get the file name of the file attached.

Reimplemented from casa::FilebufIO.

RegularFileIO& casa::RegularFileIO::operator= ( const RegularFileIO that) [private]

Assignment, should not be used.

virtual void casa::RegularFileIO::reopenRW ( ) [virtual]

Reopen the underlying file for read/write access.

Nothing will be done if the stream is writable already. Otherwise it will be reopened and an exception will be thrown if it is not possible to reopen it for read/write access.

Reimplemented from casa::ByteIO.

Member Data Documentation

Definition at line 107 of file RegularFileIO.h.

Definition at line 108 of file RegularFileIO.h.

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