Dip
0.92.4
|
Abstract base class for file output classes. More...
#include <CoinFileIO.hpp>
Public Types | |
enum | Compression { COMPRESS_NONE = 0, COMPRESS_GZIP = 1, COMPRESS_BZIP2 = 2 } |
The compression method. More... | |
Public Member Functions | |
CoinFileOutput (const std::string &fileName) | |
Constructor (don't use this, use the create method instead). More... | |
virtual | ~CoinFileOutput () |
Destructor. More... | |
virtual int | write (const void *buffer, int size)=0 |
Write a block of data to the file, similar to fwrite. More... | |
virtual bool | puts (const char *s) |
Write a string to the file (like fputs). More... | |
bool | puts (const std::string &s) |
Convenience method: just a 'puts(s.c_str())'. More... | |
![]() | |
CoinFileIOBase (const std::string &fileName) | |
Constructor. More... | |
~CoinFileIOBase () | |
Destructor. More... | |
const char * | getFileName () const |
Return the name of the file used by this object. More... | |
std::string | getReadType () const |
Return the method of reading being used. More... | |
Static Public Member Functions | |
static bool | compressionSupported (Compression compression) |
Returns whether the specified compression method is supported (i.e. More... | |
static CoinFileOutput * | create (const std::string &fileName, Compression compression) |
Factory method, that creates a CoinFileOutput (more precisely a subclass of it) for the file specified. More... | |
Additional Inherited Members | |
![]() | |
std::string | readType_ |
Abstract base class for file output classes.
Definition at line 98 of file CoinFileIO.hpp.
The compression method.
Enumerator | |
---|---|
COMPRESS_NONE |
No compression. |
COMPRESS_GZIP |
gzip compression. |
COMPRESS_BZIP2 |
bzip2 compression. |
Definition at line 101 of file CoinFileIO.hpp.
CoinFileOutput::CoinFileOutput | ( | const std::string & | fileName | ) |
Constructor (don't use this, use the create method instead).
fileName | The name of the file used by this object. |
|
virtual |
Destructor.
|
static |
Returns whether the specified compression method is supported (i.e.
was compiled into COIN).
|
static |
Factory method, that creates a CoinFileOutput (more precisely a subclass of it) for the file specified.
If the compression method is not supported an exception is thrown (so use compressionSupported first, if this is a problem). The reason for not providing direct access to the subclasses (and using such a method instead) is that depending on the build configuration some of the classes are not available (or functional). This way we can handle all required ifdefs here instead of polluting other files.
fileName | The file that should be read. |
compression | Compression method used. |
|
pure virtual |
Write a block of data to the file, similar to fwrite.
buffer | Address of a buffer containing the data to be written. |
size | Number of bytes to write. |
|
virtual |
Write a string to the file (like fputs).
Just as with fputs no trailing newline is inserted! The terminating '\0' is not written to the file. The default implementation determines the length of the string and calls write on it.
s | The zero terminated string to be written. |
Referenced by puts().
|
inline |
Convenience method: just a 'puts(s.c_str())'.
Definition at line 147 of file CoinFileIO.hpp.
References puts().