blob: 34099c52ffb8aec3cfe9fb82977e783cd868e2c0 [file] [log] [blame]
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
#ifndef __gnu_java_nio_channels_FileChannelImpl__
#define __gnu_java_nio_channels_FileChannelImpl__
#pragma interface
#include <java/nio/channels/FileChannel.h>
#include <gcj/array.h>
extern "Java"
{
namespace gnu
{
namespace java
{
namespace nio
{
namespace channels
{
class FileChannelImpl;
}
}
}
}
namespace java
{
namespace nio
{
class ByteBuffer;
class MappedByteBuffer;
namespace channels
{
class FileChannel;
class FileChannel$MapMode;
class FileLock;
class ReadableByteChannel;
class WritableByteChannel;
}
}
}
}
class gnu::java::nio::channels::FileChannelImpl : public ::java::nio::channels::FileChannel
{
static void init();
public:
FileChannelImpl();
static ::gnu::java::nio::channels::FileChannelImpl * create(::java::io::File *, jint);
private:
FileChannelImpl(::java::io::File *, jint);
public: // actually package-private
FileChannelImpl(jint, jint);
private:
jint open(::java::lang::String *, jint);
public:
jint available();
private:
jlong implPosition();
void seek(jlong);
void implTruncate(jlong);
public:
void unlock(jlong, jlong);
jlong size();
public: // actually protected
void implCloseChannel();
void finalize();
public:
jint read(::java::nio::ByteBuffer *);
jint read(::java::nio::ByteBuffer *, jlong);
jint read();
jint read(JArray< jbyte > *, jint, jint);
jlong read(JArray< ::java::nio::ByteBuffer * > *, jint, jint);
jint write(::java::nio::ByteBuffer *);
jint write(::java::nio::ByteBuffer *, jlong);
void write(JArray< jbyte > *, jint, jint);
void write(jint);
jlong write(JArray< ::java::nio::ByteBuffer * > *, jint, jint);
::java::nio::MappedByteBuffer * mapImpl(jchar, jlong, jint);
::java::nio::MappedByteBuffer * map(::java::nio::channels::FileChannel$MapMode *, jlong, jlong);
void force(jboolean);
private:
jint smallTransferTo(jlong, jint, ::java::nio::channels::WritableByteChannel *);
public:
jlong transferTo(jlong, jlong, ::java::nio::channels::WritableByteChannel *);
private:
jint smallTransferFrom(::java::nio::channels::ReadableByteChannel *, jlong, jint);
public:
jlong transferFrom(::java::nio::channels::ReadableByteChannel *, jlong, jlong);
::java::nio::channels::FileLock * tryLock(jlong, jlong, jboolean);
private:
jboolean lock(jlong, jlong, jboolean, jboolean);
public:
::java::nio::channels::FileLock * lock(jlong, jlong, jboolean);
jlong position();
::java::nio::channels::FileChannel * position(jlong);
::java::nio::channels::FileChannel * truncate(jlong);
jint getNativeFD();
static const jint READ = 1;
static const jint WRITE = 2;
static const jint APPEND = 4;
static const jint EXCL = 8;
static const jint SYNC = 16;
static const jint DSYNC = 32;
private:
jint __attribute__((aligned(__alignof__( ::java::nio::channels::FileChannel)))) fd;
jlong pos;
jint mode;
public:
static ::gnu::java::nio::channels::FileChannelImpl * in;
static ::gnu::java::nio::channels::FileChannelImpl * out;
static ::gnu::java::nio::channels::FileChannelImpl * err;
static ::java::lang::Class class$;
};
#endif // __gnu_java_nio_channels_FileChannelImpl__