}
//=========================================================================
+ void GBlackBoxModel::setInicPoint(double& x, double& y, double& z)
+ {
+ GObjectModel::setInicPoint(x,y,z);
+
+ double xFin=x+BOX_WIDTH,yFin=y-BOX_HEIGHT;
+ setFinalPoint(xFin,yFin,z);
+ }
+
+ //=========================================================================
+
void GBlackBoxModel::addInputPort(GPortModel *inputport)
{
_inputs.push_back(inputport);
//=========================================================================
+ int GBlackBoxModel::getNumInputPorts()
+ {
+ return _inputs.size();
+ }
+
+ //=========================================================================
+
+ int GBlackBoxModel::getNumOutputPorts()
+ {
+ return _outputs.size();
+ }
+
+ //=========================================================================
+
+ void GBlackBoxModel::move(double xx,double yy,double zz)
+ {
+ setInicPoint(xx,yy,zz);
+
+ //Refresh inputs position
+ int i;
+ for(i=0;i<_inputs.size();i++)
+ {
+ _inputs[i]->updatePortPosition(i);
+ }
+
+ //Refresh outputs position
+ for(i=0;i<_outputs.size();i++)
+ {
+ _outputs[i]->updatePortPosition(i);
+ }
+
+ }
+
+ //=========================================================================
+
+ GPortModel* GBlackBoxModel::getStartOutputPort()
+ {
+ GPortModel* temp = NULL;
+
+ for(int i=0; i<_inputs.size() && temp == NULL;i++)
+ {
+ if(_outputs[i]->getState() == CREATING_CONTOUR)
+ {
+ temp = _outputs[i];
+ }
+ }
+
+ return temp;
+ }
+
} // EO namespace bbtk
// EOF