Merges detections over all passbands into a binary source table. Can
also 're-seam' the source table, marking duplicate sources as either
being primary or secondary depending upon their quality.
Warning:
The order of sequences are very important in various parts of this
code. The numbering of passbands is sorted into filterID order
(with multiple epochs in-between e.g. Z, K_1, K_2, H_1, H_2) in
some places and by order in the table schema (e.g. mergeLog) in
other places. This is essentially the same, as the schema order is
created by a script that does indeed follow filterID order. The
numbering of passbands is important for cameo schemas & epochs
for merging, and detection outgests for pairing. Also, presently
the outgested detections for reseaming only must be in declination
order, despite being resorted into that order by the pairing code,
because they are read later in by the Python code, which expects
them to be in declination order. This could be recoded easily.
To Do:
-
Implement View, FrameSetView, and FrameView objects.
-
Remove sort on outgest during reseaming and alter _analyseSeams() to
remove requirement that pointers are sorted by declination, which will
also speed up _getFrameSetSources() query as no sort by dec will be
required.
-
Make SourceMerger a base class, that CU6,7,9 have like an Outgester
class.
Author:
N.C. Hambly
Organization:
WFAU, IfA, University of Edinburgh
Contributors:
R.S. Collins