Professional Documents
Culture Documents
Użytkownik może również zobaczyć szczegóły każdego podcasta, jego listę komentarzy
oraz dodać własny komentarz. Można również odsłuchiwać podcasty przy pomocy wbudowanego
miniodtwarzacza w którym istnieje możliwość tworzenia playlist by nie utracić tego co planuje się
wysłuchać.
Wymagania systemowe
Klasa odpowiadająca za interfejs głównego okna programu oraz obsługę połączenia z serwerem.
Metody:
createProgresLine - metoda tworzy linie progresu na ekranie
Argumenty przyjmowane:
• brak
Zwraca:
• brak
Metody:
Argumenty przyjmowane:
• (string) stringIP – adres IP serwera w postaci łańcucha znaków
• (int) port – port serwera
Zwraca:
• brak
Klasa AudioRecord
Klasa odpowiadająca za obsługę i edycję nagrywania podcasta oraz odpowiedzialna za podkład.
Elementy klasy:
• EncoderLAME l, lame – obiekty typu EncoderLAME służące do zapisu do pliku .mp3
• String file – ścieżka nagrania
• String podklad – ścieżka podkładu
• int _recHandle – uchwyt nagrania
• byte[] recBuffer – bufor nagrania (w bajtach)
• int stream – strumień danych
• int mixer – strumień miksujący
• bool isPlayed – czy nagranie jest odtwarzane (true/false)
• int selectedDevice – urządzenie do nagrywania
• SYNCPROC _mySyncA, _mySyncB – procedury synchronizujące
• RECORDPROC _recProc – procedura wykorzystywana przy nagrywaniu
• ENCODEPROC _encProc – procedura wykorzystywana przy encodowaniu
• int _encHandle – uchwyt encodowania
• byte[] _encBuffer – bufor - encodowania
Metody:
Klasa Playlist
Klasa odpowiedzialna za odtwarzanie i zarządzanie playlistą (opcja dostępna po zalogowaniu w
kliencie do serwisu WWW)
Elementy klasy:
• DataTable table – tablica z danymi podcastów
• int playStream – strumień odtwarzania
• SYNCPROC _mySync – procedura synchronizująca
• float volume – poziom głośności odtwarzania
• string time – aktualny czas odtwarzania
• MainWindow parent – rodzic obiektu
• bool work – zmienna monitorująca działanie wątku sprawdzającego aktualny czas
Metody:
Klasa WindowPodcastDetails
Klasa odpowiedzialna sa okno ze szczegółami podcasta
Elementy klasy:
• PodcastData podcast – dane podcasta
• List<CommentInList> commentList – lista komentarzy do podcasta
• ServerService ss – obiekt nadzorujący połączenie z serwisem WWW
• string newComment – nowy komentarz
• ConnectionInfo conn – informacje o połączeniu
• long commentId – ID komentarza
• BackgroundWorker bgAddComment – wątek obsługujący dodawanie komentarza
Metody:
WindowPodcastDetails - Konstruktor klasy WindowPodcastDetails
Argumenty przyjmowane:
• ServerService service – obiekt typu ServerService obsługujący połączenie z serwisem
WWW
• ConnectionInfo connection – obiekt typu ConnectionInfo zawierający informacje
połączenia
• PodcastData details – szczegółowe dane podcasta
• List<CommentInList> comments – lista komentarzy
Zwraca:
• brak
Klasa WindowUploadPocast
Klasa odpowiedzialna za wysyłanie podcasta na serwer WWW.
Elementy klasy:
• string podcastName – nazwa podcasta
• string podcastDescription – opis
• string adult – stan czy tylko dla dorosłych
• string state – stan czy podcast jest publiczny czy prywatny
• string podcastPath – ścieżka do podcasta
• ServerService ss – obiekt odpowiadający za połączenie z serwisem WWW
• BackgroundWorker bgUploadPodcast – wątek obsługujący wysyłanie podcasta
• string[] tagsTable – tablica tagów podcasta
• bool uploadStatus – stan wysyłania
Metody:
Klasa ServerService
Klasa odpowiedzialna za wymianę informacji z serwerem.
Elementy klasy:
• ConnectionInfo connectionInfo
• NetworkStream nwStream
Metody: