Ticket #32 (closed: fixed)

Opened 13 years ago

Last modified 5 years ago

Refactor an ObjectFactory out from the various factories

Reported by: Nick Draper Owned by: Russell Taylor
Priority: major Milestone: Iteration 2
Component: Keywords:
Cc: Blocked By:
Blocking: Tester:

Description

We currently have several Factories within Mantid (and this may grow further).

  • AlgorithmFactory (serves instances)
  • WorkspaceFactory (serves instances)
  • ServiceFactory (serves singletons)

The common factors of these algorithms should be refactored out to an object factory that the specific factories inherit from.

Attachments

DynamicFactory.h (4.1 KB) - added by Nick Draper 13 years ago.
DynamicFactory header
DynamicFactory.cpp (38 bytes) - added by Nick Draper 13 years ago.
DynamicFactory body
Instantiator.h (2.2 KB) - added by Nick Draper 13 years ago.
instantiator code

Change History

Changed 13 years ago by Nick Draper

DynamicFactory header

Changed 13 years ago by Nick Draper

DynamicFactory body

comment:1 Changed 13 years ago by Nick Draper

  • Owner set to Russell Taylor

Added sample code for the base factory class

Changed 13 years ago by Nick Draper

instantiator code

comment:2 Changed 13 years ago by Russell Taylor

  • Status changed from new to assigned

comment:3 Changed 13 years ago by Russell Taylor

  • Status changed from assigned to closed
  • Resolution set to fixed

(In [122]) Now have an abstract object factory. The Algorithm and Workspace factories inherit from this. It contains the common implementation. Other changes are for compatability with this. Closes #32.

comment:4 Changed 13 years ago by Russell Taylor

  • Status changed from closed to reopened
  • Resolution fixed deleted

Still need to add automatic registration...

comment:5 Changed 13 years ago by Russell Taylor

  • Status changed from reopened to closed
  • Resolution set to fixed

(In [159]) Implemented automatic registration of algorithms and workspaces. Will require compilation as a shared library - macro added to add the required symbols ( declspec(dllexport) ) to all class declarations for Windows. Closes #32.

comment:6 Changed 13 years ago by Russell Taylor

  • Status changed from closed to reopened
  • Resolution fixed deleted

comment:7 Changed 13 years ago by Russell Taylor

(In [164]) Exporting further symbols in so that the tests compile in Windows. Re #32.

comment:8 Changed 13 years ago by Russell Taylor

(In [166]) Fixed my last changes so they work in GCC as well. Re #32.

comment:9 Changed 13 years ago by Russell Taylor

  • Status changed from reopened to closed
  • Resolution set to fixed

comment:10 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 880

Note: See TracTickets for help on using tickets.