22 #ifndef OST_IO_SDF_READER_HH
23 #define OST_IO_SDF_READER_HH
25 #include <boost/filesystem/fstream.hpp>
30 namespace ost {
namespace io {
34 SDFReader(
const String& filename);
35 SDFReader(
const boost::filesystem::path& loc);
36 SDFReader(std::istream& instream);
40 void Import(mol::EntityHandle& ent);
43 void ClearState(
const boost::filesystem::path& loc);
46 void ParseAndAddHeader(
const String& line,
int line_num, mol::EntityHandle& ent,
47 mol::XCSEditor& editor);
49 void ParseAndAddAtom(
const String& line,
int line_num, mol::EntityHandle& ent,
50 bool hetatm, mol::XCSEditor& editor);
52 void ParseAndAddBond(
const String& line,
int line_num, mol::EntityHandle& ent,
53 mol::XCSEditor& editor);
55 mol::ChainHandle curr_chain_;
56 mol::ResidueHandle curr_residue_;
62 boost::filesystem::ifstream infile_;
63 std::istream& instream_;