18#define DECLARE_CATALOG(classname) \
20 Mantid::Kernel::RegistrationHelper \
21 register_alg_##classname(((Mantid::API::CatalogFactory::Instance().subscribe<classname>(#classname)), 0)); \
27#include "MantidAPI/DllConfig.h"
The factory is a singleton that hands out shared pointers to the base Catalog class.
~CatalogFactoryImpl() override=default
Private Destructor.
CatalogFactoryImpl(const CatalogFactoryImpl &)=delete
CatalogFactoryImpl()=default
Private Constructor for singleton class.
std::map< std::string, std::shared_ptr< ICatalog > > m_createdCatalogs
Stores pointers to already created Catalog instances, with their name as the key.
The dynamic factory is a base dynamic factory for serving up objects in response to requests from oth...
Manage the lifetime of a class intended to be a singleton.
Mantid::Kernel::SingletonHolder< CatalogFactoryImpl > CatalogFactory
The specialisation of the SingletonHolder class that holds the CatalogFactory.
Helper class which provides the Collimation Length for SANS instruments.
Policy class controlling creation of the singleton Implementation classes should mark their default c...