24#if !(defined LOOS_MDTRAJ_HPP)
25#define LOOS_MDTRAJ_HPP
34#include <loos_defs.hpp>
35#include <AtomicGroup.hpp>
37#include <boost/json.hpp>
51 MDTraj() : _max_index(0) { }
54 explicit MDTraj(
const std::string fname) : _max_index(0), _filename(fname) {
58 explicit MDTraj(std::istream &ifs) : _max_index(0), _filename(
"stream") {
59 throw(
LOOSError(
"Creating an MDTraj from a stream isn't implemented"));
62 static pAtomicGroup create(
const std::string& fname) {
63 return(pAtomicGroup(
new MDTraj(fname)));
80 std::string _filename;
82 std::string getTopology(H5::H5File &file);
83 void topologyToAtoms(
const boost::json::value& topology);
84 void topologyToBonds(
const boost::json::value& topology);
Class for handling groups of Atoms (pAtoms, actually)
Definition AtomicGroup.hpp:108
Generic LOOS exception.
Definition exceptions.hpp:40
Class for reading a MDTraj HDF5 file.
Definition mdtraj.hpp:49
MDTraj copy(void) const
Creates a deep copy (see AtomicGroup::copy() for more info)
Definition mdtraj.cpp:35
virtual MDTraj * clone(void) const
Clones an object for polymorphism (see AtomicGroup::clone() for more info)
Definition mdtraj.cpp:31
Namespace for most things not already encapsulated within a class.
Definition version.cpp:3