10#include "nlohmann/json.hpp"
33 explicit Atom(
const std::string &pdbLine);
44 const std::string &pdbLine,
246 void load(
const std::string &jsonFile);
249 friend nlohmann::adl_serializer<Atom>;
250 friend nlohmann::adl_serializer<Atom *>;
254 std::string _element;
255 std::string _residueName;
257 std::string _chainId;
258 std::string _segmentId;
259 float _temperatureFactor;
float x(CuArray< float > *coordinates, int frame, int numFrames) const
Get the x-coordinate of the atom.
unsigned int hash() const
Get the hash of the atom.
float occupancy() const
Get the occupancy.
int index() const
Get the atom index.
float z(CuArray< float > *coordinates, int frame, int numFrames) const
Get the z-coordinate of the atom.
void load(const std::string &jsonFile)
Load atom information from a JSON file.
float temperatureFactor() const
Get the temperature factor.
int residueId() const
Get the residue ID.
std::string residueName()
Get the residue name.
Atom()
Default constructor for Atom.
std::string chainId()
Get the chain ID.
std::string tag()
Get the atom tag.
std::string name()
Get the atom name.
std::string segmentId()
Get the segment ID.
int serial() const
Get the serial number.
Atom(const std::string &pdbLine, int atomIndex)
Constructor for Atom with PDB line and atom index.
float y(CuArray< float > *coordinates, int frame, int numFrames) const
Get the y-coordinate of the atom.
Atom(const std::string &pdbLine)
Constructor for Atom with PDB line.
std::string element()
Get the atom element.
float mass() const
Get the mass of the atom.
Manages CUDA-supported arrays, offering initialization, memory management, and data manipulation....
Definition cuarray.h:24