Uživatelské nástroje

Nástroje pro tento web

Tento překlad je starší než originální stránka a nejspíše i zastaralý. Zobrazit změny.
Překlady této stránky?:

cs:bzbrowser

Toto je starší verze dokumentu!


Multistaniční prohlížeč datových záznamů - bzbrowser

Aplikace bzbrowser je určená pro prohlížení datových záznamů z uložiště, Aktuálně vykresluje screenshoty, jako pás záznamů složený podle času.

Interní Funkce

Třída SnapshotCollection dostává požadavky na interval času, který by měl být pokryt snapshoty (metoda cover), kouká se, jaká oblast je už pokryta a pokud nějaký interval není a měl by, tak se na něj zavolá get_snapshots z bzpost a jednotlivé snapshoty se naládují do nějaké funkce (self.sink) - tohle dělá v jiném vlákně, které si k tomu vyrobí aby volání cover neblokovalo a program odpovídal třeba na scrollování a další věci. V mainu se té třídě jako sink, tedy funkce, kterou to má na každý nový snapshot zavolat, předá spuštění funkce put_up_snapshot zase v jiném vlákně (řádek 122).

put_up_snapshot ten snapshot podle url stáhne, převede na obrázek a poté se předá té knihovně SDL, aby se mohl vykreslovat - to se ale musí udělat v hlavním vlákně, jinak by to SDL nezvládla, proto se vyrobí funkce finish a předá funkci run_on_main. finish se potom spustí na řádku 143.

cs/bzbrowser.1423485223.txt.gz · Poslední úprava: 2015/02/09 12:33 autor: kaklik