12#include "MantidAPI/DllConfig.h"
17#include <Poco/AutoPtr.h>
52 : DataServiceNotification(
"",
std::shared_ptr<
API::
Workspace>()), m_wsnames(wsnames) {}
66 : DataServiceNotification(name,
obj) {}
79 std::shared_ptr<const WorkspaceGroup> getWorkspaceGroup()
const;
86 const std::string &illegalCharacters()
const;
88 void setIllegalCharacterList(
const std::string &);
90 const std::string isValid(
const std::string &name)
const;
93 void add(
const std::string &name,
const std::shared_ptr<API::Workspace> &
workspace)
override;
96 void addOrReplace(
const std::string &name,
const std::shared_ptr<API::Workspace> &
workspace)
override;
99 virtual void rename(
const std::string &oldName,
const std::string &newName);
101 virtual void remove(
const std::string &name);
110 template <
typename WSTYPE> std::shared_ptr<WSTYPE>
retrieveWS(
const std::string &name)
const {
121 std::vector<Workspace_sptr> retrieveWorkspaces(
const std::vector<std::string> &names,
122 bool unrollGroups =
false)
const;
126 void sortGroupByName(
const std::string &groupName);
127 void addToGroup(
const std::string &groupName,
const std::string &wsName);
128 void deepRemoveGroup(
const std::string &name);
129 void removeFromGroup(
const std::string &groupName,
const std::string &wsName);
133 std::map<std::string, Workspace_sptr> topLevelItems()
const;
134 void shutdown()
override;
138 void verifyName(
const std::string &name,
const std::shared_ptr<API::WorkspaceGroup> &
workspace);
158 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::AddNotification> &;
163 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::BeforeReplaceNotification> &;
167 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::AfterReplaceNotification> &;
171 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::PreDeleteNotification> &;
175 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::PostDeleteNotification> &;
179 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::ClearNotification> &;
183 const Poco::AutoPtr<Mantid::Kernel::DataService<Mantid::API::Workspace>::RenameNotification> &;
190 const Poco::AutoPtr<AnalysisDataServiceImpl::UnGroupingWorkspaceNotification> &;
IPeaksWorkspace_sptr workspace
double obj
the value of the quadratic function
GroupWorkspaces notification is send when a group is updated by adding or removing members.
GroupWorkspaces notification is send from GroupWorkspaces algorithm.
GroupWorkspacesNotification(const std::vector< std::string > &wsnames)
Constructor.
std::vector< std::string > m_wsnames
cache of ws names
const std::vector< std::string > & inputworkspacenames() const
returns the workspace names
UnGroupingWorkspace notification is sent from UnGroupWorkspace algorithm before the WorkspaceGroup is...
UnGroupingWorkspaceNotification(const std::string &name, const std::shared_ptr< Workspace > &obj)
Constructor.
The Analysis data service stores instances of the Workspace objects and anything that derives from te...
AnalysisDataServiceImpl(const AnalysisDataServiceImpl &)=delete
Private, unimplemented copy constructor.
std::string m_illegalChars
The string of illegal characters.
AnalysisDataServiceImpl & operator=(const AnalysisDataServiceImpl &)=delete
Private, unimplemented copy assignment operator.
std::shared_ptr< WSTYPE > retrieveWS(const std::string &name) const
Retrieve a workspace and cast it to the given WSTYPE.
~AnalysisDataServiceImpl() override=default
Private destructor.
Base Workspace Abstract Class.
AddNotification is sent after an new object is added to the data service.
AfterReplaceNotification is sent after an object is replaced in the addOrReplace() function.
BeforeReplaceNotification is sent before an object is replaced in the addOrReplace() function.
Clear notification is sent when the service is cleared.
PostDeleteNotification is sent after an object is deleted from the data service.
PreDeleteNotification is sent before an object is deleted from the data service.
Rename notification is sent when the rename method is called.
DataService stores instances of a given type.
Exception for when an item is not found in a collection.
Manage the lifetime of a class intended to be a singleton.
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::AfterReplaceNotification > & WorkspaceAfterReplaceNotification_ptr
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::ClearNotification > & ClearADSNotification_ptr
const Poco::AutoPtr< AnalysisDataServiceImpl::GroupUpdatedNotification > & GroupUpdatedNotification_ptr
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::PreDeleteNotification > & WorkspacePreDeleteNotification_ptr
const Poco::AutoPtr< AnalysisDataServiceImpl::GroupWorkspacesNotification > & WorkspacesGroupedNotification_ptr
const Poco::AutoPtr< AnalysisDataServiceImpl::UnGroupingWorkspaceNotification > & WorkspaceUnGroupingNotification_ptr
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::RenameNotification > & WorkspaceRenameNotification_ptr
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::AddNotification > & WorkspaceAddNotification_ptr
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::BeforeReplaceNotification > & WorkspaceBeforeReplaceNotification_ptr
const Poco::AutoPtr< Mantid::Kernel::DataService< Mantid::API::Workspace >::PostDeleteNotification > & WorkspacePostDeleteNotification_ptr
Helper class which provides the Collimation Length for SANS instruments.
Policy class controlling creation of the singleton Implementation classes should mark their default c...