1 /
55
56
57 package org.apache.poi.hssf.record;
58
59
60
61 import org.apache.poi.util.*;
62
63
70 public class AxisRecord
71 extends Record
72 {
73 public final static short sid = 0x101d;
74 private short field_1_axisType;
75 public final static short AXIS_TYPE_CATEGORY_OR_X_AXIS = 0;
76 public final static short AXIS_TYPE_VALUE_AXIS = 1;
77 public final static short AXIS_TYPE_SERIES_AXIS = 2;
78 private int field_2_reserved1;
79 private int field_3_reserved2;
80 private int field_4_reserved3;
81 private int field_5_reserved4;
82
83
84 public AxisRecord()
85 {
86
87 }
88
89
97
98 public AxisRecord(short id, short size, byte [] data)
99 {
100 super(id, size, data);
101
102 }
103
104
113
114 public AxisRecord(short id, short size, byte [] data, int offset)
115 {
116 super(id, size, data, offset);
117
118 }
119
120
125 protected void validateSid(short id)
126 {
127 if (id != sid)
128 {
129 throw new RecordFormatException("Not a Axis record");
130 }
131 }
132
133 protected void fillFields(byte [] data, short size, int offset)
134 {
135
136 int pos = 0;
137 field_1_axisType = LittleEndian.getShort(data, pos + 0x0 + offset);
138 field_2_reserved1 = LittleEndian.getInt(data, pos + 0x2 + offset);
139 field_3_reserved2 = LittleEndian.getInt(data, pos + 0x6 + offset);
140 field_4_reserved3 = LittleEndian.getInt(data, pos + 0xa + offset);
141 field_5_reserved4 = LittleEndian.getInt(data, pos + 0xe + offset);
142
143 }
144
145 public String toString()
146 {
147 StringBuffer buffer = new StringBuffer();
148
149 buffer.append("[AXIS]\n");
150 buffer.append(" .axisType = ")
151 .append("0x").append(HexDump.toHex( getAxisType ()))
152 .append(" (").append( getAxisType() ).append(" )");
153 buffer.append(System.getProperty("line.separator"));
154 buffer.append(" .reserved1 = ")
155 .append("0x").append(HexDump.toHex( getReserved1 ()))
156 .append(" (").append( getReserved1() ).append(" )");
157 buffer.append(System.getProperty("line.separator"));
158 buffer.append(" .reserved2 = ")
159 .append("0x").append(HexDump.toHex( getReserved2 ()))
160 .append(" (").append( getReserved2() ).append(" )");
161 buffer.append(System.getProperty("line.separator"));
162 buffer.append(" .reserved3 = ")
163 .append("0x").append(HexDump.toHex( getReserved3 ()))
164 .append(" (").append( getReserved3() ).append(" )");
165 buffer.append(System.getProperty("line.separator"));
166 buffer.append(" .reserved4 = ")
167 .append("0x").append(HexDump.toHex( getReserved4 ()))
168 .append(" (").append( getReserved4() ).append(" )");
169 buffer.append(System.getProperty("line.separator"));
170
171 buffer.append("[/AXIS]\n");
172 return buffer.toString();
173 }
174
175 public int serialize(int offset, byte[] data)
176 {
177 int pos = 0;
178
179 LittleEndian.putShort(data, 0 + offset, sid);
180 LittleEndian.putShort(data, 2 + offset, (short)(getRecordSize() - 4));
181
182 LittleEndian.putShort(data, 4 + offset + pos, field_1_axisType);
183 LittleEndian.putInt(data, 6 + offset + pos, field_2_reserved1);
184 LittleEndian.putInt(data, 10 + offset + pos, field_3_reserved2);
185 LittleEndian.putInt(data, 14 + offset + pos, field_4_reserved3);
186 LittleEndian.putInt(data, 18 + offset + pos, field_5_reserved4);
187
188 return getRecordSize();
189 }
190
191
194 public int getRecordSize()
195 {
196 return 4 + 2 + 4 + 4 + 4 + 4;
197 }
198
199 public short getSid()
200 {
201 return this.sid;
202 }
203
204 public Object clone() {
205 AxisRecord rec = new AxisRecord();
206
207 rec.field_1_axisType = field_1_axisType;
208 rec.field_2_reserved1 = field_2_reserved1;
209 rec.field_3_reserved2 = field_3_reserved2;
210 rec.field_4_reserved3 = field_4_reserved3;
211 rec.field_5_reserved4 = field_5_reserved4;
212 return rec;
213 }
214
215
216
217
218
226 public short getAxisType()
227 {
228 return field_1_axisType;
229 }
230
231
240 public void setAxisType(short field_1_axisType)
241 {
242 this.field_1_axisType = field_1_axisType;
243 }
244
245
248 public int getReserved1()
249 {
250 return field_2_reserved1;
251 }
252
253
256 public void setReserved1(int field_2_reserved1)
257 {
258 this.field_2_reserved1 = field_2_reserved1;
259 }
260
261
264 public int getReserved2()
265 {
266 return field_3_reserved2;
267 }
268
269
272 public void setReserved2(int field_3_reserved2)
273 {
274 this.field_3_reserved2 = field_3_reserved2;
275 }
276
277
280 public int getReserved3()
281 {
282 return field_4_reserved3;
283 }
284
285
288 public void setReserved3(int field_4_reserved3)
289 {
290 this.field_4_reserved3 = field_4_reserved3;
291 }
292
293
296 public int getReserved4()
297 {
298 return field_5_reserved4;
299 }
300
301
304 public void setReserved4(int field_5_reserved4)
305 {
306 this.field_5_reserved4 = field_5_reserved4;
307 }
308
309
310 }
311
312
313
314
315