You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The conclusion of a discussion about the growing number of factories in MantidGeometry was that this may lead to longer loading times when Mantid is launched, especially if registering objects requires a considerable amount of work.
In the case of BraggScattererFactory there are only two registered classes and registering them does not require doing much (it's using Kernel::DynamicFactory).
For PointGroup, the number of registered objects is small (13) and is ultimately limited to 32. Additionally, PointGroup may change in the not so far future (derive it from the Group-hierarchy, like SpaceGroup).
SpaceGroupFactory is an issue, because there are hundreds of possible space groups that can be registered and currently a prototype is created when the class is registered - this is computationally expensive in high symmetry cases.
I want to change the way space groups are subscribed to the factory, postponing the creation of the prototype until a concrete group is requested. The first creation of a space group will then be slower compared to now, but a lot of potentially unnecessary work (if space groups are not used) is avoided on launching.
This ticket is blocks :
TRAC10344The conclusion of a discussion about the growing number of factories in MantidGeometry was that this may lead to longer loading times when Mantid is launched, especially if registering objects requires a considerable amount of work.
I want to change the way space groups are subscribed to the factory, postponing the creation of the prototype until a concrete group is requested. The first creation of a space group will then be slower compared to now, but a lot of potentially unnecessary work (if space groups are not used) is avoided on launching.
I would like to do this before http://trac.mantidproject.org/mantid/ticket/10344, where I plan to add many space groups.
The text was updated successfully, but these errors were encountered: