source: nappy/trunk/nappy/Plans for re-factoring 2008.txt @ 3320

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/nappy/trunk/nappy/Plans for re-factoring 2008.txt@3320
Revision 3320, 1.7 KB checked in by astephen, 12 years ago (diff)

Added unit_tests directory and Plans for re-factoring file.

Line 
1= Changes needed to make Nappy fit for purpose =
2
3
4 * Need error checking throughout - making it more robust but also checking on read will make Nappy a useful NASA Ames checker replacement.
5
6 * cdms interface should be in a separate part of the stack, not in core classes AND SUB-CLASSES
7
8 * Need to make an egg of it, but in the meantime we also need it installed as:
9
10   * nappy-0.2.3
11     * nappy
12     * bin
13     * nappy/nc_interface
14     * nappy/cdms_utils/
15     * nappy/utils
16     * nappy/ffi_classes
17     * nappy/contrib/aircraft
18   
19
20 * GET REST FROM WIKI!
21
22
23CDMS stuff is most of the mess
24==============================
25
261. naToCdms.py holds:
27
28AbstractNAToCdms CLASS
29toCdmsFile
30createCdmsVariables
31toCdmsVariable
32createCdmsAuxVariables
33auxToCdmsVariable
34createCdmsAxes
35toCdmsAxes
36
372. na2cdms.py:
38
39Command-line script
40
413. bin/na2nc:
42
43Same as na2cdms.py ???
44
454. cdms2na.py is the mother of all modules:
46
47compareAxes --> areAxesIdentical(a,b) cdms_utils
48compareVariables --> areDomainsIdentical(v1, v2) cdms_utils
49isAuxAndVar --> isAuxVarAndVar
50arrayToList utils
51listOfListsCreator utils
52getBestName cdms_utils - need some advice and compare with Dom
53getMissingValue cdms_utils
54fixHeaderLengthNowDefunct # Can destroy
55flatten2DTimeData aircraft
56modifyNADictCopy - needs a better name as it is specific
57cdms2na - 200 lines of code to do main conversion, needs to be split out into other stuff.
58 * getVariableCollections(f and varlist) --> (ordered_vars, other_vars)
59 * buildNADicts()
60 * writeToOutputFiles()
61
62CdmsToNABuilder CLASS
63__init__
64analyseVariables
65defineNAVars
66defineNAAuxVars
67getAxisDefinition
68defineNAGlobals
69defineNAComments
70defineGeneralHeader
71_useLocalRule
72
73=================
74
75
76
77
78 
Note: See TracBrowser for help on using the repository browser.