1 #ifndef MHO_ControlFileParser_HH__
2 #define MHO_ControlFileParser_HH__
42 void PassSetString(std::string set_string) { fSetString = set_string; };
83 void RemoveComments();
107 void FormStatements();
122 void SplitSetString(
const std::string& set_string, std::string& prepend, std::string&
append);
132 void FindAndReplace(
const std::string& find_str,
const std::string& regex_str,
const std::string& replace_str,
135 std::string fSetString;
136 std::string fControlFileName;
139 std::string fWhitespace;
140 std::string fCommentFlag;
144 std::list< MHO_ControlLine > fLines;
145 using line_itr = std::list< MHO_ControlLine >::iterator;
148 std::string fFormatDirectory;
149 std::string fControlVersion;
150 std::vector< std::string > fKeywordNames;
155 std::vector< MHO_Token > fFileTokens;
156 std::vector< std::size_t > fKeywordLocations;
157 std::vector< MHO_ControlStatement > fStatements;
162 std::string fProcessedControlFileText;
163 std::string fLegacyProcessedControlFileText;
164 std::vector< MHO_Token > fLegacyFileTokens;
Class MHO_ControlElementParser.
Definition: MHO_ControlElementParser.hh:33
Class MHO_ControlFileParser.
Definition: MHO_ControlFileParser.hh:32
virtual ~MHO_ControlFileParser()
Definition: MHO_ControlFileParser.cc:40
void PassSetString(std::string set_string)
Sets the global set_string (control statement) variable.
Definition: MHO_ControlFileParser.hh:42
mho_json ParseControl()
Parses control file and constructs JSON object representing control objects.
Definition: MHO_ControlFileParser.cc:47
std::string GetLegacyProcessedControlFileText() const
Getter for legacy processed control file text (just the control file tokens without set-string additi...
Definition: MHO_ControlFileParser.hh:71
void SetControlFile(std::string filename)
Setter for control file.
Definition: MHO_ControlFileParser.cc:42
MHO_ControlFileParser()
Definition: MHO_ControlFileParser.cc:29
std::string GetProcessedControlFileText() const
Getter for processed control file text (i.e. all of the tokens that make it into the control flow)
Definition: MHO_ControlFileParser.hh:63
Class MHO_Tokenizer.
Definition: MHO_Tokenizer.hh:24
Definition: MHO_ChannelLabeler.hh:17
#define append(cc)
Definition: read_control_file.c:35