Embedded vývoj v Clutteru a Mx



Podobné dokumenty
Multiplatformní GUI toolkity

Jazyk C# (seminář 9)

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13

Základní informace. Operační systém (OS)

dostat zdroják Petr Zemek Fakulta informačních technologií VUT v Brně izemek

Dílčí příklady použití jazykových konstrukcí v projektu. Jazyk C Příklady. Pravidla překladu v gmake. Zadání

Prostředí pro výuku vývoje PCI ovladačů do operačního systému GNU/Linux

Úvod 13 O čem je tato kniha? Pro koho je tato kniha? Jak studovat tuto knihu? Poděkování 16 Zpětná vazba od čtenářů Zdrojové kódy ke knize Errata 17

Podpora skriptování v Audacity

Maturitní témata Školní rok: 2015/2016

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ v Praze Ú12110 Ústav přístrojové a řídící techniky

Matematika v programovacích

Alpine Linux: minimalistická distribuce nejen na server

Při studiu tohoto bloku se předpokládá, že student je zvládá základy programování v jazyce Java s využitím vývojového prostředí NetBeans.

Práce s knihovnami. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016

Angličtina program k procvičování slovní zásoby

PROGRAMOVÁNÍ V C++ CVIČENÍ

Velmi stručný návod jak dostat data z Terminálu Bloomberg do R

KAPITOLA 13. Grafika a zvuk. Linux a grafika

Linuxové distribuce. Michal Dočekal

1. Začínáme s FrontPage

Specifikace projektu Ocerus

Formy komunikace s knihovnami

Aplikace s grafickým uživatelským rozhraním

Bc. Martin Majer, AiP Beroun s.r.o.

FORTANNS. 22. února 2010

cena jednodenního školení: 4000Kč/osoba, druhá a další z téže firmy 3000Kč cena dvoudenního školení: 7000Kč/osoba, druhá další z téže firmy 6000Kč.

TÉMATICKÝ OKRUH Softwarové inženýrství

Název modulu: Tvorba webu pomocí XHTML a CSS začátečníci

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica

Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev

Zpracování signálu z obrazového senzoru s využitím OS Linux pro embedded zařízení

Robot Operating System. Ing. Zdeněk Materna,

Obsah Úvodem... 5 Co je to vlastně formulář... 6 Co je to šablona... 6 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou...

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

David Bařina. 3. listopadu David Bařina FFmpeg 3. listopadu / 28

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14

RadioBase 3 Databázový subsystém pro správu dat vysílačů plošného pokrytí

CZ.1.07/1.5.00/

SRSW4IT Inventarizační SW. Prezentace aplikace. Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek

modrana: flexibilní navigační systém Martin Kolman

GUI APLIKACE PRO VÝUKU AUTOMATIZACE

KOMPONENTY APLIKACE TreeINFO. Petr Štos ECM Business Consultant

Knot DNS Resolver. Modulární rekurzivní resolver. Karel Slaný

Česká zemědělská univerzita v Praze

Microsoft Access tvorba databáze jednoduše

Univerzální grafické informační systémy

První kroky s METEL IEC IDE

Demo: Multipath TCP. 5. října 2013

D2 - GUI design. Radek Mečiar

Projekt: Internetové stránky obce Modletice

Návrh softwarových systémů - architektura softwarových systémů

Controlweb. Úvod. Specifikace systému

Pokročilé programování v jazyce C pro chemiky (C3220) Vstup a výstup v C++

Karel Bittner HUMUSOFT s.r.o. HUMUSOFT s.r.o.

Část IV - Bezpečnost 21. Kapitola 19 Bezpečnostní model ASP.NET 23

Katalog školení QAD. Cena 4000 Kč/osoba/den, druhá a další z téže firmy 3000 Kč. Storno podmínky školení:

Moderní techniky vývoje webových aplikací

Rozklad na prvočinitele. 3. prosince 2010

VYUŽITÍ PYTHONU PRO REALTIMOVÉ ŘÍZENÍ PERIFERIÍ

Příručka uživatele HELPDESK GEOVAP

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

5.15 INFORMATIKA A VÝPOČETNÍ TECHNIKA

Lekce 23 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Technologie Sharepoint

Popis ovládání aplikace - Mapový klient KÚPK

Funkční objekty v C++.

HMI * nad webovými technologiemi

VÝŘEZ OBLASTI BUNĚK VZORCEM

Základní datové struktury

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

Fyzikální laboratoř. Kamil Mudruňka. Gymnázium, Pardubice, Dašická /8

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

IntraVUE Co je nového

Téma Školitel Počet dní Moderní principy řízení výrobního podniku

IUJCE 07/08 Přednáška č. 1

Windows a real-time. Windows Embedded

NewLink Moravia. CSP aplikace: RedHorse Content management ISM Issue management

Svobodný software a zrakově postižení uživatelé

Komponenty pro ArcGIS API for JavaScript

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ

Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM. Manuál pro editaci ŽS. Verze 1.

Bridge. Známý jako. Účel. Použitelnost. Handle/Body

Osnova kurzu OBSLUHA PC ZÁKLADNÍ ZNALOSTI. pilotního projektu v rámci I. Etapy realizace SIPVZ

Pokyny pro žáky k testování písemné zkoušky na počítači

Alternativní operační systémy. Martin Drlík, Daniel Krotil OSY2A, ITV

Software programové vybavení. 1. část

