DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
metadata_abstract.hpp
Go to the documentation of this file.
1
9#ifndef SNBMODULES_INCLUDE_SNBMODULES_METADATA_ABSTRACT_HPP_
10#define SNBMODULES_INCLUDE_SNBMODULES_METADATA_ABSTRACT_HPP_
11
12// errors handling
13#include "logging/Logging.hpp"
15
16// json
17#include "appfwk/cmd/Nljs.hpp"
18
19#include <filesystem>
20#include <fstream>
21#include <iostream>
22#include <string>
23
24namespace dunedaq::snbmodules {
27{
28public:
29 virtual ~MetadataAbstract() = default;
30
33 virtual std::string export_to_string() = 0;
34
36 virtual void from_string(const std::string& s) = 0;
37
40 virtual void generate_metadata_file(std::filesystem::path dest) = 0;
41
44 virtual void load_metadata_from_meta_file(std::filesystem::path src) = 0;
45
47 virtual bool operator==(MetadataAbstract const& other) const = 0;
48
50 virtual bool operator<(MetadataAbstract const& other) const = 0;
51};
52} // namespace dunedaq::snbmodules
53#endif // SNBMODULES_INCLUDE_SNBMODULES_METADATA_ABSTRACT_HPP_
Abstract class for metadata classes, they must be able to generate and load metadata files.
virtual void load_metadata_from_meta_file(std::filesystem::path src)=0
Load metadata file from src.
virtual bool operator<(MetadataAbstract const &other) const =0
Operator <.
virtual void generate_metadata_file(std::filesystem::path dest)=0
Generaete metadata file to dest.
virtual void from_string(const std::string &s)=0
Import metadata from string (json format)
virtual bool operator==(MetadataAbstract const &other) const =0
Operator ==.
virtual std::string export_to_string()=0
Export metadata to string (json format)