Mantid
Loading...
Searching...
No Matches
IJournal.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2020 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"
10#include <map>
11#include <string>
12#include <vector>
13
14namespace Mantid {
15namespace API {
19class MANTID_API_DLL IJournal {
20public:
21 using RunData = std::map<std::string, std::string>;
22
23 IJournal() = default;
24 virtual ~IJournal();
25 IJournal(IJournal const &rhs) = delete;
27 IJournal const &operator=(IJournal const &rhs) = delete;
29
31 virtual std::vector<std::string> getCycleNames() = 0;
33 virtual std::vector<RunData> getRuns(std::vector<std::string> const &valuesToLookup = {},
34 RunData const &filters = RunData()) = 0;
35};
36} // namespace API
37} // namespace Mantid
const std::vector< double > & rhs
IJournal: Interface for classes that fetch information from journal files.
Definition: IJournal.h:19
IJournal(IJournal const &rhs)=delete
IJournal(IJournal &&rhs)
IJournal const & operator=(IJournal const &rhs)=delete
std::map< std::string, std::string > RunData
Definition: IJournal.h:21
virtual std::vector< RunData > getRuns(std::vector< std::string > const &valuesToLookup={}, RunData const &filters=RunData())=0
Get data for runs that match the given filters.
virtual std::vector< std::string > getCycleNames()=0
Get the list of cycle names.
IJournal & operator=(IJournal &&rhs)
Helper class which provides the Collimation Length for SANS instruments.