@@ -117,6 +117,8 @@ class MolAtom
117117 void SetNonFlipAtom (const bool nonflip);
118118 // / Can this atom be flipped (return=false) or should its absolute configuration be kept (return=true)
119119 bool IsNonFlipAtom () const ;
120+ // / Access to the integer address of this object, for unique identification from python
121+ size_t int_ptr () const ;
120122 private:
121123 // / Name for this atom
122124 string mName ;
@@ -229,7 +231,8 @@ class MolBond:public Restraint
229231 void SetBondOrder (const REAL length);
230232 bool IsFreeTorsion ()const ;
231233 void SetFreeTorsion (const bool isInRing);
232-
234+ // / Access to the integer address of this object, for unique identification from python
235+ size_t int_ptr () const ;
233236 private:
234237 pair<MolAtom*,MolAtom*> mAtomPair ;
235238 REAL mLength0 ,mDelta ,mSigma ;
@@ -320,6 +323,8 @@ class MolBondAngle:public Restraint
320323 std::size_t size () const ;
321324 vector<MolAtom*>::const_iterator begin () const ;
322325 vector<MolAtom*>::const_iterator end () const ;
326+ // / Access to the integer address of this object, for unique identification from python
327+ size_t int_ptr () const ;
323328 private:
324329 // / The vector of the 3 atoms involved in the bond angle.
325330 vector<MolAtom*> mvpAtom;
@@ -415,6 +420,8 @@ class MolDihedralAngle:public Restraint
415420 std::size_t size () const ;
416421 vector<MolAtom*>::const_iterator begin () const ;
417422 vector<MolAtom*>::const_iterator end () const ;
423+ // / Access to the integer address of this object, for unique identification from python
424+ size_t int_ptr () const ;
418425 private:
419426 // / The vector of the 4 atoms involved in the bond angle.
420427 vector<MolAtom*> mvpAtom;
@@ -454,6 +461,8 @@ class MolRing
454461 MolRing ();
455462 const std::list<MolAtom*>& GetAtomList ()const ;
456463 std::list<MolAtom*>& GetAtomList ();
464+ // / Access to the integer address of this object, for unique identification from python
465+ size_t int_ptr () const ;
457466 private:
458467 std::list<MolAtom*> mvpAtom;
459468};
@@ -529,6 +538,8 @@ class RigidGroup:public std::set<MolAtom *>
529538 // / Temporary list of the atoms indices in the molecule, used during optimization
530539 // / This is created in Molecule::BeginOptimization()
531540 mutable std::set<unsigned int > mvIdx;
541+ // / Access to the integer address of this object, for unique identification from python
542+ size_t int_ptr () const ;
532543};
533544
534545/* * Abstract base Stretch Mode for Molecule objects
0 commit comments