32 #ifndef  HURRICANE_VIA_LAYER_H 
   33 #define  HURRICANE_VIA_LAYER_H 
   37 #include  "hurricane/Layer.h" 
   38 #include  "hurricane/ViaLayers.h" 
   59       virtual BasicLayers          getBasicLayers     () 
const;
 
   60       virtual const Layer*         getCut             () 
const;
 
   61       virtual const Layer*         getTop             () 
const;
 
   62       virtual const Layer*         getBottom          () 
const;
 
   63       virtual const Layer*         getOpposite        ( 
const Layer* ) 
const;
 
   64       virtual DbU::Unit            getEnclosure       ( uint32_t flags ) 
const;
 
   66       virtual DbU::Unit            getTopEnclosure    ( uint32_t flags ) 
const;
 
   67       virtual DbU::Unit            getBottomEnclosure ( uint32_t flags ) 
const;
 
   71       virtual void                 _toJson            ( JsonWriter* ) 
const;
 
   72       virtual void                 _onDbuChange       ( 
float scale );
 
   73       virtual string               _getTypeName       () 
const;
 
   74       virtual string               _getString         () 
const;
 
   75       virtual Record*              _getRecord         () 
const;
 
   79               vector<BasicLayer*>                  _basicLayers;
 
   80               vector< pair<DbU::Unit,DbU::Unit> >  _enclosures;
 
   97   class JsonViaLayer : 
public JsonLayer {
 
   99       static  void          initialize   ();
 
  100                             JsonViaLayer ( 
unsigned long flags );
 
  102       virtual string        getTypeName  () 
const;
 
  103       virtual JsonViaLayer* clone        ( 
unsigned long ) 
const;
 
BasicLayer description (API)
Definition: BasicLayer.h:42
DataBase object root class (API).
Definition: DBo.h:45
std::int64_t Unit
Definition: DbU.h:67
JSON Parser Stack.
Definition: JsonObject.h:249
Layer description (API)
Definition: Layer.h:50
Name description (API)
Definition: Name.h:35
Technological rules description (API).
Definition: Technology.h:62
ViaLayer description (API)
Definition: ViaLayer.h:46
static ViaLayer * create(Technology *technology, const Name &name, BasicLayer *bottomLayer, BasicLayer *cutLayer, BasicLayer *topLayer)
Contains Almost Everything.
Definition: BasicLayer.h:39