ICS Development Team

ICS Development Team

With hundreds of successful projects to our credit, ICS’ software development team understands the tools, technologies and techniques needed to turn ideas into successful products. We love sharing our knowledge and helping our clients innovate!

Articles by Author

Blogs:

A Media Manager for Automotive Infotainment (Part 1)

Monday, March 14, 2016 - 14:51 ">  •  By ICS Development Team  •  IVI, Qt, Media Manager, automotive IVI

We came up with an interesting architecture that addresses many of the vexing issues with existing IVI solutions.

Read full post

Fixed Function to Modern OpenGL (Part 4 of 4)

Tuesday, February 9, 2016 - 16:31 ">  •  By ICS Development Team  •  OpenGL, Qt, 3D, 3D rendering

Texture setup in modern OpenGL is nearly equivalent to what you are used to in the fixed-function API.

Read full post

Fixed Function to Modern OpenGL (Part 3 of 4)

Tuesday, February 9, 2016 - 16:20 ">  •  By ICS Development Team  •  OpenGL, Qt, 3D, 3D rendering

Next up, we're going to talk about OpenGL lighting, its origins, and theory and how to implement that theory in your shader programs.

Read full post

Fixed Function to Modern OpenGL (Part 2 of 4)

Tuesday, February 9, 2016 - 15:46 ">  •  By ICS Development Team  •  OpenGL, Qt, 3D, 3D rendering

In this blog post, we will compare and contrast Fixed-Function OpenGL with Modern OpenGL.

Read full post

Fixed Function to Modern OpenGL (Part 1 of 4)

Friday, February 5, 2016 - 15:53 ">  •  By ICS Development Team  •  OpenGL, Qt, 3D, 3D rendering

In this blog post, we will outline differences between Fixed-Function OpenGL with Modern OpenGL.

Read full post

Using OpenGL and Qt in a Scene Graph

Friday, July 24, 2015 - 09:56 ">  •  By ICS Development Team  •  Qt, QML, OpenGL, scene graph

This blog post presents a short example program that illustrates how to use OpenGL and Qt in a scene graph.

Read full post

Logging Events With BoostLog

Thursday, May 28, 2015 - 16:17 ">  •  By ICS Development Team  •  Qt, Boost, C++, Logging

In this post, we'll look at Boost::Log, a facility of the Boost C++ libraries that makes it easy to add logging to applications.

Read full post

Dynamic Language Selection in Qt

Friday, May 22, 2015 - 14:30 ">  •  By ICS Development Team  •  Qt, C++, localization, internationalization

In this blog post, we will show an example of how to support dynamic language selection in an application using Qt.

Read full post

Internet of Things: Connecting Intelligent Systems with MRAA

Tuesday, May 19, 2015 - 13:51 ">  •  By ICS Development Team  •  Internet of Things, IoT, user interface, MRAA, Software Development

A recent project related to the Internet of Things gave us a chance to highlight some of ICS' capabilities. 

Read full post

What Makes Medical Device Software Design and Development Different?

Tuesday, February 10, 2015 - 10:49 ">  •  By ICS Development Team  •  Software Development, Medical, FDA, Qt, QNX

What Makes Medical Device Software Design and Development Different?

Read full post

QNX Powers Ford's Next Connected Automotive Infotainment System, Sync 3

Thursday, December 11, 2014 - 15:22 ">  •  By ICS Development Team  •  IVI, QNX, Infotainment Systems, In-vehicle infotainment

Congratulations to our friends at QNX for powering Ford's next Connected Car System, Sync 3. Given that Qt is the standard GUI toolkit for QNX, I suspect that this means that Qt will soon become the de facto standard for IVI System development as well. Read more about this in the articles below: Ford drops Microsoft and revamps its Sync system for more speed - Engadget

Read full post

Qt and OpenGL: Loading a 3D Model with Open Asset Import Library (Assimp)

Thursday, May 15, 2014 - 10:11 ">  •  By ICS Development Team  •  OpenGL, Assimp, Qt, 3D

This blog post is the first in a series that will cover using OpenGL with Qt. In this installment, we will look at how to use Open Asset Import Library (Assimp) (1) to load 3D models from some common 3D model formats.

Read full post

Using Self-Signed Certificates in Qt Code

Thursday, January 2, 2014 - 12:44 ">  •  By ICS Development Team  •  Qt

This article will show how to create a self-signed SSL key for Apache and how the Qt code will use it.

Read full post

Model/View With BlackBerry 10 Cascades

Monday, October 28, 2013 - 08:59 ">  •  By ICS Development Team  •  Qt, QML, C++, Cascades, BlackBerry

The Cascades framework lets you create UIs for the BlackBerry Application Platform with relative ease. This Qt based framework can be used to develop native applications for the BlackBerry 10 mobile platform. It supports development in C++ and/or QML.

Read full post

A Multilayered Architecture for Qt Quick

Monday, September 16, 2013 - 09:34 ">  •  By ICS Development Team  •  Qt, QML

The architecture of a Qt Quick application is the difference between pain and joy. A good architecture makes C++ and QML integration seem natural, while a poor and muddled architecture makes it an exercise in frustration.

