Mantid
Loading...
Searching...
No Matches
ICatalogInfoService.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2010 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
9#include "MantidAPI/DllConfig.h"
11
12namespace Mantid {
13namespace API {
23public:
24 // Virtual destructor
25 virtual ~ICatalogInfoService() = default;
27 virtual const std::string getFileLocation(const long long &) = 0;
29 virtual const std::string getDownloadURL(const long long &) = 0;
31 virtual const std::string getUploadURL(const std::string &, const std::string &, const std::string &) = 0;
35};
36
37using ICatalogInfoService_sptr = std::shared_ptr<ICatalogInfoService>;
38using ICatalogInfoService_const_sptr = std::shared_ptr<const ICatalogInfoService>;
39} // namespace API
40} // namespace Mantid
This class is responsible for interfacing with the Information Data Service (IDS) to upload and downl...
virtual const std::string getFileLocation(const long long &)=0
Obtain the datafile location string from the archives.
virtual const std::string getDownloadURL(const long long &)=0
Obtain url to download a file from.
virtual const std::string getUploadURL(const std::string &, const std::string &, const std::string &)=0
Obtain the url to upload a file to.
virtual ITableWorkspace_sptr getPublishInvestigations()=0
Obtains the investigations that the user can publish to and saves related information to a workspace.
virtual ~ICatalogInfoService()=default
std::shared_ptr< const ICatalogInfoService > ICatalogInfoService_const_sptr
std::shared_ptr< ITableWorkspace > ITableWorkspace_sptr
shared pointer to Mantid::API::ITableWorkspace
std::shared_ptr< ICatalogInfoService > ICatalogInfoService_sptr
Helper class which provides the Collimation Length for SANS instruments.