A
lgorithmique
N
umérique
D
istribuée
Private GIT Repository
projects
/
blast.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
finished testbench generation
[blast.git]
/
ConnectedInterface.h
diff --git
a/ConnectedInterface.h
b/ConnectedInterface.h
index fc89e22c31a811d5e41b137dc0db85e8b67621da..e3dbfd3d21b6dfe8c3c79447cf1407b990cd6708 100644
(file)
--- a/
ConnectedInterface.h
+++ b/
ConnectedInterface.h
@@
-8,6
+8,8
@@
#include "AbstractInterface.h"
class ReferenceInterface;
#include "AbstractInterface.h"
class ReferenceInterface;
+#include "AbstractInputModifier.h"
+
#include "Exception.h"
#include "Exception.h"
@@
-23,27
+25,37
@@
class ConnectedInterface : public AbstractInterface {
public :
ConnectedInterface(AbstractBlock* _owner);
public :
ConnectedInterface(AbstractBlock* _owner);
- ConnectedInterface(AbstractBlock* _owner, const QString& _name, const QString& _type, const QString& _width, int _direction, int _purpose);
+ ConnectedInterface(AbstractBlock* _owner, const QString& _name, int _direction, int _purpose, const QString& _type, const QString& _width);
+ ~ConnectedInterface();
+
// getters
inline QList<ConnectedInterface*> getConnectedTo() { return connectedTo;}
// getters
inline QList<ConnectedInterface*> getConnectedTo() { return connectedTo;}
- inline ConnectedInterface* getConnectedFrom() { return connectedFrom;}
+ inline ConnectedInterface* getConnectedFrom() { return connectedFrom;}
+ inline QList<char>* getOutputPattern() { return outputPattern; }
+ inline AbstractInputModifier* getInputModifier() { return inputModifier; }
- // setters
+ // setters
+ void setOutputPattern(QList<char>* pattern);
+ inline void setInputModifier(AbstractInputModifier* mod) { inputModifier = mod; }
// testers
inline bool isConnectedTo(){return connectedTo.length() != 0;}
// testers
inline bool isConnectedTo(){return connectedTo.length() != 0;}
+ inline bool isConnectedToMany(){return connectedTo.length()>=2;}
inline bool isConnectedFrom(){return connectedFrom != NULL;}
inline bool isConnectedFrom(){return connectedFrom != NULL;}
- virtual bool canConnectTo(AbstractInterface* iface) = 0;
- virtual bool canConnectFrom(AbstractInterface* iface) = 0;
+ virtual bool canConnectTo(AbstractInterface* iface
, bool testClock
) = 0;
+ virtual bool canConnectFrom(AbstractInterface* iface
, bool testClock
) = 0;
// others
// others
- bool connectTo(ConnectedInterface* iface);
- bool connectFrom(ConnectedInterface* iface);
+ void resetOutputPattern() { outputPattern = NULL; }
+ void connectTo(ConnectedInterface* iface);
+ void disconnectTo(ConnectedInterface* iface);
+ //bool connectFrom(ConnectedInterface* iface);
ConnectedInterface* getConnectionToParentGroup();
ConnectedInterface* getConnectionFromParentGroup();
ConnectedInterface* getConnectionToParentGroup();
ConnectedInterface* getConnectionFromParentGroup();
+ void clearInputModifier();
virtual AbstractInterface *clone() = 0;
virtual AbstractInterface *clone() = 0;
- void removeConnectedTo(ConnectedInterface *inter);
+
//
void removeConnectedTo(ConnectedInterface *inter);
virtual void clearConnectedTo();
inline void clearConnectedFrom() { connectedFrom = NULL; }
virtual void clearConnectedTo();
inline void clearConnectedFrom() { connectedFrom = NULL; }
@@
-65,6
+77,10
@@
protected:
* this interface. connecteFrom references such an interface if it exists.
*/
ConnectedInterface* connectedFrom;
* this interface. connecteFrom references such an interface if it exists.
*/
ConnectedInterface* connectedFrom;
+ AbstractInputModifier* inputModifier; // if needed, represent a block taht does not appear on screen but taht will modify the stream.
+
+ // patterns
+ QList<char>* outputPattern; //! only usefull for output interfaces
};
};