Express Logic Embedded RTOS Solutions Express Logic RTOS Embedded Solutions Partners ThreadX RTOS Real-Time Preemption Threshold TCP/IP White Papers
The Real Time Operating Systems Solutions Company - RTOS
Express Logic RTOS Embedded Solutions
ThreadX
FileX
NetX
PegX
USBX
ThreadX and Embedded RTOS Training
Files to Download
Files to Download

 

 

PegX

PegX Technical Features

Programming Model

The PegX library is written entirely in C++ and implements an event-driven programming paradigm at the application level. The event-driven paradigm has proven to be a superior method for creating user interface software, providing structure and order to the otherwise difficult task of responding to external system events arriving asynchronously from many sources.

Reduced Size

PegX achieves a small footprint through several means, including heavy reliance on C++ inheritance to encourage code re-use. Each control type is built incrementally upon its predecessor, allowing you to select and use only the objects which meet your requirements without forcing you to carry along any unneeded baggage. In addition, PegX is written with the embedded market firmly in mind, meaning that the value of every feature is weighed against the code size and performance requirements of that feature.

In addition the PegX library is configured at compile time to include only the features your application requires. A large set of configuration flags allow you to completely define the set of input devices, drawing primitives, and many higher level features that your target will require. This configuration capability allows you to remove at compile time any library features that your application does not require, in essence allowing you to customize the library to exactly meet your needs.

A minimum PegX footprint requires roughly 50K of code space, 4K of stack, and 2K of dynamic memory. A typical full-featured GUI requires a PegX footprint of roughly 100K code, 4K Stack, and 8K of dynamic memory.

Maximum Performance

PegX achieves maximum performance by minimizing the system overhead required to maintain a graphical presentation. This includes support for advanced window and viewport clipping techniques that prevent unnecessary screen drawing. In addition, PegX always interacts directly with video and input hardware to achieve the greatest possible throughput.

Highly Portable

PegX achieves portability primarily by abstracting all hardware dependent functionality. The vast majority of the PegX library is completely hardware independent, relying on well-defined hardware interface objects to provide a consistent, simple, and reliable set of I/O methods. PegX applications are running today on all of the most common embedded processors including x86, ARM, PowerPC, MIPS, StrongARM, ColdFire, Dragonball, Blackfin, TI, Hitachi, ST20, and CPU32 based microprocessors. Several working examples supporting the most common display and input types are provided with the library.

PegX also avoids the use of intrinsic data types and floating point math to eliminate problems associated with CPU word length differences and the common lack of floating point support

Flexible and Powerful API

The PegX library provides an intuitive and robust object hierarchy. Objects may be used directly as provided, or enhanced through user derivation. PegX imposes no artificial limits on how objects are used, meaning that the user is free to design screens with an indefinite nesting level of controls within windows within other windows. You will find that you can do things very quickly and easily with PegX -- things that would be very difficult and time-consuming using the mainstream desktop GUI programming environments.

The default appearance of PegX objects is almost identical to the common desktop graphical environments. This appearance can, of course, be enhanced or simplified to fit the requirements of the application. In fact users often prefer to create a user interface with a very custom appearance and no resemblance to the desktop graphical environments. This is also readily accommodated within the design of PegX.

The PegX API is defined entirely by the public functions provided by the library classes. This API provides robust and intuitive methods for performing even very complex graphical operations. We encourage you to obtain an evaluation copy of the library and experiment with PegX to insure that the library meets your project’s requirements.
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ThreadX Embedded RTOS Home Page ThreadX Embedded RTOS Inquiry ThreadX RTOS Embedded News