History

Added some missing classes from java/nio, fixed some bad things

Dmitry Kabak (userdima committed 13 years ago

Commit 7d47bc81 parent b1be22084 files · +40111 −23Browse files

Showing the changes to java/pkg/java/nio/ByteBufferAsFloatBufferL.java (1 of 84 files). Show all

Unified · Split

java/pkg/java/nio/ByteBufferAsFloatBufferL.java+219−0
@@ -0,0 +1,219 @@
1/*
2 * Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26// -- This file was mechanically generated: Do not edit! -- //
27
28package java.nio;
29
30
31class ByteBufferAsFloatBufferL // package-private
32 extends FloatBuffer
33{
34
35
36
37 protected final ByteBuffer bb;
38 protected final int offset;
39
40
41
42 ByteBufferAsFloatBufferL(ByteBuffer bb) { // package-private
43
44 super(-1, 0,
45 bb.remaining() >> 2,
46 bb.remaining() >> 2);
47 this.bb = bb;
48 // enforce limit == capacity
49 int cap = this.capacity();
50 this.limit(cap);
51 int pos = this.position();
52 assert (pos <= cap);
53 offset = pos;
54
55
56
57 }
58
59 ByteBufferAsFloatBufferL(ByteBuffer bb,
60 int mark, int pos, int lim, int cap,
61 int off)
62 {
63
64 super(mark, pos, lim, cap);
65 this.bb = bb;
66 offset = off;
67
68
69
70 }
71
72 public FloatBuffer slice() {
73 int pos = this.position();
74 int lim = this.limit();
75 assert (pos <= lim);
76 int rem = (pos <= lim ? lim - pos : 0);
77 int off = (pos << 2) + offset;
78 assert (off >= 0);
79 return new ByteBufferAsFloatBufferL(bb, -1, 0, rem, rem, off);
80 }
81
82 public FloatBuffer duplicate() {
83 return new ByteBufferAsFloatBufferL(bb,
84 this.markValue(),
85 this.position(),
86 this.limit(),
87 this.capacity(),
88 offset);
89 }
90
91 public FloatBuffer asReadOnlyBuffer() {
92
93 return new ByteBufferAsFloatBufferRL(bb,
94 this.markValue(),
95 this.position(),
96 this.limit(),
97 this.capacity(),
98 offset);
99
100
101
102 }
103
104
105
106 protected int ix(int i) {
107 return (i << 2) + offset;
108 }
109
110 public float get() {
111 return Bits.getFloatL(bb, ix(nextGetIndex()));
112 }
113
114 public float get(int i) {
115 return Bits.getFloatL(bb, ix(checkIndex(i)));
116 }
117
118
119
120 public FloatBuffer put(float x) {
121
122 Bits.putFloatL(bb, ix(nextPutIndex()), x);
123 return this;
124
125
126
127 }
128
129 public FloatBuffer put(int i, float x) {
130
131 Bits.putFloatL(bb, ix(checkIndex(i)), x);
132 return this;
133
134
135
136 }
137
138 public FloatBuffer compact() {
139
140 int pos = position();
141 int lim = limit();
142 assert (pos <= lim);
143 int rem = (pos <= lim ? lim - pos : 0);
144
145 ByteBuffer db = bb.duplicate();
146 db.limit(ix(lim));
147 db.position(ix(0));
148 ByteBuffer sb = db.slice();
149 sb.position(pos << 2);
150 sb.compact();
151 position(rem);
152 limit(capacity());
153 discardMark();
154 return this;
155
156
157
158 }
159
160 public boolean isDirect() {
161 return bb.isDirect();
162 }
163
164 public boolean isReadOnly() {
165 return false;
166 }
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210 public ByteOrder order() {
211
212
213
214
215 return ByteOrder.LITTLE_ENDIAN;
216
217 }
218
219}