#ifndef LINKPARAMETER_H_
#define LINKPARAMETER_H_

#include "core/Quantity.h"
#include "include/onchipcommunication/typedefs.h"

namespace cosi {

namespace quantity {

namespace onchipcommunication {

class LinkParameter : public cosi::Quantity {

public:

	LinkParameter();

	LinkParameter(cosi::library::onchipcommunication::Technology pTech);

	virtual ~LinkParameter();

	LinkParameter Get();

	void Set(LinkParameter pLp);

	void SetTechnology(cosi::library::onchipcommunication::Technology pTech) ;

	cosi::library::onchipcommunication::Technology GetTechnology() const ;

	bool operator ==(const LinkParameter &pP) const;

	bool operator <(const LinkParameter &pP) const;

	LinkParameter operator+(LinkParameter pT);
	LinkParameter operator-(LinkParameter pT);

	friend std::ostream
			& operator <<(std::ostream &pOs, const LinkParameter &pP);

	static std::string sQuantityType;
	static std::string sQuantityName;
private:
	cosi::library::onchipcommunication::Technology mTech;

};

}

}

}

#endif /*LINKPARAMTER_H_*/
