[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ccp4bb]: Clipper 'grand renaming' - request for comments...



***  For details on how to be removed from this list visit the  ***
***          CCP4 home page http://www.ccp4.ac.uk         ***

Hi!

I'm almost ready to release Clipper to developers, after which point changes 
to the API will be treated with extreme caution.

Therefore, I am seeking comments on class and method names. If you really 
hate my names, now is your chance to get them changed. If you have not yet 
contributed, now is your chance.

The web page is here:
 http://www.yorvic.york.ac.uk/~cowtan/clipper/clipper.html
the class hierarchy is here:
 http://www.yorvic.york.ac.uk/~cowtan/clipper/doc/hierarchy.html
a complete list of compond names is here:
 http://www.yorvic.york.ac.uk/~cowtan/clipper/doc/functions.html
and the postscript reference manual is here:
 http://www.yorvic.york.ac.uk/~cowtan/clipper/doc/refman.ps.gz
(I recommend mpage -2, because it now runs to 223 pages).


Issues:

1. The two classes the names of which I am most unsure are the two parts of 
the reflection data object:
 HKL_info        - which holds the list of reflections
 HKL_data<>   - which holds a list of data of arbitrary type.
(The division is so that you can if you wish hold multiple datalists using 
the same reflection list, in the same way as an MTZ file).

The name for HKL_data should not be too long, because a program may use lots 
of these. This is less critical for HKL_info.

2. Two equivalent metaphors are used to describe hierarchical data: a tree, 
and a nest of containers. (I use these so that objects can inherit cell and 
spacegroup properties automatically). I'm currently describing my hierarchy 
in terms of containers, but I think a tree is more descriptive in this case. 
Should 'Container' be renamed 'Tree_object'? Should all the Container 
versions of objects be prefixed with 'T' instead of 'C'?

3. I've written a brief one-line decription for all of the 600+ methods in 
the library, but only written detailed descriptions for about 100. Please 
tell me if you have strong feelings about those methods most urgently in need 
of detailed descriptions.

4. Do people want to be able to do arithmetic of lists of F+phase? I am 
corrently implementing this using my 'conversion operators' which mean you 
can do an arbitrary unary or binary arithmetic operation with a single 
function call. But I could implement arithmetic operators so you can add a 
whole list using 'c=a+b'. I don't like it, because it involves an implicit 
constructor and destructor to create the intermediate result, but I can do it 
if people really *really* want it.

I don't promise to take any advice, but I will consider it all.

Thanks,
Kevin

p.s. This message was originally sent to ccp4-dev, but is reposted here due 
to lack of feedback.

-- 
Department of Chemistry, University of York, Heslington, York YO10 5DD