OSDN Git Service

2010-05-19 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / libjava / java / io / ObjectOutputStream.h
1
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
3
4 #ifndef __java_io_ObjectOutputStream__
5 #define __java_io_ObjectOutputStream__
6
7 #pragma interface
8
9 #include <java/io/OutputStream.h>
10 #include <gcj/array.h>
11
12 extern "Java"
13 {
14   namespace gnu
15   {
16     namespace java
17     {
18       namespace io
19       {
20           class ObjectIdentityMap2Int;
21       }
22       namespace security
23       {
24         namespace action
25         {
26             class SetAccessibleAction;
27         }
28       }
29     }
30   }
31 }
32
33 class java::io::ObjectOutputStream : public ::java::io::OutputStream
34 {
35
36 public:
37   ObjectOutputStream(::java::io::OutputStream *);
38   virtual void writeObject(::java::lang::Object *);
39   virtual void writeUnshared(::java::lang::Object *);
40 private:
41   void writeObject(::java::lang::Object *, jboolean);
42 public: // actually protected
43   virtual void writeClassDescriptor(::java::io::ObjectStreamClass *);
44 public:
45   virtual void defaultWriteObject();
46 private:
47   void markFieldsWritten();
48 public:
49   virtual void reset();
50 private:
51   void reset(jboolean);
52 public:
53   virtual void useProtocolVersion(jint);
54 public: // actually protected
55   virtual void annotateClass(::java::lang::Class *);
56   virtual void annotateProxyClass(::java::lang::Class *);
57   virtual ::java::lang::Object * replaceObject(::java::lang::Object *);
58   virtual jboolean enableReplaceObject(jboolean);
59   virtual void writeStreamHeader();
60   ObjectOutputStream();
61   virtual void writeObjectOverride(::java::lang::Object *);
62 public:
63   virtual void write(jint);
64   virtual void write(JArray< jbyte > *);
65   virtual void write(JArray< jbyte > *, jint, jint);
66   virtual void flush();
67 public: // actually protected
68   virtual void drain();
69 public:
70   virtual void close();
71   virtual void writeBoolean(jboolean);
72   virtual void writeByte(jint);
73   virtual void writeShort(jint);
74   virtual void writeChar(jint);
75   virtual void writeInt(jint);
76   virtual void writeLong(jlong);
77   virtual void writeFloat(jfloat);
78   virtual void writeDouble(jdouble);
79   virtual void writeBytes(::java::lang::String *);
80   virtual void writeChars(::java::lang::String *);
81   virtual void writeUTF(::java::lang::String *);
82   virtual ::java::io::ObjectOutputStream$PutField * putFields();
83   virtual void writeFields();
84 private:
85   void writeBlockDataHeader(jint);
86   jint findHandle(::java::lang::Object *);
87   jint assignNewHandle(::java::lang::Object *);
88   void clearHandles();
89   void writeArraySizeAndElements(::java::lang::Object *, ::java::lang::Class *);
90   void writeFields(::java::lang::Object *, ::java::io::ObjectStreamClass *);
91   void writeFields(::java::lang::Object *, JArray< ::java::io::ObjectStreamField * > *);
92 public: // actually package-private
93   virtual jboolean setBlockDataMode(jboolean);
94 private:
95   void callWriteMethod(::java::lang::Object *, ::java::io::ObjectStreamClass *);
96   void dumpElementln(::java::lang::String *, ::java::lang::Object *);
97   void dumpElementln(::java::lang::String *);
98   static const jint BUFFER_SIZE = 1024;
99   static jint defaultProtocolVersion;
100   ::java::io::DataOutputStream * __attribute__((aligned(__alignof__( ::java::io::OutputStream)))) dataOutput;
101   jboolean writeDataAsBlocks;
102   ::java::io::DataOutputStream * realOutput;
103   ::java::io::DataOutputStream * blockDataOutput;
104   JArray< jbyte > * blockData;
105   jint blockDataCount;
106   ::java::lang::Object * currentObject;
107 public: // actually package-private
108   ::java::io::ObjectStreamClass * currentObjectStreamClass;
109 private:
110   ::java::io::ObjectOutputStream$PutField * currentPutField;
111   jboolean fieldsAlreadyWritten;
112   jboolean replacementEnabled;
113   jboolean isSerializing;
114   jint nextOID;
115   ::gnu::java::io::ObjectIdentityMap2Int * OIDLookupTable;
116   jint protocolVersion;
117   jboolean useSubclassMethod;
118   ::gnu::java::security::action::SetAccessibleAction * setAccessible;
119   jint depth;
120   jboolean dump;
121   static const jboolean DEBUG = 0;
122 public:
123   static ::java::lang::Class class$;
124 };
125
126 #endif // __java_io_ObjectOutputStream__