23 #ifndef OST_IO_ENTITY_IO_PLUGIN_PQR_H
24 #define OST_IO_ENTITY_IO_PLUGIN_PQR_H
32 #include <boost/iostreams/filtering_stream.hpp>
33 #include <boost/filesystem/fstream.hpp>
35 namespace ost {
namespace io {
51 std::vector<mol::AtomHandle> sequential_atom_list_;
57 boost::filesystem::ifstream infile_;
58 boost::iostreams::filtering_stream<boost::iostreams::input> in_;
65 PQRWriter(
const boost::filesystem::path& filename,
bool ext=
false);
79 std::ofstream outfile_;
80 std::ostream& outstream_;
92 const boost::filesystem::path& loc)
const;
99 const String& format=
"auto");
101 const String& format=
"auto");
pure abstract base class for entity io handlers
static bool ProvidesImport(const boost::filesystem::path &loc, const String &format="auto")
static String GetFormatName()
static bool ProvidesExport(const boost::filesystem::path &loc, const String &format="auto")
virtual void Export(const mol::EntityView &ent, const boost::filesystem::path &loc) const
virtual void Import(mol::EntityHandle &ent, const boost::filesystem::path &loc)
virtual bool RequiresBuilder() const
virtual void Export(const mol::EntityView &ent, std::ostream &stream) const
static String GetFormatDescription()
virtual void Import(mol::EntityHandle &ent, std::istream &stream)
std::vector< mol::AtomHandle > GetSequentialAtoms() const
void Import(mol::EntityHandle &ent)
PQRReader(const boost::filesystem::path &loc)
CHARMM coordinate file export.
PQRWriter(const String &filename, bool ext=false)
PQRWriter(std::ostream &outstream, bool ext=false)
virtual bool VisitResidue(const mol::ResidueHandle &r)
Residue callback.
void Write(const mol::EntityHandle &ent)
void WriteHeader(const mol::EntityView &ent)
void Write(const mol::EntityView &ent)
virtual bool VisitAtom(const mol::AtomHandle &atom)
Atom callback.
PQRWriter(const boost::filesystem::path &filename, bool ext=false)
EntityIOHandlerFactory< EntityIOPQRHandler > EntityIOPQRHandlerFactory
mol::EntityHandle DLLEXPORT_OST_IO LoadPQR(const String &file_name)