X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/blast.git/blobdiff_plain/1df76ccc8673a2760af17b88ebfba4bfd7f5c11d..dd3fe103df79a5a4c2962e2f05fec9a9ed58580d:/FunctionalBlock.cpp?ds=sidebyside diff --git a/FunctionalBlock.cpp b/FunctionalBlock.cpp index f547084..cb8ceba 100644 --- a/FunctionalBlock.cpp +++ b/FunctionalBlock.cpp @@ -46,25 +46,44 @@ void FunctionalBlock::populate() { BlockParameter* p; AbstractInterface* inter; + // create parameters from reference block QList lstParam = reference->getParameters(); for(i=0;iclone(); addParameter(p); } - QList lstInter = reference->getInterfaces(); - for(i=0;i lstRef = reference->getInterfaces(); + // store relation between functional and reference + QHash hashIface; + for(i=0;igetPurpose() == AbstractInterface::Control) { + funCtlIface = hashIface.value(refIface); + funDataIface = hashIface.value(refIface->getAssociatedIface()); + if (! funCtlIface->setAssociatedIface(funDataIface)) { + cerr << "Abnormal case when associating a control interface to data" << endl << "Aborting execution." << endl; + exit(1); + } + } + } }