32 #ifndef HURRICANE_ROUTINGPAD_H
33 #define HURRICANE_ROUTINGPAD_H
35 #include "hurricane/Component.h"
36 #include "hurricane/Occurrence.h"
37 #include "hurricane/Pin.h"
63 inline bool isAtTopLevel ()
const;
72 virtual Point getPosition ()
const;
85 Component* _getEntityAsComponent ()
const;
86 Segment* _getEntityAsSegment ()
const;
87 virtual void _toJson ( JsonWriter* )
const;
88 virtual std::string _getTypeName ()
const {
return _TName(
"RoutingPad");};
89 virtual std::string _getString ()
const;
90 virtual Record* _getRecord ()
const;
92 virtual void _postCreate ();
93 virtual void _preDestroy ();
102 inline bool RoutingPad::isAtTopLevel ()
const {
return _occurrence.
getPath().
isEmpty(); }
109 class JsonRoutingPad :
public JsonComponent {
111 static void initialize ();
112 JsonRoutingPad (
unsigned long flags );
113 virtual std::string getTypeName ()
const;
114 virtual JsonRoutingPad* clone (
unsigned long flags )
const;
BasicLayer description (API)
Definition: BasicLayer.h:44
Box description (API)
Definition: Box.h:31
Component description (API)
Definition: Component.h:42
std::int64_t Unit
Definition: DbU.h:67
JSON Parser Stack.
Definition: JsonObject.h:249
Layer description (API)
Definition: Layer.h:52
Net description (API)
Definition: Net.h:48
Occurrence description (API)
Definition: Occurrence.h:39
Path getPath() const
Definition: Occurrence.h:69
Pin description (API)
Definition: Pin.h:41
Point description (API)
Definition: Point.h:32
RoutingPad description (API)
Definition: RoutingPad.h:48
static RoutingPad * create(Pin *)
void restorePlugOccurrence()
Occurrence getOccurrence() const
Definition: RoutingPad.h:103
virtual Box getBoundingBox() const
Occurrence getPlugOccurrence()
DbU::Unit getTargetX() const
bool isPlacedOccurrence(unsigned int flags) const
Component * setOnBestComponent(unsigned int flags)
DbU::Unit getTargetY() const
virtual void translate(const DbU::Unit &dx, const DbU::Unit &dy)
Component Inherit
Definition: RoutingPad.h:50
virtual DbU::Unit getX() const
Flags
Definition: RoutingPad.h:51
@ LowestLayer
Definition: RoutingPad.h:53
@ HighestLayer
Definition: RoutingPad.h:52
@ ShowWarning
Definition: RoutingPad.h:55
@ ComponentSelection
Definition: RoutingPad.h:54
@ BiggestArea
Definition: RoutingPad.h:51
DbU::Unit getSourceY() const
virtual const Layer * getLayer() const
static RoutingPad * create(Net *, Occurrence, unsigned int flags=0)
Point getTargetPosition() const
void setExternalComponent(Component *)
Point getSourcePosition() const
virtual Point getCenter() const
DbU::Unit getSourceX() const
virtual DbU::Unit getY() const
Segment description (API)
Definition: Segment.h:33
The namespace dedicated to Hurricane.
Definition: Generalities.dox:5