The directory structure of the ISCE git repository is as shown below. The repository might contain other hidden folder like ".cmake", ".mm", ".ci" etc that contain configuration files for different build and CI systems.
. ├── CMakeLists.txt (Main CMake file) ├── LICENSE ├── README.md ├── bin (Folder that holds executable scripts and entrypoints) │ ├── crossmul.py │ ├── geo2rdr.py │ ├── isce3 │ ├── rdr2geo.py │ └── resampSlc.py ├── cxx (C++ code) │ ├── CMakeLists.txt │ ├── isce - CPU only code │ └── iscecuda - CUDA code ├── defaults (Pyre configurables) │ └── isce3.pfg ├── doc (Documentation source) │ ├── doxygen │ ├── requirements.txt │ └── sphinx ├── extern (External dependencies that are built with ISCE) │ ├── CMakeLists.txt │ ├── cereal │ ├── eigen3 │ ├── googletest │ ├── pybind11 │ └── pyre ├── python (Python bindings for ISCE) │ ├── CMakeLists.txt │ ├── extensions - C++ extensions using cython, pybind11 etc │ └── packages - Pure python packages └── tests (Unit tests) ├── CMakeLists.txt ├── cxx - C++ tests ├── data - Test data ├── extensions - Python extensions ├── extern - External dependencies built as part of ISCE └── python - Python bindings
ISCE tries to follow the same directory structure as used by other open source projects like GDAL, FFTW etc. Shown below are the contents of the sub-folders populated by ISCE below the installation folder.
. ├── bin (Executables) │ ├── merlin │ ├── pyre │ ├── pyre-config │ ├── python.pyre │ └── smith.pyre ├── defaults (Pyre configurables) │ ├── merlin.pfg │ └── pyre.pfg ├── include (C++ headers) │ ├── Eigen │ ├── cereal │ ├── isce │ ├── portinfo (pyre-specific header file) │ └── pyre ├── lib (Shared libraries) │ ├── libisce.3.0.dylib │ ├── libjournal.dylib │ └── libpyre.dylib ├── packages (Python packages) │ ├── gsl │ ├── isce3 │ ├── journal │ ├── merlin │ ├── nisar │ └── pyre └── share (Examples/ tutorials folder) └── nisar