Currently model class has three selection methods:
def selection(self, selstr, optional=True):
def select(self, selection):
def iselection(self, selstr):
which is hideously confusing with zero chance to remember, and also
inconsistent with the rest.
Most objects in cctbx have ".select(self, selection)" methods,
while being inconsistent about what they expect: iselection or
boolean selection as "selection" argument. Some smart ones though
can take both int or bool selections (figure out type automatically,
which is trivial).
Can we consolidate all three into one ".select()" that would allow
taking bool or int or str? Or you think there are philosophical
arguments against it?
Pavel
On 8/16/18 15:00, CCTBX commit wrote:
Repository : ssh://g18-sc-serv-04.diamond.ac.uk/cctbx
On branch : master
commit c98b44997e8eb7bf53ee828f510b933cd5167758
Author: Oleg Sobolev <[email protected]>
Date: Thu Aug 16 15:00:20 2018 -0700
Proper use of model class
c98b44997e8eb7bf53ee828f510b933cd5167758
mmtbx/model/model.py | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/mmtbx/model/model.py b/mmtbx/model/model.py
index 6f2247452..87412f95c 100644
--- a/mmtbx/model/model.py
+++ b/mmtbx/model/model.py
@@ -2312,8 +2312,7 @@ class manager(object):
sizes = flex.int()
h = self.get_hierarchy()
if(macro_molecule_only):
- asc = h.atom_selection_cache()
- s = asc.selection("protein or
nucleotide")
+ s = self.selection("protein or
nucleotide")
h = h.select(s)
for r in h.residue_groups():
sizes.append(r.atoms().size())