CMakeWriter.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <memory>
4 #include <sstream>
5 #include <string>
6 
7 namespace armarx
8 {
9  class CMakeWriter;
10  using CmakeWriterPtr = std::shared_ptr<CMakeWriter>;
11 
13  {
14  public:
15  enum LineType
16  {
21  };
22 
23  CMakeWriter();
24 
25  // void startBlock();
26  void startBlock(const std::string& line);
27  // void endBlock();
28  void endBlock(const std::string& line);
29  void endBlockComment(std::string comment);
30  void line();
31  void line(const std::string& line);
32  void line(const std::string& line, int indentDelta);
33 
34  std::string getString();
36 
37  private:
38  void lineInternal(const std::string& line, int indent);
39 
40  private:
41  std::stringstream ss;
42  int indent;
43  std::string indentChars;
44  LineType lastLineType;
45  };
46 
47 } // namespace armarx
armarx::CMakeWriter::CMakeWriter
CMakeWriter()
Definition: CMakeWriter.cpp:5
armarx::CMakeWriter::getString
std::string getString()
Definition: CMakeWriter.cpp:56
armarx::CMakeWriter
Definition: CMakeWriter.h:12
armarx::CmakeWriterPtr
std::shared_ptr< CMakeWriter > CmakeWriterPtr
Definition: CMakeWriter.h:10
armarx::CMakeWriter::LineType
LineType
Definition: CMakeWriter.h:15
armarx::CMakeWriter::line
void line()
Definition: CMakeWriter.cpp:38
armarx::CMakeWriter::endBlock
void endBlock(const std::string &line)
Definition: CMakeWriter.cpp:22
armarx::CMakeWriter::Empty
@ Empty
Definition: CMakeWriter.h:20
armarx::CMakeWriter::Normal
@ Normal
Definition: CMakeWriter.h:19
armarx::CMakeWriter::endBlockComment
void endBlockComment(std::string comment)
Definition: CMakeWriter.cpp:30
armarx::CMakeWriter::EndBlock
@ EndBlock
Definition: CMakeWriter.h:18
armarx::CMakeWriter::getLastLineType
LineType getLastLineType()
Definition: CMakeWriter.cpp:62
armarx::CMakeWriter::StartBlock
@ StartBlock
Definition: CMakeWriter.h:17
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:27
armarx::CMakeWriter::startBlock
void startBlock(const std::string &line)
Definition: CMakeWriter.cpp:13