AbstractNode *NodeFactory::createAdd()
{
	AbstractNode *an = new AbstractNode();
	Data *tmp = new Operator();

	tmp->setOperator('+');
	tmp->setPriority(1);
	an->setData(tmp);
	return an;
}
AbstractNode *NodeFactory::createOpenBracket()
{
	AbstractNode *an = new AbstractNode();
	Data *tmp = new Operator();

	tmp->setOperator('(');
	tmp->setPriority(3);
	an->setData(tmp);
	return an;
}
AbstractNode *NodeFactory::createOperand(std::string &token)
{
	AbstractNode *an = new AbstractNode();
	Data *tmp = new Operand();

	tmp->setOperandValue(atof(token.c_str()));
	tmp->setOperand(token);
	tmp->setPriority(4);
	an->setData(tmp);
	return an;
}