// testers
bool isGroupBlock();
+ bool isTopGroupBlock();
inline bool isTop() { return topGroup; }
// others
// public attributes
static int counter;
-private:
+
+private:
+ // patterns
+ /*!
+ * \brief initInputPattern
+ * Since input GroupInterface are just tunnels to input interfaces of inner blocks, they must
+ * have an output pattern that can be provided to inner interfaces. That outpu pattern is just
+ * found by taking the output pattern of the connectedFrom interface.
+ */
+ void initInputPattern();
+ bool computeOutputPattern(int nbExec = -1);
+
bool topGroup;
QList<AbstractBlock*> blocks; // contains instances of FunctionalBlock or GroupBlock that are children of this group