GDA Developer Guide¶
This is the Generic Data Acquisition (GDA) Developer Guide.
GDA is an open source project providing a configurable platform for running experiments on synchrotron and neutron beamlines.
The Developer Guide’s companion document the GDA User Guide is available here.
Developer Guide contents:
- 1. About this document
- 1.1. Introduction
- 1.2. GDA single-point-of-truth
- 1.3. External links to source code documentation
- 1.4. Obtaining and updating the documentation source
- 1.5. Building the GDA Developer and User Guides at Diamond
- 1.6. Adding a new section to the document
- 1.7. Creating content in markdown
- 1.8. Use of custom CSS
- 1.9. Using Visual Paradigm
- 1.10. Auto generation of Class and Sequence diagrams
- 1.11. Documentation Makefile and Scripts
- 1.12. Python Scripts
autodoc
- 1.13. UML Diagram Notation
- 2. Introduction to the GDA
- 3. GDA Installation
- 4. Gerrit Setup
- 5. GDA Start-up
- 6. Jython Script types
- 7. Writing new Device classes in Jython and Java
- 7.1. Introduction
- 7.2. The Scannable interface and ScannableBase classes
- 7.3. Description of the Scannable properties and relations between them
- 7.4. Ensuring Correct Scan Behavior from Scannables
- 7.5. Add a new device to the server
- 7.6. Examples of other Scannable classes and tests in GDA
- 7.7. Demonstrate use of Scannable in terminal
- 8. Client GUI development
- 9. Remoting
- 10. GDA Configuration
- 11. User Messages
- 12. Integrating EPICS in GDA
- 13. EPICS AreaDetector Viewer
- 13.1. How to Add ADViewer views to a GUI when the plugins conform to the DLS AreaDetector Plugin Standard
- 13.2. How to Add ADViewer views to a GUI when the plugins do not conform to the DLS AreaDetector Plugin Standard
- 13.3. How to Add ADViewer views to a GUI by defining a detector specific ADController
- 13.4. Using the gda.rcp.views.OpenViewListBoxComposite
- 14. New Scanning
- 15. Malcolm
- 16. NeXus File Writing
- 17. Build and Infrastructure
- 18. GDA Demo
- 19. Developing GDA
- 20. Key Patterns
- 21. Writing & Running GDA Test Code
- 22. GDA on MX Beamlines
- 23. GDA on VMXi Beamline
- 24. GDA Use Cases
- 25. Frequently Asked Questions
- 26. Contributors to the GDA project
Appendix¶
- Document’s Broken Links
- about_this_document/external_links_to_source_code_documentation.md
- about_this_document/using_visual_paradigm.md
- build_infrastructure/buckminster_build.md
- build_infrastructure/components.md
- build_infrastructure/continuous_integration.md
- config.md
- faq/introduction.md
- gerrit.md
- key_patterns.md
- malcolm.md
- mx/mx_datacollections.md
- nexus_file_writing/diamond_default_nexus_file_structure.md
- nexus_file_writing/how_nexus_files_are_written_in_scanning.md
- remoting.md
- use_cases.md
- vmxi/control_objects/crystalmatch_software_for_plate_imaging.md
- about_this_document/auto_generation_of_class_and_sequence_diagrams.md
- about_this_document/documentation_makefile_and_scripts.md
- build_infrastructure/provisioning.md
- How to auto-generate this page