Ticket #753 (closed enhancement: fixed)

Opened 10 years ago

Last modified 7 years ago

Make Centroiding alogorithm extendable via user plugins

Reported by: rhl Owned by: rhl
Priority: normal Milestone:
Component: meas_algorithms Keywords:
Cc: Blocked By:
Blocking: Project: LSST
Version Number:
How to repeat:

not applicable

Description

The current implementation of Source Centroiding can be extended with new algorithms by making small changes to the core C++ code. Please change this so that new algorithms can be added in pure user code, via a registration mechanism.

The uniform adoption of such an approach will be valuable as we build an extendible system.

Change History

comment:1 Changed 10 years ago by rhl

  • Status changed from new to closed
  • Resolution set to fixed
  • reviewstatus changed from notReady to selfReviewed

Implemented in r9142.

The basic scheme is that a centroiding algorithm can be implemented in a single file (it needn't even be in the lsst:: namespace; the provided implementations, SDSS and NAIVE, are in anon namespaces within meas::algorithms). The factory function to create this algorithm is registered at runtime, typically via a file-scope initialisation.

Scientists wishing to try out their own algorithm will be able to write their own code, import it into python and use it. As algorithms are specified by name in policy files, this choice can be made in the production pipelines in a minimally invasive way.

comment:2 Changed 7 years ago by robyn

  • Milestone DC3b Apps Framework deleted

Milestone DC3b Apps Framework deleted

Note: See TracTickets for help on using tickets.