1 /*-
2  * Copyright (C) 2006 Erik Larsson
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 package org.catacombae.hfs.types.hfsplus;
19 
20 import java.io.PrintStream;
21 import org.catacombae.csjc.PrintableStruct;
22 
23 public abstract class BTNode implements PrintableStruct {
24     protected final BTNodeDescriptor nodeDescriptor;
25 
BTNode(byte[] data, int offset, int nodeSize)26     public BTNode(byte[] data, int offset, int nodeSize) {
27         nodeDescriptor = new BTNodeDescriptor(data, offset);
28     }
29 
getNodeDescriptor()30     public BTNodeDescriptor getNodeDescriptor() {
31         return nodeDescriptor;
32     }
33 
printFields(PrintStream ps, String prefix)34     public void printFields(PrintStream ps, String prefix) {
35         ps.println(prefix + " nodeDescriptor:");
36         nodeDescriptor.printFields(ps, prefix + "  ");
37     }
38 
print(PrintStream ps, String prefix)39     public void print(PrintStream ps, String prefix) {
40         ps.println(prefix + "BTNode:");
41         printFields(ps, prefix);
42     }
43 }
44