17#define DECLARE_LISTENER(classname) \
19 Mantid::Kernel::RegistrationHelper register_listener_##classname( \
20 ((Mantid::API::LiveListenerFactory::Instance().subscribe<classname>(#classname)), 0)); \
26#include "MantidAPI/DllConfig.h"
39 std::shared_ptr<ILiveListener>
create(
const std::string &instrumentName,
bool connect =
false,
41 const std::string &listenerConnectionName =
"")
const;
62 ILiveListener *createUnwrapped(
const std::string &className)
const override;
72EXTERN_MANTID_API
template class MANTID_API_DLL Kernel::SingletonHolder<Mantid::API::LiveListenerFactoryImpl>;
IAlgorithm is the interface implemented by the Algorithm base class.
ILiveListener is the interface implemented by classes which connect directly to instrument data acqui...
The factory for creating instances of ILiveListener implementations.
LiveListenerFactoryImpl()=default
Private constructor for singleton class.
~LiveListenerFactoryImpl() override=default
Private destructor.
LiveListenerFactoryImpl(const LiveListenerFactoryImpl &)=delete
The dynamic factory is a base dynamic factory for serving up objects in response to requests from oth...
A class that holds information about a LiveListener connection.
Manage the lifetime of a class intended to be a singleton.
std::unique_ptr< T > create(const P &parent, const IndexArg &indexArg, const HistArg &histArg)
This is the create() method that all the other create() methods call.
Helper class which provides the Collimation Length for SANS instruments.
Policy class controlling creation of the singleton Implementation classes should mark their default c...