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+
28+package java.nio;
29+
30+
31+class 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+}