Embedded Systems November 2000 Vol13_12

Issue link:

Contents of this Issue


Page 109 of 189

visual solutions for the real world The TILCON Real-Time Developer (TRTD) is the ideal solution for custom GUI/MMI development in a variety of industries, such as: embedded device interfaces, medical displays, SCADA systems, virtua l instruments and navigation systems. TRTD will drastically cut development time. Innovative architecture provides a clean separation between application code and windowing systems. With its rich set of objects and abil ity to test interfaces without writing code, TRTD quickly moves your project from concept. to prototype, to product. The TRTD API provides dynamic creation and editing of all objects. The API is identical across all platforms. including: The code is easy to test thoroughly; it quickly exercises all of its branches when tested with any non-monotonic data sequence long enough to fill the buffer and start replacing old values. under Watcom C. It looks about twice as elaborate as it really is; the code for scanning down the linked list is nearly duplicated. Since the median pointer needs to be derefe renced only o n odd numbered steps, the first of the near- duplicate copies has code to do that; the second lacks it. The two are exe- cu ted altem ately. As mentioned previously, the small- est possible data value, zero for the present case of unsigned integer data, is usurped as a chain stopper. In order to protect that marker, if the stopper LISTING 1, continued Median filter in C for( ; ; ) { NT Embedded Windows 2000/NT /95/98 Windows CE RTX (VenturCom Inc.) LynuxWorks Linux: Red Hat, SuSE, Lineo QNX® Photon microGUI® QNX Neutrino® QNX X Free86 new platforms coming soon f* Handle odcH1urbered item in chain *f f* Chain out the old datum.*/ if( scan->point == datpoint ) scan->point f* If datum is Larger than scanned value,*/ if( Cscan->value < datum) ) { f* chain it in here. *' datpoint->point = scanold->point; f* mark it chained in. */ scanold->point = datpoint; datum = 0; }; f* Step median pointer down chain after doing odcH1urbered element */ f* Step median pointer. */ median = median->point f* Break at end of chain */ if C scan == &small ) break I* Save this pointer and scanold = scan ; *' f* step down chain *' scan = scan->point ; f* Handle even-nurbered item. As above without the median step. *f if( scan->point == datpoint ) scan->point = successor; ("nurto·w ..,1 P'hv"'N!>\ Ill< P•value < datum) ) { }; 800-665 -5928 613 -226-3917 if C scan == &small ) break; scanold = scan ; scan = scan->point; 613 -226-3631 tup)'•IE;ht }000 rtlCON Snft-..~t" L1d All "llht\ '"s"'""d Produvalue ); datpoint->point = scanold->point; scanold->point = datpoint; datum = 0; successor; 108 NOVEMBER 2ooo Embedded Syst ems Programming

Articles in this issue

Archives of this issue

view archives of EETimes - Embedded Systems November 2000 Vol13_12