/**
 * \file Interface.h
 * \date 17.02.2002
 *
 * Interface for the Interface class
 */

#ifndef INTERFACES_INTERFACE_H
#define INTERFACES_INTERFACE_H

#include "Common/Protocol/CharString.h"

/**
 * \class Interface
 * \author Marek Lehuta
 * \brief Basic interface class
 * 
 * Every interface in the system is derived from Interface
 */

class Interface
{
public:
	// Construction and destruction
	Interface(const char* pStrName, const char* pStrVer)
		: m_strName(pStrName), m_strVer(pStrVer) {}
	Interface(const CharString& strName, const CharString& strVer)
		: m_strName(strName), m_strVer(strVer) {}
	virtual ~Interface() {}

	
	// Interface functions
	CharString GetIName() const { return m_strName; }
	CharString GetIVer() const { return m_strVer; }

protected:

private:
	CharString m_strName;
	CharString m_strVer;

};

#endif // INTERFACES_INTERFACE_H
