Ian Jauslin
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse_file.h')
-rw-r--r--src/parse_file.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/parse_file.h b/src/parse_file.h
new file mode 100644
index 0000000..b51103a
--- /dev/null
+++ b/src/parse_file.h
@@ -0,0 +1,56 @@
+/*
+Copyright 2015 Ian Jauslin
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+/*
+Parse the input file
+*/
+
+#ifndef PARSE_FILE_H
+#define PARSE_FILE_H
+
+#include "types.h"
+
+// parse fields list
+int parse_input_fields(Char_Array str_fields, Fields_Table* fields);
+
+// parse symbols list
+int parse_input_symbols(Char_Array str_symbols, Fields_Table* fields);
+
+// parse groups of independent fields
+int parse_input_groups(Char_Array str_groups, Groups* groups);
+
+// parse identities between fields
+int parse_input_identities(Char_Array str_identities, Fields_Table* fields);
+
+// parse propagator
+int parse_input_propagator(Char_Array str_propagator, Polynomial_Matrix* propagator, Fields_Table fields);
+
+// parse input polynomial
+int parse_input_polynomial(Char_Array str_polynomial, Polynomial* output, Fields_Table fields);
+
+// parse id table
+int parse_input_id_table(Char_Array str_idtable, Id_Table* idtable, Fields_Table fields);
+
+// parse a list of labels
+int parse_labels(Char_Array str_labels, Labels* labels);
+
+// parse the initial condition
+int parse_init_cd(Char_Array init_cd, RCC* init);
+
+// set indices and length of init
+int prepare_init(int* indices, int length, RCC* init);
+
+#endif