#include <string>
-#if defined(_MSC_VER) || defined(__MINGW32__)
+#ifdef _WIN32
# include <io.h>
#endif
#include <cstring>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+
+#if !defined(_MSC_VER)
+# include <unistd.h>
+#endif
+
#include <simgear/misc/stdint.hxx>
#include <simgear/debug/logstream.hxx>
using std::string;
-
SGFile::SGFile(const string &file, int repeat_)
: file_name(file), fp(-1), eof_flag(true), repeat(repeat_), iteration(0)
{
set_type( sgFileType );
}
+SGFile::SGFile( int existingFd ) :
+ fp(existingFd),
+ eof_flag(false),
+ repeat(1),
+ iteration(0)
+{
+ set_type( sgFileType );
+}
SGFile::~SGFile() {
}
set_dir( d );
if ( get_dir() == SG_IO_OUT ) {
-#if defined(_MSC_VER) || defined(__MINGW32__)
+#ifdef _WIN32
int mode = 00666;
#else
mode_t mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH;