summaryrefslogtreecommitdiff
path: root/build/Bonmin/include/coin/CoinFileIO.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'build/Bonmin/include/coin/CoinFileIO.hpp')
-rw-r--r--build/Bonmin/include/coin/CoinFileIO.hpp166
1 files changed, 0 insertions, 166 deletions
diff --git a/build/Bonmin/include/coin/CoinFileIO.hpp b/build/Bonmin/include/coin/CoinFileIO.hpp
deleted file mode 100644
index 20be1a9..0000000
--- a/build/Bonmin/include/coin/CoinFileIO.hpp
+++ /dev/null
@@ -1,166 +0,0 @@
-/* $Id: CoinFileIO.hpp 1439 2011-06-13 16:31:21Z stefan $ */
-// Copyright (C) 2005, COIN-OR. All Rights Reserved.
-// This code is licensed under the terms of the Eclipse Public License (EPL).
-
-#ifndef CoinFileIO_H
-#define CoinFileIO_H
-
-#include <string>
-
-/// Base class for FileIO classes.
-class CoinFileIOBase
-{
-public:
- /// Constructor.
- /// @param fileName The name of the file used by this object.
- CoinFileIOBase (const std::string &fileName);
-
- /// Destructor.
- ~CoinFileIOBase ();
-
- /// Return the name of the file used by this object.
- const char *getFileName () const;
-
- /// Return the method of reading being used
- inline std::string getReadType () const
- { return readType_.c_str();}
-protected:
- std::string readType_;
-private:
- CoinFileIOBase ();
- CoinFileIOBase (const CoinFileIOBase &);
-
- std::string fileName_;
-};
-
-/// Abstract base class for file input classes.
-class CoinFileInput: public CoinFileIOBase
-{
-public:
- /// indicates whether CoinFileInput supports gzip'ed files
- static bool haveGzipSupport();
- /// indicates whether CoinFileInput supports bzip2'ed files
- static bool haveBzip2Support();
-
- /// Factory method, that creates a CoinFileInput (more precisely
- /// a subclass of it) for the file specified. This method reads the
- /// first few bytes of the file and determines if this is a compressed
- /// or a plain file and returns the correct subclass to handle it.
- /// If the file does not exist or uses a compression not compiled in
- /// an exception is thrown.
- /// @param fileName The file that should be read.
- static CoinFileInput *create (const std::string &fileName);
-
- /// Constructor (don't use this, use the create method instead).
- /// @param fileName The name of the file used by this object.
- CoinFileInput (const std::string &fileName);
-
- /// Destructor.
- virtual ~CoinFileInput ();
-
- /// Read a block of data from the file, similar to fread.
- /// @param buffer Address of a buffer to store the data into.
- /// @param size Number of bytes to read (buffer should be large enough).
- /// @return Number of bytes read.
- virtual int read (void *buffer, int size) = 0;
-
- /// Reads up to (size-1) characters an stores them into the buffer,
- /// similar to fgets.
- /// Reading ends, when EOF or a newline occurs or (size-1) characters have
- /// been read. The resulting string is terminated with '\0'. If reading
- /// ends due to an encoutered newline, the '\n' is put into the buffer,
- /// before the '\0' is appended.
- /// @param buffer The buffer to put the string into.
- /// @param size The size of the buffer in characters.
- /// @return buffer on success, or 0 if no characters have been read.
- virtual char *gets (char *buffer, int size) = 0;
-};
-
-/// Abstract base class for file output classes.
-class CoinFileOutput: public CoinFileIOBase
-{
-public:
-
- /// The compression method.
- enum Compression {
- COMPRESS_NONE = 0, ///< No compression.
- COMPRESS_GZIP = 1, ///< gzip compression.
- COMPRESS_BZIP2 = 2 ///< bzip2 compression.
- };
-
- /// Returns whether the specified compression method is supported
- /// (i.e. was compiled into COIN).
- static bool compressionSupported (Compression compression);
-
- /// 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.
- /// @param fileName The file that should be read.
- /// @param compression Compression method used.
- static CoinFileOutput *create (const std::string &fileName,
- Compression compression);
-
- /// Constructor (don't use this, use the create method instead).
- /// @param fileName The name of the file used by this object.
- CoinFileOutput (const std::string &fileName);
-
- /// Destructor.
- virtual ~CoinFileOutput ();
-
- /// Write a block of data to the file, similar to fwrite.
- /// @param buffer Address of a buffer containing the data to be written.
- /// @param size Number of bytes to write.
- /// @return Number of bytes written.
- virtual int write (const void * buffer, int size) = 0;
-
- /// 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.
- /// @param s The zero terminated string to be written.
- /// @return true on success, false on error.
- virtual bool puts (const char *s);
-
- /// Convenience method: just a 'puts(s.c_str())'.
- inline bool puts (const std::string &s)
- {
- return puts (s.c_str ());
- }
-};
-
-/*! \relates CoinFileInput
- \brief Test if the given string looks like an absolute file path
-
- The criteria are:
- - unix: string begins with `/'
- - windows: string begins with `\' or with `drv:' (drive specifier)
-*/
-bool fileAbsPath (const std::string &path) ;
-
-/*! \relates CoinFileInput
- \brief Test if the file is readable, using likely versions of the file
- name, and return the name that worked.
-
- The file name is constructed from \p name using the following rules:
- <ul>
- <li> An absolute path is not modified.
- <li> If the name begins with `~', an attempt is made to replace `~'
- with the value of the environment variable HOME.
- <li> If a default prefix (\p dfltPrefix) is provided, it is
- prepended to the name.
- </ul>
- If the constructed file name cannot be opened, and CoinUtils was built
- with support for compressed files, fileCoinReadable will try any
- standard extensions for supported compressed files.
-
- The value returned in \p name is the file name that actually worked.
-*/
-bool fileCoinReadable(std::string &name,
- const std::string &dfltPrefix = std::string(""));
-#endif