Opdracht 2 3n 3 final

Co-authored-by: Aryan Lala (19097727) <A.E.Lala@student.hhs.nl>
This commit is contained in:
Shaquille Soekhlal 2023-05-04 09:22:06 +02:00
parent d60e22ccc2
commit 83e46713e1
5 changed files with 37 additions and 133 deletions

View File

@ -10,5 +10,5 @@ AnalogeMeter::AnalogeMeter(Snelheid* s):Observer(s){
void AnalogeMeter::update() void AnalogeMeter::update()
{ {
cout << "Analoog: " << dynamic_cast<Snelheid*>(getSubject())->geef(); cout << "Analoog: " << dynamic_cast<Snelheid*>(getSubject())->geef() << endl;
} }

View File

@ -1,4 +1,4 @@
#include "observer.h" #include "Observer.h"
void Subject::notify ( ){ void Subject::notify ( ){
for ( list<Observer*>::iterator i=L.begin( ); i!=L.end( ); ++i ) (*i)->update( ); for ( list<Observer*>::iterator i=L.begin( ); i!=L.end( ); ++i ) (*i)->update( );

BIN
Opdracht_3/Opdracht_3_Alt/main Executable file

Binary file not shown.

View File

@ -49,7 +49,6 @@ Observer::~Observer (){
class Element{ class Element{
public: public:
virtual ~Element () {} virtual ~Element () {}
virtual int draw () = 0;
virtual string name () = 0; virtual string name () = 0;
}; };
@ -57,12 +56,12 @@ class Ninja : public Element, public Subject{
private: string Name; private: string Name;
int AantalLevens; int AantalLevens;
public: Ninja (string n) : Name(n), AantalLevens(1) { } public: Ninja (string n) : Name(n), AantalLevens(1) { }
virtual int draw () { return AantalLevens; }
virtual string name () { return Name; } virtual string name () { return Name; }
virtual int aantalLevens () { return AantalLevens; } virtual int aantalLevens () { return AantalLevens; }
virtual void incLevens () { AantalLevens++; notify(); } virtual void incLevens () { AantalLevens++; notify(); }
virtual void decLevens () { AantalLevens--; notify(); } virtual void decLevens () { AantalLevens--; notify(); }
}; };
// ================================================================ // ================================================================
// Interfacelayer // Interfacelayer
// ================================================================ // ================================================================
@ -70,8 +69,7 @@ class NinjaWindow : public Observer{
private: Ninja* N; private: Ninja* N;
public: NinjaWindow (Ninja* n) : Observer(n) {} public: NinjaWindow (Ninja* n) : Observer(n) {}
virtual ~NinjaWindow () {} virtual ~NinjaWindow () {}
//virtual void draw() { cout << N.name() << N.draw() << endl; } virtual void update() {cout << dynamic_cast<Ninja*>(getSubject())->name() << dynamic_cast<Ninja*>(getSubject())->aantalLevens() << endl;}
virtual void update() {cout << dynamic_cast<Ninja*>(getSubject())->name() << dynamic_cast<Ninja*>(getSubject())->draw();}
}; };
int main( ){ int main( ){
@ -85,4 +83,3 @@ int main( ){
h.incLevens(); h.incLevens();
return 0; return 0;
} }
// ================================================================

View File

@ -1,6 +1,6 @@
<mxfile host="65bd71144e"> <mxfile host="65bd71144e">
<diagram id="BbE_J_UD8yLSpW20X8_c" name="Page-1"> <diagram id="BbE_J_UD8yLSpW20X8_c" name="Page-1">
<mxGraphModel dx="1445" dy="512" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0"> <mxGraphModel dx="2293" dy="904" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root> <root>
<mxCell id="0"/> <mxCell id="0"/>
<mxCell id="1" parent="0"/> <mxCell id="1" parent="0"/>
@ -11,10 +11,10 @@
<mxGeometry x="-240" y="1140" width="640" height="180" as="geometry"/> <mxGeometry x="-240" y="1140" width="640" height="180" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="81" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1"> <mxCell id="81" value="" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="-243" y="1690" width="650" height="220" as="geometry"/> <mxGeometry x="-200" y="1690" width="650" height="220" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="3" value="Observer" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1"> <mxCell id="3" value="Observer" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="222" y="1720" width="160" height="103" as="geometry"> <mxGeometry x="265" y="1720" width="160" height="103" as="geometry">
<mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/> <mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
@ -27,58 +27,6 @@
<mxCell id="g5t-nhjnCglT5NERbi0I-95" value="+ update()" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="3" vertex="1"> <mxCell id="g5t-nhjnCglT5NERbi0I-95" value="+ update()" style="text;html=1;align=left;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="3" vertex="1">
<mxGeometry y="64" width="160" height="30" as="geometry"/> <mxGeometry y="64" width="160" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="14" value="AnalogeMeter" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="279" y="2030" width="160" height="70" as="geometry">
<mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/>
</mxGeometry>
</mxCell>
<mxCell id="15" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="14" vertex="1">
<mxGeometry y="26" width="160" height="8" as="geometry"/>
</mxCell>
<mxCell id="16" value="+ update()" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="270" y="2067" width="80" height="30" as="geometry"/>
</mxCell>
<mxCell id="17" value="DigitaleMeter" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="570.5" y="2030" width="160" height="70" as="geometry">
<mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/>
</mxGeometry>
</mxCell>
<mxCell id="18" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="17" vertex="1">
<mxGeometry y="26" width="160" height="8" as="geometry"/>
</mxCell>
<mxCell id="19" value="+ update()" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="561.5" y="2067" width="80" height="30" as="geometry"/>
</mxCell>
<mxCell id="20" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" parent="1" source="14" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="366" y="2000" as="sourcePoint"/>
<mxPoint x="359" y="1960" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="21" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="650.1000000000004" y="2030" as="sourcePoint"/>
<mxPoint x="650.1000000000004" y="1960" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="22" value="" style="endArrow=block;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;endFill=0;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="439" y="1960" as="sourcePoint"/>
<mxPoint x="490" y="2040" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="23" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="360" y="1960" as="sourcePoint"/>
<mxPoint x="440" y="1960" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="24" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="440" y="1960" as="sourcePoint"/>
<mxPoint x="650" y="1960" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="25" value="Ninja" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1"> <mxCell id="25" value="Ninja" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="27.5" y="1380" width="160" height="220" as="geometry"> <mxGeometry x="27.5" y="1380" width="160" height="220" as="geometry">
<mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/> <mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/>
@ -99,7 +47,7 @@
<mxCell id="30" value="+ name () : string" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="25" vertex="1"> <mxCell id="30" value="+ name () : string" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="25" vertex="1">
<mxGeometry y="110" width="160" height="26" as="geometry"/> <mxGeometry y="110" width="160" height="26" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="29" value="+ draw () : int" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="25" vertex="1"> <mxCell id="29" value="+ aantallevens () : int" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="25" vertex="1">
<mxGeometry y="136" width="160" height="30" as="geometry"/> <mxGeometry y="136" width="160" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="lDVcpSxnrCP2Uvz7J0rP-82" value="+ incLevens () : void" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="25" vertex="1"> <mxCell id="lDVcpSxnrCP2Uvz7J0rP-82" value="+ incLevens () : void" style="text;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" parent="25" vertex="1">
@ -110,57 +58,13 @@
</mxCell> </mxCell>
<mxCell id="31" style="edgeStyle=none;html=1;endArrow=open;endFill=0;entryX=1;entryY=0;entryDx=0;entryDy=0;exitX=-0.002;exitY=0.768;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="6" target="g5t-nhjnCglT5NERbi0I-92" edge="1"> <mxCell id="31" style="edgeStyle=none;html=1;endArrow=open;endFill=0;entryX=1;entryY=0;entryDx=0;entryDy=0;exitX=-0.002;exitY=0.768;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="6" target="g5t-nhjnCglT5NERbi0I-92" edge="1">
<mxGeometry relative="1" as="geometry"> <mxGeometry relative="1" as="geometry">
<mxPoint x="217" y="1790" as="sourcePoint"/> <mxPoint x="260" y="1790" as="sourcePoint"/>
<mxPoint x="222" y="1780.3899999999999" as="targetPoint"/> <mxPoint x="265" y="1780.3899999999999" as="targetPoint"/>
<Array as="points"/> <Array as="points"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="36" value="Auto" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="40" y="2190" width="160" height="74" as="geometry">
<mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/>
</mxGeometry>
</mxCell>
<mxCell id="38" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" parent="36" vertex="1">
<mxGeometry y="26" width="160" height="8" as="geometry"/>
</mxCell>
<mxCell id="39" value="&lt;span style=&quot;color: rgb(240, 240, 240); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(42, 37, 47); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&quot;&gt;+ meetSnelheid() : void&lt;/span&gt;" style="text;whiteSpace=wrap;html=1;fontSize=10;fontFamily=Verdana;fontColor=default;" parent="36" vertex="1">
<mxGeometry y="34" width="160" height="40" as="geometry"/>
</mxCell>
<mxCell id="40" value="" style="endArrow=diamondThin;endFill=0;endSize=24;html=1;fontFamily=Verdana;fontSize=10;fontColor=default;" parent="1" edge="1">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="-140" y="2190" as="sourcePoint"/>
<mxPoint x="-70" y="2190" as="targetPoint"/>
<Array as="points">
<mxPoint x="-110" y="2190"/>
</Array>
</mxGeometry>
</mxCell>
<mxCell id="68" value="lees(waarde)" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="-110" y="2060" width="90" height="30" as="geometry"/>
</mxCell>
<mxCell id="70" value="return waarde" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="-115" y="2086" width="100" height="30" as="geometry"/>
</mxCell>
<mxCell id="71" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="319.7600000000002" y="2090" as="sourcePoint"/>
<mxPoint x="319.7600000000002" y="2135.24" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="72" value="&amp;nbsp;cout &amp;lt;&amp;lt; &quot;Analoog: &quot; &amp;lt;&amp;lt; ( getSubject() )-&amp;gt;geef();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="250" y="2135" width="280" height="30" as="geometry"/>
</mxCell>
<mxCell id="73" value="&amp;nbsp;cout &amp;lt;&amp;lt; &quot;Digitaal: &quot; &amp;lt;&amp;lt; ( getSubject() )-&amp;gt;geef();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="545" y="2135" width="270" height="30" as="geometry"/>
</mxCell>
<mxCell id="74" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="610.6000000000004" y="2090" as="sourcePoint"/>
<mxPoint x="610.6000000000004" y="2135.24" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="82" value="Infrastructurelaag" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1"> <mxCell id="82" value="Infrastructurelaag" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="-243" y="1694" width="120" height="30" as="geometry"/> <mxGeometry x="-200" y="1694" width="120" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="g5t-nhjnCglT5NERbi0I-82" value="Applicatie" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1"> <mxCell id="g5t-nhjnCglT5NERbi0I-82" value="Applicatie" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="-80" y="1171.5" width="160" height="70" as="geometry"> <mxGeometry x="-80" y="1171.5" width="160" height="70" as="geometry">
@ -174,7 +78,7 @@
<mxGeometry x="-88" y="1200" width="90" height="30" as="geometry"/> <mxGeometry x="-88" y="1200" width="90" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="g5t-nhjnCglT5NERbi0I-87" value="Subject" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1"> <mxCell id="g5t-nhjnCglT5NERbi0I-87" value="Subject" style="swimlane;fontStyle=0;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;" parent="1" vertex="1">
<mxGeometry x="-83" y="1710" width="160" height="160" as="geometry"> <mxGeometry x="-40" y="1710" width="160" height="160" as="geometry">
<mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/> <mxRectangle x="340" y="380" width="170" height="26" as="alternateBounds"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
@ -229,31 +133,25 @@
</mxCell> </mxCell>
<mxCell id="g5t-nhjnCglT5NERbi0I-102" style="edgeStyle=none;html=1;endArrow=open;endFill=0;entryX=0.003;entryY=0.813;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" edge="1"> <mxCell id="g5t-nhjnCglT5NERbi0I-102" style="edgeStyle=none;html=1;endArrow=open;endFill=0;entryX=0.003;entryY=0.813;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" edge="1">
<mxGeometry relative="1" as="geometry"> <mxGeometry relative="1" as="geometry">
<mxPoint x="79.25999999999999" y="1799.5" as="sourcePoint"/> <mxPoint x="122.25999999999999" y="1799.5" as="sourcePoint"/>
<mxPoint x="224.74" y="1799.8899999999999" as="targetPoint"/> <mxPoint x="267.74" y="1799.8899999999999" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="g5t-nhjnCglT5NERbi0I-103" value="" style="endArrow=block;html=1;strokeWidth=2;endFill=0;exitX=0.75;exitY=1;exitDx=0;exitDy=0;" parent="1" source="g5t-nhjnCglT5NERbi0I-96" target="3" edge="1"> <mxCell id="g5t-nhjnCglT5NERbi0I-103" value="" style="endArrow=block;html=1;strokeWidth=2;endFill=0;exitX=1;exitY=1;exitDx=0;exitDy=0;" parent="1" source="g5t-nhjnCglT5NERbi0I-96" target="3" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="450" y="1290" as="sourcePoint"/> <mxPoint x="450" y="1290" as="sourcePoint"/>
<mxPoint x="300" y="1670" as="targetPoint"/> <mxPoint x="300" y="1670" as="targetPoint"/>
<Array as="points"> <Array as="points">
<mxPoint x="580" y="1500"/> <mxPoint x="340" y="1530"/>
</Array> </Array>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="lDVcpSxnrCP2Uvz7J0rP-101" value="" style="endArrow=block;html=1;strokeWidth=2;endFill=0;entryX=0.856;entryY=0.002;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.159;exitY=1.092;exitDx=0;exitDy=0;exitPerimeter=0;" parent="1" source="lDVcpSxnrCP2Uvz7J0rP-83" target="g5t-nhjnCglT5NERbi0I-87" edge="1"> <mxCell id="lDVcpSxnrCP2Uvz7J0rP-101" value="" style="endArrow=block;html=1;strokeWidth=2;endFill=0;entryX=0.856;entryY=0.002;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" target="g5t-nhjnCglT5NERbi0I-87" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="54" y="1630" as="sourcePoint"/> <mxPoint x="100" y="1600" as="sourcePoint"/>
<mxPoint x="311.8001939864207" y="1730" as="targetPoint"/> <mxPoint x="311.8001939864207" y="1730" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="g5t-nhjnCglT5NERbi0I-104" value="" style="endArrow=block;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;endFill=0;strokeColor=default;entryX=0.75;entryY=0;entryDx=0;entryDy=0;exitX=0.25;exitY=1;exitDx=0;exitDy=0;" parent="1" source="g5t-nhjnCglT5NERbi0I-96" target="25" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="148" y="1310" as="sourcePoint"/>
<mxPoint x="170" y="1280" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="g5t-nhjnCglT5NERbi0I-105" value="" style="endArrow=block;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;endFill=0;strokeColor=default;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.222;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="g5t-nhjnCglT5NERbi0I-82" edge="1"> <mxCell id="g5t-nhjnCglT5NERbi0I-105" value="" style="endArrow=block;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;endFill=0;strokeColor=default;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.222;entryDx=0;entryDy=0;entryPerimeter=0;" parent="1" source="g5t-nhjnCglT5NERbi0I-82" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="132.5" y="1230" as="sourcePoint"/> <mxPoint x="132.5" y="1230" as="sourcePoint"/>
@ -278,45 +176,54 @@
<mxPoint x="220" y="1530" as="targetPoint"/> <mxPoint x="220" y="1530" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="83" value="return AantalLevens" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1"> <mxCell id="83" value="return AantalLevens" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="210" y="1520" width="130" height="30" as="geometry"/> <mxGeometry x="210" y="1520" width="130" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="84" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" edge="1" parent="1"> <mxCell id="84" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="152" y="1503.26" as="sourcePoint"/> <mxPoint x="152" y="1503.26" as="sourcePoint"/>
<mxPoint x="222" y="1503.26" as="targetPoint"/> <mxPoint x="222" y="1503.26" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="85" value="return Name" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1"> <mxCell id="85" value="return Name" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="215" y="1488.5" width="90" height="30" as="geometry"/> <mxGeometry x="215" y="1488.5" width="90" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="86" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" edge="1" parent="1"> <mxCell id="86" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="152" y="1560" as="sourcePoint"/> <mxPoint x="152" y="1560" as="sourcePoint"/>
<mxPoint x="222" y="1560" as="targetPoint"/> <mxPoint x="222" y="1560" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="87" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" edge="1" parent="1"> <mxCell id="87" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="152" y="1590.0000000000002" as="sourcePoint"/> <mxPoint x="152" y="1590.0000000000002" as="sourcePoint"/>
<mxPoint x="222" y="1590.0000000000002" as="targetPoint"/> <mxPoint x="222" y="1590.0000000000002" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="88" value="AantalLevens++;&lt;br&gt;notify();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1"> <mxCell id="88" value="AantalLevens++;&lt;br&gt;notify();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="215" y="1540" width="110" height="40" as="geometry"/> <mxGeometry x="215" y="1540" width="110" height="40" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="90" value="AantalLevens--;&lt;br&gt;notify();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1"> <mxCell id="90" value="AantalLevens--;&lt;br&gt;notify();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="220" y="1570" width="110" height="40" as="geometry"/> <mxGeometry x="220" y="1570" width="110" height="40" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="91" value="&amp;nbsp;cout &amp;lt;&amp;lt; ( getSubject() )-&amp;gt;name()&amp;nbsp;&amp;lt;&amp;lt; ( getSubject() )-&amp;gt;draw();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1"> <mxCell id="91" value="&amp;nbsp;cout &amp;lt;&amp;lt; ( getSubject() )-&amp;gt;name()&amp;nbsp;&amp;lt;&amp;lt; ( getSubject() )-&amp;gt;draw();" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="409" y="1215" width="350" height="30" as="geometry"/> <mxGeometry x="409" y="1215" width="350" height="30" as="geometry"/>
</mxCell> </mxCell>
<mxCell id="92" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" edge="1" parent="1"> <mxCell id="92" value="" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;strokeColor=default;" parent="1" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry"> <mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="312" y="1230" as="sourcePoint"/> <mxPoint x="312" y="1230" as="sourcePoint"/>
<mxPoint x="420" y="1230" as="targetPoint"/> <mxPoint x="420" y="1230" as="targetPoint"/>
</mxGeometry> </mxGeometry>
</mxCell> </mxCell>
<mxCell id="93" value="N" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
<mxGeometry x="65" y="1260" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="94" value="S" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
<mxGeometry x="130" y="1810" width="30" height="30" as="geometry"/>
</mxCell>
<mxCell id="95" value="&lt;font style=&quot;font-size: 19px;&quot;&gt;*&lt;/font&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;strokeWidth=1;" vertex="1" parent="1">
<mxGeometry x="230" y="1734" width="30" height="40" as="geometry"/>
</mxCell>
</root> </root>
</mxGraphModel> </mxGraphModel>
</diagram> </diagram>