Class FPG
A representation of a DIV Games Studio FPG file.
Implements
Namespace: DIV2.Format.Exporter
Assembly: DIV2.Format.Exporter.dll
Syntax
public sealed class FPG : object, IAssetFile, IFormatValidable, ISerializableAsset, IEnumerable<MAP>
Remarks
Implements functions to import, export and create File Package Graphic files.
Constructors
FPG(PAL)
Creates a new FPG instance.
Declaration
public FPG(PAL palette)
Parameters
Type | Name | Description |
---|---|---|
PAL | palette |
FPG(Byte[])
Loads a FPG file.
Declaration
public FPG(byte[] buffer)
Parameters
Type | Name | Description |
---|---|---|
Byte[] | buffer |
FPG(String)
Loads a FPG file.
Declaration
public FPG(string filename)
Parameters
Type | Name | Description |
---|---|---|
String | filename | Filename to load. |
Properties
Count
Declaration
public int Count { get; }
Property Value
Type | Description |
---|---|
Int32 |
Item[Int32]
Gets a MAP instance.
Declaration
public MAP this[int index] { get; }
Parameters
Type | Name | Description |
---|---|---|
Int32 | index |
Property Value
Type | Description |
---|---|
MAP | Returns the MAP instance. |
Palette
Color palette used by this FPG.
Declaration
public PAL Palette { get; }
Property Value
Type | Description |
---|---|
PAL |
Remarks
Methods
Add(MAP, String)
Adds a MAP file.
Declaration
public void Add(MAP map, string filename = "")
Parameters
Type | Name | Description |
---|---|---|
MAP | map | MAP instance to add. |
String | filename | Optional filename value in DOS 8:3 format. |
Remarks
This method always performs a color conversion if the palette is different from the FPG instance to ensure the MAP image shows properly with the current palette.
The filename
field in the file only allows a 12 length ASCII null terminated string.
If the input string is shorter than 12 characters, the string is filled with null chars.
If the input string is longer than 12 characters, getting a 12 characters length substring.
Add(Byte[], String)
Adds a MAP file.
Declaration
public void Add(byte[] buffer, string filename = "")
Parameters
Type | Name | Description |
---|---|---|
Byte[] | buffer | |
String | filename | Optional filename value in DOS 8:3 format. |
Remarks
This method always performs a color conversion if the palette is different from the FPG instance to ensure the MAP image shows properly with the current palette.
The filename
field in the file only allows a 12 length ASCII null terminated string.
If the input string is shorter than 12 characters, the string is filled with null chars.
If the input string is longer than 12 characters, getting a 12 characters length substring.
Add(String)
Adds a MAP file.
Declaration
public void Add(string filename)
Parameters
Type | Name | Description |
---|---|---|
String | filename | MAP file to load. |
Remarks
This method always performs a color conversion if the palette is different from the FPG instance to ensure the MAP image shows properly with the current palette.
Clear()
Removes all MAP in this instance.
Declaration
public void Clear()
Contains(MAP)
Determines whether a MAP is in this instance.
Declaration
public bool Contains(MAP map)
Parameters
Type | Name | Description |
---|---|---|
MAP | map | The MAP to locate in this instance. |
Returns
Type | Description |
---|---|
Boolean | Returns true if the MAP exists. |
Contains(Int32)
Determines whether a MAP with a graphic identifier is in this instance.
Declaration
public bool Contains(int graphId)
Parameters
Type | Name | Description |
---|---|---|
Int32 | graphId | MAP graphic identifier to search. |
Returns
Type | Description |
---|---|
Boolean | Returns true if a MAP graphic identifier exists. |
GetFilename(MAP)
Declaration
public string GetFilename(MAP map)
Parameters
Type | Name | Description |
---|---|---|
MAP | map | MAP instance to find. |
Returns
Type | Description |
---|---|
String | Returns the MAP filename value. |
GetFilename(Int32)
Declaration
public string GetFilename(int index)
Parameters
Type | Name | Description |
---|---|---|
Int32 | index | The index of the MAP instance to find. Not confuse with the GraphId value. |
Returns
Type | Description |
---|---|
String | Returns the MAP filename value. |
GetHashCode()
Generates a hash code for this instance.
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
Int32 | Returns an |
Remove(MAP)
Removes a MAP from this instance.
Declaration
public void Remove(MAP map)
Parameters
Type | Name | Description |
---|---|---|
MAP | map | MAP instance to remove. |
Remove(Int32)
Removes a MAP from this instance.
Declaration
public void Remove(int graphId)
Parameters
Type | Name | Description |
---|---|---|
Int32 | graphId | GraphId to search. |
RemoveAt(Int32)
Removes a MAP from this instance.
Declaration
public void RemoveAt(int index)
Parameters
Type | Name | Description |
---|---|---|
Int32 | index | MAP index in this instance. |
Save(String)
Saves the instance in a FPG file.
Declaration
public void Save(string filename)
Parameters
Type | Name | Description |
---|---|---|
String | filename | Filename to write the data. |
ToString()
Serializes the relevant data of this instance in a
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
String | Returns a |
Validate(Byte[])
Validates if the file is a valid FPG file.
Declaration
public bool Validate(byte[] buffer)
Parameters
Type | Name | Description |
---|---|---|
Byte[] | buffer | Memory buffer that contain a FPG file data. |
Returns
Type | Description |
---|---|
Boolean | Returns true if the file is a valid FPG. |
Validate(String)
Validates if the file is a valid FPG file.
Declaration
public bool Validate(string filename)
Parameters
Type | Name | Description |
---|---|---|
String | filename | File to validate. |
Returns
Type | Description |
---|---|
Boolean | Returns true if the file is a valid FPG. |
ValidateFormat(Byte[])
Validates if the file is a valid FPG file.
Declaration
public static bool ValidateFormat(byte[] buffer)
Parameters
Type | Name | Description |
---|---|---|
Byte[] | buffer | Memory buffer that contain a FPG file data. |
Returns
Type | Description |
---|---|
Boolean | Returns true if the file is a valid FPG. |
ValidateFormat(String)
Validates if the file is a valid FPG file.
Declaration
public static bool ValidateFormat(string filename)
Parameters
Type | Name | Description |
---|---|---|
String | filename | File to validate. |
Returns
Type | Description |
---|---|
Boolean | Returns true if the file is a valid FPG. |
Operators
Equality(FPG, FPG)
Equality operator.
Declaration
public static bool operator ==(FPG a, FPG b)
Parameters
Type | Name | Description |
---|---|---|
FPG | a | Left FPG value to compare. |
FPG | b | Right FPG value to compare. |
Returns
Type | Description |
---|---|
Boolean | Returns true if both values are equal. |
Inequality(FPG, FPG)
Inequality operator.
Declaration
public static bool operator !=(FPG a, FPG b)
Parameters
Type | Name | Description |
---|---|---|
FPG | a | Left FPG value to compare. |
FPG | b | Right FPG value to compare. |
Returns
Type | Description |
---|---|
Boolean | Returns true if both values are not equal. |