Menu

Tree [f80d67] master /
 History

HTTPS access


File Date Author Commit
 Core 2011-10-16 Ellis Whitehead Ellis Whitehead [b21a06] Merge branch 'master' of ssh://gcead.git.source...
 Filters 2010-10-18 Ellis Whitehead Ellis Whitehead [22e740] Fixes for mac
 Idac 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 IdacDriver 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 IdacDriver2 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 IdacDriver4 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 IdacDriverES 2011-08-13 Ellis Whitehead Ellis Whitehead [fc7f93] IdacExports
 IdacEs 2012-07-01 Ellis Whitehead Ellis Whitehead [f1d69a] Merge branch 'master' of ssh://gcead.git.source...
 IdacEsTest 2011-10-16 Ellis Whitehead Ellis Whitehead [b21a06] Merge branch 'master' of ssh://gcead.git.source...
 Installables 2012-07-01 Ellis Whitehead Ellis Whitehead [f1d69a] Merge branch 'master' of ssh://gcead.git.source...
 Model 2014-02-09 Ellis Whitehead Ellis Whitehead [4d43b8] Let user rename waves
 Scope 2013-12-15 Ellis Whitehead Ellis Whitehead [e3820c] Trying to upgrade library versions to Qt 5.2, l...
 ScopeTest 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 Setup 2012-11-04 Ellis Whitehead Ellis Whitehead [d7f940] template for GcEAD classic installer NSI
 SyntechInstallationCD 2010-03-31 Ellis Whitehead Ellis Whitehead [cc6c02] Remove temporary file
 View 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 extern 2014-02-15 Ellis Whitehead Ellis Whitehead [59507b] delete old libusb imported code
 new 2011-10-17 Ellis Whitehead Ellis Whitehead [2c3020] GcEad4 has first working mechanism for having n...
 website 2012-07-01 Ellis Whitehead Ellis Whitehead [f1d69a] Merge branch 'master' of ssh://gcead.git.source...
 .gitignore 2014-02-09 Ellis Whitehead Ellis Whitehead [af40e0] gitignore
 .gitmodules 2014-02-15 Ellis Whitehead Ellis Whitehead [bc92fd] add libusb 1.0.18 and libusb-compat 0.1.5 as su...
 Compiling.txt 2013-12-15 Ellis Whitehead Ellis Whitehead [e3820c] Trying to upgrade library versions to Qt 5.2, l...
 GcEad.pro 2012-07-01 Ellis Whitehead Ellis Whitehead [f1d69a] Merge branch 'master' of ssh://gcead.git.source...
 GcEad.rc 2009-05-02 Ellis Whitehead Ellis Whitehead [a9beb5] Import new code
 Notes.md 2013-12-15 Ellis Whitehead Ellis Whitehead [e4f916] Notes.md
 README.md 2013-12-15 Ellis Whitehead Ellis Whitehead [0ff8f3] rename
 Todo.txt 2014-02-09 Ellis Whitehead Ellis Whitehead [366325] Todo
 UseCases.txt 2009-05-02 Ellis Whitehead Ellis Whitehead [a9beb5] Import new code
 libusb.mak 2014-02-15 Ellis Whitehead Ellis Whitehead [f80d67] Fixup project files to use libusb instead of li...
 svn-ignore.txt 2009-05-02 Ellis Whitehead Ellis Whitehead [a9beb5] Import new code

Read Me

=====
GcEAD
=====

DIRECTORIES

Core:
A few semi-generic files that may be used by all sub-projects
Idac:
Classes to interface between the hardware drivers and the main application code.
IdacFactory and IdacProxy are the only two IDAC classes that should be used by
the main application (other than the settings and capabilities structures).
IdacProxy runs in the main application thread and shields the main application
programmer from all driver threads and details.
IdacDriver:
The general driver code. This is not really a "driver", since it runs in
user-space via libusb.
IdacDriver2:
USB protocol implementation for the IDAC2
IdacDriver4:
USB protocol implementation for the IDAC4
Model:
The basic data classes for GC-EAD
Scope:
Classes to implement non-UI code to support the UI. Basically, this is a
representation of the UI in a form that can potentially be unit-tested without
user-interaction. This approach wasn't taken until near the end of the project,
so there's not much in here.
View:
UI code and main()

USB DRIVERS

The IDAC drivers were hacked together very quickly. Part of the source-code
for the old proprietary IDAC4 driver was available to me, so that helped. I
didn't have any source code for IDAC2 though, so I had to make guesses based
on analyzing the USB transfer stream of the proprietary drivers and use what
I had gleaned from the old IDAC4 sourcecode. There are still a couple loose
ends in the IDAC2 code.

Recording objects:
Idac: interfaces with hardware
RecordHandler: converts idac data to raw and display data
RecordDialog: shows preview of the incoming EAD data and lets user adjust settings
RecordSettingsDialog: for setting the recording options
MainScope:
adds data to the EadFile
tells ChartWidget to update itself when in Recording view
auto-stops Idac recording when duration is reached

INSTALL PROGRAMS

Installer for windows

The installer for Windows is build with NSI. The following instructions are no longer valid...

  • Install Qt SDK. I installed it in C:\QtSDK with Qt 4.8.1. Adapt Setup/GcEad-windows.nsi for newer versions or different directories.
  • build the project (e.g. by opening GcEad.pro with Qt Creator)
  • Install NSIS (I have v2.46 installed)
  • Open Setup/GcEad-windows.nsi and compile it.
  • Upload Setup/GcEad-x.x.x-windows-installer.exe to sourceforge.net.

Installer for linux

I used BitRock InstallBuilder to create the installer for Linux.

  • build the project
  • cd Setup
  • run: ./copylibs
  • run: $path_to_builder build GcEad-linux.xml linux

Installer for mac

  • make sure the Qt SDK is installed
  • build the project
  • cd release
  • macdeployqt GcEad.app -dmg
  • since I installed the Qt SDK to ~/local/QtSDK, the above command line is
    ~/local/QtSDK/Desktop/Qt/4.8.1/gcc/bin/macdeployqt GcEad.app -dmg
  • GcEad.dmg is now ready for deployment
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.