33 #include "hurricane/Component.h"
48 static FastRTTI _fastRTTI;
50 static inline const FastRTTI& fastRTTI ();
51 virtual const FastRTTI& vfastRTTI ()
const;
56 virtual bool isNonRectangle ()
const;
63 virtual Point getSourcePosition ()
const;
64 virtual Point getTargetPosition ()
const;
65 virtual Box getBoundingBox ()
const;
67 virtual size_t getPointsSize ()
const;
68 virtual Point getPoint (
size_t i )
const;
70 virtual const Layer* getLayer ()
const;
72 void setLayer (
const Layer* );
75 void setSource (
Point );
76 void setTarget (
Point );
78 virtual void _toJson ( JsonWriter* )
const;
79 static JsonObject* getJsonObject (
unsigned long flags );
80 virtual string _getTypeName ()
const;
81 virtual string _getString ()
const;
82 virtual Record* _getRecord ()
const;
95 inline const FastRTTI& Diagonal::fastRTTI () {
return _fastRTTI; }
101 class JsonDiagonal :
public JsonComponent {
103 static void initialize ();
104 JsonDiagonal (
unsigned long flags );
105 virtual std::string getTypeName ()
const;
106 virtual JsonDiagonal* clone (
unsigned long )
const;
107 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
Diagonal description (API)
Definition: Diagonal.h:44
static Diagonal * create(Net *, const Layer *, const Point &source, const Point &target, DbU::Unit width)
Component Super
Definition: Diagonal.h:46
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
Contains Almost Everything.
Definition: BasicLayer.h:39