00001
00002
00003
00004 #if 0
00005 #include <iostream>
00006 #include <fstream>
00007 #include "torc/physical/XdlImporter.hpp"
00008 #include "torc/physical/XdlExporter.hpp"
00009
00010 int xdlmain(int argc, char *argv[]);
00011 int xdlmain(int argc, char *argv[])
00012 {
00013 torc::physical::XdlImporter importer;
00014 bool readfile = false;
00015
00016 for(int ai = 1; ai < argc; ++ai)
00017 {
00018 if (argv[ai] == std::string ("-p")) {
00019 importer.mTraceParsing = true;
00020 }
00021 else if (argv[ai] == std::string ("-s")) {
00022 importer.mTraceScanning = true;
00023 }
00024 else
00025 {
00026
00027
00028 std::fstream infile(argv[ai]);
00029 if (!infile.good())
00030 {
00031 std::cerr << "Could not open file: " << argv[ai] << std::endl;
00032 return 0;
00033 }
00034
00035 bool result = importer(infile, argv[ai]);
00036 if (result)
00037 {
00038 std::cout << "Successfully parsed \"" << argv[ai] << "\"." << std::endl;
00039 torc::physical::XdlExporter exporter(std::cout);
00040 exporter(importer.getDesignPtr());
00041 }
00042 else
00043 {
00044 std::cout << "Failed to parse \"" << argv[ai] << "\"." << std::endl;
00045 }
00046
00047 readfile = true;
00048 }
00049 }
00050
00051 if (readfile) return 0;
00052
00053 std::cout << "Reading expressions from stdin" << std::endl;
00054
00055 std::string line;
00056 while( std::cout << "input: " &&
00057 std::getline(std::cin, line) &&
00058 !line.empty() )
00059 {
00060 bool result = importer(line, "input");
00061
00062 if (result)
00063 {
00064 std::cout << "Successfully parsed stdin" << std::endl;
00065 return 0;
00066 }
00067 }
00068
00069 return -1;
00070 }
00071 #endif