#ifndef _TCL_INTVAR_H_
#define _TCL_INTVAR_H_

#include "tcl_var.h"

/**
 * \brief Represens shell variable of integer type
 *
 * \date 01-11-2006
 *
 * \author Ondrej Svejdar
 *
 * \todo 
 *
 * \bug 
 *
 */
class TclIntVar:public TclVar
{
protected:
	void doSerialize(TiXmlElement& element) const;
	void doDeserialize(const TiXmlElement& element);
public:
	static TXmlObject* newObject()
	{
		return new TclIntVar(TclInterp::defaultInterp);
	}

	static const char* type;
	const char* getType() const;
	
	/**
	 * \param interp interpret
	 */
	TclIntVar(Ptr<TclInterp>& interp);
	
	/**
	 * \brief Sets variable value
	 * \param value value
	 */
	void set(int value);
	
	
	/**
	 * \brief Gets variable value
	 * \return value
	 */
	int get() const;
};

#endif/*_TCL_INTVAR_H_*/
