From eac0800a04e8ec835111af929bc939f5b45c8b61 Mon Sep 17 00:00:00 2001
From: marco <marco@5a81b35b-ba03-0410-adc8-b2c5c5119f08>
Date: Fri, 23 Apr 2010 08:12:00 +0000
Subject: [PATCH] calpha_only option for ModelRepository and LoadPDB

git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2111 5a81b35b-ba03-0410-adc8-b2c5c5119f08
---
 modules/io/pymod/__init__.py   | 6 ++++--
 modules/io/pymod/repository.py | 5 +++--
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/modules/io/pymod/__init__.py b/modules/io/pymod/__init__.py
index e92e93249..344f97129 100644
--- a/modules/io/pymod/__init__.py
+++ b/modules/io/pymod/__init__.py
@@ -21,7 +21,7 @@ from ost import mol,conop
 
 def LoadPDB(filename, restrict_chains="", no_hetatms=False,
             fault_tolerant=False, load_multi=False,
-            join_spread_atom_records=False):
+            join_spread_atom_records=False, calpha_only=False):
   """
   Load PDB file from disk.
 
@@ -46,8 +46,10 @@ def LoadPDB(filename, restrict_chains="", no_hetatms=False,
   reader=PDBReader(filename)
 
   flags=0
+  if calpha_only:
+    flags|=PDB.CALPHA_ONLY
   if fault_tolerant:
-    flags=PDB.SKIP_FAULTY_RECORDS
+    flags|=PDB.SKIP_FAULTY_RECORDS
   if no_hetatms:
     flags|=PDB.NO_HETATMS
   if join_spread_atom_records:
diff --git a/modules/io/pymod/repository.py b/modules/io/pymod/repository.py
index ac6c1d1c2..a0ed9cbdd 100644
--- a/modules/io/pymod/repository.py
+++ b/modules/io/pymod/repository.py
@@ -41,9 +41,10 @@ class ModelRepository:
     basename=self.file_pattern_ % {'id' : pdb_id, 'chain' :chain, 'dir' : pdb_id[1:3]}
     return os.path.join(self.directory_, basename)
     
-  def Load(self, pdb_id, chains=""):
+  def Load(self, pdb_id, chains='', calpha_only=False, fault_tolerant=False):
     return io.LoadPDB(self.FilenameForModel(pdb_id, chains),
-                          chains)
+                      chains, calpha_only=calpha_only, 
+                      fault_tolerant=fault_tolerant)
                       
   def LoadMulti(self, pdb_id, chains=""):
     return io.LoadMultiPDB(self.FilenameForModel(pdb_id, chains))
-- 
GitLab