Embedded Experience Ondřej Fuxa, YOUR SYSTEM spol. s r.o.

Semestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016

Satori. Uživatelský manuál

2 Grafický výstup s využitím knihovny

Katalog školení QAD a SIMATIC IT Preactor. Školení probíhají na adrese: Minerva ČR, Skálova 2490, Tábor začátek 9:00 hod do cca 16 hod

Klíčová slova: OOP, konstruktor, destruktor, třída, objekt, atribut, metoda

A G O N O T. RNDr. Filip Zavoral, Ph.D. Počet řešitelů: 4 5. Termín dokončení: červen 2013 ORGANIZÁ TOR TU R NA JŮ

Katalog školení QAD a SIMATIC IT Preactor. Školení probíhají na adrese: Minerva ČR, Skálova 2490, Tábor začátek 9:00 hod do cca 16 hod

Globema CS s.r.o. NetStork. Popis funkcí

Nové vývojové nástroje i5/os Rational Developer for System i V7.1

Natural Language Toolkit

Transkript:

Pavel Šimerda pavlix@pavlix.net OpenMobility 2011 Creative Commons Uved te autora 3.0 Česko

Embedded Oblíbený buzzword Vestavěná zařízení (v automobilech, budovách, venkovních terminálech) Jednoúčelová zařízení Malý výpočetní výkon, málo RAM Alternativní architektury (ARM)

MeeGo Embedded linuxová distribuce O vývoj se stará převážně Intel Pod hlavičkou Linux Foundation

Rozdělení kompetencí Glib/GType/GObject implementace OOP v jazyce C COGL objektové API nad OpenGL Clutter knihovna pro tvorbu GUI nad COGL API Mx knihovna GUI prvků pro Clutter ClutterGst knihovna prvků pro zobrazování videí Mash knihovna pro použití 3D modelů v Clutteru ClutterGtk knihovna pro propojení Clutteru a Gtk Cally rozšíření Clutteru o přístupnost

GObject Základní objektový typ pro knihovny napsané v C Implementace v C Prvky z dynamicky typovaných jazyků Introspekce a zpřístupnění knihoven jiným jazykům Signály

COGL Nízkoúrovňová knihovna (mezi OpenGL a Clutterem) Vznikla kvůli Clutteru a společně se vyvíjí Lze použít nezávisle na Clutteru Pro běžné aplikace není potřeba ji znát

Clutter Knihovna pro tvorbu GUI Obsahuje univerzální stavební prvky Nezahrnuje vzhled prvků Použitelný pro aplikační vývojáře

Clutter stavební prvky ClutterActor základní třída grafických prvků Clutteru ClutterStage abstrakce plochy či okna ClutterRectangle jednoduchý obdelník ClutterTexture plocha s obrázkem ClutterClone ukazuje jiný prvek ClutterText textový prvek

Mx Grafický toolkit nad Clutterem Obsahuje běžné ovládací prvky Obsahuje výchozí vzhled Umožňuje stylování pomocí syntaxe CSS Má čitelnou implementaci

Mx abstraktní třídy MxWidget základní třída grafických prvků Mx MxBin kontejner pro jeden prvek

Mx neviditelné prvky MxApplication aplikace MxWindow hlavní okno MxAction uživatelské akce MxClipboard abstrakce schránky MxFocusManager správce výběru prvků MxStyle načtený stylopis

Mx ovládací prvky MxButton tlačítko MxLabel popisek MxEntry editační pole MxComboBox kombobox MxSlider posuvník pro stavování hodnot

Mx kontejnery MxFrame rámeček MxExpander schovávací sekce MxViewport kontejner pro pro scrollování MxBoxLayout kontejner pro vertikální či hoizontální skládání prvků MxNotebook přepínatelný kontejner MxStack Kontejner, jehož prvky jsou zobrazené přes sebe MxOffscreen kontejner mimo viditelnou obrazovku.

Mx rozhraní MxDraggable MxDroppable MxFocusable MxScrollable MxStylable

Mx ukázka v Pythonu (nefunkční) #!/usr/bin/python3 from gi.repository import Mx application = Mx.Application(application_name="Test") window = application.create_window() window.show() application.run()

Mx ukázka v Pythonu (workarounds) #!/usr/bin/python3 import sys from gi.repository import Clutter, Mx # workarounds Clutter.init(sys.argv) Mx.set_locale() application = Mx.Application(application_name="Test") window = application.create_window() window.show() application.run()

Mx ukázka v C #include <stdlib.h> #include <mx/mx.h> int main (int argc, char **argv) { MxApplication *application = mx_application_new(&argc, &argv, "Test", 0); MxWindow *window = mx_application_create_window(application); ClutterActor *button = mx_button_new_with_label("button"); mx_window_set_child(window, button); mx_window_show(window); mx_application_run(application); } exit(exit_success); CPPFLAGS += pkg-config --cflags mx-1.0 LDFLAGS += pkg-config --libs mx-1.0

ClutterGst Knihovna pro zobrazení videa z různých zdrojů Zdroje jsou přístupné pomocí streamového frameworku GStreamer ClutterGstVideoSink ClutterGstVideoTexture

ClutterGstVideoSink Výstupní prvek GStreameru, který umí kreslit do ClutterTexture Lze zapojit do grafu prvků v GStreameru Vhodný pro složitější případy

ClutterGstVideoTexture Odvozený od ClutterTexture Hotový prvek pro vkládání videí do aplikace