OSDN Git Service

Merged gcj-eclipse branch to trunk.
[pf3gnuchains/gcc-fork.git] / libjava / sun / misc / Unsafe.h
1
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
3
4 #ifndef __sun_misc_Unsafe__
5 #define __sun_misc_Unsafe__
6
7 #pragma interface
8
9 #include <java/lang/Object.h>
10 extern "Java"
11 {
12   namespace sun
13   {
14     namespace misc
15     {
16         class Unsafe;
17     }
18   }
19 }
20
21 class sun::misc::Unsafe : public ::java::lang::Object
22 {
23
24   Unsafe();
25 public:
26   static ::sun::misc::Unsafe * getUnsafe();
27   virtual jlong objectFieldOffset(::java::lang::reflect::Field *);
28   virtual jboolean compareAndSwapInt(::java::lang::Object *, jlong, jint, jint);
29   virtual jboolean compareAndSwapLong(::java::lang::Object *, jlong, jlong, jlong);
30   virtual jboolean compareAndSwapObject(::java::lang::Object *, jlong, ::java::lang::Object *, ::java::lang::Object *);
31   virtual void putOrderedInt(::java::lang::Object *, jlong, jint);
32   virtual void putOrderedLong(::java::lang::Object *, jlong, jlong);
33   virtual void putOrderedObject(::java::lang::Object *, jlong, ::java::lang::Object *);
34   virtual void putIntVolatile(::java::lang::Object *, jlong, jint);
35   virtual jint getIntVolatile(::java::lang::Object *, jlong);
36   virtual void putLongVolatile(::java::lang::Object *, jlong, jlong);
37   virtual void putLong(::java::lang::Object *, jlong, jlong);
38   virtual jlong getLongVolatile(::java::lang::Object *, jlong);
39   virtual jlong getLong(::java::lang::Object *, jlong);
40   virtual void putObjectVolatile(::java::lang::Object *, jlong, ::java::lang::Object *);
41   virtual void putObject(::java::lang::Object *, jlong, ::java::lang::Object *);
42   virtual ::java::lang::Object * getObjectVolatile(::java::lang::Object *, jlong);
43   virtual jint arrayBaseOffset(::java::lang::Class *);
44   virtual jint arrayIndexScale(::java::lang::Class *);
45   virtual void unpark(::java::lang::Thread *);
46   virtual void park(jboolean, jlong);
47 private:
48   static ::sun::misc::Unsafe * unsafe;
49 public:
50   static ::java::lang::Class class$;
51 };
52
53 #endif // __sun_misc_Unsafe__