Summary Files Commits Branches @commit @diff @stats
path: root / Year 1 / Object-oriented Programming / Project 1 / docs / images
diff options
context:
space:
mode:
Commit24bdf39e6c21ab846f6c86803761d78a094e05c0 (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-26 20:31:26 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-26 20:31:26 +0300
Files1b2077b088098cc7ae6afc946b10a4d680110294 /Year 1/Object-oriented Programming/Project 1/docs/images
uni-projects-24bdf39e6c21ab846f6c86803761d78a094e05c0.tar
uni-projects-24bdf39e6c21ab846f6c86803761d78a094e05c0.tar.gz
uni-projects-24bdf39e6c21ab846f6c86803761d78a094e05c0.zip
Parentcbe944835cc0951a946d01f034b4d28ff9874a4e (diff)
Added files from project 1 (mirror)
diff --git a/Year 1/Object-oriented Programming/Project 1/docs/images/FMI-OOP-P1_TicketSystem Overview.svg b/Year 1/Object-oriented Programming/Project 1/docs/images/FMI-OOP-P1_TicketSystem Overview.svg
new file mode 100644
index 0000000..6e35d2f
--- /dev/null
+++ b/Year 1/Object-oriented Programming/Project 1/docs/images/FMI-OOP-P1_TicketSystem Overview.svg
@@ -0,0 +1,571 @@
+<svg version="1.1" baseProfile="full" width="1076.5" height="1271.0" viewbox="0 0 1076.5 1271" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events">
+ <title >FMI-OOP-P1_TicketSystem Overview</title>
+ <desc >#title: FMI-OOP-P1_TicketSystem Overview
+ #background: #fdf6e3
+ #bendSize: 0
+ #fillArrows: true
+ #lineWidth: 2
+ #leading: 1.3
+
+ #.groupui: title=italic fill=#b2ee97 direction=right
+ #.groupes: title=italic fill=#97c8ee direction=right
+ #.groupm: title=italic fill=#ee9797 direction=down
+ #.groupv: title=italic fill=#eee997 direction=right
+ #.groupgc: title=italic fill=#c0baac direction=right
+
+ [main.cpp|
+ EventService es
+ HallService hs
+ ]
+
+ [&lt;groupui&gt; User Interface|
+ [FMITicketSystemConsoleUI.cpp|
+ EventService* es
+ HallService* hs
+ runUI()
+ ]
+ ]
+ [main.cpp]-&gt;[User Interface]
+
+ [&lt;groupes&gt; Services|
+ [EventService|
+ OrderedList&lt;Event&gt; events
+ |
+ + createEvent()
+ . cancelEvent()
+ + reserveTicket()
+ + cancelTicketReservation()
+ + buyTicket()
+ . queryEventHall()
+ . queryTickets()
+ . queryReservations()
+ ~ queryMostVisited()
+ ~ queryInsufficientlyVisited()
+ + reportBoughtTickets()
+ + reportReservations()
+ ]
+
+ [HallService|
+ OrderedList&lt;Hall&gt; halls
+ |
+ hallExists()
+ ]
+ [EventService]--&gt;[HallService]
+
+ [StatusCodes.h|
+ enum StatusCode
+ ]
+ ]
+ [User Interface]-&gt;[Services]
+
+ [&lt;groupm&gt; Models|
+ [Ticket|
+ unsigned row
+ unsigned seat
+ ]
+
+ [Reservation|
+ Ticket ticket
+ char\[8\] password
+ char\[32\] note
+ ]
+
+ [Event|
+ Hall* hall
+ String name
+ Date date
+ OrderedList&lt;Ticket&gt; tickets
+ OrderedList&lt;Reservation&gt; reservations
+ ]
+ [Ticket]--&gt;[Event]
+ [Reservation]--&gt;[Event]
+
+ [Hall|
+ int number
+ unsigned rowCount
+ unsigned seatsPerRow
+ ]
+ [&lt;hidden&gt;H]-/-[Hall]
+ ]
+ [Services]&lt;--[Models]
+
+ [&lt;groupgc&gt; Generic Classes|
+ [List&lt;T&gt;|
+ add(elem)
+ insertAt(elem, index)
+ removeAt(index)
+ findIndex(elem);
+ contain(elem);
+ operator\[\](index)
+ ]
+
+ [OrderedList&lt;T&gt;|
+ insert(elem)
+ remove(elem)
+ ]
+ [List&lt;T&gt;]&lt;:-[OrderedList&lt;T&gt;]
+
+ [Date|
+ unsigned day
+ unsigned month
+ int year
+ ]
+
+ [String|
+ char* str
+ unsigned length
+ unsigned count
+ ]
+ [String]-/-[Date]
+
+ [Command|
+ String name
+ void (*exec)()
+ ]
+
+ [Menu|
+ List&lt;Command&gt; commands
+ navigate()
+ ]
+ [Menu]--&gt;[Command]
+ ]
+ [&lt;hidden&gt;H1]-/-[&lt;hidden&gt;H2]
+ [H2]-/-[Generic Classes]</desc>
+ <g stroke-width="1.0" text-align="left" font="12pt Helvetica, Arial, sans-serif" font-size="12pt" font-family="Helvetica" font-weight="bold" font-style="normal">
+ <g font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" stroke-width="2.0" stroke-linejoin="round" stroke-linecap="round" stroke="#33322E">
+ <g stroke="transparent" fill="#fdf6e3">
+ <rect x="0.0" y="0.0" height="1271.0" width="1076.5" stroke="none"></rect>
+ </g>
+ <g transform="translate(8, 8)" fill="#33322E">
+ <g transform="translate(20, 20)" fill="#33322E" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal">
+ <path d="M286.0 79.0 L286 99 L286 112.33333333333333 L286.0 112.3 " fill="none"></path>
+ <path d="M280.7 105.7 L286.0 105.7 L291.3 105.7 L286.0 119.0 Z"></path>
+ <path d="M286.0 302.0 L286 322 L286 347.8333333333333 L286.0 347.8 " fill="none"></path>
+ <path d="M280.7 341.2 L286.0 341.2 L291.3 341.2 L286.0 354.5 Z"></path>
+ <g stroke-dasharray="4 4">
+ <path d="M286.0 820.2 L286 846 L286 866 L286.0 866.0 " fill="none"></path>
+ </g>
+ <path d="M291.3 826.8 L286.0 826.8 L280.7 826.8 L286.0 813.5 Z"></path>
+ <g data-name="main.cpp">
+ <g fill="#eee8d5" stroke="#33322E" data-name="main.cpp">
+ <rect x="220.0" y="0.0" height="79.0" width="132.0" data-name="main.cpp"></rect>
+ <path d="M220.0 32.0 L352.0 32.0" fill="none" data-name="main.cpp"></path>
+ </g>
+ <g transform="translate(220, 0)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="main.cpp">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="main.cpp">
+ <text x="58.0" y="13.8" stroke="none" text-anchor="middle" data-name="main.cpp">main.cpp</text>
+
+ </g>
+ </g>
+ <g transform="translate(220, 32)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="main.cpp">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="main.cpp">
+ <text x="0.0" y="13.8" stroke="none" data-name="main.cpp">EventService es</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="main.cpp">HallService hs</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="User Interface">
+ <g fill="#b2ee97" stroke="#33322E" data-name="User Interface">
+ <rect x="129.0" y="119.0" height="183.0" width="314.0" data-name="User Interface"></rect>
+ <path d="M129.0 151.0 L443.0 151.0" fill="none" data-name="User Interface"></path>
+ </g>
+ <g transform="translate(129, 119)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="italic" data-name="User Interface">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="User Interface">
+ <text x="149.0" y="13.8" stroke="none" text-anchor="middle" data-name="User Interface">User Interface</text>
+
+ </g>
+ </g>
+ <g transform="translate(129, 151)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="User Interface">
+ <g transform="translate(8, 8)" fill="#33322E" data-name="User Interface">
+ <g transform="translate(20, 20)" data-name="User Interface">
+ <g data-name="FMITicketSystemConsoleUI.cpp">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="FMITicketSystemConsoleUI.cpp">
+ <rect x="0.0" y="0.0" height="95.0" width="258.0" data-name="FMITicketSystemConsoleUI.cpp"></rect>
+ <path d="M0.0 32.0 L258.0 32.0" fill="none" data-name="FMITicketSystemConsoleUI.cpp"></path>
+ </g>
+ <g transform="translate(0, 0)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="FMITicketSystemConsoleUI.cpp">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="FMITicketSystemConsoleUI.cpp">
+ <text x="121.0" y="13.8" stroke="none" text-anchor="middle" data-name="FMITicketSystemConsoleUI.cpp">FMITicketSystemConsoleUI.cpp</text>
+
+ </g>
+ </g>
+ <g transform="translate(0, 32)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="FMITicketSystemConsoleUI.cpp">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="FMITicketSystemConsoleUI.cpp">
+ <text x="0.0" y="13.8" stroke="none" data-name="FMITicketSystemConsoleUI.cpp">EventService* es</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="FMITicketSystemConsoleUI.cpp">HallService* hs</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="FMITicketSystemConsoleUI.cpp">runUI()</text>
+
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g data-name="Services">
+ <g fill="#97c8ee" stroke="#33322E" data-name="Services">
+ <rect x="39.0" y="355.0" height="459.0" width="495.0" data-name="Services"></rect>
+ <path d="M39.0 387.0 L534.0 387.0" fill="none" data-name="Services"></path>
+ </g>
+ <g transform="translate(39, 355)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="italic" data-name="Services">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Services">
+ <text x="239.5" y="13.8" stroke="none" text-anchor="middle" data-name="Services">Services</text>
+
+ </g>
+ </g>
+ <g transform="translate(39, 387)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Services">
+ <g transform="translate(8, 8)" fill="#33322E" data-name="Services">
+ <g transform="translate(20, 20)" fill="#33322E" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Services">
+ <g stroke-dasharray="4 4" data-name="Services">
+ <path d="M216.0 133.5 L236 133.5 L249.33333333333334 133.5 L249.3 133.5 " fill="none" data-name="Services"></path>
+ </g>
+ <path d="M242.7 138.8 L242.7 133.5 L242.7 128.2 L256.0 133.5 Z" data-name="Services"></path>
+ <g data-name="EventService">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="EventService">
+ <rect x="0.0" y="0.0" height="267.0" width="216.0" data-name="EventService"></rect>
+ <path d="M0.0 32.0 L216.0 32.0" fill="none" data-name="EventService"></path>
+ <path d="M0.0 64.0 L216.0 64.0" fill="none" data-name="EventService"></path>
+ </g>
+ <g transform="translate(0, 0)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="EventService">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="EventService">
+ <text x="100.0" y="13.8" stroke="none" text-anchor="middle" data-name="EventService">EventService</text>
+
+ </g>
+ </g>
+ <g transform="translate(0, 32)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="EventService">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="EventService">
+ <text x="0.0" y="13.8" stroke="none" data-name="EventService">OrderedList&lt;Event&gt; events</text>
+
+ </g>
+ </g>
+ <g transform="translate(0, 64)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="EventService">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="EventService">
+ <text x="0.0" y="13.8" stroke="none" data-name="EventService">+ createEvent()</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="EventService">. cancelEvent()</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="EventService">+ reserveTicket()</text>
+ <text x="0.0" y="60.6" stroke="none" data-name="EventService">+ cancelTicketReservation()</text>
+ <text x="0.0" y="76.2" stroke="none" data-name="EventService">+ buyTicket()</text>
+ <text x="0.0" y="91.8" stroke="none" data-name="EventService">. queryEventHall()</text>
+ <text x="0.0" y="107.4" stroke="none" data-name="EventService">. queryTickets()</text>
+ <text x="0.0" y="123.0" stroke="none" data-name="EventService">. queryReservations()</text>
+ <text x="0.0" y="138.6" stroke="none" data-name="EventService">~ queryMostVisited()</text>
+ <text x="0.0" y="154.2" stroke="none" data-name="EventService">~ queryInsufficientlyVisited()</text>
+ <text x="0.0" y="169.8" stroke="none" data-name="EventService">+ reportBoughtTickets()</text>
+ <text x="0.0" y="185.4" stroke="none" data-name="EventService">+ reportReservations()</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="HallService">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="HallService">
+ <rect x="256.0" y="86.0" height="96.0" width="183.0" data-name="HallService"></rect>
+ <path d="M256.0 118.0 L439.0 118.0" fill="none" data-name="HallService"></path>
+ <path d="M256.0 150.0 L439.0 150.0" fill="none" data-name="HallService"></path>
+ </g>
+ <g transform="translate(256, 86)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="HallService">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="HallService">
+ <text x="83.5" y="13.8" stroke="none" text-anchor="middle" data-name="HallService">HallService</text>
+
+ </g>
+ </g>
+ <g transform="translate(256, 118)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="HallService">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="HallService">
+ <text x="0.0" y="13.8" stroke="none" data-name="HallService">OrderedList&lt;Hall&gt; halls</text>
+
+ </g>
+ </g>
+ <g transform="translate(256, 150)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="HallService">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="HallService">
+ <text x="0.0" y="13.8" stroke="none" data-name="HallService">hallExists()</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="StatusCodes.h">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="StatusCodes.h">
+ <rect x="36.0" y="307.0" height="64.0" width="144.0" data-name="StatusCodes.h"></rect>
+ <path d="M36.0 339.0 L180.0 339.0" fill="none" data-name="StatusCodes.h"></path>
+ </g>
+ <g transform="translate(36, 307)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="StatusCodes.h">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="StatusCodes.h">
+ <text x="64.0" y="13.8" stroke="none" text-anchor="middle" data-name="StatusCodes.h">StatusCodes.h</text>
+
+ </g>
+ </g>
+ <g transform="translate(36, 339)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="StatusCodes.h">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="StatusCodes.h">
+ <text x="0.0" y="13.8" stroke="none" data-name="StatusCodes.h">enum StatusCode</text>
+
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g data-name="Models">
+ <g fill="#ee9797" stroke="#33322E" data-name="Models">
+ <rect x="0.0" y="866.0" height="349.0" width="572.0" data-name="Models"></rect>
+ <path d="M0.0 898.0 L572.0 898.0" fill="none" data-name="Models"></path>
+ </g>
+ <g transform="translate(0, 866)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="italic" data-name="Models">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Models">
+ <text x="278.0" y="13.8" stroke="none" text-anchor="middle" data-name="Models">Models</text>
+
+ </g>
+ </g>
+ <g transform="translate(0, 898)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Models">
+ <g transform="translate(8, 8)" fill="#33322E" data-name="Models">
+ <g transform="translate(20, 20)" fill="#33322E" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Models">
+ <g stroke-dasharray="4 4" data-name="Models">
+ <path d="M64.0 87.0 L64 115 L79.39230174726517 130.30013227572465 L79.4 130.3 " fill="none" data-name="Models"></path>
+ </g>
+ <path d="M70.9 129.4 L74.7 125.6 L78.4 121.8 L84.1 135.0 Z" data-name="Models"></path>
+ <g stroke-dasharray="4 4" data-name="Models">
+ <path d="M231.8 95.0 L231.75 115 L216.19793977786054 130.3213174888733 L216.2 130.3 " fill="none" data-name="Models"></path>
+ </g>
+ <path d="M217.2 121.8 L220.9 125.6 L224.7 129.4 L211.4 135.0 Z" data-name="Models"></path>
+ <g data-name="Ticket">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Ticket">
+ <rect x="6.0" y="8.0" height="79.0" width="116.0" data-name="Ticket"></rect>
+ <path d="M6.0 40.0 L122.0 40.0" fill="none" data-name="Ticket"></path>
+ </g>
+ <g transform="translate(6, 8)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Ticket">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Ticket">
+ <text x="50.0" y="13.8" stroke="none" text-anchor="middle" data-name="Ticket">Ticket</text>
+
+ </g>
+ </g>
+ <g transform="translate(6, 40)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Ticket">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Ticket">
+ <text x="0.0" y="13.8" stroke="none" data-name="Ticket">unsigned row</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Ticket">unsigned seat</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="Reservation">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Reservation">
+ <rect x="163.0" y="0.0" height="95.0" width="138.0" data-name="Reservation"></rect>
+ <path d="M163.0 32.0 L301.0 32.0" fill="none" data-name="Reservation"></path>
+ </g>
+ <g transform="translate(163, 0)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Reservation">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Reservation">
+ <text x="61.0" y="13.8" stroke="none" text-anchor="middle" data-name="Reservation">Reservation</text>
+
+ </g>
+ </g>
+ <g transform="translate(163, 32)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Reservation">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Reservation">
+ <text x="0.0" y="13.8" stroke="none" data-name="Reservation">Ticket ticket</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Reservation">char[8] password</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="Reservation">char[32] note</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="Event">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Event">
+ <rect x="0.0" y="135.0" height="126.0" width="295.0" data-name="Event"></rect>
+ <path d="M0.0 167.0 L295.0 167.0" fill="none" data-name="Event"></path>
+ </g>
+ <g transform="translate(0, 135)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Event">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Event">
+ <text x="139.5" y="13.8" stroke="none" text-anchor="middle" data-name="Event">Event</text>
+
+ </g>
+ </g>
+ <g transform="translate(0, 167)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Event">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Event">
+ <text x="0.0" y="13.8" stroke="none" data-name="Event">Hall* hall</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Event">String name</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="Event">Date date</text>
+ <text x="0.0" y="60.6" stroke="none" data-name="Event">OrderedList&lt;Ticket&gt; tickets</text>
+ <text x="0.0" y="76.2" stroke="none" data-name="Event">OrderedList&lt;Reservation&gt; reservations</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="Hall">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Hall">
+ <rect x="335.0" y="151.0" height="95.0" width="181.0" data-name="Hall"></rect>
+ <path d="M335.0 183.0 L516.0 183.0" fill="none" data-name="Hall"></path>
+ </g>
+ <g transform="translate(335, 151)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Hall">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Hall">
+ <text x="82.5" y="13.8" stroke="none" text-anchor="middle" data-name="Hall">Hall</text>
+
+ </g>
+ </g>
+ <g transform="translate(335, 183)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Hall">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Hall">
+ <text x="0.0" y="13.8" stroke="none" data-name="Hall">int number</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Hall">unsigned rowCount</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="Hall">unsigned seatsPerRow</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="H">
+
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g data-name="Generic Classes">
+ <g fill="#c0baac" stroke="#33322E" data-name="Generic Classes">
+ <rect x="574.0" y="342.0" height="484.0" width="447.0" data-name="Generic Classes"></rect>
+ <path d="M574.0 374.0 L1021.0 374.0" fill="none" data-name="Generic Classes"></path>
+ </g>
+ <g transform="translate(574, 342)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="italic" data-name="Generic Classes">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Generic Classes">
+ <text x="215.5" y="13.8" stroke="none" text-anchor="middle" data-name="Generic Classes">Generic Classes</text>
+
+ </g>
+ </g>
+ <g transform="translate(574, 374)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Generic Classes">
+ <g transform="translate(8, 8)" fill="#33322E" data-name="Generic Classes">
+ <g transform="translate(20, 20)" fill="#33322E" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Generic Classes">
+ <path d="M202.8 71.0 L236 71 L256 71 L256.0 71.0 " fill="none" data-name="Generic Classes"></path>
+ <path d="M202.8 65.7 L202.8 71.0 L202.8 76.3 L189.5 71.0 Z" data-name="Generic Classes"></path>
+ <g stroke-dasharray="4 4" data-name="Generic Classes">
+ <path d="M216.0 356.5 L236 356.5 L261.3333333333333 356.5 L261.3 356.5 " fill="none" data-name="Generic Classes"></path>
+ </g>
+ <path d="M254.7 361.8 L254.7 356.5 L254.7 351.2 L268.0 356.5 Z" data-name="Generic Classes"></path>
+ <g data-name="List&lt;T&gt;">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="List&lt;T&gt;">
+ <rect x="27.0" y="0.0" height="142.0" width="163.0" data-name="List&lt;T&gt;"></rect>
+ <path d="M27.0 32.0 L190.0 32.0" fill="none" data-name="List&lt;T&gt;"></path>
+ </g>
+ <g transform="translate(27, 0)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="List&lt;T&gt;">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="List&lt;T&gt;">
+ <text x="73.5" y="13.8" stroke="none" text-anchor="middle" data-name="List&lt;T&gt;">List&lt;T&gt;</text>
+
+ </g>
+ </g>
+ <g transform="translate(27, 32)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="List&lt;T&gt;">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="List&lt;T&gt;">
+ <text x="0.0" y="13.8" stroke="none" data-name="List&lt;T&gt;">add(elem)</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="List&lt;T&gt;">insertAt(elem, index)</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="List&lt;T&gt;">removeAt(index)</text>
+ <text x="0.0" y="60.6" stroke="none" data-name="List&lt;T&gt;">findIndex(elem)</text>
+ <text x="0.0" y="76.2" stroke="none" data-name="List&lt;T&gt;">contain(elem)</text>
+ <text x="0.0" y="91.8" stroke="none" data-name="List&lt;T&gt;">operator[](index)</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="OrderedList&lt;T&gt;">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="OrderedList&lt;T&gt;">
+ <rect x="256.0" y="32.0" height="79.0" width="135.0" data-name="OrderedList&lt;T&gt;"></rect>
+ <path d="M256.0 64.0 L391.0 64.0" fill="none" data-name="OrderedList&lt;T&gt;"></path>
+ </g>
+ <g transform="translate(256, 32)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="OrderedList&lt;T&gt;">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="OrderedList&lt;T&gt;">
+ <text x="59.5" y="13.8" stroke="none" text-anchor="middle" data-name="OrderedList&lt;T&gt;">OrderedList&lt;T&gt;</text>
+
+ </g>
+ </g>
+ <g transform="translate(256, 64)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="OrderedList&lt;T&gt;">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="OrderedList&lt;T&gt;">
+ <text x="0.0" y="13.8" stroke="none" data-name="OrderedList&lt;T&gt;">insert(elem)</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="OrderedList&lt;T&gt;">remove(elem)</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="Date">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Date">
+ <rect x="259.0" y="182.0" height="95.0" width="130.0" data-name="Date"></rect>
+ <path d="M259.0 214.0 L389.0 214.0" fill="none" data-name="Date"></path>
+ </g>
+ <g transform="translate(259, 182)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Date">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Date">
+ <text x="57.0" y="13.8" stroke="none" text-anchor="middle" data-name="Date">Date</text>
+
+ </g>
+ </g>
+ <g transform="translate(259, 214)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Date">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Date">
+ <text x="0.0" y="13.8" stroke="none" data-name="Date">unsigned day</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Date">unsigned month</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="Date">int year</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="String">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="String">
+ <rect x="44.0" y="182.0" height="95.0" width="129.0" data-name="String"></rect>
+ <path d="M44.0 214.0 L173.0 214.0" fill="none" data-name="String"></path>
+ </g>
+ <g transform="translate(44, 182)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="String">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="String">
+ <text x="56.5" y="13.8" stroke="none" text-anchor="middle" data-name="String">String</text>
+
+ </g>
+ </g>
+ <g transform="translate(44, 214)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="String">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="String">
+ <text x="0.0" y="13.8" stroke="none" data-name="String">char* str</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="String">unsigned length</text>
+ <text x="0.0" y="45.0" stroke="none" data-name="String">unsigned count</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="Command">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Command">
+ <rect x="268.0" y="317.0" height="79.0" width="111.0" data-name="Command"></rect>
+ <path d="M268.0 349.0 L379.0 349.0" fill="none" data-name="Command"></path>
+ </g>
+ <g transform="translate(268, 317)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Command">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Command">
+ <text x="47.5" y="13.8" stroke="none" text-anchor="middle" data-name="Command">Command</text>
+
+ </g>
+ </g>
+ <g transform="translate(268, 349)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Command">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Command">
+ <text x="0.0" y="13.8" stroke="none" data-name="Command">String name</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Command">void (*exec)()</text>
+
+ </g>
+ </g>
+ </g>
+ <g data-name="Menu">
+ <g fill="#fdf6e3" stroke="#33322E" data-name="Menu">
+ <rect x="0.0" y="317.0" height="79.0" width="216.0" data-name="Menu"></rect>
+ <path d="M0.0 349.0 L216.0 349.0" fill="none" data-name="Menu"></path>
+ </g>
+ <g transform="translate(0, 317)" font-family="Helvetica" font-size="12pt" font-weight="bold" font-style="normal" data-name="Menu">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="center" data-name="Menu">
+ <text x="100.0" y="13.8" stroke="none" text-anchor="middle" data-name="Menu">Menu</text>
+
+ </g>
+ </g>
+ <g transform="translate(0, 349)" font-family="Helvetica" font-size="12pt" font-weight="normal" font-style="normal" data-name="Menu">
+ <g transform="translate(8, 8)" fill="#33322E" text-align="left" data-name="Menu">
+ <text x="0.0" y="13.8" stroke="none" data-name="Menu">List&lt;Command&gt; commands</text>
+ <text x="0.0" y="29.4" stroke="none" data-name="Menu">navigate()</text>
+
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g data-name="H1">
+
+ </g>
+ <g data-name="H2">
+
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</svg> \ No newline at end of file