# class TextureTable

TextureTable keeps information on textures used while rendering.

# Methods

Method Description
AddItem Adds an item to the table. The returned value is the id of the item within the table, which can be used to retrieve the item using GetItem().
AddTexture Adds a texture to the table. The returned value is the id of the texture within the table.
ChangeTexturePrefixPath Changes the prefix path (drive, directory) of all matching texture paths in all the textures in the table, with the new one. This method is useful when external textures are placed in a specific folder, which needs to be moved.
Clear Clears the table, and removes all items. If AddItem is called after Clear, the item ids will start over from 0.
Copy Clears the current table and copies the items from a source table.
FindItem Finds a named item in the table. If multiple items have the same name, the first will be returned. If no item was found, null will be returned.
FindItemId Finds the id of an item in the table, using the name. If multiple items have the same name, the first will be returned. If no item was found, the return will be -1.
FindTexture Finds a texture in the table, using the texture name. If multiple textures have the same name, the first will be returned. If the texture was not found, null will be returned.
FindTextureId Finds the id of a texture in the table, using the texture name. If multiple textures have the same name, the first will be returned. If the texture was not found, -1 will be returned.
FindTextureUsingPath Finds a texture in the table, using the texture path. If multiple textures have the same path, the first will be returned. If the texture was not found, null will be returned.
GetClass Get the name of the TextureTable class.
GetItem Returns the i:th item, using the id of the item.
GetItemsCount The number of item id:s in the table. If an item has been removed, using RemoveItem, the id is still counted in this method. GetIdsCount also equals the id that will be applied to the next item added to the table.
GetTexture Returns the i:th texture, using the id of the texture.
GetTexturesCount Returns the number of textures in the table.
IsA Returns true if TextureTable is a or is a descendant of the class named as the type parameter.
IsNull Returns true if the TextureTable object is invalid.
RemoveItem Removes an item, and invalidates the id. The id will not point at a valid item, until Clear is called and new items are added up until the id.
RemoveTexture Removes a texture. If GetTexture is called with the texture id, the value returned will be null.
SetItem Sets an item in the table. The id must exist in the table.
SetTexture Sets a texture in the table.

# Static methods

Method Description
IsClassA Returns true if the class is a or is a descendant of the class named as the type parameter.
SafeCast SafeCast makes sure the input object is of a class that can be cast into spTextureTable, and if this is the case, returns the object cast into spTextureTable.

# Methods details

# AddItem

Adds an item to the table. The returned value is the id of the item within the table, which can be used to retrieve the item using GetItem().

    # AddTexture

    Adds a texture to the table. The returned value is the id of the texture within the table.

      # ChangeTexturePrefixPath

      Changes the prefix path (drive, directory) of all matching texture paths in all the textures in the table, with the new one. This method is useful when external textures are placed in a specific folder, which needs to be moved.

        # Clear

        Clears the table, and removes all items. If AddItem is called after Clear, the item ids will start over from 0.

          # Copy

          Clears the current table and copies the items from a source table.

            # FindItem

            Finds a named item in the table. If multiple items have the same name, the first will be returned. If no item was found, null will be returned.

              # FindItemId

              Finds the id of an item in the table, using the name. If multiple items have the same name, the first will be returned. If no item was found, the return will be -1.

                # FindTexture

                Finds a texture in the table, using the texture name. If multiple textures have the same name, the first will be returned. If the texture was not found, null will be returned.

                  # FindTextureId

                  Finds the id of a texture in the table, using the texture name. If multiple textures have the same name, the first will be returned. If the texture was not found, -1 will be returned.

                    # FindTextureUsingPath

                    Finds a texture in the table, using the texture path. If multiple textures have the same path, the first will be returned. If the texture was not found, null will be returned.

                      # GetClass

                      Get the name of the TextureTable class.

                        # GetItem

                        Returns the i:th item, using the id of the item.

                          # GetItemsCount

                          The number of item id:s in the table. If an item has been removed, using RemoveItem, the id is still counted in this method. GetIdsCount also equals the id that will be applied to the next item added to the table.

                            # GetTexture

                            Returns the i:th texture, using the id of the texture.

                              # GetTexturesCount

                              Returns the number of textures in the table.

                                # IsA

                                Returns true if TextureTable is a or is a descendant of the class named as the type parameter.

                                  # IsNull

                                  Returns true if the TextureTable object is invalid.

                                    # RemoveItem

                                    Removes an item, and invalidates the id. The id will not point at a valid item, until Clear is called and new items are added up until the id.

                                      # RemoveTexture

                                      Removes a texture. If GetTexture is called with the texture id, the value returned will be null.

                                        # SetItem

                                        Sets an item in the table. The id must exist in the table.

                                          # SetTexture

                                          Sets a texture in the table.

                                            # Static methods details

                                            # IsClassA

                                            Returns true if the class is a or is a descendant of the class named as the type parameter.

                                              # SafeCast

                                              SafeCast makes sure the input object is of a class that can be cast into spTextureTable, and if this is the case, returns the object cast into spTextureTable.