#ifndef WIREDBASPLATFORMINSTANCE_H_
#define WIREDBASPLATFORMINSTANCE_H_

#include <string>
#include "quantities/Name.h"
#include "quantities/Type.h"
#include "quantities/Position.h"
#include "quantities/Ports.h"
#include "quantities/WiringPath.h"
#include "label/Label.hpp"
#include "core/CommunicationStructure.hpp"

namespace cosi
{
namespace commstruct {

namespace wiredbas {

typedef Label_5<Name,Type,Position,Ports,WiringPath> PlatformLabel;

class PlatformInstance : public CommunicationStructure< PlatformLabel >
{
public:
	PlatformInstance(std::string pName);
	~PlatformInstance();
	PlatformInstance operator+(PlatformInstance pC) ;
};

}

}
}

#endif /*WIREDBASPLATFORMINSTANCE_H_*/
