Merge branch 'devel_anabatic' of ssh://bop-t/users/largo2/git/coriolis into devel_anabatic

This commit is contained in:
Jean-Paul Chaput 2017-11-03 00:07:49 +01:00
commit 98061ba1a3
2 changed files with 17 additions and 16 deletions

View File

@ -506,11 +506,12 @@ namespace Anabatic {
cdebug_log(112,0) << "Case horizontal: " << isiSet() << endl; cdebug_log(112,0) << "Case horizontal: " << isiSet() << endl;
GCell* gprev = getGPrev(Vertex::From2Mode); GCell* gprev = getGPrev(Vertex::From2Mode);
intervfrom = getIntervFrom(From2Mode); intervfrom = getIntervFrom(From2Mode);
Vertex* prev = gprev->getObserver<Vertex>(GCell::Observable::Vertex); Vertex* prev = NULL;
if (gprev) prev = gprev->getObserver<Vertex>(GCell::Observable::Vertex);
cdebug_log(112,0) << "PREV: " << prev << " "; cdebug_log(112,0) << "PREV: " << prev << " ";
intervfrom.print(); intervfrom.print();
if (isiSet()){ if (isiSet()||(prev == NULL)){
cdebug_log(112,0) << "isiSet: "; cdebug_log(112,0) << "isiSet: ";
printInterv(); printInterv();
y = getIAxis(); y = getIAxis();
@ -580,11 +581,12 @@ namespace Anabatic {
//GCell* gprev = NULL; //GCell* gprev = NULL;
GCell* gprev = getGPrev(Vertex::From2Mode); GCell* gprev = getGPrev(Vertex::From2Mode);
intervfrom = getIntervFrom(From2Mode); intervfrom = getIntervFrom(From2Mode);
Vertex* prev = gprev->getObserver<Vertex>(GCell::Observable::Vertex); Vertex* prev = NULL;
if (gprev) prev = gprev->getObserver<Vertex>(GCell::Observable::Vertex);
cdebug_log(112,0) << "PREV: " << prev << " "; cdebug_log(112,0) << "PREV: " << prev << " ";
intervfrom.print(); intervfrom.print();
if (isiSet()){ if (isiSet()||(prev == NULL)){
cdebug_log(112,0) << "isiSet: "; cdebug_log(112,0) << "isiSet: ";
printInterv(); printInterv();
x = getIAxis(); x = getIAxis();
@ -2387,7 +2389,7 @@ namespace Anabatic {
, targetSym , targetSym
, _anabatic->getConfiguration()->getGHorizontalLayer() , _anabatic->getConfiguration()->getGHorizontalLayer()
, axis , axis
, state->getWPitch()*Session::getPitch(Hurricane::DataBase::getDB()->getTechnology()->getLayer("metal2")) , state->getWPitch()*Session::getPitch(Hurricane::DataBase::getDB()->getTechnology()->getLayer("METAL2"))
); );
cdebug_log(112,0) << "|| " << segment2 << endl; cdebug_log(112,0) << "|| " << segment2 << endl;
} else if (v) { } else if (v) {
@ -2428,7 +2430,7 @@ namespace Anabatic {
, targetSym , targetSym
, _anabatic->getConfiguration()->getGVerticalLayer() , _anabatic->getConfiguration()->getGVerticalLayer()
, axis , axis
, state->getWPitch()*Session::getPitch(Hurricane::DataBase::getDB()->getTechnology()->getLayer("metal3")) , state->getWPitch()*Session::getPitch(Hurricane::DataBase::getDB()->getTechnology()->getLayer("METAL3"))
); );
cdebug_log(112,0) << "|| " << segment2 << endl; cdebug_log(112,0) << "|| " << segment2 << endl;
} }

View File

@ -1708,17 +1708,16 @@ namespace Anabatic {
return false; return false;
} }
void GCell::setEdgesOccupancy ( unsigned int width, unsigned int height ) void GCell::setEdgesOccupancy ( unsigned int width, unsigned int height )
{ {
getEastEdge()->setCapacity(width); if (getEastEdge() ) getEastEdge()->setCapacity(width);
getWestEdge()->setCapacity(width); if (getWestEdge() ) getWestEdge()->setCapacity(width);
getNorthEdge()->setCapacity(height); if (getNorthEdge()) getNorthEdge()->setCapacity(height);
getSouthEdge()->setCapacity(height); if (getSouthEdge()) getSouthEdge()->setCapacity(height);
getEastEdge()->setRealOccupancy(0); if (getEastEdge() ) getEastEdge()->setRealOccupancy(0);
getWestEdge()->setRealOccupancy(0); if (getWestEdge() ) getWestEdge()->setRealOccupancy(0);
getNorthEdge()->setRealOccupancy(0); if (getNorthEdge()) getNorthEdge()->setRealOccupancy(0);
getSouthEdge()->setRealOccupancy(0); if (getSouthEdge()) getSouthEdge()->setRealOccupancy(0);
} }