Read full post

Qt Contributors Summit 2013 Recap

Monday, July 22, 2013 - 11:57 ">  •  By ICS Development Team  • 

This year's Qt Contributors Summit was held in conjunction with KDE Akademy in Bilbao, Spain. The event was well attended by engineers from many diverse organizations that share a vital interest in the ongoing development of the Qt libraries.

Read full post

Integrating a Custom Widget into Qt Designer

Friday, July 12, 2013 - 13:34 ">  •  By ICS Development Team  •  Qt Designer, Qt

This blog post will describe how to write a custom Qt widget and how to integrate it into Qt Designer so that you can drag and drop it onto your designs. It will also provide an understanding of important differences between Qt 4 and Qt 5 when it comes to creating designable widgets.

Read full post

An Introduction to Clang Part 2

Friday, June 28, 2013 - 10:53 ">  •  By ICS Development Team  •  C++

IntroductionAs promised, here is a follow-up to An Introduction to Clang. I mentioned in that posting the cool thing about Clang is that it is library based and offers public APIs that allows one to access information about a C or C++ program with relative ease. In this post we will work through an example using Clang's API to write our own "baby IDE" that parses C and C++ code and performs syntax highlighting.

Read full post

Building Qt 5 on Raspberry Pi

Friday, May 17, 2013 - 08:46 ">  •  By ICS Development Team  •  Raspberry Pi, Embedded

This is a HOW TO guide for building Qt 5 for the the Raspberry Pi, and building and deploying Qt 5 apps using Qt Creator.

Read full post

Object Serialization and Persistence using QDataStream

Monday, April 22, 2013 - 08:51 ">  •  By ICS Development Team  •  Qdatastream, Qt

This article will demonstrate how a user-defined class can use overloaded QDataStream operators for serialization and persistence.

Read full post

What's new in Qt 5: QStandardPaths

Friday, April 12, 2013 - 07:48 ">  •  By ICS Development Team  • 

Qt 5.0.0 introduced the QStandardPaths class. This expands on functionality that was in Qt 4 in the QDesktopServices class. The QStandardPaths class provides methods for accessing standard paths on a system such as the location of the user's desktop directory or location of a program executable. The class provides only static methods, so it never needs to be instantiated as an object.

Read full post

Multiple Inheritance in Qt

Friday, April 12, 2013 - 07:45 ">  •  By ICS Development Team  • 

Introduction A quick trivia quiz: Does Qt use multiple inheritance? If so, how many public Qt classes use it? Does any Qt class directly inherit from more than two classes? Does Qt let you multiply inherit (directly or indirectly) from QObject? If you can correctly answer these questions off the top of your head you're definitely a Qt and C++ guru and can stop reading now. If not, then by the end of this article you will be able to answer these questions and impress your colleagues with your knowledge.

Read full post

An Introduction to Clang

Friday, April 12, 2013 - 07:42 ">  •  By ICS Development Team  •  C++

In this blog post I will be writing about some of my experiences with clang. What is clang? It is a front end to the LLVM compiler and is designed to compile C, C++, Objective-C, and Objective-C++ to machine code. The LLVM Project "is a collection of modular and reusable compiler and toolchain technologies," meaning that you could use LLVM to create a compiler for just about any language you'd like, including your own invented language, were you so inclined.

Read full post

Marketing Push

Wednesday, January 30, 2013 - 12:34 ">  •  By ICS Development Team  •  Qt, PhoneGap, Raspberry Pi

This week we did some marketing to promote the project. All of this effort stimulated some good discussion on the blogs and callback developer mailing list.

Read full post

New Qt 5 / WebKit 2 WebView APIs

Wednesday, January 30, 2013 - 12:34 ">  •  By ICS Development Team  •  Qt, PhoneGap

There was no blog posting last week because I was away for some vacation in a warm place. This week work continued implementing the APIs for Accelerometer and Notification and using the Qt Simulator for testing.

Read full post

Repos Moving

Wednesday, January 30, 2013 - 12:33 ">  •  By ICS Development Team  •  Qt, Cordova, Raspberry Pi, PhoneGap

This week we finished implementing some Cordova APIs (at least for the Qt 4 version). Compass and Accelerometer are done and some of Events was implemented. Notification is done as is most of File support and we are starting work on Contacts and Camera.Note that I am going to start consistently using the name Cordova rather than Callback orPhoneGap for this project.

Read full post

Corinthian Leather

Wednesday, January 30, 2013 - 12:32 ">  •  By ICS Development Team  •  Qt, Cordova, PhoneGap

This week we switched to the new repository. Some pull requests from the old repository had to be resubmitted. Changes were committed for :

Read full post

Move to QML

Wednesday, January 30, 2013 - 12:32 ">  •  By ICS Development Team  •  Qt, QML, Raspberry Pi, Cordova

Since the last posting we properly set up deployment of Cordova Qt for MeeGo Harmattan (e.g. the Nokia N9 phone). We also got Qt 5 packages including WebKit built for MeeGo Harmattan and tested it on a Nokia N9. Incidently, a big PR1.2 software update rolled out this week for MeeGo Harmattan phones.

Read full post