22 #ifndef OST_IO_SDF_READER_HH
23 #define OST_IO_SDF_READER_HH
25 #include <boost/filesystem/fstream.hpp>
29 namespace ost {
namespace io {
33 SDFReader(
const String& filename);
34 SDFReader(
const boost::filesystem::path& loc);
35 SDFReader(std::istream& instream);
39 void Import(mol::EntityHandle& ent);
42 void ClearState(
const boost::filesystem::path& loc);
45 void ParseAndAddHeader(
const String& line,
int line_num, mol::EntityHandle& ent,
46 mol::XCSEditor& editor);
48 void ParseAndAddAtom(
const String& line,
int line_num, mol::EntityHandle& ent,
49 bool hetatm, mol::XCSEditor& editor);
51 void ParseAndAddBond(
const String& line,
int line_num, mol::EntityHandle& ent,
52 mol::XCSEditor& editor);
54 mol::ChainHandle curr_chain_;
55 mol::ResidueHandle curr_residue_;
61 boost::filesystem::ifstream infile_;
62 std::istream& instream_;