1 #ifndef __FUNCTIONALBLOCK_H__
\r
2 #define __FUNCTIONALBLOCK_H__
\r
8 #include "AbstractBlock.h"
\r
10 class ReferenceBlock;
\r
12 #include "Exception.h"
\r
16 using namespace std;
\r
20 - NEVER forget to call populate() after creating an instance of GraphBlock.
\r
23 class FunctionalBlock : public AbstractBlock {
\r
26 FunctionalBlock(GroupBlock* _parent, ReferenceBlock* _reference) throw(Exception);
\r
29 inline ReferenceBlock* getReference() { return reference; }
\r
34 bool isFunctionalBlock();
\r
35 bool isSourceBlock(); //! a source block has no parent
\r
39 void populate(); // create parameters and interface from reference block
\r
40 void parametersValidation(QList<AbstractBlock *> *checkedBlocks, QList<AbstractBlock*>* blocksToConfigure);
\r
42 QString getReferenceXmlFile();
\r
43 QString getReferenceHashMd5();
\r
46 ReferenceBlock* reference;
\r
50 #endif // __FUNCTIONALBLOCK_H__
\r