From the Desktop to the Mobile Cloud: Extending your Qt Widget Desktop Application as a Back-end Service



Similar documents
Cloud Computing. Chapter 8 Virtualization

Beginning Nokia Apps. Development. Qt and HTIVIL5 for Symbian and MeeGo. Ray Rischpater. Apress. Daniel Zucker

ArcGIS Platform. An Integrated System. Portal

Only Athena provides complete command over these common enterprise mobility needs.

Embedded Linux development training 4 days session

CTX OVERVIEW. Ucentrik CTX

On-premises vs. cloud

Manjrasoft Market Oriented Cloud Computing Platform

POINT-TO-POINT vs. MEAP THE RIGHT APPROACH FOR AN INTEGRATED MOBILITY SOLUTION

Manjrasoft Market Oriented Cloud Computing Platform

Petroleum Web Applications to Support your Business. David Jacob & Vanessa Ramirez Esri Natural Resources Team

Cost Savings Solutions for Year 5 True Ups

How To Develop A Mobile Application On An Android Device

Cloud File Services: October 1, 2014

Citrix XenDesktop Backups with Xen & Now by SEP

ENVI Services Engine: Scientific Data Analysis and Image Processing for the Cloud

Digital Communication Management (DCM)

Surface and Volumetric Data Rendering and Visualisation

Oracle s Primavera P6 Enterprise Project Portfolio Management

Qt and Cloud Services. Sami Makkonen Qt R&D Digia

SAP HANA Cloud Portal Overview and Scenarios

WebRTC: Why You Should Care and How Avaya Can Help You. Joel Ezell Lead Architect, Collaboration Environment R&D

New Qt APIs for Mobile Development. Mobility I Alex Blasche

Software defined networking. Your path to an agile hybrid cloud network

Comparing the Cost of Ownership of Physical PCs, VDI, and TetherView Desktops

SOLUTION BRIEF CA TECHNOLOGIES IDENTITY-CENTRIC SECURITY. How Can I Both Enable and Protect My Organization in the New Application Economy?

Windows Embedded Compact 7: RemoteFX and Remote Experience Thin Client Integration

SGI VizServer Systems with NICE Software for Remote Visualization Access via Private Clouds and Data Centers

Creating Dynamic IT Infrastructure at Reduced Cost with Cloud Computing

Corepoint Community Exchange Features and Value - Overview

Mobile Technique and Features

MITEL MiCOLLAB KEEPING PEOPLE CONNECTED AND PRODUCTIVE ANYTIME, ANYWHERE, ON ANY DEVICE KEY BENEFITS

SECURE, ENTERPRISE FILE SYNC AND SHARE WITH EMC SYNCPLICITY UTILIZING EMC ISILON, EMC ATMOS, AND EMC VNX

Dell Connected Learning for Schools. Transforming Education for the Digital Age

Native, Hybrid or Mobile Web Application Development

Hosted Virtual Desktops (VDI)

INDUSTRY OUTLOOK. The Virtual Office: The Next-Generation Workplace

How A Connection Broker Simplifies Hosted Desktop Environments

Cisco Enterprise Mobility Services Platform

SGI HPC Systems Help Fuel Manufacturing Rebirth

Simplify VDI and RDS Private Clouds for SMBs

Enterprise Mobility Space

Transform service delivery with HP Cloud Management

ORACLE MOBILE SUITE. Complete Mobile Development Solution. Cross Device Solution. Shared Services Infrastructure for Mobility

The Socialtext Enterprise Collaboration Platform

Collaborative Open Market to Place Objects at your Service

The Platform is the Planet

Vmware Horizon View with Rich Media, Unified Communications and 3D Graphics

Video Collaboration & Application Sharing Product Overview

MULTIPOINT VIDEO CALLING

Placing customers in the driver s seat to deliver amazing user experiences

Extending Desktop Applications to the Web

Accelerating Business Value by

Security Level: HUAWEI TECHNOLOGIES CO., LTD.

Oracle Identity Analytics Architecture. An Oracle White Paper July 2010

The cloud that s built for your business.

Citrix XenServer Backups with Xen & Now by SEP

TANGO Device Servers in Libera instruments

KEEPING PEOPLE CONNECTED AND PRODUCTIVE ANYTIME, ANYWHERE, ON ANY DEVICE

Espial IPTV Middleware. Evo Solution Whitepaper. <Title> Delivering Interactive, Personalized 3-Screen Services

It's all about business performance

Building Cloud-Connected Solutions with Exosite and Texas Instruments

Migration Scenario: Migrating Backend Processing Pipeline to the AWS Cloud

Quattra s Cloud Vision & Framework Value

