#ifndef ARCNETACTUATOR_H_
#define ARCNETACTUATOR_H_

#include "ArcnetNode.h"

namespace cosi {

namespace library {

namespace wiredbas {

class ArcnetActuator : public cosi::library::wiredbas::ArcnetNode {
public:
	ArcnetActuator();
	virtual ~ArcnetActuator();
	cosi::commstruct::wiredbas::PlatformInstance* GetPlatformInstance(int V,
			Position pP);
	cosi::commstruct::wiredbas::Implementation* GetImplementationInstance(
			int V, Position pP, ThreadSet pThreads, TransferTable pT);

	double GetCost();
	RealDelay GetDelay(Vertex NodeId,
				cosi::commstruct::wiredbas::Implementation* pI, Vertex Src,
				Vertex Dest) ;
	double GetDelayValue(Vertex NodeId,
				cosi::commstruct::wiredbas::Implementation* pI, Vertex Src,
				Vertex Dest);

	static std::string ComponentName;
	static std::string ComponentType;
};

}

}

}

#endif /*ARCNETACTUATOR_H_*/
