1
2
3
4 """
5 **Generic tools for archive curation tasks**. This package contains modules
6 that collect together classes and functions that are used in many curation
7 tasks, both regular use cases (`invocations`) and ocassional activities
8 (`helpers`).
9
10 Package Organization
11 ====================
12
13 .. packagetree::
14 :style: UML
15
16 Organization guidelines
17 =======================
18
19 When choosing a module in this package for which to locate functions that are
20 to be accessed by multiple curation tasks, follow these guidelines:
21
22 1. If the function can be grouped together with several other functions that
23 work on similar data or towards a similar goal or purpose, then create a
24 new module with a meaningful name: e.g. `wsatools.SourceMerger` was created
25 to host all the functions that may be required to produce merged sources
26 from detections in different passbands (or whatever).
27
28 2. For lone functions, look through the list of pre-existing modules and
29 decide where it fits best. Mostly likely it belongs to one of these modules:
30
31 * `wsatools.DbConnect.CommonQueries` - if its purpose is to retrieve or
32 update data in the database.
33
34 * `wsatools.FitsUtils` - for managing the WSA's collection of FITS files in
35 any way.
36
37 * `wsatools.Utilities` - if it performs generic manipulations on Python
38 objects or for managing the WSA file system. No database connections
39 should be made from here.
40
41 3. Finally, for lone functions that do not fit into any of the pre-existing
42 modules then it should probably be left in the script where it was
43 initially required (with a view of creating a new module for it if and when
44 more functions are created that work towards a similar goal). Other
45 curation tasks that require use of this function should then import this
46 script to access this function. This is possible as our coding standards
47 require all scripts to be "importable" (for epydoc's sake). Do NOT
48 duplicate the function.
49
50 :requires: Python 2.6+, mxODBC, PyFITS, NumPy
51
52 :group Database connection: DataFactory, DbConnect
53 :group C++ modules: jpeg, pairing, pywcs
54
55 """
56 __docformat__ = 'restructuredtext en'
57