PCIMOD -- PCIDSK Database File Modification

Allows modification of PCIDSK database files. These modifications include: adding new image channels, deleting image channels, and compressing PCIDSK files (removing deleted segments) to release disk space.

                        *** WARNING ***
If PCIMOD aborts before completion, the PCIDSK file may be corrupted! Make a backup copy of the PCIDSK file on tape or disk before continuing. NEVER abort PCIMOD using CTRL-C. Always let it run to completion. The PCIDSK file is NOT corrupted if PCIMOD fails due to lack of disk space.

See Also: PCIADD2, PCIDEL2, PYRAMID

Progress of this program can be monitored. See MONITOR section.

PARAMETERS

PCIMOD is controlled by the following global parameters:

Name     Prompt                                  Count     Type
FILE     Database File Name                      1-64      Char
PCIOP    Modification Option: ADD/DEL/COM        1-3       Char
PCIVAL   DBNC for ADD, or DBIC for DEL           1-1024    Int

FILE

Specifies the name of the PCIDSK file to modify.

 EASI>FILE="filespec"

PCIOP

Specifies the type of operation to perform.

 EASI>PCIOP="ADD"               | add channels
 EASI>PCIOP="DEL"               | delete channels
 EASI>PCIOP="COM"               | compress (remove deleted segments)

PCIVAL

If PCIOP = "ADD", PCIVAL specifies the number of each type of new image channel to add to the PCIDSK file.

 EASI>PCIVAL=8bit,16bitsigned,16bitunsigned,32bitreal

 8bit         is the number of  8-bit unsigned integer channels
 signedint    is the number of 16-bit   signed integer channels
 unsignedint  is the number of 16-bit unsigned integer channels
 real         is the number of 32-bit             real channels
If PCIOP = "DEL", PCIVAL specifies a list of 1 to 1024 existing image channels to delete from the file.

 EASI>PCIVAL=i,j,k,...
If PCIOP="COM", PCIVAL is ignored.

DETAILS

PCIMOD adds image channels, deletes image channels, or compresses (removes) segments on an existing PCIDSK database file (FILE). The type of operation (add, delete, compress) is specified by PCIOP, with further information supplied by PCIVAL.

If there is not enough free disk space to add the requested number of image channels to the PCIDSK file, the program aborts with an error message, and the PCIDSK file is not changed.

If MONITOR="ON", PCIMOD prints a warning message, telling the user to make a backup copy of his PCIDSK file before continuing, then asks the user if he wishes to continue.

WARNING: PCIMOD REARRANGES DATA ON THE PCIDSK FILE AND REQUIRES SOME TIME TO COMPLETE. ABORTING PCIMOD WHILE IT IS EXECUTING CAN CORRUPT THE PCIDSK FILE AND CAN MAKE IT UNUSABLE. IF PCIMOD IS ABORTED DURING EXECUTION, DO NOT TRUST THE INTEGRITY OF THE PCIDSK FILE FOR ANY FURTHER MEANINGFUL WORK!

ADD

Specifying PCIOP="ADD" adds new (empty) image channels to the existing database file. In this case, the first four values of PCIVAL specify the number of 8-bit unsigned, 16-bit signed, 16-bit unsigned, and 32-bit real image channels to add to the file. Any (but not all) of these four values may be set to zero. Image channels are sequentially renumbered so that all new empty channels within each channel type are inserted in their proper place. There must be sufficient disk space available for the additional channels, otherwise PCIMOD may fail (although this should not harm existing data in the file).

For FILE interleaved PCIDSK files (created by CIM, LINK, or IMAGELN) new channels are added (in a band sequential format) to the PCIDSK file itself, instead of being put into separate files (like PCIADD2 does). Unlike PIXEL interleaved files, image channels are NOT renumbered within each channel type. However, deleted channels (deleted by PCIDEL2) are removed and the existing channels are renumbered before the new channels are appended.

Up to 4096 PIXEL or BAND interleaved channels (1024 for DOS systems), or 1024 FILE interleaved channels (16 for DOS systems) are allowed on a PCIDSK file. Users cannot add channels to exceed this limit.

DELETE

Specifying PCIOP="DEL" deletes selected image channels from the database file. In this case, PCIVAL specifies a list of 1 to 1024 channel numbers to delete. The remaining channels (if any) are sequentially renumbered.

For FILE interleaved PCIDSK files, only channels which are stored on the PCIDSK file itself (created by PCIMOD) can be deleted. Use PCIDEL2 to delete channels on separate files.

COMPRESS

Specifying PCIOP="COM" removes deleted segments and unused space between segments. However, it does not renumber segments as occurred in previous versions of PCIMOD.

Warning: On some systems, deleting channels or segments from a file may not in fact make the disk file use less disk space.

MONITOR

Program progress can be monitored by printing the percentage of completed processing in odometer fashion. A system parameter, MONITOR, controls this activity:

 EASI>MONITOR="ON"           | turn monitor ON  (default)
 EASI>MONITOR="OFF"          | turn monitor OFF (recommended if
                             | running in batch/background mode)
If MONITOR="ON", PCIMOD prints a warning message, telling the user to make a backup copy of the PCIDSK file before continuing, then asks the user if he wishes to continue.

EXAMPLE

A PCIDSK file, mywork.pix, was originally created by CIM with four 8-bit, one 16-bit signed, one 16-bit unsigned and two 32-bit real image channels (eight total channels). Suppose that one channel of each type needs to be added to the file. The result would be a database file where the original eight channels are renumbered to channels 1, 2, 3, 4, 6, 8, 10, and 11, and four new empty channels (one of each type) are numbered 5, 7, 9, and 12.

 EASI>FILE="mywork.pix"
 EASI>PCIOP="ADD"
 EASI>PCIVAL=1,1,1,1
 EASI>RUN PCIMOD
Suppose that, to reduce disk space usage, channels 3, 7, and 8 must be deleted, and that all deleted segments must be removed. The result would be a database file where channels 1, 2, 4, 5, 6, 9, 10, 11, and 12 are renumbered sequentially from 1 to 9, and all segments are renumbered from 1 to the total number of segments on the file.

 EASI>PCIOP="DEL"
 EASI>PCIVAL=3,7,8
 EASI>RUN PCIMOD
 EASI>PCIOP="COM"
 EASI>RUN PCIMOD

About PCI Help Gateway