BRS#
|
Klientské rozhraní mezi databází a zbytkem programu. More...
Public Member Functions | |
uint | AddCity (string Name) |
přidání města. More... | |
bool | AddCityAlias (string Name, uint Id) |
přidání zkratky k nějakému existujícímu městu. More... | |
bool | DeleteCity (string Name) |
smazání města podle jména. More... | |
uint | FindCity (string Name) |
nalezení města podle názvu. More... | |
bool | CityInfo (uint City, out CityInfo Info, out uint LinesOut, out uint LinesIn) |
získání informací o městě. More... | |
uint | AddBusPlan (string Name, uint Seats, string Data) |
přidání plánu autobusu. More... | |
bool | DeleteBusPlan (string Name) |
smazání plánu autobusu. More... | |
uint | FindBusPlan (string Name) |
nalezení plánu autobusu. More... | |
bool | BusPlanInfo (uint Plan, out PlanInfo Info, out uint Buses, out string Data) |
získání informací o plánu. More... | |
uint | AddBus (BusInfo Bus) |
přidání autobusu. More... | |
bool | DeleteBus (uint Bus) |
smazání autobusu. More... | |
uint | FindBus (uint From, uint To, DateTime LeaveTime) |
nalezení autobusu. More... | |
bool | BusInfo (uint uiBus, out BusInfo Info, out bool Enabled, out uint Seats, out Queue< uint > FreeSeats) |
získání informací o autobusu. More... | |
bool | EnableBus (uint Bus) |
povolení autobusu. More... | |
bool | DisableBus (uint Bus) |
zakázání autobusu. More... | |
uint | NewCustomer () |
unikátní ID pro nového zákazníka. More... | |
bool | AskSeats (uint Bus, ref Queue< uint > Seats, uint Customer) |
dočasné zamluvení sedadel. More... | |
bool | LockSeats (uint Bus, ref Queue< uint > Seats, uint Customer) |
trvalá rezervace sedadel. More... | |
bool | UnlockSeats (uint Bus, ref Queue< uint > Seats, uint Customer) |
zrušení rezervace sedadel. More... | |
uint | NextBus (uint Bus) |
nalezení dalšího autobusu v pořadí. More... | |
uint | NextCity (uint City) |
nalezení dalšího města v pořadí. More... | |
uint | NextPlan (uint Plan) |
nalezení dalšího plánu v pořadí. More... | |
bool | ListCity (string From, out string Name) |
nalezení dalšího města v abecedním pořadí. More... | |
bool | ListAlias (string From, out string Alias, out string City) |
nalezení dalšího aliasu města v abecedním pořadí. More... | |
uint IQuery.AddBus | ( | BusInfo | Bus | ) |
přidání autobusu.
Vytvoření autobusu s uvedenými daty a jeho přidání do databáze. Identifikační číslo (položka Id
struktury BusInfo
) nemusí být vyplněno, neboť dojde k jeho naplnění jedinečným číslem až při zpracování požadavku.
Implemented in MemoryDb, and ClientProcess.
uint IQuery.AddBusPlan | ( | string | Name, |
uint | Seats, | ||
string | Data | ||
) |
přidání plánu autobusu.
Name | název plánu/typu autobusu. |
Seats | počet sedadel. |
Data | rozvržení sedadel. |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.AddCity | ( | string | Name | ) |
přidání města.
Name | jméno města. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.AddCityAlias | ( | string | Name, |
uint | Id | ||
) |
přidání zkratky k nějakému existujícímu městu.
Name | název zkratky či dalšího názvu. |
Id | ID existujícího města, se kterým chceme propojit tuto zkratku. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.AskSeats | ( | uint | Bus, |
ref Queue< uint > | Seats, | ||
uint | Customer | ||
) |
dočasné zamluvení sedadel.
Dočasné zamluvení sedadel, které po určitém čase vyprší.
Bus | ID autobusu. |
Seats | seznam sedadel k rezervaci, neúspěšná sedadla budou smazána ze seznamu. |
Customer | ID zákazníka. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.BusInfo | ( | uint | uiBus, |
out BusInfo | Info, | ||
out bool | Enabled, | ||
out uint | Seats, | ||
out Queue< uint > | FreeSeats | ||
) |
získání informací o autobusu.
uiBus | ID autobusu. |
Info | struktura BusInfo, která bude naplněná daty. |
Enabled | přepínač, zda jsou povoleny změny v autobusu. |
Seats | počet sedadel autobusu. |
FreeSeats | seznam volných sedadel. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.BusPlanInfo | ( | uint | Plan, |
out PlanInfo | Info, | ||
out uint | Buses, | ||
out string | Data | ||
) |
získání informací o plánu.
Plan | ID plánu autobusu. |
Info | struktura PlanInfo k naplnění daty. |
Buses | počet autobusů využívajících tento plán. |
Data | data s rozložením sedadel. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.CityInfo | ( | uint | City, |
out CityInfo | Info, | ||
out uint | LinesOut, | ||
out uint | LinesIn | ||
) |
získání informací o městě.
City | ID města. |
Info | struktura CityInfo vyplněná daty. |
LinesOut | počet autobusů odjíždějících z tohoto města. |
LinesIn | počet autobusů přijíždějících do tohoto města. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.DeleteBus | ( | uint | Bus | ) |
smazání autobusu.
Bus | ID autobusu určeného ke smazání. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.DeleteBusPlan | ( | string | Name | ) |
smazání plánu autobusu.
Name | název plánu autobusu. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.DeleteCity | ( | string | Name | ) |
smazání města podle jména.
Provede smazání města z kontajneru a zároveň vymazání všech případných aliasů názvu města.
Name | název či alias města. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.DisableBus | ( | uint | Bus | ) |
zakázání autobusu.
Zakáže provádět změny v rezervacích.
Bus | ID autobusu. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.EnableBus | ( | uint | Bus | ) |
povolení autobusu.
Povolí provádět změny v rezervacích.
Bus | ID autobusu. |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.FindBus | ( | uint | From, |
uint | To, | ||
DateTime | LeaveTime | ||
) |
nalezení autobusu.
Funkce pro nalezení autobusu z města From do města To a s časem odjezdu rovným nebo nejbližším větším času LeaveTime.
From | ID výchozího města. |
To | ID cílového města. |
LeaveTime | čas, od kterého hledáme shodu (tj. dolní hranice času odjezdu). |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.FindBusPlan | ( | string | Name | ) |
nalezení plánu autobusu.
Hledání plánu autobusu podle zadaného jména.
Name | název plánu autobusu. |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.FindCity | ( | string | Name | ) |
nalezení města podle názvu.
Hledání města probíhá nejprve v normálních názvech měst a v případě neúspěchu ve zkratkách (aliasech)
Name | název či alias města. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.ListAlias | ( | string | From, |
out string | Alias, | ||
out string | City | ||
) |
nalezení dalšího aliasu města v abecedním pořadí.
Najde další alias v abecedním pořadí.
From | alias, od kterého hledáme následující. |
Alias | alias dalšího města v pořadí. |
City | jméno města odpovídající aliasu. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.ListCity | ( | string | From, |
out string | Name | ||
) |
nalezení dalšího města v abecedním pořadí.
Najde další město v abecedním pořadí.
From | název města, od kterého hledáme následující. |
Name | jméno dalšího města v pořadí. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.LockSeats | ( | uint | Bus, |
ref Queue< uint > | Seats, | ||
uint | Customer | ||
) |
trvalá rezervace sedadel.
Bus | ID autobusu. |
Seats | seznam sedadel k rezervaci, neúspěšná sedadla budou smazána ze seznamu. |
Customer | ID zákazníka. |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.NewCustomer | ( | ) |
unikátní ID pro nového zákazníka.
Operace rezervace sedadel je vždy vázána na konkrétního zákazníka identifikovaného jedinečným číslem. Díky tomu pak může zákazník své rezervace dodatečně zrušit nebo potvrdit dočasnou rezervaci.
Implemented in MemoryDb, and ClientProcess.
uint IQuery.NextBus | ( | uint | Bus | ) |
nalezení dalšího autobusu v pořadí.
Najde další autobus podle ID.
Pomocí této metody je možné sekvenčně procházet kontajner autobusů (zapouzdřený ve třídě Buses). Odpovídající kousek kódu může vypadat např. následovně
uint Id;
while((Id = query.NextBus(Id)) != 0) {
// zpracování autobusu s číslem Id
}
Metodu můžeme využít např. v situaci, kdy potřebujeme zakázat rezervace ve všech autobusech, které odjíždějí během následující hodiny (abychom mohli předat řidičům konečný seznam rezervovaných sedadel).
Bus | ID autobusu, od kterého hledáme následující. |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.NextCity | ( | uint | City | ) |
nalezení dalšího města v pořadí.
Najde další město podle ID.
City | ID města, od kterého hledáme následující. |
Implemented in MemoryDb, and ClientProcess.
uint IQuery.NextPlan | ( | uint | Plan | ) |
nalezení dalšího plánu v pořadí.
Najde další plán podle ID.
Plan | ID plánu, od kterého hledáme následující. |
Implemented in MemoryDb, and ClientProcess.
bool IQuery.UnlockSeats | ( | uint | Bus, |
ref Queue< uint > | Seats, | ||
uint | Customer | ||
) |
zrušení rezervace sedadel.
Bus | ID autobusu. |
Seats | seznam sedadel k uvolnění, neúspěšná sedadla budou smazána ze seznamu. |
Customer | ID zákazníka. |
Implemented in MemoryDb, and ClientProcess.