Společnost AMD na veletrhu Computex 2024 představila (YouTube) mimo jiné nové série procesorů pro desktopy AMD Ryzen 9000 a notebooky AMD Ryzen AI 300.
OpenCV (Open Source Computer Vision, Wikipedie), tj. open source multiplatformní knihovna pro zpracování obrazu a počítačové vidění, byla vydána ve verzi 4.10.0 . Přehled novinek v ChangeLogu. Vypíchnout lze Wayland backend pro Linux.
Národní superpočítačové centrum IT4Innovations s partnery projektu EVEREST vydalo sadu open source vývojových nástrojů EVEREST SDK pro jednodušší nasazení aplikací na heterogenních vysoce výkonných cloudových infrastrukturách, zejména pro prostředí nabízející akceleraci pomocí FPGA.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu aktuálně činí 2,32 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Ubuntu, Linux Mint a Manjaro Linux. Při výběru jenom Linuxu vede SteamOS Holo s 45,34 %. Procesor AMD používá 75,04 % hráčů na Linuxu.
Blíží se léto, chladiče topí, tranzistory se přehřívají, novinářům pomalu docházejí témata a nastává klasická okurková sezóna. Je tomu tak i mezi bastlíři? Na to se podíváme na Virtuální Bastlírně! Tentokrát se strahováci podívají na zoubek velmi slibně vypadajícímu open-source EDM projektu - ne, nejde o taneční hudbu, ale o elektroobrábění. Ukáží taky, jak vypadá starší cykloradar zevnitř nebo jak se testuje odolnost iPhonů.
… více »Společnosti Ticketmaster byla odcizena databáze s osobními údaji (jméno, adresa, telefonní číslo a část platebních údajů) 560 miliónů zákazníku. Za odcizením stojí skupina ShinyHunters a za nezveřejnění této databáze požaduje 500 tisíc dolarů [BBC].
Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.
Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.
Minule jsem lehce nastínil, co je to Root a na jednoduchém příkladě ukázal jednu z mnoha věcí, ke kterým by se dal použít. Jak bylo řečeno, Root slouží k analýze dat. Obvykle ale chceme analyzovat i něco jiného než náhodná čísla vygenerovaná v Rootu. Dnes se tedy pokusím popsat, jakými způsoby lze data do Rootu načítat a ukládat.
Jelikož Root je framework v C++, lze pochopitelně k vstupům i výstupům použít standatní prostředky C++. V Rootu samotném jsou pak např. implementovány třídy pro usnadnění manipulace s daty v XML (a to jak SAX tak DOM parser), tak pro komunikaci se SQL serverem. Toto velmi usnadní práci zvláště když chceme uložit nějaký celý rootovský objekt, např. uložení plátna c1
do databáze lze jednoduše provést takto:
gBenchmark->Start("writeSQL");
c1->Write("Canvas");
Tento a další příklady lze najít v $ROOTSYS/tutorials/sql
(resp. tutorilas/xml
). Když už jsem zde dal za příklad ukládání plátna, ještě zmíním, že objekty jako plátno jdou velmi snadno (c1->Print("graf.eps")
) ukládat do formátů ps, esp, jpg a mnoha dalších. Formát se se volí automaticky podle koncovky souboru (v našem případě grafy.esp
tedy eps formát).
Pokud explicitně nezvolíme způsob uložení objektu (např. do databáze) a zavoláme na objektu (těmito objekty jsou v Rootu nejčastěji rootvské stromy - TTree
) metodu Write()
(musíme mít ale otevřeny nějaký rootovský soubor TFile
), objekt se zapíše ve vlastním formátu Rootu (no, lépe řečeno, jedná se o serializaci objektů. Jak se píše v Root user's guide, rootovský soubor je jako UNIXový adresář, může obsahovat adresáře a objekty v neomezeném množství úrovní. Obsah takovéhoto souboru pak můžeme zobrazit a procházet např. pomocí TBrowser
(v příkazové řádce Rootu napíšeme new TBrowser()
a spustí se, jak již název napovídá, grafický browser, kterým můžeme procházet obsah souboru nebo otvírat další soubory). Pokud chceme načíst nějaký objekt v programu, patrně nejsnadněji toho dosáhneme zavoláním metody Get("object_key")
na objektu typu TFile
(myTFile->Get(object_key)
), kde klíč objektu obvykle zadáváme při jeho vytvoření (typicky první parametr konstruktoru) nebo při ukládání objektu(object->Write("new_key")
). Seznam všech klíčů objektů uložených v souboru získáme pomocí myTFile->GetListOfKeys()
. Výpis adresářů v souboru zas pomocí myTFile->ls()
a do adresáře se přesuneme pomocí myTFile->cd()
.
Jak již bylo řečeno, ukládání probíhá serializací objektů. O to se starají streamry. O streamrech a podrobnostech ukládání objektů se můžete dočíst v manuálu. Další zajímavou funkcí IO systém Rootu je možnost vzdáleného přístupu k rootovským souborům. Soubor, který chceme ukládat přes síť, musí být typu TNetFile
. Chová se stejně jako TFile
(také je to jeho potomek), akorát místo na disk přesměruje výstup na demona rootd (který pochopitelně musí běžet. Jména souborů jsou jako URL adresy s protokolem root
(např. root://cosi.kdesi.cz/root/test.root
). Podrobnosti (a jak rozběhnout demona) opět viz manuál. Soubory lze zpřístupnit i přes web sever. Soubor pak musí být typu TWebFile
a z Root pak k němu přistoupit přes protokol HTTP:
TWebFile webFile("http://cosi.kdesi.cz/rootFile.root");
webFile.ls()
Tiskni Sdílej: