#ifndef QTPL_PARSER_H_
#define QTPL_PARSER_H_

#include <qstring.h> 
#include <vector> 

using namespace std;

class QtplParserFile;

class QtplParserVar 
{

public:
   QtplParserVar(QString varName, QString io, QString type);
   bool QtplGetParserVar(QString &sbuf);
   QString ioType;
   QString name;
   QString public_name;
   QString description;
   QString default_value;
   QString var_type;
   QtplParserFile *parent;
   
protected:

private:
   
};

class QtplParserFile
{

public:
   QtplParserFile(QString fileNameAndPath);
   
   QString contentBuf;  // buffer for whole qtpl file
   bool openedOK;
   QString function_name;
   vector<QtplParserVar *> qtpl_vars;
   QString entry_name;
   QString object_file;
   QString description;
   QString public_name;

protected:

private:
   
};


void stripSpace(QString &sbuf);
QString getWord(QString &sbuf);
QString getToken(QString &sbuf, QChar from, QChar to);

# endif
