Changeset df0520 for molecuilder/src/molecule.hpp
- Timestamp:
- Nov 2, 2009, 12:50:57 PM (16 years ago)
- Children:
- 8bc524
- Parents:
- 245826
- File:
-
- 1 edited
-
molecuilder/src/molecule.hpp (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
molecuilder/src/molecule.hpp
r245826 rdf0520 83 83 public: 84 84 double cell_size[6];//!< cell size 85 periodentafel *elemente; //!< periodic table with each element85 const periodentafel * const elemente; //!< periodic table with each element 86 86 atom *start; //!< start of atom list 87 87 atom *end; //!< end of atom list … … 93 93 int ElementCount; //!< how many unique elements are therein 94 94 int ElementsInMolecule[MAX_ELEMENTS]; //!< list whether element (sorted by atomic number) is alread present or not 95 int NoNonHydrogen; //!< number of non-hydrogen atoms in molecule96 int NoNonBonds; //!< number of non-hydrogen bonds in molecule97 int NoCyclicBonds; //!< number of cyclic bonds in molecule, by DepthFirstSearchAnalysis()95 mutable int NoNonHydrogen; //!< number of non-hydrogen atoms in molecule 96 mutable int NoNonBonds; //!< number of non-hydrogen bonds in molecule 97 mutable int NoCyclicBonds; //!< number of cyclic bonds in molecule, by DepthFirstSearchAnalysis() 98 98 double BondDistance; //!< typical bond distance used in CreateAdjacencyList() and furtheron 99 99 bool ActiveFlag; //!< in a MoleculeListClass used to discern active from inactive molecules … … 102 102 int IndexNr; //!< index of molecule in a MoleculeListClass 103 103 104 molecule( periodentafel *teil);104 molecule(const periodentafel * const teil); 105 105 virtual ~molecule(); 106 106 … … 241 241 void CreateAdjacencyListFromDbondFile(ofstream *out, ifstream *output); 242 242 void CreateAdjacencyList(ofstream *out, double bonddistance, bool IsAngstroem, void (BondGraph::*f)(BondedParticle * const , BondedParticle * const , double &, double &, bool), BondGraph *BG = NULL); 243 int CorrectBondDegree(ofstream *out) ;244 void OutputBondsList(ofstream *out) ;245 void CyclicBondAnalysis() ;246 void OutputGraphInfoPerAtom(ofstream *out) ;247 void OutputGraphInfoPerBond(ofstream *out) ;243 int CorrectBondDegree(ofstream *out) const; 244 void OutputBondsList(ofstream *out) const; 245 void CyclicBondAnalysis() const; 246 void OutputGraphInfoPerAtom(ofstream *out) const; 247 void OutputGraphInfoPerBond(ofstream *out) const; 248 248 249 249 250 250 // Graph analysis 251 MoleculeLeafClass * DepthFirstSearchAnalysis(ofstream *out, class StackClass<bond *> *&BackEdgeStack); 252 void CyclicStructureAnalysis(ofstream *out, class StackClass<bond *> *BackEdgeStack, int *&MinimumRingSize); 253 bool PickLocalBackEdges(ofstream *out, atom **ListOfLocalAtoms, class StackClass<bond *> *&ReferenceStack, class StackClass<bond *> *&LocalStack); 254 bond * FindNextUnused(atom *vertex); 255 void SetNextComponentNumber(atom *vertex, int nr); 256 void InitComponentNumbers(); 257 void ResetAllBondsToUnused(); 251 MoleculeLeafClass * DepthFirstSearchAnalysis(ofstream *out, class StackClass<bond *> *&BackEdgeStack) const; 252 void CyclicStructureAnalysis(ofstream *out, class StackClass<bond *> *BackEdgeStack, int *&MinimumRingSize) const; 253 bool PickLocalBackEdges(ofstream *out, atom **ListOfLocalAtoms, class StackClass<bond *> *&ReferenceStack, class StackClass<bond *> *&LocalStack) const; 254 bond * FindNextUnused(atom *vertex) const; 255 void SetNextComponentNumber(atom *vertex, int nr) const; 256 void ResetAllBondsToUnused() const; 258 257 int CountCyclicBonds(ofstream *out); 259 258 bool CheckForConnectedSubgraph(ofstream *out, KeySet *Fragment); 260 string GetColor(enum Shading color) ;259 string GetColor(enum Shading color) const; 261 260 bond * CopyBond(atom *left, atom *right, bond *CopyBond); 262 261 … … 351 350 352 351 bool AddLeaf(molecule *ptr, MoleculeLeafClass *Previous); 353 bool FillBondStructureFromReference(ofstream *out, molecule *reference, int &FragmentCounter, atom ***&ListOfLocalAtoms, bool FreeList = false);352 bool FillBondStructureFromReference(ofstream *out, const molecule * const reference, int &FragmentCounter, atom ***&ListOfLocalAtoms, bool FreeList = false); 354 353 bool FillRootStackForSubgraphs(ofstream *out, KeyStack *&RootStack, bool *AtomMask, int &FragmentCounter); 355 354 bool AssignKeySetsToFragment(ofstream *out, molecule *reference, Graph *KeySetList, atom ***&ListOfLocalAtoms, Graph **&FragmentList, int &FragmentCounter, bool FreeList = false);
Note:
See TracChangeset
for help on using the changeset viewer.
