Helios++
Helios software for LiDAR simulations
SimpleSyncFileTrajectoryWriter.h
1 #pragma once
2 
3 #include <filems/write/comps/SimpleSyncFileTrajectoryWriter.h>
4 #include <filems/write/strategies/DirectTrajectoryWriteStrategy.h>
5 
6 #include <memory>
7 
8 namespace helios { namespace filems{
9 
10 using std::make_shared;
11 
23  public SimpleSyncFileWriter<Trajectory 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<DirectTrajectoryWriteStrategy>(
40  this->ofs
41  );
42  }
43  virtual ~SimpleSyncFileTrajectoryWriter() = default;
44 };
45 
46 
47 }}
Class representing a concrete trajectory definition.
Definition: Trajectory.h:10
Concrete class specializing SimpleSyncFileWriter to write trajectory directly to a file.
Definition: SimpleSyncFileTrajectoryWriter.h:24
SimpleSyncFileTrajectoryWriter(const std::string &path, std::ios_base::openmode om=std::ios_base::app)
Simple synchronous file trajectory writer constructor.
Definition: SimpleSyncFileTrajectoryWriter.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