Chapter 10. Incorporating Third-party Applications

Table of Contents

10.1. Benefits to Incorporating Applications into EMBOSS
10.2. Wrappers and Ports
10.3. Pros and Cons
10.3.1. Development Cost
10.3.2. Flexibility
10.3.3. Limitations
10.3.4. Maintenance Cost
10.3.5. Support Cost
10.3.6. Perceived Risk
10.3.7. Summary
10.4. How To Wrap Third Party Applications
10.4.1. Planning and Design
10.4.2. ACD File Development
10.4.3. C Source Code Development
10.4.4. Quality Assurance Testing
10.4.5. Documentation
10.4.6. Integration
10.5. HMMER Wrapper: Overview
10.6. HMMER Wrapper: hmmbuild
10.6.1. HMMER Wrapper: ehmmbuild.acd
10.6.1.1. Application Definition and Inputs
10.6.1.2. Required Section
10.6.1.3. Advanced Section
10.6.1.4. Output Section
10.6.2. HMMER Wrapper: ehmmbuild.c
10.6.2.1. Header Documentation
10.6.2.2. main() Function
10.6.2.3. Processing the ACD File
10.6.2.4. Housekeeping and File Format Handling
10.6.2.5. Building the Command line
10.6.2.6. Invoking the Application
10.7. HMMER Wrapper: hmmalign
10.7.1. HMMER Wrapper: hmmalign.acd
10.7.1.1. Input Section
10.7.1.2. Output Section
10.7.2. HMMER Wrapper: ehmmalign.c
10.7.2.1. Documentation Header
10.7.2.2. main() Function, Housekeeping and ACD File Processing
10.7.2.3. File Format Handling
10.7.2.4. Building the Command line
10.7.2.5. Invoking the Application
10.8. Reducing The Length Of The Command Line
10.9. How To Port Third Party Applications
10.10. HMMER port
10.10.1. HMMER Port: ohmmalign.acd
10.10.2. HMMER Port: ohmmalign.c
10.10.2.1. Heading Code
10.10.2.2. main() Function Variable Declarations
10.10.2.3. ACD File Processing
10.10.2.4. Handling Input Data
10.10.2.5. Exiting Cleanly
10.11. Summary