+ void MagicBox::bbSetStatusAndPropagate(bbtk::BlackBoxInputConnector* c,
+ bbtk::IOStatus s)
+ {
+ bbtkDebugMessageInc("change",5,
+ "=> MagicBox::bbSetStatusAndPropagate(input,"
+ <<GetIOStatusString(s)<<") ["
+ <<bbGetFullName()<<"]"<<std::endl);
+ if (mCanSet)
+ {
+ if (c->IsConnected())
+ {
+ std::string do_input = c->GetConnection()->GetBlackBoxToInput();
+ c->GetConnection()->TransferData();
+ bbSetOutputOut( bbGetInput(do_input) );
+ }
+ mCanSet = false;
+ }
+ BlackBox::bbSetStatusAndPropagate(c,s);
+ }
+
+ void MagicBox::DoProcess()
+ {
+ mCanSet = true;
+ }
+