#ifndef LIBRARIES_WIREDBAS_COMMON_NODE_H_
#define LIBRARIES_WIREDBAS_COMMON_NODE_H_

#include "InstantiableNode.h"
#include "quantities/RealDelay.h"

namespace cosi {

namespace library {

namespace wiredbas {

class Node : public cosi::library::wiredbas::InstantiableNode {
public:
	Node();
	virtual ~Node();
	virtual RealDelay GetDelay(Vertex NodeId,
			cosi::commstruct::wiredbas::Implementation* pI, Vertex Src,
			Vertex Dest) = 0 ;
	virtual double GetDelayValue(Vertex NodeId,
			cosi::commstruct::wiredbas::Implementation* pI, Vertex Src,
			Vertex Dest) = 0;
	virtual double GetCost() =0 ;

};

}

}

}

#endif /*NODE_H_*/
