Class Switches
java.lang.Object
net.mtrop.doom.texture.Switches
- All Implemented Interfaces:
Iterable<Switches.Entry>, BinaryObject, Sizable
This class represents the contents of a Boom Engine SWITCHES
lump. This lump contains extended information regarding textures
used for in-game switches.
- Author:
- Matthew Tropiano
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classEntry for Switches.static enumEnumeration of game types.Nested classes/interfaces inherited from interface BinaryObject
BinaryObject.InlineScanner<BO>, BinaryObject.Reflect, BinaryObject.Scanner<BO>, BinaryObject.Shared, BinaryObject.Transformer<BO> -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddEntry(String offName, String onName, Switches.Game game) Adds a switch entry to this lump.get(int i) Returns a switch entry at a specific index.intbooleanisEmpty()Returns if this object contains no objects.iterator()voidreadBytes(InputStream in) Reads from anInputStreamand sets this object's fields.removeEntry(int i) Removes a switch entry at a specific index.intsize()voidwriteBytes(OutputStream out) Writes this object to anOutputStream.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Iterable
forEach, spliterator
-
Field Details
-
entryList
List of entries.
-
-
Constructor Details
-
Switches
public Switches()Creates a new SWITCHES lump.
-
-
Method Details
-
get
Returns a switch entry at a specific index.- Parameters:
i- the index of the entry to return.- Returns:
- the corresponding entry, or
nullif no corresponding entry for that index. - Throws:
IndexOutOfBoundsException- if the index is out of range (less than 0 or greater than or equal to getFlatCount()).
-
removeEntry
Removes a switch entry at a specific index.- Parameters:
i- the index of the entry to remove.- Returns:
- the corresponding removed entry, or
nullif no corresponding entry for that index. - Throws:
IndexOutOfBoundsException- if the index is out of range (less than 0 or greater than or equal to getSwitchCount()).
-
getEntryCount
public int getEntryCount()- Returns:
- the amount of switch entries in this lump.
-
addEntry
Adds a switch entry to this lump. The names must be 8 characters or less.- Parameters:
offName- the "off" name for the switch.onName- the "on" name for the switch.game- the game type that this switch works with.- Throws:
IllegalArgumentException- if any of the texture names are invalid or game is null.
-
readBytes
Description copied from interface:BinaryObjectReads from anInputStreamand sets this object's fields. Only reads the amount of bytes that it takes to read a single instance of the object. Note that not every object may have a consistent length!- Specified by:
readBytesin interfaceBinaryObject- Parameters:
in- theInputStreamto read from.- Throws:
IOException- if a read error occurs.
-
writeBytes
Description copied from interface:BinaryObjectWrites this object to anOutputStream.- Specified by:
writeBytesin interfaceBinaryObject- Parameters:
out- theOutputStreamto write to.- Throws:
IOException- if a write error occurs.
-
iterator
- Specified by:
iteratorin interfaceIterable<Switches.Entry>
-
size
-
isEmpty
public boolean isEmpty()Description copied from interface:SizableReturns if this object contains no objects. The general policy of this method is that this returns true if and only ifSizable.size()returns 0.
-