36 enum Signal { SIGNAL_POSITIVE = 0, SIGNAL_NEGATIVE };
41 virtual void DrawDC(wxPoint2DDouble translation,
double scale, wxGraphicsContext* gc)
const;
42 virtual bool Contains(wxPoint2DDouble position)
const {
return m_rect.Contains(position); }
43 virtual bool Intersects(wxRect2DDouble rect)
const {
return m_rect.Intersects(rect); }
45 virtual void Rotate(
bool clockwise =
true);
47 virtual std::vector<Signal> GetSignalList()
const {
return m_signalList; }
48 virtual void SetSignalList(std::vector<Signal> signalList) { m_signalList = signalList; }
49 virtual bool Solve(
double* input,
double timeStep);
51 virtual void UpdatePoints();
55 virtual rapidxml::xml_node<>* SaveElement(rapidxml::xml_document<>& doc, rapidxml::xml_node<>* elementListNode);
56 virtual bool OpenElement(rapidxml::xml_node<>* elementNode);
61 std::vector<Signal> m_signalList;
Base class of a control element. Provide general methods to other control classes.
Connection between two control elements or other connection line and an element.
Base class of all elements of the program. This class is responsible for manage graphical and his dat...
Sum the all inputs (can choose the input signal).
virtual Element * GetCopy()
Get a the element copy.
virtual bool Contains(wxPoint2DDouble position) const
Checks if the element contains a position.
virtual void DrawDC(wxPoint2DDouble translation, double scale, wxGraphicsContext *gc) const
Draw the element using GDI+.
virtual void Rotate(bool clockwise=true)
Rotate the element.
virtual bool ShowForm(wxWindow *parent, Element *element)
Show element data form.
virtual bool Intersects(wxRect2DDouble rect) const
Check if the element's rect intersects other rect.