BRS#
Bus Class Reference

Autobus. More...

Public Member Functions

 Bus (BusInfo Info, uint Id, uint Seats)
 Konstruktor. More...
 
 Bus (System.IO.Stream stream)
 Načtení z proudu. More...
 
uint Id ()
 vrátí ID autobusu More...
 
uint CityFrom ()
 vrátí ID počátečního města More...
 
uint CityTo ()
 vrátí ID cílového města More...
 
uint Plan ()
 vrátí ID plánu autobusu More...
 
DateTime LeaveTime ()
 vrátí čas odjezdu autobusu More...
 
uint Seats ()
 vrátí počet sedadel v autobusu More...
 
void FreeSeats (out Queue< uint > Seats)
 Volná sedadla. More...
 
void GetInfo (out BusInfo Data)
 Info o autobusu. More...
 
void Enable ()
 Povolit rezervace pro autobus. More...
 
void Disable ()
 Zakázat rezervace pro autobus. More...
 
bool Enabled ()
 Dotaz zda je autobus povolen. More...
 
bool AskSeats (ref Queue< uint > Seats, uint Customer)
 Dočasná rezervace. More...
 
bool LockSeats (ref Queue< uint > Seats, uint Customer)
 Trvalá rezervace. More...
 
bool UnlockSeats (ref Queue< uint > Seats, uint Customer)
 Zrušení rezervace. More...
 
void Backup (System.IO.Stream stream)
 Záloha. More...
 

Detailed Description

Autobus.

Třída obsahuje všechna data o jednom autobusu. Obsahuje konstatní data ve struktuře BusInfo, kontajner sedadel (instancí třídy Seat) a další položky (jako zámek pro vícenásobný přístup ReaderWriterLockSlim), které mohou v průběhu života třídy své hodnoty měnit. Každá instance má své unikátní číslo. Informace o počáteční a cílové stanici jsou uloženy ve struktuře BusInfo, plán sedadel je určen šablonou typu Plan.

Bus.png
Schematické znázornění třídy Bus
Note
Některé metody pracují se seznamy, ve kterých vystupují čísla sedadel. Stejně jako ve skutečném autobusu jsou sedadla číslována od 1 (0 není platné číslo sedadla). Nicméně je jasné, že interně jsou položky kontajneru sedadel indexovány od 0.

Definition at line 23 of file Bus.cs.

Constructor & Destructor Documentation

Bus.Bus ( BusInfo  Info,
uint  Id,
uint  Seats 
)

Konstruktor.

Vytvoření nového autobusu, který obsahuje kontajner zadaného počtu sedadel.

Parameters
Infostruktura BusInfo, která obsahuje data pro tento autobus.
Idjedinečné ID tohoto autobusu.
Seatspočet sedadel.

Definition at line 31 of file Bus.cs.

Bus.Bus ( System.IO.Stream  stream)

Načtení z proudu.

Třída je vytvořena načtením všech položek z proudu.

Parameters
streamvstupní proud s binárními daty.

Definition at line 47 of file Bus.cs.

Member Function Documentation

bool Bus.AskSeats ( ref Queue< uint >  Seats,
uint  Customer 
)

Dočasná rezervace.

Dočasná rezervace sedadel ze seznamu. Sedadla, která se povedlo rezervovat, zůstanou v seznamu, ostatní budou smazána.

Returns
true v případě všech úspěšných rezervací, false v případě nějakého nezdaru při rezervaci.
Parameters
Seatsseznam sedadel k rezervaci.
CustomerID rezervujícího.

Definition at line 159 of file Bus.cs.

void Bus.Backup ( System.IO.Stream  stream)

Záloha.

Vytvoření zálohy třídy všech datových položek do proudu (souboru, soketu, ...).

Parameters
streamvýstupní proud.

Definition at line 295 of file Bus.cs.

uint Bus.CityFrom ( )

vrátí ID počátečního města

Definition at line 75 of file Bus.cs.

uint Bus.CityTo ( )

vrátí ID cílového města

Definition at line 81 of file Bus.cs.

void Bus.Disable ( )

Zakázat rezervace pro autobus.

Definition at line 136 of file Bus.cs.

void Bus.Enable ( )

Povolit rezervace pro autobus.

Definition at line 128 of file Bus.cs.

bool Bus.Enabled ( )

Dotaz zda je autobus povolen.

Returns
true v případě, že je autobus povolen, false v případě, že je zakázán

Definition at line 145 of file Bus.cs.

void Bus.FreeSeats ( out Queue< uint >  Seats)

Volná sedadla.

Naplní seznam čísly volných sedadel.

Parameters
Seatsseznam, do kterého se vloží čísla volných sedadel.

Definition at line 107 of file Bus.cs.

void Bus.GetInfo ( out BusInfo  Data)

Info o autobusu.

Naplní strukturu BusInfo daty o autobusu.

Parameters
Datastruktura BusInfo s daty o autobusu.

Definition at line 122 of file Bus.cs.

uint Bus.Id ( )

vrátí ID autobusu

Definition at line 69 of file Bus.cs.

DateTime Bus.LeaveTime ( )

vrátí čas odjezdu autobusu

Definition at line 93 of file Bus.cs.

bool Bus.LockSeats ( ref Queue< uint >  Seats,
uint  Customer 
)

Trvalá rezervace.

Trvalá rezervace sedadel ze seznamu. Sedadla, která se povedlo rezervovat, zůstanou v seznamu, ostatní budou smazána.

Returns
true v případě všech úspěšných rezervací, false v případě nějakého nezdaru při rezervaci.
Parameters
Seatsseznam sedadel k rezervaci.
CustomerID rezervujícího.

Definition at line 205 of file Bus.cs.

uint Bus.Plan ( )

vrátí ID plánu autobusu

Definition at line 87 of file Bus.cs.

uint Bus.Seats ( )

vrátí počet sedadel v autobusu

Definition at line 99 of file Bus.cs.

bool Bus.UnlockSeats ( ref Queue< uint >  Seats,
uint  Customer 
)

Zrušení rezervace.

Zrušení rezervace sedadel ze seznamu. Sedadla, která se povedlo uvolnit, zůstanou v seznamu, ostatní budou smazána.

Returns
true v případě všech úspěšných zrušení rezervací, false v případě nějakého nezdaru.
Parameters
Seatsseznam sedadel k uvolnění.
CustomerID rezervujícího.

Definition at line 251 of file Bus.cs.


The documentation for this class was generated from the following file: