public class ResTableType extends ResChunk
This is followed by entry_count u32s containing offsets from entry_start to the data for each entry. If the offset for a resource is -1, that resource has no value in this configuration.
After the offsets comes the entry data. Each entry is of the form: u16 size u16 flags StringRef key
If `(flags & FLAG_COMPLEX) == 0` this data is then followed by: ResValue value
Else it's followed by a map header: ResRef parent u32 count
and `count` map entries of the form: ResRef name ResValue value
ResChunk.RefTransformer, ResChunk.RefVisitor
Modifier and Type | Field and Description |
---|---|
static int |
ATTRIBUTE_DATA_OFFSET |
static int |
ATTRIBUTE_NAME_REF_OFFSET |
static int |
ATTRIBUTE_SIZE_OFFSET |
static int |
ATTRIBUTE_TYPE_OFFSET |
CHUNK_RES_TABLE_PACKAGE, CHUNK_RES_TABLE_TYPE, CHUNK_RES_TABLE_TYPE_SPEC, CHUNK_RESOURCE_TABLE, CHUNK_STRING_POOL, CHUNK_XML_REF_MAP, CHUNK_XML_TREE
getChunkSize, getHeaderSize, getTotalSize, getType, serialize, slice, slice, wrap
public static final int ATTRIBUTE_NAME_REF_OFFSET
public static final int ATTRIBUTE_SIZE_OFFSET
public static final int ATTRIBUTE_TYPE_OFFSET
public static final int ATTRIBUTE_DATA_OFFSET
@Nullable public static ResTableType slice(ResTableType type, int count)
public void put(ByteBuffer output)
public static ResTableType get(ByteBuffer buf)
public void dump(StringPool strings, ResTablePackage resPackage, PrintStream out)
public int getResourceRef(int id)
public int getEntryValueOffset(int i)
public int getEntryCount()
public void transformKeyReferences(ResChunk.RefTransformer visitor)
public void visitKeyReferences(ResChunk.RefVisitor visitor)
public void transformStringReferences(ResChunk.RefTransformer visitor)
public void transformStringReferences(int[] idsToVisit, ResChunk.RefTransformer visitor)
public void visitStringReferences(ResChunk.RefVisitor visitor)
public void visitStringReferences(int[] idsToVisit, ResChunk.RefVisitor visitor)
public void transformReferences(ResChunk.RefTransformer visitor)
public void transformReferences(int[] ids, ResChunk.RefTransformer visitor)
public void visitReferences(int[] ids, ResChunk.RefVisitor visitor)
public void reassignIds(ReferenceMapper refMapping)