Jump to content

OniUnPacker/source: Difference between revisions

no edit summary
(Used libs)
No edit summary
Line 7: Line 7:
=== Source folder ===
=== Source folder ===


The source folder contains the following files (ordered alphabetically):
The source folder contains the following files:
{|border="1" cellspacing="0"
* \DataAccess
!File
*: Units for accessing different kinds of containers
!Description
** .\ConnectionManager.pas
|-
*: Handles Connections and keeps track of DataAccess-instances
|icon2.res
** .\DataAccess.pas
|Well, don't know myself for sure ... could be the program-icon-resource-file. But don't know if it's still used for compilation.
*: (Virtual) Base class for access to data containers
|-
** .\Access_OniArchive.pas
|OniUnPacker.bdsproj
*: Access to Oni's archives (.dat in conjunction with .raw and .sep)
|Main Delphi project file.
** .\Access_OUP_ADB.pas
|-
*: Access to OUP's databases (AbsoluteDatabase)
|OniUnPacker.cfg
|Some Delphi configuration parameters for this project. AFAIK it's not really needed to edit/compile the project, but it doesn't hurt to ship it along ;)
|-
|OniUnPacker.dpr
|Main code file. Links to the units etc. Can be used to open the project too.
|-
|OniUnPacker.res
|This one should contain the program icon that's used for compilation.
|-
|Unit1_main.pas/dfm
|Contains the main form and routines for MDI-child managing.
|-
|Unit2_functions.pas
|Collection of global functions.
|-
|Unit3_data.pas
|Global variables, constants, (record) types.
|-
|Unit4_Exporters.pas
|Functions to export (and convert) specific ONI data types.
|-
|Unit5_preview.pas/dfm
|Preview form (currently only for images (TXMP), image maps (TXMB), texture animations (TXAN) and soon UI elements (PSpc)
|-
|Unit6_imgfuncs.pas
|Class TOniImage which provides code for loading, decompressing, decoding, converting, and encoding ONI image files.
|-
|Unit7_txmpreplace.pas/dfm
|TXMP Replacer form.
|-
|Unit8_binedit.pas/dfm
|Binary ONI .dat-file editor with supporting tools like a structure viewer for ONI files and common data type decoder.
|-
|Unit9_data_structures.pas/dfm
|Loads and provides the structure definitions for Binary .dat/.raw editor.
|-
|Unit10_leveldb.pas/dfm
|ONI .dat/.raw <-> OUP level database converter.
|-
|Unit11_extractor.pas/dfm
|Extractor tool for .dat/.raw files.
|-
|Unit12_ValueEdit.pas/dfm
|Provides the value editor for Binary .dat/.raw editor.
|-
|Unit13_rawedit.pas/dfm
|Same as Unit8 but for .raw-files.
|-
|Unit14_settings.pas/dfm
|OUP Settings dialog.
|-
|Unit15_classes.pas/dfm
|ONI data access abstraction classes. Currently for ONIs .dat/.raw files and OUPs level database with Absolute DB backend.
|-
|FOLDER TFileTypeRegistration
|Provides functions to register file-extensions to OUP.
|-
|FOLDER help
|Will be used for the help file project in future.
|}


Note 1: Files which have a .dfm version besides the .pas version are units with forms (windows). Files which that are only there as a .pas are code only, sometimes global functions, some are global classes.
* \FileClasses
*: BLA - DESCRIPTION NEEDED


Note 2: File naming will be changed to a new naming scheme in the future.
* \Global
*: Globally used Units (functions, data, typedefs ...)
** .\Data.pas
*: Contains global constants, variables
** .\DatLinks.pas
*: Generates .dat-linkById-lists for each filetype
** .\DatStructureLoader.pas
*: Loads structure-definition files
** .\Exporters.pas
*: Handles exporting of .dat/.raw-content (including converters)
** .\Functions.pas
*: Common functions like en-/decoding of data
** .\Img_DDSTypes.pas
*: DDS-header-definitions used by OniImageClass
** .\OniImgClass.pas
*: Loading/saving/converting of Oni's texture-data
** .\RawList.pas
*: Generates lists of .raw-contents for files
** .\TypeDefs.pas
*: Definition of globally used types


* \Helper
*: Small helpful forms
** .\LevelDB.dfm/.pas
*: Converts OniArchives to OUP-DBs and vice versa
** .\ValueEdit.dfm/.pas
*: Input form for editing variable contents
** .\WhatLinksHere.dfm/.pas
*: Shows links to (only supported in DBs) / from a file
* \icons
*: Contains icons used in the gui
* \ImportedStuff
*: Units written by others
** .\FolderBrowser.pas
*: Select a folder as you do in any normal windows application.
** .\FTypeReg.pas
*: Set/Get registered file types
** .\OneInst.pas
*: Makes sure that only one instance of OUP can be run at a time
* \Tools
*: Contains the basic tools in OUP like Preview, BinEdit ...
** .\Template.dfm/.pas
*: Template-form used for most tools
** .\BinEdit.dfm/.pas
*: HexEditor for .dat-files with StructureViewer
** .\RawEdit.dfm/.pas
*: HexEditor for .raw-contents
** .\Extractor.dfm/.pas
*: Mass file extractor
** .\Preview.dfm/.pas
*: Preview window (only supports TXMP, TXMB, TXAN, PSpc atm)
** .\TxmpReplace.dfm/.pas
*: Replaces TXMP images by image files
* \ExtraIcos.res
*: Contains the icons used in the gui
* \Main.dfm/.pas
*: Main window of OUP
* \OniUnPacker.bdsproj
*: Delphi project file
* \OniUnPacker.dpr
*: Main unit
* \OniUnPacker.res
*: Program icon
* \Settings.dfm/.pas
*: Settings formular
Note: Files which have a .dfm version besides the .pas version are units with forms (windows). Files which that are only there as a .pas are code only, sometimes global functions, some are global classes.