cppDataPipeline 0.3.0
C++ Implementation of the FAIR Data Pipeline API
Loading...
Searching...
No Matches
fdp.hxx
1#ifndef __FDP__
2#define __FDP__
3
4#include "utilities/logging.hxx"
5
6namespace FairDataPipeline {
13
14 public:
15 typedef std::shared_ptr< DataPipeline > sptr;
23 static sptr construct(
24 const std::string &config_file_path,
25 const std::string &script_file_path,
26 std::string token = "" );
27
28
34
35 //DataPipeline(DataPipeline &&rhs) noexcept;
36 //DataPipeline &operator=(DataPipeline &&rhs) noexcept;
37
38
46 std::string link_read(std::string &data_product);
47
55 std::string link_write(std::string &data_product);
56
63 void finalise();
64
65 private:
66 explicit DataPipeline(
67 const std::string &config_file_path,
68 const std::string &script_file_path,
69 std::string token = ""
70 );
71
72 DataPipeline(const DataPipeline &rhs) = delete;
73
74 DataPipeline &operator=(const DataPipeline &rhs) = delete;
75
76 class impl;
77
78 std::shared_ptr< DataPipeline::impl > pimpl_;
79 };
80}; // namespace FairDataPipeline
81#endif
DataPipeline Class: A PIMPL Class for interacting the the FAIR Data Pipeline.
Definition: fdp.hxx:12
static sptr construct(const std::string &config_file_path, const std::string &script_file_path, std::string token="")
Construct a new Data Pipeline (PIMPL)
Definition: fdp.cxx:153
void finalise()
Finalise the pipeline Record all data products and meta data to the registry update the code run with...
Definition: fdp.cxx:183
~DataPipeline()
Destroy the Data Pipeline object.
std::string link_write(std::string &data_product)
Return a path to be used for a given data product whilst recording it's meta data.
Definition: fdp.cxx:179
std::string link_read(std::string &data_product)
Return a path to a given data product Whilst recording it's meta data for the code run.
Definition: fdp.cxx:175