Tivoli Storage Flashcopy Manager for Windows - Tips to implement retry capability to FCM offload backup. Cloud & Smarter Infrastructure IBM Japan

YOUR APP. OUR CLOUD.

Why Cloud BI? of Software-as-a-Service Business Intelligence. Executive Summary. This white paper explores the 10 substantial

Work with a large team in a fast-paced, agile environment within a Multinational Corporation (MNC)

How To Use Mitel Micollab

Securely. Mobilize Any Business Application. Rapidly. The Challenge KEY BENEFITS

Giving Voice to the Virtual Desktop. A Mitel and VMware White Paper

Java and the Internet of Things

The StrikeIron API Management Solution

Design for Success. Elevating Your Product s Capabilities through a Cloud-Connectivity System

DeltaV Web Server. DeltaV Web Server. Introduction. DeltaV Product Data Sheet. Gives you a secure view of your process from your desktop PC

VidyoConferencing for Service Providers A Solution & Business Model that Works VIDYO

VMware Horizon 7. End-User Computing Today. Horizon 7: Delivering Desktops and Applications as a Service

Transcription:

From the Desktop to the Mobile Cloud: Extending your Qt Widget Desktop Application as a Back-end Service Cameron Kiddle Senior Product Manager Calgary Scientific Inc. cameron.kiddle@calgaryscientific.com Kevin Ottens Software Craftsman KDAB kevin.ottens@kdab.com Volker Krause Senior Software Engineer KDAB volker.krause@kdab.com

Challenge?? YOU HAVE A Qt Widget desktop application with: Big or sensitive data High performance processing or rendering Specific hardware requirements YOU WANT Anytime, anywhere access from any device Real-time interactive performance Data security Flexible interface Collaboration

Common Approaches Remote Desktop? New Application? Other? Remote Desktop / VDI Pros: No source code modification, data secure on server, not limited by client hardware Cons: No flexibility to adapt interface to target platforms Develop a new web/mobile application Pros: Full flexibility to adapt interface to target platforms Cons: Unable to leverage time/money spent on existing application, client hardware limitations, data transmission/security issues

An Alternative Approach Extension as a Back-end Service Extend your application as a back-end service Pros: Leverage existing code, data secure on server, not limited by client hardware, flexibility to adapt interface to target platforms Cons: Source code modification / development required Leverage SDKs to stream select server side graphics and expose functionality to customizable clients on web/mobile devices

PureWeb Architecture Client PureWeb Client API Internet PureWeb Server PureWeb Service API Application C++

The PureWeb Advantage Collaboration / Conferencing Simultaneous interaction Social Expands deployment options Enables Software-as-a-Service Cloud Mobile Leverage existing application Web and mobile enablement Real-time and interactive Flexible interface Big Data High performance Process/visualize data where it is Data stays secure on remote server Minimize bandwidth/latency

PureWeb in Use Today Medical Energy CAD Data Analytics Big Science

PureWeb Enablement Process

Sample Code for Views Qt Scribble Service scribblearea.h scribblearea.cpp HTML5/JavaScript Client ScribbleClient.html ScribbleClient.js

Sample Code for Application State Qt Scribble Service scribblearea.cpp HTML5/JavaScript Client ScribbleClient.js

Sample Code for Commands Qt Scribble Service scribblearea.cpp HTML5/JavaScript Client ScribbleClient.js

PureWeb/Qt Bridge An investigation by KDAB to simplify the integration of PureWeb with Qt applications The following has been considered for the PureWeb/Qt Bridge Exposing a QWidget as a PureWeb view Exposing QObject methods as PureWeb commands Exposing QObject properties as PureWeb application state A prototype PureWeb/Qt Bridge has been created

PureWeb/Qt Bridge Prototype class RenderViewProxy ( const QString &viewname, QWidget *widget ) creates a proxy to export widget as a PureWeb view captures rendering of widget and copies this into the PureWeb imaging pipeline sets size of view to client size handles mapping of mouse/keyboard input void ObjectRegistrar::registerObject ( const QString &path, QObject *object ) object properties become part of PureWeb application state object.property_a -> path.property_a object slots and invokable methods become PureWeb commands object.slot_b -> path.slot_b

Live Coding Example with PureWeb/Qt Bridge

Questions? Cameron Kiddle Senior Product Manager Calgary Scientific Inc. cameron.kiddle@calgaryscientific.com Kevin Ottens Software Craftsman KDAB kevin.ottens@kdab.com Volker Krause Senior Software Engineer KDAB volker.krause@kdab.com Try PureWeb Today! http://www.calgaryscientific.com/pureweb