#ifndef morpheo_tools_viewer_parser_h
#define morpheo_tools_viewer_parser_h

#include <qxml.h>
#include <qdom.h>
#include <iostream>
#include <list>
#include <iterator>

#include <qlist.h>
#include "Tools/Viewer/Bdd/include/BaseV.h"
#include "Tools/Viewer/Bdd/include/BaseP.h"
#include "Tools/Viewer/Bdd/include/Entity.h"
#include "Tools/Viewer/Bdd/include/Architecture.h"
#include "Tools/Viewer/Bdd/include/Component.h"
#include "Tools/Viewer/Bdd/include/Port.h"
#include "Tools/Viewer/Bdd/include/PortMap.h"



using namespace std;


namespace morpheo{
namespace tools{
namespace viewer{
namespace parser{     

class Parse
{
private:
  string s;
  string absolutePath;

protected:
  morpheo::tools::viewer::bdd::BaseV *base;
  morpheo::tools::viewer::bdd::BaseP *pos;
  morpheo::tools::viewer::bdd::Entity *ent;
  morpheo::tools::viewer::bdd::Architecture *arch;
  morpheo::tools::viewer::bdd::Component *ctemp;
  //  morpheo::tools::viewer::bdd::Param *param;



public:
  
  Parse(void);
  ~Parse(void);
  void parser_pos(QDomNode n);
  //void ParseParam(void);
  int open_file(string name);
  //void saveFile(string name);
  morpheo::tools::viewer::bdd::BaseV *getBaseV();

 
 //void refresh();
 


};//end class parse
};//end parser
};//end viewer
};//end tools
};//end morpheo


#endif
