Index

Package: Archives

Description

package Archives is

Classes

Archive (abstract)

type Archive is abstract new Object with private;

Ancestors:

Immediate Children:

Archives.Zip_Archives.Zip_Archive

Primitive operations:

Adjust (overriding Objects.Adjust)
Construct
Objects.Construct (Inherited)
Objects.Delete (Inherited)
Objects.Object_Read (Inherited)
Objects.Object_Write (Inherited)
Objects.To_String (Inherited)
Open_Chunk (overriding Ada.Streams.Stream_Element_Array)

References:

archives.ads:15:10 (declaration)
archives-zip_archives.adb:50:9 (reference)
archives-zip_archives.adb:91:9 (reference)
archives-zip_archives.adb:124:9 (reference)
archives-zip_archives.ads:15:29 (reference)
archives.adb:66:37 (reference)
archives.adb:76:40 (reference)
archives.ads:16:34 (reference)
archives.ads:28:40 (reference)
archives.ads:34:45 (reference)
archives.ads:40:38 (reference)
archives.ads:46:44 (reference)
archives.ads:69:10 (full declaration)
archives.ads:75:37 (reference)
archives.ads:77:40 (reference)
An Archive is a data file containing individually addressable files. The Archive class should be subclassed for each archive file format supported by the application.

Types

A_Archive

type A_Archive is access all Archive'Class;

References:

archives.ads:16:10 (declaration)
archives-zip_archives.adb:18:52 (reference)
archives-zip_archives.adb:19:16 (reference)
archives-zip_archives.adb:32:73 (reference)
archives-zip_archives.adb:33:16 (reference)
archives.adb:41:51 (reference)
archives.adb:53:73 (reference)
archives.adb:84:37 (reference)
archives.ads:19:51 (reference)
archives.ads:24:73 (reference)
archives.ads:50:37 (reference)
archives.ads:82:49 (reference)
archives.ads:85:71 (reference)
resources.adb:221:23 (reference)
resources.adb:292:23 (reference)
tiles-indices.adb:100:46 (reference)
tiles-indices.adb:312:47 (reference)
tiles-indices.ads:21:46 (reference)
tiles-indices.ads:83:47 (reference)
tiles-libraries-loading.adb:21:23 (reference)
tiles-libraries-loading.adb:30:63 (reference)
tiles-libraries-loading.adb:31:63 (reference)
tiles-libraries-loading.adb:41:63 (reference)
tiles-libraries-loading.adb:56:63 (reference)
tiles-libraries-loading.adb:100:19 (reference)
tiles-libraries-loading.adb:183:21 (reference)
tiles.adb:257:47 (reference)
tiles.ads:137:47 (reference)

Constants & Global variables

FILE_NOT_FOUND

FILE_NOT_FOUND : exception;

References:

archives.ads:54:5 (declaration)
archives-zip_archives.adb:60:23 (reference)
Raised if an archive or a file in an archive can't be found.

READ_ERROR

READ_ERROR : exception;

References:

archives.ads:58:5 (declaration)
archives-zip_archives.adb:70:23 (reference)
archives-zip_archives.adb:106:23 (reference)
Raised if a read error occurs while attempting to load an archive. The archive file is probably corrupt.

ARCHIVE_FORMAT_ERROR

ARCHIVE_FORMAT_ERROR : exception;

References:

archives.ads:61:5 (declaration)
archives.adb:47:19 (reference)
archives.adb:59:19 (reference)
Raised if the file extension of an archive is not supported.

Subprograms & Entries

Load_Archive

function Load_Archive
( path: String )
return A_Archive;

References:

archives.ads:19:14 (declaration)
archives.adb:41:14 (body)
archives.adb:49:9 (label)
resources.adb:224:24 (reference)
resources.adb:295:24 (reference)

Called by:

Resources.Find_On_Disk.Exists_In_Archive defined at resources.adb:290:18
Resources.Load_From_Disk.Read_From_Archive defined at resources.adb:219:18

Calls:

Element defined at a-ciorma.ads:73:13
Find defined at a-ciorma.ads:145:13
Has_Element defined at a-ciorma.ads:155:13
Support.Paths.Get_Extension defined at support-paths.ads:32:14
To_Lower defined at a-chahan.ads:68:13
Loads an Archive into memory. An exception is raised on error.

