Helios++
Helios software for LiDAR simulations
DirectStringWriteStrategy.h
1 #pragma once
2 
3 #include <filems/write/strategies/WriteStrategy.h>
4 
5 #include <string>
6 #include <fstream>
7 #include <sstream>
8 
9 namespace helios { namespace filems{
10 
19 class DirectStringWriteStrategy : public WriteStrategy<std::string const &> {
20 protected:
21  // *** ATTRIBUTES *** //
22  // ******************** //
26  std::ofstream &ofs;
27 
28 public:
29  // *** CONSTRUCTION / DESTRUCTION *** //
30  // ************************************ //
35  DirectStringWriteStrategy(std::ofstream &ofs) : ofs(ofs) {}
36  virtual ~DirectStringWriteStrategy() {}
37 
38  // *** WRITE STRATEGY INTERFACE *** //
39  // ********************************* //
44  void write(std::string const & str) override{
45  ofs << str;
46  }
47 };
48 
49 }}
Concrete class specializing WriteStrategy to directly write strings to a file.
Definition: DirectStringWriteStrategy.h:19
DirectStringWriteStrategy(std::ofstream &ofs)
Default constructor for direct string write strategy.
Definition: DirectStringWriteStrategy.h:35
std::ofstream & ofs
The output file stream to do the writing.
Definition: DirectStringWriteStrategy.h:26
void write(std::string const &str) override
Write string to file.
Definition: DirectStringWriteStrategy.h:44
Interface that must be implemented by any class which supports write implementations for file writers...
Definition: WriteStrategy.h:14