This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "". The branch, Candidate_v1.5.3 has been created at a95f5d33525f59abab6d0c6c038124f19f3dce8f (commit) - Log ----------------------------------------------------------------- commit a95f5d33525f59abab6d0c6c038124f19f3dce8f Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Apr 25 09:11:24 2016 +0200 Set version to 1.5.3. - MoleCuilder library is now 16:0:0. - Codename "" (). commit 9d1a7852dfe99a1cb296f633da73d5db75927b7d Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Apr 24 16:19:38 2016 +0200 FIX: GLWorldScene used iterator also in NDEBUG, connect still outside mutex. commit abb1154e536baa00480c16bd3f03a86d8c3b1827 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Apr 24 16:16:40 2016 +0200 FIX: QtMoleculeListView::rowsSelected() checks for illegal id from get..ToIndex(). - also check was faulty before and we still tried getting the mol from the world before. commit 097da78c5ee5df3259577e1b98ad9c5dfba1f859 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Apr 24 16:15:37 2016 +0200 FIX: QtMoleculeList has flag to tell when nameChanged came from outside. - this causes irregular calls to getMoleculeIdToIndex() which could crash the code due to the present assertion. commit 006f6a88499dfff7622fae1a1ebbbebf94c10e25 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Apr 24 16:15:11 2016 +0200 QtObservedInstanceBoard::get..ToIndex() now serve -1 as illegal id when index not found commit ffa69c3a5430f43a2fcff8f8332be2d5df161bcd Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Apr 24 16:14:09 2016 +0200 FIX: PdbParser scanned through all present atoms once per ATOM line. - this was the cause of a O(N^2) scaling issue. commit 30b134008ab63ad98ce7dfb5bee4983ddc68169d Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri Apr 22 10:50:56 2016 +0200 FIX: GLWorldScene::removeBond() needs to check whether molecule changed already. - there are two possibilities for bonds to be removed: Either the molecule is removed (with its atoms) and this one we got so far. Or the bond is simply removed (because auf adjacency recreation) and this we did not check so far. - If the simply the bond is removed, then we receive removeBond() but no moleculeChanged() signals. Hence, the QtObservedBond is never removed. We need to check in removeBonds() whether the associated molecules are not NULL and then reset the parent entries ourselves. commit 67c4ea8af8af5680e462a6c86512e875859b1852 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri Apr 22 10:29:28 2016 +0200 FIX: molecule returned BondCount twice as large. commit 0bddd1ed82f44fe38f41c7b31c9a974b63b4a862 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri Apr 22 09:30:12 2016 +0200 Made GLWorldScene::resetParent() safe for multiple threads. commit ea79260c69a50c8b23e40674182e6bd828d52ff6 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Apr 20 07:45:11 2016 +0200 Split ObservedValueIndexLookup such that it is protected under atom or bond mutex. commit 1eba7cfbf78368fcfda41c0aafd0173295c50739 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Apr 18 22:57:47 2016 +0200 Protecting access to atom and bond functions in GLWorldScene with mutexes. - mutex are now for general access to internal maps, not just NodesInSceneMap. commit efeeb77d0498bbfe882b8473da74a31a8d40277f Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Apr 17 23:26:58 2016 +0200 GLWorldScene now holds onto atoms and bonds until ..Removed() signal and parent(s) is reset. commit 649f59a7ea5ca2db2837dd54e016436f34564ec3 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri Apr 15 09:38:55 2016 +0200 GLWorldScene removes stored observed values only after both parent is NULL and atomRemoved() came in. - this is to ensure that lifetime of the observed value instance is as long as required. commit 13684213eddb4d1e92250a7618e5af0715cd87e9 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Apr 14 09:55:41 2016 +0200 GLWorldScene needs to store observed values to ensure duration of their lifetime. commit d16a06ce12b228789f8b4bbb0b922c6d57fd9d2a Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Apr 14 10:08:36 2016 +0200 FIX: GLMoleculeObject_atom did not use QtObservedAtom for selected. commit 507f3ce7e91faebcd1012d9752b9561db91064ff Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Apr 14 10:01:31 2016 +0200 QtObservedBond returns ::ptr instead of ptr from left and right atom. - FIX: GLWorldScene crashed on resolving sender() of a reparent..() signal because the object got destroyed in the meantime. commit 522c456e53a0b038cad5c4e43564052c0e06d8c8 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Apr 14 09:47:20 2016 +0200 QtObserved... signals indexChanged does not transmit ids anymore. - since the change to ObservedValue_Index_t, the id is not used anymore. Only in the GUI for the objectid. commit 6c4b69d116a458152c8f6d55ce5f08afa7882f7a Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Apr 13 16:10:40 2016 +0200 Added checks abd verbosity to reparenting in GLWorldScene. commit 08a7eccd3406971777d82560ee81d569921045ec Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Apr 13 15:43:20 2016 +0200 FIX: ObservedValue_Index_t is now the memory address of the Observer instance. - the atom, bond, or molecule may be removed before and reinstantiated at the same address. Hence, it is not a good unique index. The only sensible index is the memory address of the QtObserved... instance itself. commit 375bc3f1ea4847031faded1937b326d122ce6ce3 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 21:55:27 2016 +0200 FIX: Empty row in QtMoleculeList was not deleted. commit b2eeafa325f99ae34f45cf7e6aff1c93efa6eaa9 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 21:21:00 2016 +0200 FIX: MoleculeList crashed when selected molecule changed its place. commit a13f2bb2167e2b7f751acdd3c12df751bb03a105 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 20:37:31 2016 +0200 GLWorldScene can now reparent atoms and bonds whose molecule is instantiated later. - parent maps are now bimaps. commit 5026148ed739f29b2229d07be76ad31aca20fe30 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 20:19:47 2016 +0200 GLWorldScene's parent maps now store the parent as ObservedValue_Index_t. - this will allow to change them into a bimap and then browse through them with the index of a newly instantiated GLMoleculeObject_molecule in order to assign them a proper parent. commit 6e1628b7373c59c6545f88f455af8d047506193e Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 20:17:46 2016 +0200 FIX: QtMoleculeList should not use getIdtoIndex unnecessarily. - this function is only meant to be used in interaction with the user, i.e. while the GUI does not change. commit 2560f1b24789baa35df95165f384b1b4741ed2d5 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 20:16:30 2016 +0200 QtObservedMolecule uses fixed index which it returns. commit 20538962d2829639cd69cee58b8ff49473984aec Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 20:16:22 2016 +0200 QtObservedBond uses fixed index which it returns. commit 498c678babf7da7e93da5832726a8c44043533d3 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 20:16:13 2016 +0200 QtObservedAtom uses fixed index which it returns. commit 50246c63f842a77b7c479453a59b17092c472339 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 16:32:13 2016 +0200 FIX: made disconnect() check for NULL pointers. commit 691533f57d4b19acfb8ebfa5dd9096e4754f42c1 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 16:24:10 2016 +0200 FIX: GLMoleculeObject_molecule only updates tesselation hull when necessary. commit bd676856deb95da62852a3d3d0a1bfdd7e404f1b Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 14:02:45 2016 +0200 GLWorldScene now properly reassigns parents of GLMoleculeObjects. - this is important for atoms and bonds such that they disappear when their associated molecule is visualized as a tesselated surface. commit 273c8a207d79d5a69b073ffc4c58dd18220aa90b Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 13:29:56 2016 +0200 QtObservedAtom only offers direct access to associated const QtObservedMolecule ref. - the molecule index is not part of the atom's state, hence cannot be directly observed. The only thing we observe is the association to the molecule. For this a O/O-signal is available and we may actively change the ref when getting this signal without breaking anything as it occurs in the same thread, hence the board can be safely accessed. - QtObservedBond now needs to access mol index through the molecule ref. - QtInfoBox may now conveniently access atom'smol ref directly. - FIX: Removed static QtObservedBond::getMolecule(). commit 7f185f928e77138d9f68a9af929ddf86c7ed5bf1 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 13:19:05 2016 +0200 QtObservedBond also offers direct access to stored QtObservedAtoms as const refs. - leftatom and rightatom are const throughout the lifetime of the bond. Hence, there is no need to update them and we simply store the refs directly. This will be different for the atom, where the molecule ref may change over the lifetime! commit f1b5ca904ef2ca5bf64048122b7d6dc1ed4716e3 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Apr 12 10:51:06 2016 +0200 Only GLWorldScene creates stuff, GLMoleculeObject_.. are just visual reps. commit 785d89098de752b05e69ab46e0145f0a07a87128 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Apr 7 18:14:04 2016 +0200 FIX: QtObservedAtom: getAtomMolecule() -> getMoleculeIndex(). - changed QtInfoBox and QtObservedBond::getMoleculeIndex() which used it. commit 411269194c0e399da21c636ada2ea31c72975d31 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Apr 6 19:04:01 2016 +0200 QtObservedBond now simply gets both QtObservedAtoms on construction. - they must exist as QtObservedInstanceBoard is in the current update() loop. - and we don't need to take care of them and may throw them away when the bonf itself is removed. We don't need to care for anything else. commit e4b13a04aa3b6fa93fd0438be7cb89dd9ad312cc Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Mar 29 20:47:16 2016 +0200 getObserved...() checks whether id is still present. commit d48a1666332f282b0853f2214a842d9d2da6b67c Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Mar 23 11:02:43 2016 +0100 Removed partial specialization of ObservedValue_wCallback for index. - we don't need this anymore as ObservedValues now have a unique and permanent index, which we can bind right from the start. - adapted QtObservedAtom and QtObservedMolecule's initObservedValues(). commit 96f14ae4f021b1976486ad5658a68c30645c7467 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Mar 24 14:26:51 2016 +0100 Modified all GLMoleculeObjects and GLWorldScene to the new QtObservedBond. - GLWorldScene transmits bondInserted/bondRemoved similarly to those for the atoms to the molecule if aLready present and otherwise into the MissedStateMap. commit b4bd0ec170830621ec3bcc64a4a1a99403399bd9 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Mar 15 11:10:54 2016 +0100 Added QtObservedBond, managed by QtObservedInstanceBoard. - QtObservedBond is special because it observes not only a bond, but also two atoms and a molecule in total. - but the general idea is to rather have information duplicate, i.e. the left atom's position is also available via the QtObservedAtom. But in this way QtObservedBond does not depend on the QtObservedAtom being still or already present. commit 6af6a62fa039882142c48e7ac4a0e1d2c5364715 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Mar 24 14:13:31 2016 +0100 FIX: Removed GLMoleculeObject_molecule's molref. commit bf6245259c76b4be2e6085db24148e21e1844c8f Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Mar 23 10:56:51 2016 +0100 QtObservedMolecule also uses new index internally. commit ee3fb8349db0a97b7274dd3ae8a157fc0387a363 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Mar 22 12:58:35 2016 +0100 QtObservedAtom uses new index internally. - thus we don't have to jump through the loops with constructing prior an IndexGetter in initObservedValues(). commit 62a127cb29522511523a9fc2274cd27e608670b2 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Mar 23 10:58:26 2016 +0100 FIX: QtObservedMolecule::initObservedValues was still static. commit 4690a7201ee4bd9d43ddb96d1a3d9c79f986b917 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Mar 23 11:06:23 2016 +0100 Removed unneeded specialization ObservedValue_UpdateAtoms. commit 76c238dfdd440371633103e91a848b5dcc8838ee Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Mar 22 00:32:47 2016 +0100 Removed GLMoleculeObject_molecule::getPresentAtoms() and changed atomRemoved slot of GLMoleculeObject_molecule. - this required AtomsInSceneMap to use new Index. commit 1d9b6dd666010d66bb843c17134d6df49aa030df Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Mar 22 00:12:07 2016 +0100 FIX: Removed some unnecessary observer code from GLWorldView. commit f91ef6007a43260154696025a6213300e1067126 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Mar 21 23:36:39 2016 +0100 Changed slots of GLWorldScene and GLWorldView. commit 0a558d693706673fef514adf5851afe6aed5661e Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Mar 29 16:56:56 2016 +0200 MoleculeList discerns between internal and external name change. commit 3054f4a837e9cb89d591549c873572989e548c33 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Mar 21 22:13:43 2016 +0100 QtObserved...Observed now get index on ...Removed() signal. - Changed slots of QtElementList, QtMoleculeList, and QtMoleculeListView. This is not all of them, but they now all used ObservedValue_Index_t. commit 1a58ce8105d4937e5093f614ba56c6d4688852bc Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Mar 21 22:42:14 2016 +0100 Added convenience function to return current id for given index. - this is mainly for printing in asserts and logs. - required to convert IdtoIndex to bimap. - ...Observed wire through getIdtoIndex() function. commit 59eabc83f7f01a0f2797b83aea97182aa3c14b71 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Mar 21 21:42:05 2016 +0100 Introduced unique and permanent ObservedValue_Index_t. - this is currently the address of the observable which is not perfectly secure but might work for the moment. - QtObservedInstanceBoard uses the index internally and only has an additional map to serve instances on request for the their atomId_t, moleculeId_t, .... However, this id should nowhere else be used because it may change during the lifetime of the object. - this should prevent the hazzle with the possibly changing atomId_t, moleculeId_t, ... in all classes that work with QtObserved... instances. ----------------------------------------------------------------------- hooks/post-receive --