From 0829d54d61b5428317a7f06df1debcdc1dc73ebd Mon Sep 17 00:00:00 2001
From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz>
Date: Fri, 5 Sep 2014 17:28:38 +0200
Subject: [PATCH] adeterminize copy DFA inputs

---
 adeterminize2/src/adeterminize.cpp | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/adeterminize2/src/adeterminize.cpp b/adeterminize2/src/adeterminize.cpp
index 144431885a..0a920ed23f 100644
--- a/adeterminize2/src/adeterminize.cpp
+++ b/adeterminize2/src/adeterminize.cpp
@@ -95,12 +95,22 @@ int main(int argc, char** argv) {
 
 	type = getLowerCaseType(type);
 
+	std::list<sax::Token> tokens;
+	sax::SaxParseInterface::parseStdin(tokens);
+
 	try {
 		if (type == TYPE_FSM) {
-			automaton::NFA nfa = alib::DataFactory::fromStdin<automaton::NFA>();
-			automaton::DFA dfa = determinize::NFADeterminizer::determinize(nfa);
-			alib::DataFactory::toStdout(dfa);
-			return 0;
+			std::string xmlMark = tokens.front( ).getData( );
+			if(xmlMark == "NFA") {
+				automaton::NFA nfa = alib::DataFactory::fromTokens<automaton::NFA>(tokens);
+				automaton::DFA dfa = determinize::NFADeterminizer::determinize(nfa);
+				alib::DataFactory::toStdout(dfa);
+				return 0;
+			} else if(xmlMark == "DFA") {
+				automaton::DFA automaton = alib::DataFactory::fromTokens<automaton::DFA>(tokens);
+				alib::DataFactory::toStdout(automaton);
+				return 0;
+			}
 		}
 
 /*		} else if (type == TYPE_IDPDA) {
-- 
GitLab