Helios++
Helios software for LiDAR simulations
SimpleSyncFileFullWaveformWriter.h
1 #pragma once
2 
3 #include <filems/write/comps/SimpleSyncFileWriter.h>
4 #include <filems/write/strategies/DirectFullWaveformWriteStrategy.h>
5 
6 #include <vector>
7 #include <memory>
8 
9 namespace helios { namespace filems{
10 
11 using std::make_shared;
12 
23  public SimpleSyncFileWriter<FullWaveform const &>
24 {
25 
26 public:
27  // *** CONSTRUCTION / DESTRUCTION *** //
28  // ************************************ //
34  const std::string& path,
35  std::ios_base::openmode om = std::ios_base::app
36  ) :
38  {
39  this->writeStrategy = make_shared<DirectFullWaveformWriteStrategy>(
40  this->ofs
41  );
42  }
43  virtual ~SimpleSyncFileFullWaveformWriter() = default;
44 
45 
46 };
47 
48 }}
Class representing a full waveform.
Definition: FullWaveform.h:12
Concrete class specializing SimpleSyncFileWriter to write full waveform data directly to a file.
Definition: SimpleSyncFileFullWaveformWriter.h:24
SimpleSyncFileFullWaveformWriter(const std::string &path, std::ios_base::openmode om=std::ios_base::app)
Simple synchronous file full waveform writer constructor.
Definition: SimpleSyncFileFullWaveformWriter.h:33
Abstract specialization of SingleSyncFileWriter to write output directly to a file.
Definition: SimpleSyncFileWriter.h:23
std::ofstream ofs
Output file stream to be used by the simple synchronous file writer.
Definition: SimpleSyncFileWriter.h:31
std::string path
Path to file to be written.
Definition: SingleSyncFileWriter.h:28
std::shared_ptr< WriteStrategy< WriteArgs ... > > writeStrategy
The write strategy specifying how to write data to file.
Definition: SingleSyncFileWriter.h:36