================================================================================ GDA Revision History ================================================================================ All modifications to the software are recorded by the developer in this file. Modification labels in this file correspond to tickets in the issue tracker. ================================================================================ ================================================================================ Version 4.0.41 - 25 April 2013 ================================================================================ #767: DA2 log markers are timed incorrectly when there are no 1KHz channels. #770: DA1/DA2 setup if second channel in log conditions specified with a blank logical operation, the condition is still written to the logger. Added maths functions: g_correct_x g_correct_y g_correct_z These allow correction of an improperly aligned 3 axis G sensor by rotating the G vector in 3d space based upon a reference vector at rest and a subsequent rotation about that vector in the xy plane. Fixed 'Paste Views' in right-click context menu. Select views after pasting. Info hint when no log data is loaded or there are no views in the current tab. Popup toaster if there is no data loaded with links to the various load options. Fixed bug in Emerald wrapper 'findLocalString' which could result in seeing incorrect data/rates etc if there were partial channel source name matches. ================================================================================ Version 4.0.40 - 07 Feb 2013 ================================================================================ Fixed release build configuration error that led to random crashes (due to Microsoft 'secure' scl). ================================================================================ Version 4.0.39 - 01 Feb 2013 ================================================================================ #653: Implemented DBC Signal Database CAN setup import for logger setups. #764: CTS Import. #695: Endian swap on scalar sensor. Added ability to specify bitmasks on scalar sensors. Setup Editor: Added option to display CAN IDs in decimal. Setup Editor: Display item counts next to entries in left hand tree. Fixed scaling of channels in GLO files that had user scalars. Fixed raw->real conversion of signed 8bit numbers from GLO files. Fixed a problem with local file maths in the maths editor due to changes to support layer/overlay based maths. Deleting a log file could result in its corresponding entry in the maths dialog from being erased correctly. Subsequently selecting local maths items could crash the application. Additionally, log file assignment of local maths could be incorrect. Update tab size after changing tab title. Added Maths functions: reinterpret_float64 eswap64 bitrev64 can_decode_le can_decode_be noise noise_gaussian Added info on setting up time/distance slip channels to manual. Fixed crash adding maths to variable rate log files since implementing vectorised maths. Fixed caching error in variable rate maths channels since implementing vectorised maths. Prevent unwanted display of sample points when zooming in under some circumstances. Additionally avoid flicker of sample points when zooming and points should be displayed. Branded Build: added *.ellog and *.log file extension. Improve "Insufficient space in temp folder" message. Fixed: When tabs are cleared, reset the selected tab group name. Ensure that the first default tab is selected when tabs are reset. Fixed channel iterator time-seek issue with variable rate log files. Fixed bug with variable rate maths channels that are not cached. Would result in very steppy, incorrect trace. Also could give very unusual zooming behaviour. Fixed truncation bug in outputs test window (source values are truncated to 8 bit values). ================================================================================ Version 4.0.38 - 08 November 2012 ================================================================================ #760: Endian swap function in maths. Added bit reverse functions. When viewing raw values in channels list, show integer conversion on maths channels, rather than the floating point value. This is useful if evaluating bit manipulations, even though there is no real concept of raw values for maths channels. Fixed crash deleting items from user views dialog in some cases. Fixed potential divide by zero (tentative crash report fix). Fixed crash having a maths channel that only references constant value channels. Fixed issue with constant value maths channels displaying zero in channel list. Fixed bug whereby deleting maths channels with layer maths in them would sometimes not be removed from the channels list. Fixed crashes when compiling maths channels that have cyclic dependencies. Added configurable background image for XY plots. #609: Overlays on XY Plot. Avoid pathological case in declick_if where condition is never true (avoids full channel scan for every sample calculated). Raises a maths error. ================================================================================ Version 4.0.37 - 04 October 2012 ================================================================================ Now style tab bar with groupable tabs. Added tab management dialog. Made it possible to select icons for tabs. #691: DL10 Setup: Configuration info button in logged channels section. #748: Catch exceptions arising from malformed markers in STF files so that the log file still opens. General re-factoring of code. Slight size optimization of LogSensorInfo structure. Build speed optimizations. #752: Fix LogChannel copying of LogChannelInfo and source references - behaviour should now be correct when dealing with chained outputs. This issue probably never resulted in any problems but the mechanism is now correct. #731: Display error on track map if a colour channel is selected and the track is in gps mode and there is no distance channel defined. Fixed critical bug in maths optimizer that would result in - being calculated as + -. Added new math opcode OP_SUBR_R so that this is now handled correctly and optimally. Additionally / would result in * (1/). Fixed with OP_DIVR_R opcode. Added unit tests for these situations. Fixed a crash when a log is added and does not have channels required by track view plot. #759 - Fixed: Using 'Auto Rate' in CSV import would result in incorrect resampling rate with respect to the output channel rate (i.e. data would be time-stretched). #758 - Fixed: Closing GDA very soon after startup can result in splash screen getting stuck and GDA using 100% cpu on one core. ================================================================================ Version 4.0.36 - 02 August 2012 ================================================================================ Use UTF8 rather than Latin1 by default in xml archiver. Fixed bug in XML parser. It will now parse quoted attribute values allowing single quotes in double quoted strings and double quotes in single quoted strings. ================================================================================ Version 4.0.35 - 20 July 2012 ================================================================================ GPS beacon: Slight change in closest point calculation. #734: Date and Time From Log File in dyno plot. #745: Default to having GPS distance channel calculation off, as in existing projects it can change behaviour. Fixed loading of log files when opening project to avoid "No tabs have been created" error if there are missing log files. Added gps_haversine_delta function to the maths VM. Added integrate_sum function to the maths VM. For distance calculations based upon gps distance delta values, this form of integration is more appropriate. Other forms of integration take into account the time and therefore give incorect results. Changed auto-calculated gps distance channel to use integrate_sum. Don't recreate calculated distance channel and associated caches unless actually required. #747: Display slope of regression line in XY-Plot. Plot regression line if slope is infinite. #744: Time report: Does not always display correctly after opening project. Track segments could end up not being applied to log files correctly depending upon when the log file(s) completed loading and became active. #733 Dyno Plot: Use smoothed values for max power/torque in legend. #628 Fixed bug where adding a trace view would not always have the correct range set on the ruler until the zoom bar is changed. The "open log files into:" dialog that is shown if opening GDA with files as command arguments, was changed to a task dialog. ================================================================================ Version 4.0.34 - 06 July 2012 ================================================================================ #743: Update log file lap configuration after applying initial marker config from project. Fixes issue where laps do not display correctly after opening a project that defines marker overrides for a log file. Draw GPS position of mouse on GPS track maps. More consistent look for custom message boxes on Vista/7. #737: GPS Lap auto beacon feature for generating lap markers. #732: GPS distance maths channel in Distance Channel Config. ================================================================================ Version 4.0.33 - 28 June 2012 ================================================================================ Updated to Emerald 4.28.00. #729: Implemented UTF8 encoding in project archives (allows the use of unicode). #736: When adding markers via the log trace view, default to lap markers and use the lap start beacon code from the currently active log. #740: Automatically resample maths channels if the functions used require it. Fixed an issue with time handling in GLO files. Fixed crash exporting track as KML. Added unit test for combine16_float32 maths function. Added unit test for combine16_float32 maths function (from raw sample data). Fixed bug in LogDataBuffer::getRaw function. Was resulting in access of raw values by maths functions such as combine16_float32 always returning zero. Fixed application of sensor raw scaling (use correct sample size). When using streamed files, channel data is read into memory until a limit of 256MB is reached (global to all data files), after which point, data is streamed from disk as needed. This gives big performance improvements for smaller log files, but also means that only data for active log files is cached. A slightly smarter caching scheme will be implemented in the future. Maths channel thread specific data is now freed before threads using it have exited but the maths channel was freed. Not only reduces memory usage but also fixes a problem that was introduced when adding layer maths that could mean that log files were not always freed correctly. Touch modified date in extended notes when saving log files from the project explorer. Fixed thread safety issue in application signal handler. Fixed thread safety issue in maths channels. Fixed a slight error in integrator. Added notes view for adding notes to tabs. ================================================================================ Version 4.0.32 - 08 June 2012 ================================================================================ Updated to Emerald 4.25.00. Fixed some stability issues. Slight optimization in trace plotting. Improved unit test coverage of maths. #726: Maths optimization: implemented OP_MUL_R and OP_ADD_R opcodes. Fixed lap start detection (fixed lap_seconds in maths, which started laps 1 sample too late if the lap marker is sample-aligned). Fixed integrate_lap. Fixed declick_if. Fixed mod(x,y) for floating point values. Fixed 'Logger Detected' toaster popup. #724: Vectorised Maths (optmization). ================================================================================ Version 4.0.31 - 24 May 2012 ================================================================================ Updated to Emerald 4.22.00 (faster, lighter + memmapped/streamed file support). Check if file already erase when erasing DA2. #692: Added error if DA2 is not in bootloader mode when uploading firmware. Log files are now opened in streamed mode to drastically reduce memory usage when several files are open in the project explorer. #700: Reduce memory usage of maths channels. (Implemented on-disk caching for large maths channel data). Due to streamed file/maths access, GDA can now access larger STF files. There is still a 4Gb limit imposed by the STF file format. #672: Store user edited markers in STF files when the log file is saved. Save of log files is now 'Save As'. Fixed a crash that could occur if viewing channel properties, closing the project, opening another project and then viewing channel properties again. #696: Rotation on GPS track map. Opening a log file now flags the project as modified. Fixed issue with modal loop moving away from Export KML dialog. Reduce top level menu flicker when loading in a project with several logs. Changed open log file dialog to a task style dialog, and provide the option to close other logs (since button text can now be more verbose). #699: Display units are now linked to the base units of a given channel, not just the channel name. Optimized gradient painting slightly. Fixed an error converting DLOG maths to GDA maths for some expressions containing unary +/- operators. Update XY plot when channel limits have changed that would affect the view. #701: DataFileSTF::cloneSetup: don't copy source channel VID_DATA when cloning. #712: acosh(x) or atanh(x) can cause unhandled exceptions. #709: Generate Markers on Alarm report context menu opens the config dialog. #703: Fixed: Open Project option is greyed out when no project is open. #711: Maths Editor: >= button in maths editor inserts > #707: Channel List Hex Display showing 8bits for all channels, not just 8bit ones. #710: Zoom In/Out on track map can crash at rediculous zoom levels. #706: Retain menu when in full screen mode, also display popup toaster detailing shortcut to exit full screen mode. #705: Invalid Layer Set name displayed after deletion. #713: CSV Export: Channel names should be quoted to allow delimiters within their names. #704: Don't invalidate track in main project view when using track editor, and ask user whether or not to apply track if it is invalid and they click OK. #708: Drop down list for operators in alarm report configuration. Added background task monitoring dialog. Added busy indicator to status bar (double click to show task monitor). Channels that need limits as a priority can elevate their calculation. Take better advantage of multi-core CPUs when calculating channel limits. Major refactoring of the way data is accessed from log data sources. This paves the way for support of more sample types in log files (e.g. 32bit/floating point). There are several knock-on changes to sensor processing. Additionally, it means that Maths Channels are actually buffered in double precision now - they were previously incorrectly buffered in single precision. Fixed modality bug in folder browser picker dialog. Added temporary folder check when the application starts up and when the temporary folder is changed. Removed blocking wait when obtaining partially rendered data for x/y plots. Removed blocking wait when obtaining rendered data for incomplete fft plots. #719: FFT should break up FFT for large data sets into multiple windows. Made channel statistics calculations abortable (less lag until next recalculation if adjusting selection, especially if the last request is costly). Sample count of channels in STF files is now limited to prevent the channel time from exceeding the file run time. This is to avoid occasional errors where there are additional (usually invalid) samples at the end of the log that throw off calculations and limits. #721: Track creation should be performed in a secondary thread. Changed 'ask to erase log' dialog to a task dialog. Ask to erase dialog has the option to always do the same action. Added dialog to ask about erasing log to quickmode. Added popup toaster if the log was erased. If automatically erased there is a link to reset the flag (along with an option in the preferences). Added explore... option to log file menus. Refactored threading of trace plotting. Implemented some optimizations in the Maths VM (reduce instruction overhead). Slight optimization to trace plotting code (apply user units to aggregate data rather than per-sample). Display partial render results on log trace view, if rendering is taking a long time to complete. #718: Generate peak data for quickly rendering trace views for large log files. Implemented on-disk caching of peak data and limits for log file based channels Caching of maths channel peak data/limits is not yet available. Added cache control page to user preferences for clearing out old cache data. Added statements to maths language. Each statement is separated by ';'. Added variables to maths language. Variable names are identified by $name. Added assignment operators: = += -= *= /= %= &= |= ^= <<= >>=. Added layer_metres() and layer_seconds() functions. ================================================================================ Version 4.0.30 ================================================================================ Changed the order in which comms fragments are merged in DL10 setups. CAN fragments are now always merged first - this fixes a bug (possibly in emerald?) that stopped CAN from working when a serial fragment was present. ================================================================================ Version 4.0.29 ================================================================================ Don't use "GDA" directly in crash detection dialog. Fix crash dragging layer offset if the associated layer has been destroyed. Close layer offset dialog if its associated layer is destroyed. #682: Setup Editor: Fix error handling DA1 output channel ID when 11/29bit mode is selected. ================================================================================ Version 4.0.28 - 01 March 2012 ================================================================================ #581: Added list of open log files with sub menu actions to the data menu. It offers similar options to the project explorer but more convenient in some cases. Extracting the setup from a log now launches the setup editor. Added DL10 comms fragments for Lotus CAN. Fixed bug in xml parser that would lead to XYPlots not being loaded from templates. #690: Reworked colour channel config in XY Plot configuration dialog. ================================================================================ Version 4.0.27 - 28 Feb 2012 ================================================================================ Workaround for PCs that don't support high resolution timers (GDA would hang at startup). The log playback clock could run at the wrong rate. Now using lower resolution timer, which appears to at least run in real time. Updated libraries containing a number of performance enhancements from GWv4. #654: Copy/Paste of outputs, maths and sensors in the setup editor. Multi-select of output, maths and sensors in setup editor. Updated gemscom API for latest gin file support. ================================================================================ Version 4.0.26 - 08 Feb 2012 ================================================================================ #561: Adjust layer offsets using the mouse on trace views (via 'Set Offset'). #664: Added checks to see if the application shut down correctly the last time it was used, and if not, offer not load the last tabs/log file. #651: Generic setup conversions. Fixed memory leak in file browser related to the folder tree view. Fixed crash opening track editor. Update track in track editor if distance channel changed. Fixed update of distance channel lookup when distance scaling/channel changes. Fixed track view cursor position when not using gps track mapping. Put in check on size of setup reported by DL10 logger, and fail if it is unrealistically large, rather than crash allocating a silly amount of memory. GPS track map displayed "invalid latitude channel" when it was really longitude. Added "empty time range" error to track editor. Error message on track view is no longer drawn under pan/zoom buttons. Made GPS waypoints editor modeless. GPS waypoints are now inserted at the GPS position of the cursor. Display current GPS position in waypoints editor. Show error on track map if trying to set position with no distance channel. ================================================================================ Version 4.0.25 - 01 February 2012 ================================================================================ #679: Prevent hanging bug when trying to draw a tacho with a NaN number. Fixed issue with itlog files when the starting time is > zero. Fixed parse of || operator in maths grammar. && and || operators were doing the wrong computations. Implemented HTTP crash report server, since existing SMTP method appears to fail on many machines. #681: Implemented custom playback rate. ================================================================================ Version 4.0.24 - 23 December 2011 ================================================================================ #453: Interpolation mode for channels. #454: Option to draw dots where each sample is when zoomed in. Implemented maths channel resampling (allows discrete-time functions to be applied to variable rate log files). #493: Fixed most of the GLO file support issues and re-enabled it. #663: Channel List: Raw hex numbers were always displayed in 32bit. Channel List now displays maths channels in normal mode if hex is selected. #671: Import .gpx files into track mapping. #674: Import .kml GPS data. [Also added support for kmz files] #650: Track View: option to show/hide colour legend. #601: Fixed: editing setup of a log file puts it in the recent setups menu. #157: Ability to zoom in on an area of the track map. #648: DA2 - When programming a setup, issue an erase log. #675: Abort button does not work on DA2 download. #660: Correct DA2 run time calculation. #657: Program DA2 time after any transaction. #677: DL10 Support. #658: Cannot change base units from 'unitless' on some logs. Support extra DA2 version information in log notes. Fixed GPS waypoint positions when plotting GPS data. Option to use GPS position for track map cursor rather than using distance. Suppress AutoPlay windows popup if GDA is in the foreground and a DA2 is plugged in. Fixed tiny memory leak at application exit. Refactored some of the data access code. Updated to boost 1.48. ================================================================================ Version 4.0.23 - Built on 18 November 2011. ================================================================================ Use <, and >. keys to move cursor by single sample increments in log view. Slight keyboard handling issue in log trace after having clicked on horizontal scrollbar. Fixed silly size of combo box in snap setup dialog. Made a couple of optimizations to sample cache handling in the maths. Can give huge speed improvements for some functions (declick() and prev()). Now using chunked buffers for sample caches, which can result in better memory usage for large datasets. Made external files take precedence in installer. ================================================================================ Version 4.0.22 - Built on 03 November 2011 ================================================================================ Fixed memory leak when showing channel properties dialog. Prevent crash in logger selection dialog if a logger was previously selected but all loggers have since been removed from the system and the selection dialog is redisplayed. #661: Math operators <= and >= were assigned to the incorrect opcodes. Improve error dialog when trying to upload a setup with the wrong logger type selected. Fix error in start/stop conditions for serial channels on DA1. Added zero arity version of the 'prev()' maths function for getting the previous value of the current channel. ================================================================================ Version 4.0.21 - Built on 26 Oct 2011 ================================================================================ Fix crash removing a source from a logger setup that is in use by an output. Fix crash removing an output from a logger setup that is in use by an output. Fixed incorrect offset when moving lane up/down in 'Configure Log View' window. Tentative fix for potential crash when rendering log lanes. #607: Outputs in setup editor: Sources appeared twice in autocomplete list. Added some additional units - including frequency, and gauge pressures. #598: Open recent log in project mode always starts blank project, should ask. Cleaner setup editor for ECU internal logs (downloaded with gwv4 4.1.5+). Fixed potentially incorrect rate assignment to channels after Trim Log File. Fixed a problem processing DLOG math sensors with references in a decreasing order. Added file address bar to file dialogs. Fixed memory leaks from file tree view. ================================================================================ Version 4.0.20 - Built on 30/09/2011 ================================================================================ Added DA2 support. #645: Convert DA1 setup to DA2 setup. #646: Progress bar for DA2 processing. Use chunked buffers for DA99 log files to reduce issues allocating large blocks of memory when processing large files. Tentative fix for crash involving channel picker popup. Fixed issue with GPS track mapping when GPS Valid channel starts in an invalid state. Use Mercator projection for GPS track maps. Track Editor: Changing selection range with 'selection' as the range now updates the track. #605: Fixed: Base units were not remembered. Added shortcut hint to tab tool tips. Prevent crash if app closed whilst help is open. Tentative fix for crash in maths library handling code. Remove duplicate entries in Maths editor channels list and autocomplete list. Fixed issue restoring project with non-recalculated track. #61: Option to colour track map based upon the value of a channel. Fixed incorrect angle of track-map position cursor in some situations. Fixed currently benign error in handling extended ID codes for the DA1. #642: Cannot select 'none' for channels in the GPS track map. Allow select none for all channel pickers, by default. Added bounds checking to emerald decompression function. Fixed indexing issue in emerald4 dll. ================================================================================ Version 4.0.19 - Built on 29/06/2011 ================================================================================ Fixed error in setup regarding log start/stop condition channels (DA1). Fixed error in DA99 tx CANID storage in stu archive. ================================================================================ Version 4.0.18 - Built on 28/06/2011 ================================================================================ Drop cache memory for maths channels that fail to compile. #622: "Pulse Count" for speed channels was not being stored in stu file or exported in da99 binary. Use source '1' when light is undefined. ================================================================================ Version 4.0.17 - Built on 24/06/2011 ================================================================================ Also show DA99 checksum in decimal after programming. Extended DA99 setup handling. ================================================================================ Version 4.0.16 - Built on 15/06/2011 ================================================================================ #619: Rate column sorting incorrect in setup editor. Added colour picker from GWv4 (resolves #615). Added colour swatch grid to colour picker popup. #542: Fixed justification of text in text edits (text scrolled off to the left on e.g. config window title edit). Scroll trace/graph views using right mouse button drag. #620: Save As button in log setup editor (from Project Explorer). Added extract setup to file in log file setup editor. Added extract setup menu option to log file nodes in Project Explorer. Added menu items to project explorer to set layer offsets. Added layer sub menus to trace window context menu. #616: Tacho gauge config dialog - use checkboxes rather than -1 for defaults. Added Zytek serial stream protocol for DA1. ================================================================================ Version 4.0.15 - Built on 02/06/2011 ================================================================================ #614: [memory optimizations] Use half the memory for cached samples in fixed rate maths channels. Other memory usage optimizations. Implemented concurrent non-cached maths channel handling to reduce memory overhead. Non cached channels are currently automatically picked by GDA. Abort maths channels that have runtime errors. Reduced exception handling overhead in maths channels. Optimized windowed derivative maths function. Added caching for declick function sub expressions to improve speed. Added various maths speed optimizations as a result of profiling. ================================================================================ Version 4.0.14 - Built on 20/05/2011 ================================================================================ #552: Make graph lanes multi-axis by default. #602: Channel Properties: Problem setting display units when base units set. #603: Export CSV: Time precision can be limited, leading to duplicate times. #604: Export CSV: option to remove time offset in output. Export CSV: Remember preference for output file extension on a per-format basis. Export CSV: Update channels if log file completed loading after showing dialog. Export CSV: update channel list when maths changes. Removing all maths channels would not update channel lists. Maths editor: Fixed: canceling edits and then opening same editor again retained canceled edits in the script panel. #608: Regression Line on XY Plot Prevent crash if a layer set is switched to that references closed log files. #610: Maths function: sample_count. #430: Display marker type in tool tip. Application could crash whilst loading projects with missing log files. Make main window update look cleaner at startup. Fixed a memory leak when layers changed. Changed exception handling and moved to use a new crash reporting system. This should catch crashes in worker threads much better. Updated gems lib. ================================================================================ Version 4.0.13 - 07 April 2011 ================================================================================ Update to latest gems lib. Includes multithreaded file list view to improve responsiveness of file browser (more improvements to come). Fixes browsing of Windows7 libraries. #593: Fixed setup of DA99 CAN/Serial protocol. #597: GDA sets all record rates to no record for a DA99L2. #596: GDA will not program at DA99L-2 logger. #592: Make da99 commcodes configurable in the setup editor for inputs used by the setup test. #551: GDA was erasing comcodes from DA99 setups. Added tool to reset DA99 comcodes in setups that have had these erased. Fixed potential crash when switching between quickmode and project mode. #595: Toggling quick mode off then back on resets to the demo template. #590: DL10 setup, logging conditions - wording in dialog needs changing. Fix crash opening log file setup editor. #594: Log file setup was not being displayed correctly. Remember CANID style preferences (16/32 bit option in setup editor). Fixed zero divide in CSV import of 1 column of data. Fixed auto-rate in CSV import (would always import at 1kHz). Fixed time overflow in CSV import. Remember user choices in import CSV dialog. #570: CSV Import: Unlike DLOG99, GDA describes the first line & columns as zero-indexed, i.e. the first row / column is row / column zero. #591: Load log(s) from explorer gives incorrect dialog in quick mode. #588: Import CSV: 1Khz is listed twice in the rate selection combobox. #571: Export CSV: channel list does not update when different source selected. #568: Export CSV: Remember user preferences. #569: Export CSV: Save tab separated files as .txt by default, not .csv. Fixed issue aborting import/export log threads. Import CSV: Added basic preview grid. #528: Import CSV: if file failed to be created, give a more appropriate error. #398: Setup Tester: return/escape key handling. #531: Use scientific notation on trace axes for large numbers. #399: Setup tester - should have alpha sort on name option. Fixed extract setup from file. ================================================================================ Version 4.0.12 - Built on 18 March 2011 ================================================================================ Updated gcmapi to version 1.5 (ecu comms lib). #582: DL10: Gear position should support decreasing values. Handle wrapped gear sensor. #583: DL10: Internal Temp (DL10) is shown in the logging list but not logged. Use default of 20Hz for channels setup for logging that do not have a default rate. #584: DL10 Setup: "stop log when not zero" => "stop log when zero". Implemented using an alarm. #586: [Fixed snap to fastest channel when maths channels are used]. #574: 'Run Time' should show decimal places when in auto decimal places mode. #585: DL10: Upload firmware. #565: Live update when editing channel properties. ================================================================================ Version 4.0.11 - Built on 04 March 2011 ================================================================================ Fixed error in steering scalar. Fixed screen selection. ================================================================================ Version 4.0.10 - Built on 04 March 2011 ================================================================================ DL10 setup: Don't update filename in setup editor caption to temporary name when uploading. DL10 setup: Fixed crash uploading setup with no gear setup. DL10 setup: Alpha-sort screen selector combo boxes. ================================================================================ Version 4.0.9 - Built on 04 March 2011 ================================================================================ #576 - Hide Test button in DL10 Setup editor. #579 - DL10: Invisible output mode not working correctly. #577 - DL10 setup editor does not prompt for save on program close. Programming logger would set the setup to the non-modified state. #578 - Tentative fix for showing select logger dialog when dl10 already enumerated. #580 - Move some setup editor button features to top-level menu items. Reorganised setup editor dialog. Added recent files to setup editor. Fixed refactoring of imported dlog maths. Fixed steer angle scalar setup. Added name sort combobox to channels list config dialog. ================================================================================ Version 4.0.8 - Built on 01 March 2011 ================================================================================ Fixed a few DL10 teething issues (not logging, setup menu hidden). ================================================================================ Version 4.0.7 - Built on 01 March 2011 ================================================================================ #566 - Implement DL10 setup. Add DL10 driver to installer. Fixed a few issues with keyboard shortcuts dialog. ================================================================================ Version 4.0.6 - Built on 10 February 2011 ================================================================================ #548 - Trim log data - excessive number of decimal places shown. #549 - Fixed range, entering a time with decimals works fine but entering a time in integer (eg 10) always returns zero. #550 - Cannot select internal/analogue/speed channels etc as sources in da99 setup. Loading keyboard short-cuts does not clear items that need to be cleared. Added combine16_float32 maths function (combine 2 16bit integers and interpret as a 32bit IEEE float). Added reinterpret_float32 maths function (interprets integer value as a 32bit IEEE float). Added option to view values in hex when displaying raw values in the channels list. ================================================================================ Release Candidate Version 4.0.5 - Built on 13 December 2010. ================================================================================ #547 - Data Analysis Standard - Dongle Update always crashes GDA. ================================================================================ Release Candidate Version 4.0.4 - Built on 09 December 2010. ================================================================================ Fix slight issue with quick start from quick mode. ================================================================================ Release Candidate Version 4.0.3 - Built on 09 December 2010. ================================================================================ #543 - Quick start page: Don't show if in quick mode. #544 - Fixed snap to fastest rate when there are invalid channels. Honour decimal places on 'Time' row of channels list. Prevent error message at shutdown if tried to open invalid file in bitmap view. ================================================================================ Release Candidate Version 4.0.2 - Built on 09 December 2010. ================================================================================ Fixed installation of demo files for GDA pro. #541 - Fixed possible crash when entering quick mode with non-existent demo file. ================================================================================ Release Candidate Version 4.0.1 - Built on 09 December 2010. ================================================================================ Fix possible lock-up with log file that has several maths channels that do not compile. #523 - Download log: If logger not detected, show select logger list. If list is empty, say no loggers detected in logger list. #524 - Quick Mode: on first time use, use last opened project or demo file. #525 - Demo project for first time load. #526 - Fixed crash when log playback completes and no views are displayed. #527 - Project explorer - if the project explorer is not the active window, clicking the notes button does nothing. #529 - Setup editor should have a windows close button. #530 - Keyboard Shortcuts: Shortcut text-box should be a label. #532 - Dblclick in script column on maths manager opens script dialog behind it. #533 - Rearrange tab should be removed from context menus. #534 - Workspace: Ability to hold down alt to disable snap of views. #535 - crash with cut/paste. #536 - Phantom autohide button on work-page windows. #537 - Project explorer: Can not enter usable area using keys i.e. ctrl+tab. #538 - Key for moving select to value on channel and time reports. #539 - cut/copy/paste in the main menu can be removed. Rearranged log view menu slightly. Renamed 'Paste' in layout menu to 'Paste Views' and disable if there is no layout data on the clipboard. Added centre cursor mode to time report. Changed defaults for zoom and select dblclick action for time + channel reports. Auto fix-up of log file name in obvious paths. ================================================================================ Release Candidate Version 4.0.0 - Built on 07 December 2010 ================================================================================ Refinements to DA99 connection (only read visible values from the logger). Added DA99 live values information to the manual. ================================================================================ Version 0.0.48 - 06 December 2010 ================================================================================ #476 - Display live DA99 values from Setup Test dialog. #495 - Track View: Not drawing on reload of project. #496 - Traces not shown on the first tab displayed are zoomed incorrectly. #497 - After first load of project, moving to a different tab sets the project to modified. #498 - Mis-spelled menu item: Centrr to Global Cursor. #500 - Manual: Missing variable CDROM_NAME in the installation section. #501 - Manual: Layout menu page references GWv4. #502 - Reset workspace layout: breaks with minimised side windows. #503 - Import CSV is greyed out if a log file has not yet been added to the project. #504 - Import CSV: Crashes when saving as new log file. #505 - Channel list menu: edit maths for calculated distance channel -> distance channel config. #506 - Improve handling of deletion of all lanes in a log trace view via menu. #507 - Trace is not redrawn if the channel is changed in the config dialog. #508 - Quick Mode. #510 - Load Template. #511 - Add Quick Mode section to manual. #512 - Dialog at start up to select quick mode/project mode. #514 - Export dialog should select main layer log file by default. #516 - Trim dialog should select main layer log file by default. #517 - Layout | Close all tabs broken. #518 - Quick Mode indicator in status bar. #519 - Consolidate save options when project is closed. #520 - Store expand state of project explorer nodes in the model. #521 - Setup Editor: Add incremental search to Output Rate and Sensor Gain. #522 - Setup Editor: DA99-L2: Remove com codes from inputs - not relevant. Fixed error in time handling of CSV import resulting in huge files. Fixed scaling in CSV import. Improved progress metering of CSV import. Load imported CSV after import. When selecing a replacement log file for one that does not exist, the track and layer assignments are not fixed-up. Force project to modified state if log files are fixed up during project load. Adjusted names of Open Log file menu items (add/replace), and change 'project' to 'session' when in Quick Mode. ================================================================================ Version 0.0.47 - Built on 30 November 2010 ================================================================================ #21 - Help File. #449 - Maths Editor: Function tip can obscure cursor location. #463 - On multi axis offset should be able to go negative. #469 - On pc with low privileges, fails to write common_settings.xml at exit. #470 - && not parsing correctly in maths. #471 - Unary ! maths operator. #466 - Add Not to the histogram and/or conditions. #474 - Stretchable/resizeable layout. #477 - Fixed issue with side-docked windows and unusual sizes. #472 - Load/Save track map. #473 - Option to store generated track map in project rather than recalculating every time. #480 - Add way of scrolling one sample at a time (ctrl and arrow keys). #481 - Centre to global cursor command. #484 - Notes window should not have 'Rename Window' in its context menu. #483 - Reset workspace layout is broken. #487 - Warn if auto file name cannot be generated because information is missing from the notes. #457 - Add DA1 drivers to installer and put in application folder. #478 - Read log failure button icon. #479 - Optional time column in csv export. #464 - Centre cursor option on channel report. #491 - Edit log file setup. #489 - Data analysis pro does not remember location for storing downloaded data. #486 - Add recent log files list to file menu. #490 - Display DA99 checksum when setup is programmed in the logger output info. #433 - Print out of track map and sections grid. Changed selection statistics defaults. Selection statistics now display for all data when there is no selection. Avoid potentially long hang when closing a project or the application if still generating maths in the background. Internal adjustments to the way time/distance is handled by log views. Change channel list configuration dialog title. Ellipsis text in maths manager dialog. Checkbox in bar view configuration dialog for vertical/horizontal orientation. Channels can now be dropped onto gauge views. Channels can now be dropped onto histogram views. Channels can now be dropped onto fft views. Histograms and FFT views can now be added from the right-click menu on the channels list. Added tooltips to channel list column header. Disable 'edit maths' button in channel properties window in non-pro versions, which would crash the application if clicked. Fix ok/cancel buttons on generate histogram bins dialog. Snap to tab client area bounds when moving windows. Loading the last project at startup could make it appear to be modified. Fixed program setup menu command when using DA99. ================================================================================ Version 0.0.46 - Built on 10 November 2010 ================================================================================ Disabled GLO support for the time being. Changed user interface for setting up channel report axes and made it more flexible. Min/Max mode is now configurable on channel report. Dropping a channel into a channel report now updates the config dialog. Added variadic function handling to maths. Added avg and avg_nonzero functions to maths. Show maths script as tool tip in channel properties. Improved log trace configuration dialog. Added GPS valid/fix channel option to GPS track mapping. Handle relative paths for log files if a project logs folder has been set up. Added maths functions that enable distance channel calculation from GPS data. Added declick_if maths function. #445 - Bitmap Gauge. #440 - Colour Preferences: Using the Enter key does not work correctly. #46 - Bar Gauge. #441 - Status Light: Inherit start/default colours from gauge colour settings. #439 - Setup Editor: CAN channels not displayed for new DA99-L2 setup. #448 - DL10: maths is not correct if source rates are different to output rate. #447 - DL10: Use VID_MIN and VID_MAX from maths outputs for channel range. #438 - Notes dialog may be required before saving log if using auto file-naming. #458 - Close config dialog for log trace when changing tab. #460 - With a new blank workspace, don't add channels to the trace automatically. ================================================================================ Version 0.0.45 - Built on 11 October 2010 ================================================================================ #427 - Fixed handling of signed data (and scaling in general) in some cases. #429 - DL10 - log notes - the logger type should be shown as DL10 not CD24. Double clicking a marker in the marker list now sets the global cursor rather than displaying the marker edit dialog. #431 - Overrun markers erroneously treated as lap markers. Markers are only stored in the project if non default. This will break loading of markers from existing projects. #432 - Preference to turn off primary layer zooming. Fixed min/max editors in log trace config dialog. Prevent scrolling view in log trace config dialog when an editor is clicked. Changed distance channel dialog name to match menu item name. Fixed name of time report dialog. Added line width option to track map. ================================================================================ Version 0.0.44 - Built on 06 October 2010 ================================================================================ #406 - De-click maths function. #415 - Log notes - the created and modified times should be local time, not UTC. Display "Created" as "Downloaded" in the log notes. Added Logged date to DL10 log notes. #413 - Log Notes dialog should show file name of log to which the notes pertain. #414 - Right click on a log file in Project Explorer and select log markers - log markers dialog is not updated for the specific file selected. Remove local maths item from maths manager if a log file is closed. Improved log run list dialog (DL10). #411 - Implement sorting in log run list dialog. #412 - (tentative fix) If there is a corrupt log run definition, the analysis software fails to download the log run list. Added hyperlink to website on toolbar. #409 - DL10: Fixed handling of partial frames at the end of log runs. Fixed marker handling for DL10. #416 - DL10: Add support for overrun and overrun reset markers. #421 - DL10: Add support for maths sensors/ maths outputs. #418 - DL10 - If you cancel log run list, download menu item always fails with "An operation is already in progress". Fixed creation of default layout when opening a log into a completely blank project. #388 - Tentative Fix: When downloading and opening a DL10 data file in a new project, the log starts zoomed in. Note that it is intentional that the primary layer is zoomed in. #410 - Cleanup temporary files. Treat maths channels that return a single value as constants as an initial workaround until true constants are available. #422 - Open multiple log files from log file dialog. #423 - DL10: put logger info (serial number, version etc) in the log notes. #420 - DL10: Add original setup file name into the notes. Update sample count/runtime before displaying log dialog for DL10. Removed 'use template' check box from new project dialog. #417 - DA1: add 250KHz bus speed + manual bus timing edits for raw CAN timings. #402 - Adjusted time/distance precision in channels view. #58 - Export CSV [Pro]. ================================================================================ Version 0.0.43 - Built on 22 September 2010 ================================================================================ Crash fix. ================================================================================ Version 0.0.42 - Built on 22 September 2010 ================================================================================ #369 - Trim log file. #407 - Laps bar does not display when in distance mode. Implement ECC in dl10 download. Reduced memory overhead for stf log files. Updated to latest emerald4 version. ================================================================================ Version 0.0.41 - Built on 17 September 2010 ================================================================================ Handle open log file messages from GWv4. Disabled develompental export log dialog for public beta. ================================================================================ Version 0.0.40 - Built on 15 September 2010 ================================================================================ #401 - Setup Editor - Record rate can only be set to 1kHz. #404 - Changing CAN values in setup editor updates all channels with same ID. #405 - Separate "Add log file" and "Open log file". Snap log playback timer to fastest channel rate. Fixed possible scaling bug when double clicking vertical zoom bar on log lanes. Double click horizontal slider to switch zoom between 'all' and 'main layer'. Added display of source gain to channel properties. Fixed sample count string in channel properties (omit "Samples: "). Applied workaround for strange tooltip wrapping problem. Added dropdown action selector for opening log files (remembers preference). ================================================================================ Version 0.0.39 - Built on 07 September 2010 ================================================================================ #298 - Maths Editor: Show undefined channel error in compile error window. #299 - Maths Editor: Confirm exit when clicking ok and maths will not compile. #385 - Auto-complete in channel picker. #386 - Show channel colour in channel picker control. #383 - Get unhandled exception when selecting logger. #382 - Log playback does not work when viewing by distance. #381 - Warning triangle on bad maths channels. Added maths error information to channel properties window. Layout of channel properties box condensed slightly. #387 - Show time/distance in channel list. #384 - Channel deltas in channels list view. #390 - Add ability to show raw (A/D) channel data in the channel list. Right align numbers in channels list. Fixed situation where track that uses maths channels would sometimes not be created correctly after loading a project. Added low priority load on log files that are not the primary layer when loading projects. #357 - Trace graph view: Auto axis column option in multi-axis lane mode. #391 - In logger setup editor, get rid of space to put cell in edit mode and replace with F2. #392 - Setup editor - pgup and pgdown should scroll. #393 - Setup editor - redraw issue in top left hand corner of right hand pane. #394 - Setup editor - Object selector dialog, alpha sort does not work. #395 - Setup editor - clicking on column headers to sort does not update the currently active edit control. #396 - Setup editor - sensor gain only goes to 8x128. It should go to 8x256 to enable selecting of upper byte. #397 - Setup editor - for sensor gain, it would be nice to add two aliases - 8 bit Lower Byte for 8x1 and 8 bit Upper Byte for 8x256. #400 - DA1 logger setup - when creating a new setup, the CAN in the logger does not work (flashing light) until the logger comms page is modified. ================================================================================ Version 0.0.38 - Built on 01 September 2010 ================================================================================ #375 - DL10 data is stored little endian but the analysis software treats it as big endian. #376 - DL10 analogue channels are not picked up by the analysis software. #380 - Log Run dialog - don't show log run length to 1000th of a second. #378 - Add erase log function. Reduce number of dialogs when downloading a log. #359 - Selection issue in Configure log view. Implemented alternative view of log lane configuration. Fixed issue with outputs derived from outputs not showing up. Fixed error in DA99 lights export. Improved progress bar updates on DL10. #379 - Lap marker tool tips should also show RTC date and time if available. Note that due to potential marker configs already stored in projects, the time may not show up - either use a new project or close the log file and reopen it in the project. ================================================================================ Version 0.0.37 - Built on 25 August 2010 ================================================================================ #374 - DA99-L2 support. Fix problem with DL10 download (was always downloading run 0). Close device toaster when device removed. ================================================================================ Version 0.0.36 - Built on 25 August 2010 ================================================================================ #177 - Download Data from DL10. Avoid triggering update on views that track the selection if the selection has changed but is empty and the previous selection was empty. Calculate channel range for non-maths channels if the channel does not have min/max correctly defined in the log file. ================================================================================ Version 0.0.35 - Built on 23 August 2010 ================================================================================ Bug: Fix crash when selecting default track generation channels. Bug: Tentative fix for crash when removing log from project explorer. #373 - Bug: Track View: Displays "Invalid speed channel" when first created, even if valid speed channel is available. #372 - Bug: Trace: Timeline does not draw when scrolling. #371 - Bug: New project template does not load unless re-selected. ================================================================================ Version 0.0.34 - Built on 20th August 2010 ================================================================================ #138 - Alarm Report [Pro] #111 - Allow a channel to be used to generate lap beacons / markers. This is now possible via the alarm report [Pro]. #104 - DA99 Card Logger Support. #208 - DA1 endian selector for CAN in setup. #305 - Project directory mode. #105 - For card loggers, search for a drive containing the raw log file. Added Logger selection dialog. #366 - Fixed crash with channel statistics and different length log files. #360 - Lane name selection in Configure log view should track selection of grid. #361 - Configure log view: + / - icon next to lane name is always '+'. #367 - Generate channel colour palette based upon background colour. #362 - Snap sector times to distance channel sample position (resulted in excessive decimal places when displaying times in reports). #346 - Tacho gauge cannot handle an inverted range (where minimum > maximum). #365 - Math function to get previous sample value: prev(). #386 - Rename channel alarms -> limits. #152 - Zoom to alarm event [Pro]. Added new data range editor to histogram. Added new data range editor to xy plot. Added new data range editor to FFT. Added at_sample(...), at_seconds(...) and at_seconds_lerp(...) maths functions. Adjusted the context menus slightly to put "Add View" the top of the menu and not display it when clicking on the tab strip. Also moved items into alphabetical order. Implemented New Project dialog. Added Project Template system. Added "Set As" menu for laps in project explorer. Support all logger types. Restrict clicks to checkbox area in setup editor when toggling. Fixed crash setting up default view with < 3 channel names in the log file. ================================================================================ Version 0.0.33 - Built on 30 Jul 2010 ================================================================================ #333 - Sometimes track map does not update correctly after log is loaded. #356 - Non-auto limits for maths channels. #343 - Drag view box edges in log overview. #344 - Drag view box edges in lap bar. #322 - Add ability to set base units for a channel. Fixed crash with layer bitmaps. Fixed crashes due to pathological output channel loops. Such loops can no longer be created in new setups. Added edit button to Edit Maths dialog. Update chanel properties dialog if maths channel edited from within. Added optimization to synchronous distance->time lookup. Auto limits settings now imported from dlog99 mth files. Channel properties now work for channels that are not in the main layer's log file. ================================================================================ Version 0.0.32 - Built on 20 Jul 2010 ================================================================================ #339 - Separate layers management so that not only laps are required for overlaying data. #342 - Show selection length in status bar. #324 - Power markers should be visible by default. Separated enable state from visible state for markers. #297 - Horizontal boundary lines on trace view (alarm limits). When sorting channels list, the channel colour was not also displayed in sorted order. Maximum column count is now configurable in channel list view. #307 - Import DLOG99 mth maths files. #308 - Import/export maths from/to other projects. #332 - Divide by zero in maths channel can cause issues. Now can display values that are +/- infinity. #337 - Add channel flash when clicking on trace legend. #338 - Latch channel flash option in trace legend menu. Added maths function: filter_avg(x [,n]). Added maths function: is_lap_start(). Added maths function: integrate_lap(x). #349 - Error with GWv4 internal log data with same channel logged at different rates. Fix issue with context menu key on grids (affects selection). #351 - Default channel for gauges should not be "Engine Spd" when it doesn't even exist. Added layer icons to channels view header. #340 - Right click on ruler should not set the cursor - markers should be inserted at current position. Markers dialog now adds new markers at the current global cursor position. Add Marker menu item added to main log trace context menu. #149 - Multiple axes per log lane for each channel. #334 - Vertical range override on log lanes. #335 - Override channel colour in log lane. #352 - Make channel column in log trace config fixed. Added snap to fastest rate option (now the default snap setting). ================================================================================ Version 0.0.31 - Built on 28 Jun 2010 ================================================================================ #326 - Click on XY plot to set global cursor. #262 - Channels View: list of displayed channels can be selected. #312 - Generate distance channel lookup in channel itself. #315 - Lap distance functions not working with calculated distance. #311 - Layers: Default colour for layer two should not be black. Added default colours to the colour preferences for the first 8 layers. #301 - Ability to click on track to move to that position in the lap is broken. #319 - Retry option when dongle is not attached. #320 - Distance channel is always recalculated whenever maths channels changed. Improved performance of maths functions involving the distance channel. Fixed error in maths functions involving distance. Distance channel could be recompiled several times after loading a project. #314 - Selection on track map broken. #316 - Switching from Time to Distance mode zooms the trace out to full. #323 - Retain name/units edit boxes in maths editor for existing channels. #303 - Raw value bit manipulation operators: * Shift Left: << * Shift Right: >> * Bitwise AND: & * Bitwise XOR: ^ * Bitwise OR: | Added support for hex numbers to maths (e.g. 0xFF). Added buttons to maths editor for '<<', '>>', '&', '|', '^', '&&', '||'. Added maths function: real(x) cast. Added maths function: raw(x) cast. #304 - bit extraction and combination functions: Added maths function: mask(nbits) Added maths function: mask(nbits,shl) Added maths function: combine(msb,lsb,lsb_bits) Added maths function: combine8(msb,lsb) Added maths function: combine16(msb,lsb) Added maths function: complement(value,nbits) Added maths function: log2(x) #327 - F5 key should refresh custom file browser. #318 - Indicate when logs are still being loaded in the status bar. #321 - Snap. #328 - Implement user setting of snap divisor. Changed 'Locate Range' context menu items in project explorer to 'Zoom to ...'. Various optimizations for fixed rate channels. Changed locking strategy of maths channels to improve performance. Fixed limits change notification. Added file associations to installer. Don't update xy plot data when not shown. Refactored channel list handling to avoid rebuilding sort index when cursor is moved. Gives a big speed improvement in some cases. ================================================================================ Version 0.0.30 - Built on 10 June 2010 ================================================================================ Changed terminology of 'overlays' and 'primary view' to 'layers'. 'Primary view' is now 'main layer'. #69 - Add new markers / edit markers. #256 - Export KML file from GPS track map. #309 - [Tentative] Lock up on load of log on some XP machines with HT processor. #292 - Display units selector should only show units that match the channel quantity. #291 - Maths Editor: Auto-complete units should be filtered contextually. #295 - Setup Editor: Don't display error if loading last setup fails. #296 - Distance channel setup: when speed channel does not have units, calculated distance is invalid. #232 - Double click a log file to open - GDA always starts with a default template. It would be nice if it remembered your last screen layout instead. - Handle mixed units better in channel properties. - If multiple channels were being edited then the same units would be set on all channels even if no selection was made. - Fix memory leak when creating a new calculated distance channel. - Fixed resources compilation which was not taking branding key into account. - Fixed potential crash in GPS track mapping. - Added maths function to get absolute distance. - Added maths functions to get lap number and lap time/distance. - Internal refactoring of lap and marker handling. - Multiple threads can now concurrently access much of a log file's data which improves performance for most commonly executed code. - Added additional error information to DA1 comms. - Modified marker storage slightly - this should upgrade from old versions of GDA OK but loading projects with old beta versions may not load correctly. - Changed menu layout. This may break existing keyboard shortcut configs. - 'All' could not be correctly set as main layer by the user and would not display a layer icon. #302 - Context menu: "Configure" and "Rename" can be confusing in certain situations. Re-arranged context menus to put items that are more contextually significant at the top of the menus. #306 - Don't display trace setup window after opening a log. #300 - Edit Maths: Changing name of a channel broken. - Always display '+' on shell tree view in attempt to improve speed of opening custom file dialogs. ================================================================================ Version 0.0.29 - Built on 04 May 2010 ================================================================================ #278 - Plot second layer on track map. Give track window focus when dragging cursor. #287 - Modifying track name in the track editor should set track window name. #286 - After track segments are created, segments bar on trace is not updated. #279 - Plot second layer on tachometers. #243 - Edit multiple channel properties at once from channels view. #284 - Integrator sometimes appears to accumulate when the channel being integrated is zero. #259 - Smarter view configuration window placement. #254 - When adding new objects, pop up configure box if appropriate. #258 - Quicker access to edit a current maths channel - either from right click on channel list, or from channel properties. #235 - To select an area on the main graph, use double click as well as current method. #239 - Some anomolous drawing of graph lanes - sometimes the marker lines don't get drawn in the top lane and the shading can be incorrectly applied. #282 - Maths manager dialog: Label maths channels list area. #288 - Tooltips on Add/Remove buttons. #231 - Setup test dialog. #290 - Distance channel config should set an override for the base units, not set the ui units. #289 - Areas that require distance in metres should convert locally. General refactoring of units. #294 - Display status bar distance in distance channel units. #218 - User selectable display units. #293 - Display distance ruler in distance channel units. Maths: Casting floating point value to boolean changed so that it must have a magnitude or 1 or greater to evaluate to 'true'. Avoid blocking main thread for too long whilst requesting channel report update. Added SampleCache unit test [debug]. Altered locking strategy of maths channels to reduce contention with UI thread and make channel read requests abortable when a channel requires recompilation. Added some optimizations to user interface. Now avoiding main thread notifications when channels are being updated which reduces effect of UI becoming sluggish when [un]enabling maths channels. Distance channel quantity and unit round the wrong way. Reverted to VS2008 compiler so that GDA continues to run on Windows 2000 and Windows XP versions before SP2. Improved maths channel cache performance. Particularly in debug build. Added regression test for loading of projects where log loads before the project has finished serializing. [and fixed issue] Display base units in channel properties. ================================================================================ Version 0.0.28 - Built on 21 April 2010 ================================================================================ #280 - Solid colour setting not saved on xy plots. #281 - Colour option for cursor on XY Plot. Fixed default colour/gradient on xyplot and status light config dialogs. #277 - Improve default zoombar colours to make them more visible. Added independent second gradient colour for zoombar face gradient. Added GemsCharcoalMediumLight and GemsCharcoalLight colours. #283 - When editing maths channel code, autocomplete dialog flashes up in the bottom right of screen. #228 - Display available logging time in setup editor. Tentative fix for crash when loading project and one of the logs is loaded before the project explorer tree is serialized. Tentative fix for crash when opening a new project with the maths editor open. ================================================================================ Version 0.0.27 - Built on 21 April 2010 ================================================================================ #257 - Maths channels sometimes not initializing correctly and displaying zero. Reworked maths channel change notification handling and delayed applying local + global maths libraries to improve performance when multiple updates are applied in succession. #268 - Delete parent user views icon crashes app. Disable rename/delete/icon buttons in user views config when not applicable. #265 - Open last calibration at startup in preferences should be 'project'. Now also displays the correct value. #266 - Menu option to un-vertical expand lane in log trace. #267 - Add incremental search to channel values window. #269 - Right menu when clicking on lap sector no longer available. #261 - Log notes icon is different between project explorer and main view menu. #270 - Segment strip can get overlapping segment names. #273 - Display error message when trying to write to a read-only setup file. #271 - Limit DA1 setup to 32 CAN ID's. #272 - Limit range of rates in DA1 setup. #274 - Changing output rates to 'off' does not get saved in setup correctly. #263 - Changing maths channel name does not update in the log trace window. Additionally, other views are updated in response to channel name changes. Names are not updated if a channel with the original name still exists in another log file. #264 - Offer option to display log as primary view after download. #238 - Toolbar buttons - latch state looks the same as mouse highlighing. Maths: atan and acos were internally calling tan and cos, respectively. Performance: Made log channel info retrieval lock-free to generally reduce contention in the main user-interface thread (feels snappier). Limits thread is now a single thread rather than per channel to reduce load and calculations are queued so that in many cases, scheduled calculations can be requeued and reduce overally CPU load, especially straight after opening a log. Various other small performance enhancements. Updated to boost 1.42 Updated to wxWidgets 2.8.10 Updated to VS2010 ================================================================================ Version 0.0.26 - Built on 09 April 2010 ================================================================================ #12 - Math Channel Management [Pro]. #108 - Auto Log file naming [Pro]. #207 - Build manual separately per branded build. #141 - Improve track generation algorithm for non-circuit tracks (average offset). #143 - Display units in UI. #135 - Display deltas between main and layers on the log trace. #212 - 'Add Views' should be available from the view menu. #222 - Additional meta data (weather). #217 - Improve emerald performance when reading notes (rework of emerald dll). #86 - Config dialog for Tacho. #176 - Remove properties option from context menu (using config dialogs). #223 - Setup: Disallow selection of maths channels as output sources. #224 - Setup: Overview of channels - include maths + outputs in one list. Setup: added overview of inputs. #227 - Can't remove channels from log trace if they have units. #225 - High frequency bins on FFT show incorrect values. #233 - Double click a log file to open - the start page should not be shown. #234 - Data file RB2_05 crashes GDA when opening it. #240 - Lap bar should be drawn using distance when in distance plot mode. #237 - Edit menu not working (highlight when copy/paste etc are available). #242 - Circular dependency problem. #249 - Icon to identify channel type in channels list. #247 - XY Plot: Separate gradients for density bitmap / normal plots. #248 - XY Plot: Sensible default solid point colour. #241 - XY Plot: in density mode, zero points are not displayed. #253 - XY Plot: channel labels sometimes overwrite axis values. #252 - XY Plot: display cursor. #229 - Setup: Reorder items in lists. 3d effect on channel colour icon in channels list. Fixed default name for function tables. Channels can now be drag/dropped from the channels list into channel picker controls. Added more predefined units. Added autocomplete for unit selector. Preparatory work for dl10 comms. Pop-up toaster window when logger is connected to the system. Added root log folder handling, with buttons in the log file dialog. Particularly useful in conjunction with auto log file naming. Fixed extract setup icon. Increased default Y range of FFT. Changed FFT axis titles and added an additional label for the channel being analysed. Use square brackets on histogram y axis units. Fixed an issue with project serialization (load/save). Notes menu item now shows notes of the primary log. Implemented fullscreen mode. Changed crash report email address to gda@gems.co.uk. Fix crash when right clicking on invalid area or segment strip. Fix crash when closing application with a log trace config dialog open. Pick an appropriate time-base channel for math scripts that do not operate on any channels but generate time-varying data. Fixed autohide tabs from walking down the screen when loading projects. ================================================================================ Version 0.0.25 - 04/03/2010 ================================================================================ #87 - Config dialog for Status Light. #204 - Dongle update form does not close after successful update. #205 - Min value on tachometer can not be changed from zero. #209 - On Quick Start window, need options to load data to new project. #210 - Set default scheme and tacho style to dark style. #214 - Add 'Tyre Type' to notes entries. #215 - Ability to turn off layers on Trace Overview. #216 - Config dialog for NumberView. ================================================================================ Version 0.0.24 - 01/03/2010 ================================================================================ NOTE: channel reports will not load back in correctly from existing project files, as the structure of archives has changed slightly without being backwards compatible. Refactored channel reports slightly and renamed some of the configuration options to make them more obvious. Ticket #201 - Channel Report: should be possible to have laps as subgroup of channel. Ticket #186 - Add Time and distance to channel report. Added additional time/distance statistics. Shortened names of some statistic quantites. Added tool-tip long names for statistic quantities. Changed defaults for log view statistics and channel reports. Ticket #191 - Define more units. Added some physiological units. Ticket #193 - During log playback in distance mode, clicking on the trace sends the cursor back to beginning of the lap. Ticket #194 - Channel statistics do not update during log playback. Changed default cursor to arrow and selection to I-beam on log trace. Ticket #74 - Highlight or flash the plotted channel when the channel is selected in the channel values list. Ticket #184 - [Internal] Log file meta data. Ticket #197 - Display/Edit notes and meta data. Ticket #18 - Prompt for details about car/track/driver. Ticket #198 - Configurable temp folder for data downloads etc. Ticket #199 - Change list modifier buttons to be bitmap buttons in trace config. Ticket #200 - Add button in channel report config should show dialog for channel. Ticket #6 - Display car/driver/track in project explorer. Fixed loading of GLO files. Fixed save of downloaded log/setup onto a different volume/system to the temp folder. Fixed extraction of setup data from log file. Remember size and splitter positions in log file dialog. Fix crash toggling primary layer. Fixed extended CAN code export - porting from delphi translated bitwise OR into logical OR. Did some internal refactoring of range handling. Ticket #145 - Layer offsets. ================================================================================ Version 0.0.23 - 09/02/2010 ================================================================================ Ticket #16 - User defined reports [Dongle]. Ticket #188 - Extract setup from log file. Ticket #189 - Fix number gauge drawing. Fixed single sample phase delay in filtering functions. Ticket #190 - Fix auto-complete in maths editor. Added autocomplete for functions and constants. Fixed arity of gaussian filter function overload. Ticket #80 - Ability to click and drag on the track to move the cursor through the lap. Hid undo/redo items in edit menu until undo is implemented (GDA 4.1). Fixed a problem with the processing of log files in optimised builds. Fixed an issue with signed 8bit raw channels. ================================================================================ Version 0.0.22 - 03/02/2010 ================================================================================ Refactored handling of scaling. This will affect ranges loaded for some views. Updating & saving your projects will resolve this. Ticket #172 - DA1 logs: Drop record blocks directly before invalid end of block markers. Ticket #173 - Optimize log playback: * Applied a number of optimizations to the events that occur when setting the cursor position in a log trace (as a result of profiling). * Reduce blit sizes in many cases when drawing log traces to improve performance. * Changed animation timer to throttle back when cpu is under load. Ticket #175 - After loading, if zoom area is changed, then a tab with a trace which has not been shown yet is selected, the previous zoom area is restored. Ticket #174 - Double clicking on channel report: move cursor to occurrence of single sample quantities (e.g. min/max). Note: this may not happen in saved projects - you will need to update the setting for the stats view. Made lap and segment strips optional. Installer: Detect if application is running before allowing install. Ticket #101 - Add a "clear settings" option to the installer. Ticket #171 - Show selection and view range on lap strip. Ticket #161 - Optionally hide legend per-lane on log trace. Improved resize policy for the grid columns in the log trace config dialog. Ticket #179 - Expand log lane / all lanes to show data full scale. Ticket #180 - X scale not working on histogram plot when not manually scaled. Ticket #167 - Time selection options for xy/histogram should also have 'primary' as an option. Also added 'view' option. Refactored lap/mode handling. New archives may not work correctly in older beta versions (lap/mode selection in xy plot / histogram view). Ticket #154 - Log Playback - Option for looping primary lap. Ticket #71 - Overview mode for log trace. Fixed an error in obtaining the sample position from log iterators. Ticket #168 - Maths: Integrate Functions. Ticket #169 - Maths: Filter Functions. * Lowpass windowed sinc. * Highpass windowed sinc. * Bandpass windowed sinc. * Bandstop windowed sinc. * Gaussian smoothing filter. Ticket #170 - Maths: Differentiate Functions. Added basic cache to maths channels. Ticket #146 - Sort out min/max handling for maths channels. Fixed an issue with markers not being displayed correctly on logs with high run-times. Ticket #44 - FFT. Ticket #126 - "Uprade to Data Analysis Pro" item in help menu list of non-dongled versions. Ticket #150 - Inverted (green) background colour for fastest lap in project explorer. Ticket #183 - Add log file button in Project Explorer. ================================================================================ Version 0.0.21 - 13/01/2010 ================================================================================ Add log playback control buttons to toolbar. Ticket #162 - Double click on trace scroll bar to zoom to primary layer. Ticket #163 - Load/save channel values grid column widths. Ticket #164 - Double click vertical scroll in log trace should reset. Ticket #166 - Can not select on trace timeline (right click - select) the last segment in the lap. Click / click & hold in scroll track will scroll like a standard scroll bar. Reduced size of gap between application lap strip and tab area. Lap strip now responds to marker changes. ================================================================================ Version 0.0.20 - 12/01/2010 ================================================================================ Fixed crash with new project when a channel report/time report is displayed. Fixed reset of channels in histogram view. ================================================================================ Version 0.0.19 - 12/01/2010 ================================================================================ Single click in application lap strip zooms to range. Fixed crash on new project. Fix log trace offset in distance plot mode. Fixed lap overview strip in distance mode. ================================================================================ Version 0.0.18 - 12/01/2010 ================================================================================ Ticket #33 - Lap overview strip in LogView. Ticket #159 - Channel Stats window: Display lap names instead of e.g. 'layer 1' or 'layer 2'. Ticket #160 - Re-focus main window if closing setup editor when log playback is running. Fix context menu on channel stats frame title bar. Clamp cursor position when scrolling with arrow keys. Added handling for HOME and END keys to log trace view for start/end of the log. Added handling for Ctrl-HOME and Ctrl-END keys for start/end/next/prev lap. Added handling for Shift-HOME/END for selecting up to the start/end of log. Added handling for Shift-Ctrl-HOME/END keys for selecting laps. Added handling for Shift-Left/Right for selecting. ================================================================================ Version 0.0.17 - 08/01/2010 ================================================================================ Ticket #153 - Select a range of laps in project explorer and zoom to them. Ticket #158 - Fixed load of split marker modifiers from project. Added slight optimization to gps track mapping - transform points using a rotation matrix rather than a quaternion. Added 'show alarms' option to drop-down menu for channels in log trace view. Modifying the log trace whist the config dialog is open updates the dialog. Global view range handling. Log views now track the global view range unless set-up not to do so. Made highlight of non-primary areas in log trace optional. When log trace is loaded, don't reset view range if log is not yet loaded. Fixed an error with time calculations when reading samples from stf data sources. ================================================================================ Version 0.0.15 - 06/01/2010 Version 0.0.16 ================================================================================ Fixed possible crash when displaying layer differences in report view in some view modes. Fixed grid line rendering issue with large column/row spans in channel report (and other grids). Channel statistics view now prevents user from manually editing channels as these channels would change if the user changed page or changed the trace setup. Added delta symbol to the channel report for layer difference column. If log files cannot be found when opening a project, ask the user if they would like to find it. Gauges now update after asynchronous read of log data has completed (i.e. display the correct value for the current cursor position). Added auto scale option to bitmask setup editor. ================================================================================ Version 0.0.14 - 05/01/2010 ================================================================================ Ticket #11 - Channel Statistics Report. Ticket #68 - Display alarms on log trace. Ticket #70 - Option to build track segments from split markers. Ticket #75 - Export report to excel/csv etc (via copy to clipboard). Ticket #40 - Tape Measure. Ticket #84 - GPS track mapping. Ticket #130 - Draw of centre (zero) line on log trace. Ticket #147 - When dragging channels to log trace, ability to drop in between or at the bottom of lanes to add new lane for that channel. Ticket #148 - Auto segment generator does not number segments correctly when there are two turns in a row. Ticket #155 - When mouse is clicked to start selection on trace, starting point is moved from the actual position of the cursor to the position of the mouse. Fixed a couple of possible crashes. Configuration dialog for time report. Double click in report cell focuses log trace (depending upon policy in the views configuration). Channels can be dragged into channel report + channel report config dialog. Colours are now configurable for report views. Changed configure icon in caption bar of view windows. Added 'Zoom to All' menu option in log trace views. Fixed XY plot gradient update after loading from project. Fixed XY plot channel update after loading from project. Selection in log trace is now blended so that grid lines are still visible. Fixed XY plot and histogram updating when selection changes. Improve track drawing speed when the track has a large number of points. Fixed some issues with selections in distance plot mode. Fixed up/down buttons on channel report editor. Track selection now correctly updates after loading in the project. Added track start angle option. Fixed track scaling when track is wider than the view. Now possible to save log files from the project explorer (in preparation of other features). Fixed a couple of issues saving log/setup files that have non-recording outputs in them (record table). Fixed: Maths channels whould not be remembered by track mapping. Fixed: CAN speed box in logger setup was not correctly updated after loading. Fixed: Entering invalid text in CAN output box in setup editor could lead to an unhandled exception. Display logging rate in channel properties box. Fixed potential crash when processing log files. Fixed a problem with log processing when there is more than one record table entry for the same channel. Added option to open log in a new project after download. ================================================================================ Version 0.0.13 - 15/12/2009 ================================================================================ Ticket #94 - Log Playback Fixed some issues with DA1 setups (CAN ID's and serial channels). ================================================================================ Version 0.0.12 - 09/12/2009 ================================================================================ Fix crash opening log files that have chanels with no sensors defined. ================================================================================ Version 0.0.11 - 04/12/2009 ================================================================================ Ticket #29 - Math Channel Editor from Setup Editor [Dongle]. Ticket #91 - Ability to be able to right-click, add object for a channel from the channel list. Ticket #119 - Setup editor - when creating a new output, scalar, bitmask etc give it a default name (eg Scalar 1). Ticket #139 - Number gauge does not draw bottom border at smaller sizes. Ticket #140 - Setup Editor - clicking a blank cell in the channels section, brings up value which then goes when cell loses focus. Ticket #142 - Use custom file dialog for saving log after download. Ticket #144 - Setup Editor: cannot enter hex number in bitmask editor. Added GPS protocol selection to DA1 setup. Fixed DA1 Erase after log download problem. Improve message if download is empty. Started adding Maths to Setup Editor. Added bitmaps to buttons in Setup Editor. Load/Store maths in stf data file. Added seconds(), msecs() and usecs() maths functions. More to come. Updated to boost 1.41. Factored auto-complete out of colour/gradient selector boxes so that it can be more generally useful (will be used by code editor). Syntax highlighting now correct. Changed math language grammar to make it context free. Added comments to math language. Added autocomplete to to math editor. Math editor colours now customizable. Added toolbar to math editor for inserting operators. Added function/constant/channel/unit insert list to Math Editor. Default channel rate is no longer 1 MHz. ================================================================================ Version 0.0.10 - 18 November 2009 ================================================================================ Fixed "timer creation failed" error (due to wxWidgets 2.9.0 update). ================================================================================ Version 0.0.9 - 18 November 2009 ================================================================================ Ticket #82 - Handle delete key in log trace config. Ticket #85 - Right click on channel in channel list to add views. Ticket #121 - Setup Editor should automtically load the last setup used. Ticket #122 - Add Create New Setup button to setup editor. Ticket #123 - Current Setup Name (including * or Modified when changed) should be shown in Setup Editor Title Bar. Ticket #128 - Lap report rolling fastest should not be able to wrap around from last -> first lap. Ticket #131 - DA1 Firmware upload jumps to operational code. Ticket #132 - Flag when project changed. Ticket #133 - Config button next to close button on track, trace, xy plot and histogram. Ticket #136 - Display selection on track object. Update xyplot view when deselecting. Dont autohide project explorer when toggling layer. Improve keyboard handling in log trace config dialog. DA1 - newer versions reverted to use 'question + answer' comms. Updated to wxWidgets 2.9.0. Unit conversions can now be accessed globally in a thread safe manner. Started work on Maths Channels: Implemented Parser. Implemented virtual machine. Implemented basic maths channel. Implemented code optimizer (constant folding). Implemented unit conversions. ================================================================================ Version 0.0.8 - 28 October 2009 ================================================================================ Ticket #43 - Histograms. Improved colour customization. Ticket #96 - Customize trace colours. Implemented inheritable properties. Most tachometer properties now have global default properties in the main settings. This will be expanded to cover other gauge types in the future. Ticket #76 - Allow XY plots and histograms to have conditions applied. Ticket #127 - When xy plot has focus, application loses focus. ================================================================================ Version 0.0.7 - 5 October 2009 ================================================================================ Ticket #42 - XY Plot. Ticket #125 - Crash opening invalid emerald file. Ticket #124 - Save new version problem with unsaved project. Ticket #73 - Drag and drop channels into plot area. Channels may also be removed by clicking on them in the log trace legend. Fixed issue loading sample EVO9 DA1 setup. Fix hang when loading corrupt setup file from DA1. Added 'firmware upload' command for DA1. Added 'erase log' menu command. Gain now works for scaling channels when applied to sensors. Fixed a crash when attempting to access data from output channels that have no source. Various fixes in Emerald4 to cope with a wider range of log files, including DA97 files. Fix problems opening corrupt files. Now displays a dialog box if load fails and adds this to the status in the project explorer. Added gradient to non-primary region areas on the log trace that blends with the graticule lines. Highlight selected lane when displaying context menu. Dont display legend on log lanes when there are no channels. Implemented faster data download protocol for Issue-D DA1's. Added program button to setup editor. Added ability to drag existing selection position (retaining selection 'size'). ================================================================================ Version 0.0.6 - 21 September 2009 ================================================================================ Changed branding keys - this will affect default folders used to store log data and projects. Ticket #83 - DA1 Download. Ticket #90 - DA1 Setup Upload. Ticket #92 - Separate Download Setup command for DA1. Ticket #98 - Value on trace doesn't update correctly. Ticket #88 - Change default threshold colour from black to red. Ticket #89 - DA1 Setup Configuration. Ticket #79 - Zoom with +/- in addition to z/x. Ticket #97 - If logs folder doesn't exist when opening log you get an exception box if you try to create it on a non-existing drive. Ticket #102 - Improve settings for track segmenter. Improved corner type detection algorithm. Fixed change in distance scaling. Ruler now has correct range in distance plot mode. ================================================================================ Version 0.0.5 - 14 August 2009 ================================================================================ Make time report display track segments by default. Fix secure stl error in async track segment handling. Fixed a problem loading colour gradient from archives. Fixed and error in serialization of tacho gauges. This will slightly break existing projects (gradients will be interpreted as solid colour and display as black). Ticket #81 - Custom threshold colour on tacho reverts to BLACK when reloaded. Ticket #72 - Implemented branded builds: TK-10 Data Analysis Data Analysis Data Analysis Professional ================================================================================ Version 0.0.4 - 13 August 2009 ================================================================================ Added split mode to markers. Ticket #54 - Segment editor in track editor. Ticket #65 - Display track segments on the track. Ticket #14 - Lap Report. Ticket #15 - Best theoretical lap calculation based upon best sector times. ================================================================================ Version 0.0.3 ================================================================================ Ticket #45 - Tacho Gauge. Ticket #47 - Status Light Gauge. Ticket #48 - Number Gauge. Ticket #49 - Make Channel Properties Dialog Modeless. Ticket #56 - Cursor position on track does not update unless in distance plot mode. Ticket #60 - Default template / prompt when opening a new log file with an empty project. Improved efficiency of updates to distance + current layer values at the cursor. Added background pre-loader to reduce dll load demand when displaying file dialogs (i.e. the dialogs display faster). Sorted out a couple of issues with zoom-dragging using the log trace ruler. Mouse cursor is now hidden when zoom-dragging. Fixed lag of selection repainting. Modified zoom behaviour/keys slightly. Shift key is no longer used to control the extent of scroll/zoom. This is acheived through acceleration of the movement. Display cursor time + distance in the status bar. Fixed a potential crash after closing a trace panel. Added channel picker editor to log trace config dialog. ================================================================================ Version 0.0.2 - 22 July 2009 ================================================================================ Ticket #39 Capture mouse when dragging cursor on log trace. Ticket #13: Calculated Distance Channel Added Channel Legends to log Traces. Sorted out a couple of issues with line rendering in the log trace + sped up line rasterization a little. Ticket #10: Track mapping from G-Sensor. Basic distance channel calculation. Improved distance plot speed. Various plotting optimizations - improved data access speed and improved rasterization speed. ================================================================================ Version 0.0.1 - 25 June 2009 ================================================================================ Fixed layer serialization. Update trace when colours change. Make cursor match in all traces. Set correct plot basis when creating a log trace. Improved layer icons. Make non-primary view areas darker. Update trace when channel limits changed. Made it possible to assign an alpha (opacity) value to layers. Layers can now be set up to use a channel's colour rather than fixing it to the layer colour (allows faded traces using alpha). Fixed "help not found" issue. Serialize marker config. Ticket #41: Line thickness. ================================================================================ Version 0.0.0 ================================================================================ Ticket #1: Optimisation: Improve distance plot speed by using LogIterator. Ticket #2: Update background graphic on start page. Ticket #3: Application icon. Ticket #5 [Using alternative method] Ticket #7 Channel Values Grid Ticket #8 Alarm Limits in Channel Values Grid. Ticket #9: Drag and Drop when configuring lanes in log view. Ticket #23: Display traces from multiple log files in the same view. Ticket #27 [Using alternative method] Ticket #28 Improve repainting of LogView when resizing. Ticket #31: Update About Box Image. Ticket #32: Display Markers in LogView. Ticket #34: Y-Axis ticks & labels on LogView. Ticket #36: Layer different laps. Ticket #37: Multi log file support in channel values window. (Column per layer). ================================================================================ End of File ================================================================================