00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _rnaml_Atom_h_
00029 #define _rnaml_Atom_h_
00030
00031 extern "C" {
00032 #include "atom.h"
00033 #include "object.h"
00034 }
00035
00036 #include "Object.h"
00037
00038
00039 namespace rnaml
00040 {
00041 class Atom : public Object
00042 {
00043
00044 public:
00045
00046
00047
00051 Atom () : Object ((rnamlObject*) rnamlnewAtom ()) { }
00052
00057 Atom (const Atom &right) : Object (right) { }
00058
00063 Atom* clone () const { return new Atom (*this); }
00064
00068 virtual ~Atom () { }
00069
00070
00071
00077 Atom& operator= (const Atom &right);
00078
00079
00080
00085 const char* getSerial () const { return rnamlgetAtomSerial ((rnamlAtom*) getCStructure ()); }
00086
00091 void setSerial (const char *serial) { rnamlsetAtomSerial ((rnamlAtom*) getCStructure (), serial); }
00092
00097 const char* getAtomType () const { return rnamlgetAtomAtomType ((rnamlAtom*) getCStructure ()); }
00098
00103 void setAtomType (const char *atomType) { rnamlsetAtomAtomType ((rnamlAtom*) getCStructure (), atomType); }
00104
00109 float getX () const { return rnamlgetAtomX ((rnamlAtom*) getCStructure ()); }
00110
00115 void setX (float x) { rnamlsetAtomX ((rnamlAtom*) getCStructure (), x); }
00116
00121 float getY () const { return rnamlgetAtomY ((rnamlAtom*) getCStructure ()); }
00122
00127 void setY (float y) { rnamlsetAtomY ((rnamlAtom*) getCStructure (), y); }
00128
00133 float getZ () const { return rnamlgetAtomZ ((rnamlAtom*) getCStructure ()); }
00134
00139 void setZ (float z) { rnamlsetAtomZ ((rnamlAtom*) getCStructure (), z); }
00140
00147 void setCoordinates (float x, float y, float z) { setX (x); setY (y); setZ (z); }
00148
00153 float getOccupancy () const { return rnamlgetAtomOccupancy ((rnamlAtom*) getCStructure ()); }
00154
00159 void setOccupancy (float occupancy) { rnamlsetAtomOccupancy ((rnamlAtom*) getCStructure (), occupancy); }
00160
00165 float getTempFactor () const { return rnamlgetAtomTempFactor ((rnamlAtom*) getCStructure ()); }
00166
00171 void setTempFactor (float tempFactor) { rnamlsetAtomTempFactor ((rnamlAtom*) getCStructure (), tempFactor); }
00172
00177 const char* getSegId () const { return rnamlgetAtomSegId ((rnamlAtom*) getCStructure ()); }
00178
00183 void setSegId (const char *segId) { rnamlsetAtomSegId ((rnamlAtom*) getCStructure (), segId); }
00184
00189 const char* getElement () const { return rnamlgetAtomElement ((rnamlAtom*) getCStructure ()); }
00190
00195 void setElement (const char *element) { rnamlsetAtomElement ((rnamlAtom*) getCStructure (), element); }
00196
00201 const char* getCharge () const { return rnamlgetAtomCharge ((rnamlAtom*) getCStructure ()); }
00202
00207 void setCharge (const char *charge) { rnamlsetAtomCharge ((rnamlAtom*) getCStructure (), charge); }
00208
00209
00210
00211
00212
00213 };
00214 }
00215
00216 #endif