Load_Archive

function Load_Archive
( resource: not null A_Resource_File )
return A_Archive;

References:

archives.ads:24:14 (declaration)
archives.adb:53:14 (body)
archives.adb:61:9 (label)
tiles-libraries-loading.adb:196:24 (reference)

Calls:

Element defined at a-ciorma.ads:73:13
Find defined at a-ciorma.ads:145:13
Has_Element defined at a-ciorma.ads:155:13
Resources.Get_Filename defined at resources.ads:59:14
Support.Paths.Get_Extension defined at support-paths.ads:32:14
To_Lower defined at a-chahan.ads:68:13
Loads an Archive into memory from a resource file. The resource can be unloaded independently of the Archive after calling this function.

Exists (abstract)

function Exists
( this: access Archive;
filename: String )
return Boolean is abstract;

References:

archives.ads:28:14 (declaration)
resources.adb:296:31 (dispatching call)

Called by:

Resources.Find_On_Disk.Exists_In_Archive defined at resources.adb:290:18
Returns true if 'filename' exists in the Archive.

Load_Bitmap (abstract)

function Load_Bitmap
( this: access Archive;
filename: String )
return A_Bitmap is abstract;

References:

archives.ads:34:14 (declaration)
tiles.adb:262:37 (dispatching call)

Called by:

Tiles.Load_Bitmap defined at tiles.ads:136:15
Reads 'filename' from the Archive and opens it as an Allegro bitmap. The Archive can be closed independently of the bitmap after calling this function. An exception is raised on error.

Open (abstract)

function Open
( this: access Archive;
filename: String )
return A_Packfile is abstract;

References:

archives.ads:40:14 (declaration)
tiles-indices.adb:106:29 (dispatching call)
Reads 'filename' from the Archive and opens it as an in-memory packfile. The Archive can be closed independently of the bitmap after calling this function. An exception is raised on error.

Open_Chunk (abstract)

function Open_Chunk
( this: access Archive;
filename: String )
return access Stream_Element_Array is abstract;

References:

archives.ads:46:14 (declaration)
resources.adb:225:37 (dispatching call)

Called by:

Resources.Load_From_Disk.Read_From_Archive defined at resources.adb:219:18
Reads 'filename' from the Archive and returns it as an in-memory buffer. The caller takes ownership of the returned buffer; closing the Archive does not affect it. An exception is raised on error.

Delete

procedure Delete
( this: in out A_Archive );

References:

archives.ads:50:15 (declaration)
archives-zip_archives.adb:25:13 (reference)
archives-zip_archives.adb:39:13 (reference)
archives.adb:84:15 (body)
archives.adb:87:9 (label)
resources.adb:228:13 (reference)
resources.adb:233:17 (reference)
resources.adb:297:13 (reference)
resources.adb:301:17 (reference)
tiles-libraries-loading.adb:49:17 (reference)
tiles-libraries-loading.adb:79:17 (reference)
tiles-libraries-loading.adb:118:13 (reference)
tiles-libraries-loading.adb:215:13 (reference)
tiles-libraries-loading.adb:227:13 (reference)

Called by:

Archives.Zip_Archives.Load_Zip_Path defined at archives-zip_archives.adb:18:14
Archives.Zip_Archives.Load_Zip_Res defined at archives-zip_archives.adb:32:14
Resources.Find_On_Disk.Exists_In_Archive defined at resources.adb:290:18
Resources.Find_On_Disk.Exists_In_Archive defined at resources.adb:290:18
Resources.Load_From_Disk.Read_From_Archive defined at resources.adb:219:18
Resources.Load_From_Disk.Read_From_Archive defined at resources.adb:219:18
Tiles.Libraries.Loading.Add defined at tiles-libraries-loading.adb:30:19
Tiles.Libraries.Loading.Load_From_Disk defined at tiles-libraries-loading.ads:15:14
Tiles.Libraries.Loading.Load_From_Disk defined at tiles-libraries-loading.ads:15:14
Tiles.Libraries.Loading.Loading_Task defined at tiles-libraries-loading.adb:93:15
Tiles.Libraries.Loading.Stop.Clear_Library defined at tiles-libraries-loading.adb:75:23

Calls:

Objects.Delete defined at objects.ads:46:15
Deletes the Archive.