Source: OmOutputFileStream.h
|
|
|
|
#ifndef OM_OUTPUT_FILE_STREAM_H
#define OM_OUTPUT_FILE_STREAM_H
/**
* Implementation of output stream for files.
*
* This class provides a specialization of OmOutputStream for standard and user files.
* This corresponds to an encapsulation of I/O operations needed by the library.
*/
class OmOutputFileStream : public OmOutputStream
{
public:
/**
* Default constructor. Assume directly the use of the standard output (stdout).
*/
OmOutputFileStream() {
setIO(OMmakeIOFile(stdout)); }
/**
* Constructor. A valid filename (but not open) must be given.
* @li Precondition: ~ NullPointer(filename_in) and ~ EmptyString(filename_in)
*/
explicit OmOutputFileStream(const char * filename_in) {
OmException::checkNullPointer(filename_in);
OmException::checkEmptyString(filename_in);
FILE * file = fopen(filename_in, "wb");
OmException::checkFileError(file);
setIO(OMmakeIOFile(file)); }
/**
* Constructor. A valid file in an open and ready state must be given.
* @li Precondition: ~ FileError(file_in)
*/
explicit OmOutputFileStream(FILE * file_in) {
OmException::checkFileError(file_in);
setIO(OMmakeIOFile(file_in)); }
};
#endif // OM_OUTPUT_FILE_STREAM_H
Generated by: root@localhost.localdomain on Tue Oct 12 21:02:30 199. |