IOLink  IOL_v1.1.0_release
Writer.h
1 #pragma once
2 
3 #include <iolink/IOLinkAPI.h>
4 #include <iolink/VariantDataValue.h>
5 
6 namespace iolink
7 {
8 
12 class IOLINK_INTERFACE_API Writer
13 {
14 public:
15  virtual ~Writer() = default;
16 
20  virtual void writeAll() = 0;
21 
25  virtual void writeInit() = 0;
26 
30  virtual void writeData() = 0;
31 
35  virtual void writeFinish() = 0;
36 
40  virtual std::string name() const = 0;
41 
45  virtual std::string version() const = 0;
46 
55  virtual void setOption(const std::string& parameter, std::shared_ptr<VariantDataValue> data) = 0;
56 };
57 
58 } // end namespace iolink