20 #ifndef HURRICANE_HORIZONTAL
21 #define HURRICANE_HORIZONTAL
23 #include "hurricane/Segment.h"
24 #include "hurricane/Horizontals.h"
39 static FastRTTI _fastRTTI;
41 static inline const FastRTTI& fastRTTI ();
42 virtual const FastRTTI& vfastRTTI ()
const;
87 public:
virtual DbU::Unit getY()
const {
return _y;};
88 public:
virtual Point getCenter()
const;
89 public:
virtual Box getBoundingBox()
const;
90 public:
virtual Box getBoundingBox(
const BasicLayer* basicLayer)
const;
91 public:
virtual DbU::Unit getSourceX()
const;
92 public:
virtual DbU::Unit getSourceY()
const {
return getY();};
93 public:
virtual DbU::Unit getTargetX()
const;
94 public:
virtual DbU::Unit getTargetY()
const {
return getY();};
95 public:
virtual DbU::Unit getLength()
const;
105 public:
void setDxSource(
const DbU::Unit& dxSource);
106 public:
void setDxTarget(
const DbU::Unit& dxSource);
112 public:
virtual void _toJson(JsonWriter*)
const;
113 public:
static JsonObject* getJsonObject(
unsigned long flags);
114 public:
virtual string _getTypeName()
const {
return _TName(
"Horizontal");};
115 public:
virtual string _getString()
const;
116 public:
virtual Record* _getRecord()
const;
121 inline const FastRTTI& Horizontal::fastRTTI () {
return _fastRTTI; }
124 class JsonHorizontal :
public JsonSegment {
127 public:
static void initialize();
128 public: JsonHorizontal(
unsigned long flags);
129 public:
virtual string getTypeName()
const;
130 public:
virtual JsonHorizontal* clone(
unsigned long)
const;
131 public:
virtual void toData(JsonStack&);
BasicLayer description (API)
Definition: BasicLayer.h:42
Box description (API)
Definition: Box.h:30
Component description (API)
Definition: Component.h:43
std::int64_t Unit
Definition: DbU.h:67
Horizontal description (API)
Definition: Horizontal.h:36
static Horizontal * create(Net *net, const Layer *layer, const DbU::Unit &y, const DbU::Unit &width=0, const DbU::Unit &dxSource=0, const DbU::Unit &dxTarget=0)
void translate(const DbU::Unit &dy)
Segment Inherit
Definition: Horizontal.h:47
void setY(const DbU::Unit &y)
const DbU::Unit & getDxSource() const
Definition: Horizontal.h:96
const DbU::Unit & getDxTarget() const
Definition: Horizontal.h:97
static Horizontal * create(Component *source, Component *target, const Layer *layer, const DbU::Unit &y, const DbU::Unit &width=0, const DbU::Unit &dxSource=0, const DbU::Unit &dxTarget=0)
Support for JSON export.
Definition: JsonObject.h:83
Layer description (API)
Definition: Layer.h:120
Net description (API)
Definition: Net.h:46
Point description (API)
Definition: Point.h:30
Segment description (API)
Definition: Segment.h:33
Contains Almost Everything.
Definition: BasicLayer.h:39