DOCUMENTATION

SYNOPSIS

PROGRAM NAME: sudoc2pm_pt1.pm

AUTHOR: Juan Lorenzo
DATE:   Jan 25 2018 
DESCRIPTION: generate (1) package for sunix module
			  and (2) configuration file for the same sunix module
Version: 1.0.0
1.1 May 2021: updated file searches in directories

USE

Build new files: ~/configs/"program_group_name"/"module".config ~/sunix/"program_group_name"/"module".pm and ~specs/"program_group_name"/"module"_spec and modify old files: ~/misc/L_SU_global_constants.pm

NOTES ramp

0. make sure that the documentation exists for the program in the "Stripped" directory Even if you do, make sure that at least one parameter exists e.g. "opt=null"

1. Modify "nameNnumber.txt" (in current folder) with the correct base file name and number e.g. susynlv 7

Example file contents for nameNnumber.txt: Which group number do you want to use to create for *.pm, *.config, and *_spec.pm files ?

e.g., for transforms use: $sunix_category_number = 14

3. define program (ONLY in one location) within a developer category in ~misc/L_SU_global_constants.pm e.g., _suhilb => $developer_sunix_categories[14]

4. Also, define program in two locations within ~misc/L_SU_path for hash and the colon definitions

5. Run the current script: sudoc2pm_pt1.pl N.B., You may have to run this program from within its directory e.g. , ~/usr/local/pl/App-SeismicUnixGui/lib/App/SeismicUnixGui/developer/code/sunix This program generates "module".pm, "module".config, and "module"_spec.pm

6. After running this script (sudoc2pm_pt1.pl) and before running sudoc2pm_pt2.pl: modify "module".config file , as needed

7. Go to ~/usr/local/pl/App-SeismicUnixGui/lib/App/SeismicUnixGui/developer/code/sunix A "program_name"_changes.txt file may be needed to set up needed directory bindings in the spec file, but it is not always necessary. The current step will prepare the *_spec.pm file with the correct bindings for the screen parameters.

Now, run sudoc2pm_pt2.pl

Examples:

perl sudoc2pm_pt1.pl

NOTES

Program group array and the directory names:

$developer_sunix_categories[0] = 'data'; $developer_sunix_categories[1] = 'datum'; $developer_sunix_categories[2] = 'plot'; $developer_sunix_categories[3] = 'filter'; $developer_sunix_categories[4] = 'header'; $developer_sunix_categories[5] = 'inversion'; $developer_sunix_categories[6] = 'migration'; $developer_sunix_categories[7] = 'model'; $developer_sunix_categories[8] = 'NMO_Vel_Stk'; $developer_sunix_categories[9] = 'par'; $developer_sunix_categories[10] = 'picks'; $developer_sunix_categories[11] = 'shapeNcut'; $developer_sunix_categories[12] = 'shell'; $developer_sunix_categories[13] = 'statsMath'; $developer_sunix_categories[14] = 'transform'; $developer_sunix_categories[15] = 'well'; $developer_sunix_categories[16] = 'unix'; $developer_sunix_categories[17] = '';

CHANGES and their DATES V1.1.1 Jan 2 2026 Improved comments

TBD

psgraph thru psmovie

private values

Read in sunix documentaion