#include "Exception.h"
class Exception;
+
using namespace std;
using namespace Qt;
class GroupInterface : public ConnectedInterface {
public :
- GroupInterface(AbstractBlock* _owner, const QString& _name, int _direction, int _level = AbstractInterface::Basic) throw (Exception);
+ GroupInterface(AbstractBlock* _owner, const QString& _name, int _direction, int _purpose) throw (Exception);
// getters
-
+ int getWidth();
+ int getClockDomain() throw(Exception); // determine at which freq. is synchronized iface
// setters
// testers
bool isGroupInterface();
- bool canConnectTo(AbstractInterface* iface);
- bool canConnectFrom(AbstractInterface* iface);
+ bool canConnectTo(AbstractInterface* iface, bool testClock);
+ bool canConnectFrom(AbstractInterface* iface, bool testClock);
// others
AbstractInterface *clone();
+ QList<ConnectedInterface *> getForwardFunctionalInterfaces(GroupInterface* groupIface);
+
void connectionsValidation(QStack<AbstractInterface *> *interfacetoValidate, QList<AbstractInterface *> *validatedInterfaces) throw(Exception);
};