1 #ifndef __ABSTRACTINPUTMODIFIER_H__
\r
2 #define __ABSTRACTINPUTMODIFIER_H__
\r
8 #include "Exception.h"
\r
10 class ConnectedInterface;
\r
12 using namespace std;
\r
15 class AbstractInputModifier {
\r
19 enum ModifierVHDLContext {AnyContext = 0, Entity = 1, Component = 2, Architecture = 3 };
\r
20 enum ModifierVHDLFlags { NoComma = 1 };
\r
22 AbstractInputModifier(ConnectedInterface* _associatedIface);
\r
23 virtual ~AbstractInputModifier();
\r
26 virtual QString getTypeStr() = 0;
\r
27 virtual QString getParametersStr() = 0;
\r
32 virtual bool isDelay();
\r
33 virtual bool isComplexDelay();
\r
34 virtual bool isFIFO();
\r
35 virtual bool isDecimator();
\r
38 virtual QList<char>* getModifiedInput(QList<char>* input) = 0;
\r
39 virtual QString toVHDL(int context, int flags) throw(Exception) = 0;
\r
42 QList<char>* pattern; // the pattern modified by this
\r
43 ConnectedInterface* associatedIface;
\r
46 #endif // __ABSTRACTINPUTMODIFIER_H__
\r