Getting Started Documentation Glish Learn More Programming Contact Us
Version 1.9 Build 874
News FAQ
Search Home


next up previous contents index
Next: Documentation directories Up: The AIPS++ directory hierarchy Previous: The AIPS++ directory hierarchy


Code directories

The directory hierarchy beneath /aips++/code, or $AIPSCODE, consists of a collection of ``packages'' which are contained in separate subdirectories. The principle package is /aips++/code/aips which contains the source code for a C++ class library required by all other packages. It also contains applications common to all areas of astronomical data processing.

The dish, synthesis, and vlbi packages contain standard classes and applications common to single dish, aperture synthesis, and VLBI data processing tasks from all radio telescopes. Apart from a dependence of the vlbi package on the synthesis package, inclusion of these standard packages in an end-user installation is optional.

A contrib package is the place for source code contributed from the AIPS++ user community for redistribution with AIPS++. If found to be generally useful, code from the contrib package may eventually be merged into one of the standard packages, but otherwise it is unsupported.

A trial package contains source code written by members of the AIPS++ consortium but not yet accepted for inclusion in the standard distribution.

Each AIPS++ consortium member is also entitled to maintain a package for data processing applications specific to its telescope(s). The sources for these classes and applications reside in the consortium-specific packages: atnf, bima, drao, nfra, nral, nrao, and tifr. These may or may not use the standard dish, synthesis, and vlbi packages, and their installation is also optional.

The standard AIPS++ packages (aips, dish, synthesis, and vlbi) contain an implement subdirectory which contains class header and implementation files, a fortran subdirectory which contains FORTRAN subroutines, an apps directory containing applications, and scripts and data subdirectories for package-related procedure files and system data such as standard colour-maps, calibrator lists and source catalogues.

The implement and fortran subdirectories may contain module subdirectories which serve to collect software ``modules'' in one place. For example, the Tables module contains all class header and implementation files pertaining to the Table class, and classes derived from, and related to it. The implement directory and all module subdirectories may also contain a test subdirectory which contains one or more self-contained test programs specifically for the module.

All files associated with an AIPS++ application reside in a subdirectory of the apps directory of the same name as the application. Each application must reside in its own subdirectory.

The substructure of the consortium-specific packages is left entirely to AIPS++ consortium members to determine.

There are a number of other subdirectories of /aips++/code which are unrelated to packages. The install subdirectory contains all of the utilities required to install and maintain AIPS++ as discussed in this document. doc contains AIPS++ documentation sources, including the AIPS++ ``specs'', ``memos'', and ``notes'' series, and reference and design documentation in the corresponding subdirectories.

Also below /aips++/code is an include subdirectory which contains symbolic links to the implement subdirectories for each package. The purpose of these symlinks is to allow AIPS++ includes to be specified as ``#include <package/Header.h>'' by adding -I/aips++/code/include to the include path.

On AIPS++ consortium installations an additional admin subdirectory of /aips++/code contains files relating to the administration of the AIPS++ project.

The /aips++/code directory hierarchy appears as follows:

         :                                         +--- App1 ----
         :                           +--- apps ----+--- App2 ----
         |                           |             +--- .... ----
         |                           |
         |                           |             +-- Module1 --+--- test ----
         |                           +- implement -+-- Module2 --+--- test ----
         |                           |             +--- .... ----
         |                           |             +--- test ----
         |                           |
         |             +--- aips ----+-- fortran --+...
         |             |             +-- scripts --
         |             |             +--- data ----
         |             |
         |             +--- dish ----+...
         |             +- synthesis -+...
         |             +--- vlbi ----+...
         |             +-- contrib --+...
         |             +--- trial ---+...
         |             |
         |             +--- atnf ----+...
         |             +--- bima ----+...
         |             +--- drao ----+...
         |             +--- nfra ----+...
         |             +--- nral ----+...
         |             +--- nrao ----+...
         |             +--- tifr ----+...
/aips++ -+--- code ----+
         |             |             +- codedevl --
         |             |             +- codemgmt --
         |             +-- install --+- docutils --
         |             |             +- printer ---
         |             |             +-- <arch> ---
         |             |
         |             |             +-- design ---+...
         |             |             +--- html ----
         |             |             +--- memos ---
         |             |             +--- notes ---
         |             +---- doc ----+-- papers ---
         |             |             +-- project --
         |             |             +- reference -
         |             |             +--- specs ---
         |             |             +--- .... ----
         |             |
         |             +-- include --
         |             |
         |             |             +- personnel -
         :             +--- admin ---+- projects --
         :                           +-- system ---


next up previous contents index
Next: Documentation directories Up: The AIPS++ directory hierarchy Previous: The AIPS++ directory hierarchy   Contents   Index
Please send questions or comments about AIPS++ to aips2-request@nrao.edu.
Copyright © 1995-2000 Associated Universities Inc., Washington, D.C.

Return to AIPS++ Home Page
2004-11-13