BfshaLibrary
Represents a NintendoWare for Cafe (NW4F) graphics data archive file.
Initializes a new instance of the class.
Initializes a new instance of the class from the given which
is optionally left open.
The to load the data from.
true to leave the stream open after reading, otherwise false.
Initializes a new instance of the class from the file with the given
.
The name of the file to load the data from.
Gets or sets the revision of the BFRES structure formats.
Gets the byte order in which data is stored. Must be the endianness of the target platform.
Gets or sets the alignment to use for raw data blocks in the file.
Gets or sets the data alignment to use for raw data blocks in the file.
Gets or sets the target adress size to use for raw data blocks in the file.
Gets or sets the flag. Unknown purpose.
Gets or sets the BlockOffset.
Gets or sets a name describing the contents.
Gets or sets the path of the file which originally supplied the data of this instance.
Gets or sets the stored (_RLT) instance.
Gets or sets the stored instances.
Gets or sets the stored instances.
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Saves the contents in the given and optionally leaves it open
The to save the contents into.
true to leave the stream open after writing, otherwise false.
Saves the contents in the file with the given .
The name of the file to save the contents into.
Represents an animation curve used by several sections to control different parameters over time.
Gets or sets the data type in which are loaded and saved. For simplicity, the class
always stores frames as converted instances.
Gets or sets the data type in which are loaded and saved. For simplicity, the class
always stores frames as converted instances.
Gets or sets the curve type, determining the number of elements stored with each key.
Gets or sets the memory offset relative to the start of the corresponding animation data structure to
animate the field stored at that address. Note that enums exist in the specific animation which map offsets
to names.
Gets or sets the first frame at which a key is placed.
Gets or sets the last frame at which a key is placed.
Gets or sets the scale to multiply values of the curve by.
Gets or sets the offset to add to the values of the curve (after multiplicating them).
Gets or sets the difference between the lowest and highest key value.
Gets the frame numbers at which keys of the same index in the array are placed.
Gets an array of elements forming the elements of keys placed at the frames of the same index in the
array.
Represents the possible data types in which are stored. For simple library use,
they are always converted them to and from instances.
The frames are stored as instances.
The frames are stored as instances.
The frames are stored as instances.
Represents the possible data types in which are stored. For simple library use,
they are always converted them to and from instances.
The keys are stored as instances.
The keys are stored as instances.
The keys are stored as instances.
Represents the type of key values stored by this curve. This also determines the number of required elements to
define a key in the array. Use the
method to retrieve the number of elements required for the of that curve.
The curve uses cubic interpolation. 4 elements of the array form a key.
The curve uses linear interpolation. 2 elements of the array form a key.
1 element of the array forms a key.
1 element of the array forms a key.
1 element of the array forms a key.
1 element of the array forms a key.
1 element of the array forms a key.
Gets or sets the memory offset relative to the start of the corresponding animation data structure to
animate the field stored at that address. Note that enums exist in the specific animation which map offsets
to names.
Represents a 16-bit fixed-point decimal consisting of 1 sign bit, 10 integer bits and 5 fractional bits (denoted
as Q10.5). Note that the implementation is not reporting over- and underflowing errors.
Examples:
SIIIIIII_IIIFFFFF
0b00000000_00010000 = 0.5
0b00000000_00100000 = 1
0b00000001_00000000 = 8
0b01000000_00000000 = 512
0b10000000_00000000 = -1024
Represents the largest possible value of .
Represents the smallest possible value of .
Initializes a new instance of the struct from the given
representation.
The raw representation of the internally stored bits.
Gets the internally stored value to represent the instance.
Signed to get arithmetic rather than logical shifts.
Returns the given .
The .
The result.
Adds the first to the second one.
The first .
The second .
The addition result.
Negates the given .
The to negate.
The negated result.
Subtracts the first from the second one.
The first .
The second .
The subtraction result.
Multiplicates the given by the scalar.
The .
The scalar.
The multiplication result.
Multiplicates the first by the second one.
The first .
The second .
The multiplication result.
Divides the given through the scalar.
The .
The scalar.
The division result.
Divides the first through the second one.
The first .
The second .
The division result.
Gets a value indicating whether the first specified is the same as the second
specified .
The first to compare.
The second to compare.
true, if both are the same.
Gets a value indicating whether the first specified is not the same as the second
specified .
The first to compare.
The second to compare.
true, if both are not the same.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Gets a value indicating whether this is the same as the second specified
.
The object to compare, if it is a .
true, if both are the same.
Gets a hash code as an indication for object equality.
The hash code.
Gets a string describing this .
A string describing this .
Indicates whether the current is equal to another .
A to compare with this .
true if the current is equal to the other parameter; otherwise, false.
Represents a 4-byte value which can hold differently typed data.
The data as an .
The data as a .
The data as an .
Converts the given value to a instance.
The value to represent in the new instance.
Converts the given value to a instance.
The value to represent in the new instance.
Converts the given value to a instance.
The value to represent in the new instance.
Converts the given value to an instance.
The value to represent in the new instance.
Converts the given value to a instance.
The value to represent in the new instance.
Converts the given value to an instance.
The value to represent in the new instance.
Returns the for this instance.
The enumerated constant that is the of the class or value type that
implements this interface.
This operation is not supported.
This operation is not supported.
This operation is not supported.
This operation is not supported.
This operation is not supported.
Converts the value of this instance to an equivalent double-precision floating-point number using the
specified culture-specific formatting information.
An interface implementation that supplies
culture-specific formatting information.
A double-precision floating-point number equivalent to the value of this instance.
This operation is not supported.
Converts the value of this instance to an equivalent 32-bit signed integer using the specified
culture-specific formatting information.
An interface implementation that supplies
culture-specific formatting information.
An 32-bit signed integer equivalent to the value of this instance.
Converts the value of this instance to an equivalent 64-bit signed integer using the specified
culture-specific formatting information.
An interface implementation that supplies
culture-specific formatting information.
An 64-bit signed integer equivalent to the value of this instance.
This operation is not supported.
Converts the value of this instance to an equivalent single-precision floating-point number using the
specified culture-specific formatting information.
An interface implementation that supplies
culture-specific formatting information.
A single-precision floating-point number equivalent to the value of this instance.
This operation is not supported.
Converts the value of this instance to an of the specified that has
an equivalent value, using the specified culture-specific formatting information.
The to which the value of this instance is converted.
An interface implementation that supplies
culture-specific formatting information.
An instance of type conversionType whose value is equivalent to the value of
this instance.
This operation is not supported.
This operation is not supported.
This operation is not supported.
Represents a 16-bit half-precision floating point value according to the IEEE 754 standard.
Examples:
SEEEEEFF_FFFFFFFF
0b00000000_00000000 = 0
1b00000000_00000000 = -0
0b00111100_00000000 = 1
0b11000000_00000000 = -2
0b11111011_11111111 = 65504 (MaxValue)
0b01111100_00000000 = PositiveInfinity
0b11111100_00000000 = NegativeInfinity
Represents the smallest positive value greater than zero.
Represents the largest possible value of .
Represents the smallest possible value of .
Represents not a number (NaN).
Represents negative infinity.
Represents positive infinity.
Initializes a new instance of the struct from the given
representation.
The raw representation of the internally stored bits.
Gets the internally stored value to represent the instance.
Signed to get arithmetic rather than logical shifts.
Returns the given .
The .
The result.
Adds the first to the second one.
The first .
The second .
The addition result.
Negates the given .
The to negate.
The negated result.
Subtracts the first from the second one.
The first .
The second .
The subtraction result.
Multiplicates the first by the second one.
The first .
The second .
The multiplication result.
Divides the first through the second one.
The first .
The second .
The division result.
Gets a value indicating whether the first specified is the same as the second
specified .
The first to compare.
The second to compare.
true, if both are the same.
Gets a value indicating whether the first specified is not the same as the second
specified .
The first to compare.
The second to compare.
true, if both are not the same.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Converts the given value to a instance.
The value to represent in the new
instance.
Gets a value indicating whether this is the same as the second specified
.
The object to compare, if it is a .
true, if both are the same.
Gets a hash code as an indication for object equality.
The hash code.
Gets a string describing this .
A string describing this .
Indicates whether the current is equal to another .
A to compare with this .
true if the current is equal to the other parameter; otherwise, false.
Returns a value indicating whether the specified number evaluates to not a number ().
A half-precision floating-point number.
true if value evaluates to not a number (); otherwise false.
Returns a value indicating whether the specified number evaluates to negative or positive infinity.
A half-precision floating-point number.
true if half evaluates to or ;
otherwise false.
Returns a value indicating whether the specified number evaluates to negative infinity.
A half-precision floating-point number.
true if half evaluates to ; otherwise false.
Returns a value indicating whether the specified number evaluates to positive infinity.
A half-precision floating-point number.
true if half evaluates to ; otherwise false.
Represents a buffer of data uploaded to the GPU which can hold arbitrary data.
The size of a full vertex in bytes.
The raw bytes stored for each buffering.
Represents an memory pool section in a subfile, storing memory.
Represents an memory info section in a subfile. References vertex and index buffers
Gets or sets the buffer instance that stores face data first, then vertex buffer after.
Gets or sets the memory pool property
Represents an _RLT section in a subfile, storing pointers to sections in a Bfsha.
Gets or sets the instance storing the data which forms the shape's surface. Saved
depending on .
Represents the non-generic base of a dictionary which can quickly look up instances via
key or index.
Initializes a new instance of the class.
Gets the number of instances stored.
Adds the given to insert in the dictionary.
Duplicated instances
already exists.
Removes the given from the dictionary.
Duplicated instances
already exists.
Determines whether the given is in the dictionary.
true if was found in the dictionary; otherwise false.
Returns the key given is within range of the dictionary.
Removes all elements from the dictionary.
Returns only the publically visible nodes, excluding the root node.
Represents a node forming the Patricia trie of the dictionary.
Represents a which is stored in a .
The textual represented by this instance.
The with which this string was read or will be written.
Converts the given value to a instance.
The value to represent in the new instance.
Converts the given value to an instance.
The value to represent in the new instance.
Returns the value of the property.
The value of the property.
Represents a 2D transformation.
The size of this structure.
The scaling amount of the transformation.
The rotation angle of the transformation.
The translation amount of the transformation.
Represents a 3D transformation.
The size of this structure.
The scaling amount of the transformation.
The rotation amount of the transformation.
The translation amount of the transformation.
Represents a 2D texture transformation.
The size of this structure.
The with which the transformation is applied.
The scaling amount of the transformation.
The rotation angle of the transformation.
The translation amount of the transformation.
Represents a 2D texture transformation which is multiplied by a 3x4 matrix referenced at runtime by the
.
The size of this structure.
The with which the transformation is applied.
The scaling amount of the transformation.
The rotation angle of the transformation.
The translation amount of the transformation.
A pointer to a 3x4 matrix to multiply the transformation with. Set at runtime.
Represents the texture transformation mode used in and .
Represents a reference to a instance by name.
Gets or sets the name with which the instance can be referenced uniquely in
instances. Typically the same as the .
Represents custom user variables which can be attached to many sections and subfiles of a .
Gets or sets the name with which the instance can be referenced uniquely in
instances.
The data type of the stored values.
Represents the possible data types of values stored in instances.
The values is an array.
The values is a array.
The values is a array encoded in ASCII.
The values is a array encoded in UTF-16.
The values is a array.
Represents extension methods for the class.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads a instance from the current stream and returns it.
The extended .
The number of instances to read.
The instance.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The in which values are stored.
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The in which values are stored.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The in which values are stored.
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The in which values are stored.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The in which values are stored.
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The in which values are stored.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Reads a instance from the current stream and returns it.
The extended .
The instance.
Reads instances from the current stream and returns them.
The extended .
The number of instances to read.
The instances.
Represents extension methods for the class.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
The in which values are stored.
Writes instances into the current stream.
The extended .
The instances.
The in which values are stored.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
The in which values are stored.
Writes instances into the current stream.
The extended .
The instances.
The in which values are stored.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
The in which values are stored.
Writes instances into the current stream.
The extended .
The instances.
The in which values are stored.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Writes a instance into the current stream.
The extended .
The instance.
Writes instances into the current stream.
The extended .
The instances.
Represents extension methods for instances.
Returns an instance represented by the given number of , starting
at the .
The extended instance.
The first bit of the encoded value.
The number of least significant bits which are used to store the
value.
The decoded .
Returns the current with the bit at the set (being 1).
The extended instance.
The 0-based index of the bit to enable.
The current with the bit enabled.
Returns the current with the given set into the given number
of starting at .
The extended instance.
The value to encode.
The first bit used for the encoded value.
The number of bits which are used to store the value.
The current with the value encoded into it.
Returns the current with the bit at the cleared (being 0).
The extended instance.
The 0-based index of the bit to disable.
The current with the bit disabled.
Returns a value indicating whether the bit at the in the current
is enabled or disabled.
The extended instance.
The 0-based index of the bit to check.
true when the bit is set; otherwise false.
Returns the current with all bits rotated in the given ,
where positive directions rotate left and negative directions rotate right.
The extended instance.
The direction in which to rotate, where positive directions rotate left.
The current with the bits rotated.
Returns the current with the bit at the enabled or disabled,
according to .
The extended instance.
The 0-based index of the bit to enable or disable.
true to enable the bit; otherwise false.
The current with the bit enabled or disabled.
Returns the current with the bit at the enabled when it is
disabled or disabled when it is enabled.
The extended instance.
The 0-based index of the bit to toggle.
The current with the bit toggled.
Represents extension methods for instances.
Returns an instance represented by the given number of , starting
at the .
The extended instance.
The first bit of the encoded value.
The number of least significant bits which are used to store the
value.
The decoded .
Returns the current with the bit at the set (being 1).
The extended instance.
The 0-based index of the bit to enable.
The current with the bit enabled.
Returns the current with the given set into the given number
of starting at .
The extended instance.
The value to encode.
The first bit used for the encoded value.
The number of bits which are used to store the value.
The current with the value encoded into it.
Returns the current with the bit at the cleared (being 0).
The extended instance.
The 0-based index of the bit to disable.
The current with the bit disabled.
Returns a value indicating whether the bit at the in the current
is enabled or disabled.
The extended instance.
The 0-based index of the bit to check.
true when the bit is set; otherwise false.
Returns the current with all bits rotated in the given ,
where positive directions rotate left and negative directions rotate right.
The extended instance.
The direction in which to rotate, where positive directions rotate left.
The current with the bits rotated.
Returns the current with the bit at the enabled or disabled,
according to .
The extended instance.
The 0-based index of the bit to enable or disable.
true to enable the bit; otherwise false.
The current with the bit enabled or disabled.
Returns the current with the bit at the enabled when it is
disabled or disabled when it is enabled.
The extended instance.
The 0-based index of the bit to toggle.
The current with the bit toggled.
Represents the common interface for data instances.
Loads raw data from the data stream into instances.
The to load data with.
Saves header data of the instance and queues referenced data in the given .
The to save headers and queue data with.
Loads the hierachy and data of a .
Initializes a new instance of the class loading data into the given
from the specified which is optionally left open.
The instance to load data into.
The to read data from.
true to leave the stream open after reading, otherwise false.
Initializes a new instance of the class from the file with the given
.
The instance to load data into.
The name of the file to load the data from.
Gets the loaded instance.
Starts deserializing the data from the root.
Reads and returns an instance of type from the following
offset or returns null if the read offset is 0.
The type of the to read.
The instance or null.
Reads and returns an instance of arbitrary type from the following offset with the
given or returns null if the read offset is 0.
The type of the data to read.
The callback to read the instance data with.
The optional offset to use instead of reading a following one.
The data instance or null.
Offset required for ExtFile header (offset specified before size).
Reads and returns an instance with elements of type from
the following offset or returns an empty instance if the read offset is 0.
The type of the elements.
The instance.
Reads and returns an instance with elements of type
from the following offset or returns null if the read offset is 0.
The type of the elements.
The number of elements to expect for the list.
The optional offset to use instead of reading a following one.
The instance or null.
Offset required for FMDL FVTX lists (offset specified before count).
Reads and returns a instance from the following offset or null if the read
offset is 0.
The optional encoding of the text.
The read text.
Reads and returns instances from the following offsets.
The number of instances to read.
The optional encoding of the texts.
The read texts.
Reads a Bfsha signature consisting of 4 ASCII characters encoded as an and checks for
validity.
A valid signature.
Reads a Bfsha offset which is the absolute address.
The absolute address of the offset.
Reads Bfsha offsets which is the absolute addresses.
The number of offsets to read.
The absolute addresses of the offsets.
Saves the hierachy and data of a .
Gets or sets a data block alignment typically seen with .
Initializes a new instance of the class saving data from the given
into the specified which is optionally left open.
The instance to save data from.
The to save data into.
true to leave the stream open after writing, otherwise false.
Initializes a new instance of the class for the file with the given
.
The instance to save.
The name of the file to save the data into.
Gets the saved instance.
Gets the current index when writing lists or dicts.
Starts serializing the data from the root.
Reserves space for an offset to the written later.
The to save.
The index of the element, used for instances referenced by a .
Reserves space for the file size field which is automatically filled later.
Reserves space for the string pool size and offset fields which are automatically
filled later.
Reserves space for an offset to the written later.
The type of the elements.
The to save.
Reserves space for an offset to the written later.
The type of the element values.
The to save.
Reserves space for an offset to the written later with the
.
The data to save.
The to invoke to write the data.
Reserves space for an offset to the written later in the string pool with the
specified .
The name to save.
The in which the name will be stored.
Reserves space for offsets to the written later in the string pool with the
specified
The names to save.
The in which the names will be stored.
Reserves space for an offset to the written later in the data block pool.
The data to save.
The alignment to seek to before invoking the callback.
The to invoke to write the data.
Save pointer array to be relocated in section 1
Writes a Bfsha signature consisting of 4 ASCII characters encoded as an .
A valid signature.
Represents a sorting empty strings to the end of lists.
Represents an exception raised when handling data.
Initializes a new instance of the class with a specified error
.
The error message that explains the reason for the exception.
Initializes a new instance of the class with a specified error message created
from the given and .
The format of the error message.
The parameters to format the error message with.
Represents an FMDL subfile in a , storing model vertex data, skeletons and used materials.
Represents an FMDL subfile in a , storing model vertex data, skeletons and used materials.
Represents an FMDL subfile in a , storing model vertex data, skeletons and used materials.
Gets or sets the name with which the instance can be referenced uniquely in
instances.
Gets or sets the path of the file which originally supplied the data of this instance.
Gets or sets byte array of the BNSH file instance used to store programs, variations and binary data.
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Gets or sets the stored (FMDL) instances.
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Represents an FMDL subfile in a , storing model vertex data, skeletons and used materials.
Gets or sets the name with which the instance can be referenced uniquely in
instances.
Gets or sets the stored (FMDL) instances.
Gets or sets attached names
Gets or sets attached names
Gets or sets attached names
Represents an FMDL subfile in a , storing model vertex data, skeletons and used materials.
Gets or sets the stored (FMDL) instances.
Gets or sets attached names