00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef INC_AMLReader_hpp_
00028 #define INC_AMLReader_hpp_ 1
00029
00030 #include <iostream>
00031 #include <fstream>
00032 #include <cstdlib>
00033
00034 #include "UAP/UAPUtilities.hpp"
00035 #include "UAP/BasicUtilities.hpp"
00036 #include "AML/SAX2Wrapper.hpp"
00037
00044 class AMLReader{
00045 public:
00046
00049 AMLReader();
00050
00053 ~AMLReader();
00054
00064 UAPNode* AMLFileToAMLRep (const std::string& file_name);
00065
00075 UAPNode* AMLRepToAMLFile (UAPNode* root_node,
00076 const std::string& file_name = "", bool one_file = false);
00077
00078 private:
00079
00080 PrintInfoStruct info_out;
00081 bool read_file (UAPNode* input_node, std::string file_name, FileStackList file_stack);
00082 bool aml_rep_to_aml_file (UAPNode* aml_rep, bool one_file,
00083 std::ofstream* aml_output, FileStackList file_stack, int indent = 0);
00084
00085 };
00086
00087 #endif