From d1e71f5f968f7f48d9257f5342eb1232ae750a60 Mon Sep 17 00:00:00 2001
From: Chris Maffeo <cmaffeo2@illinois.edu>
Date: Tue, 13 Aug 2019 15:17:45 -0500
Subject: [PATCH] Made readers/__init__.py import readers only when used

---
 mrdna/readers/__init__.py | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/mrdna/readers/__init__.py b/mrdna/readers/__init__.py
index 44e5a32..5e9a828 100644
--- a/mrdna/readers/__init__.py
+++ b/mrdna/readers/__init__.py
@@ -1,23 +1,17 @@
-from ..segmentmodel import SegmentModel
-
-""" cadnano """
-from .cadnano_segments import read_json_file
-from .cadnano_segments import read_model as model_from_cadnano_json
-
-""" vHelix """
-from .polygon_mesh import parse_maya_file, convert_maya_to_segments
-from ..model.dna_sequence import m13 as m13seq
-
-""" Atomic PDB """
-from .segmentmodel_from_pdb import SegmentModelFromPdb
-
 ## TODO: make module this package conform to a single style for input/output
 
 def read_cadnano(json_file, **model_parameters):
+    from .cadnano_segments import read_json_file
+    from .cadnano_segments import read_model as model_from_cadnano_json
+
     data = read_json_file(json_file)
     return model_from_cadnano_json(data, **model_parameters)
 
 def read_vhelix(maya_file, **model_parameters):
+    from .polygon_mesh import parse_maya_file, convert_maya_to_segments
+    from ..model.dna_sequence import m13 as m13seq
+    from ..segmentmodel import SegmentModel
+
     data = parse_maya_file(maya_file)
     segments, dsSegmentDict = convert_maya_to_segments( data )
     if 'dimensions' not in model_parameters:
@@ -42,4 +36,5 @@ def read_list(infile,**model_parameters):
 
 
 def read_atomic_pdb(pdb_file, **model_parameters):
+    from .segmentmodel_from_pdb import SegmentModelFromPdb
     return SegmentModelFromPdb(pdb_file)
-- 
GitLab