Software structure

From pCT

This is a brainstorming document for the general software structure of the pCT project and the operation of the full pipeline.

General guidelines

  • support multiple programming languages
  • open for the programming tools best suited for a specific purpose and development group
  • use common/open source packages where ever possible
  • every component comes with a unit test

Presentations

Some presentations in the course of discussion

Software Modules

Software-task-sequence.png

Optimisation

Main data path

  • Simulation
    • Beam Simulation
    • Phantom Simulation
    • Detector Propagation
  • Detector Response Simulation
  • Readout Simulation
  • Readout and Raw Data reconstruction
    • pct-online
  • Detector Reconstruction
    • Most likely entrance step and hull algorithm needed for the single-sided setup
    • Clustering and Tracking
  • Phantom reconstruction
  • Imaging

SignalChain.png

Utilities

  • Visualization
  • Control
  • Monitoring

Contact information of maintainers/experts for each software module

Build system and package management

Common software modules

Data model

Common IO

IPC

Logging

Control