Cross Platform C++ DP5 SDK Overview
The Cross Platform C++ DP5 SDK provides examples of data acquisition display and control for Amptek signal processors.
The Cross Platform C++ DP5 SDK has three example projects with source code included:
- gccDppConsoleLinux - Demonstrates acquisition using LibUsb communications in a Linux console window.
- gccDppConsoleWin - Demonstrates acquisition using LibUsb (WinUSB Backend or LibUsb direct) communications in a MinGW console window.
- vcDppConsoleLibUsb - Demonstrates acquisition using LibUsb (WinUSB Backend or LibUsb direct) communications in a Windows console window.
- vcDppConsoleWinUSB - Demonstrates acquisition using WinUSB communications in a console window.
- gccDppConsoleInet - Demonstrates acquisition using Ethernet communications in a Linux or Windows console window.
This software is free and can be downloaded from the
Software Download page.
Cross Platform C++ DP5 SDK Features Common To All Examples
List of features common to all the examples:
- Create and Parse DP5 protocol messages.
- Simplified LibUsb communications.
- Connects to default USB device.
- Request and Decode status packets.
- Send and Receive configurations.
- Acquire spectrum data with presets.
- Requires no graphical interface.
- Saves Amptek MCA spectrum data files.
- Source code is included.
- Hyper-linked software structure help is included.
- The Cross Platform C++ DP5 SDK source code uses generic C and C++.
- The Cross Platform C++ DP5 SDK source code runs on many platforms.
- The Cross Platform C++ DP5 SDK source code can be compiled with many different compilers.
- ConsoleHelper class simplifies function calls.
- Hyper-linked software structure help is included in HTML format.
Cross Platform C++ DP5 SDK Additional Features
List of additional features:
- Windows examples can run with or without WinUSB backend.
- LibUsb with WinUSB backend is provided for Windows development.
- Project files are included for each target platform and compiler.
- gccDppConsoleLinux has a makefile for gcc.
- gccDppConsoleWin has a makefile for MinGW.
- vcDppConsoleLibUsb has Visual Studio solution files for VS2003 and up.
- VS2003/VC++ 7.1 Compile with projectname_7.1.sln.
- VS2005/VC++ 8 Compile with projectname_8.sln.
- VS2008/VC++ 9 Compile with projectname_8.sln.
- VS2010/VC++ 10 and above Compile with projectname_10.sln.
- Runs on Microsoft Windows XP and Up, Linux, and systems that support gcc and LibUsb.
Cross Platform C++ DP5 SDK Examples are compatible with FW6 devices:
- DP5/DP5G/DP5X
- X-123 (with DP5 inside) including X-123SDD and X-123CdTe
- X-55 (with DP5X inside)
- PX5/PX5-HPGe
- Gamma-Rad5
- TB-5
- MCA-8000D including Option PA
|
|
gccDppConsoleLinux Example Project
gccDppConsoleLinux demonstrates acquisition using LibUsb communications in a Linux console window.
gccDppConsoleLinux contains generic Cross Platform C++ source code and does not require a graphical user interface.
gccDppConsoleLinux Example Features
List of gccDppConsoleLinux features in addition to Cross Platform C++ DP5 SDK Features Common To All Examples:
- Only requires packages standard (or supported) on Linux systems (gcc,LibUsb).
- Makefile is provided for gcc.
gccDppConsoleLinux Screenshots
|
gccDppConsoleLinux Acquisition Dialog |
gccDppConsoleWin Example Project
gccDppConsoleWin demonstrates acquisition using LibUsb communications in a MinGW or command console window.
gccDppConsoleWin contains mostly generic Cross Platform C++ source code and does not require a graphical user interface.
gccDppConsoleWin Example Features
List of gccDppConsoleWin features in addition to Cross Platform C++ DP5 SDK Features Common To All Examples:
- Only requires MinGW with gcc.
- Works with WinUSB using LibUsb with WinUSB backend (DLL provided).
- Also works with LibUsb without WinUSB.
- Makefile is provided for MinGW with gcc.
gccDppConsoleWin Screenshots
|
gccDppConsoleWin Acquisition Dialog |
vcDppConsoleLibUsb Example Project
vcDppConsoleLibUsb demonstrates acquisition using LibUsb communications in a console window.
vcDppConsoleLibUsb contains mostly generic Cross Platform C++ source code and does not require a graphical user interface.
vcDppConsoleLibUsb Example Features
List of vcDppConsoleLibUsb features in addition to Cross Platform C++ DP5 SDK Features Common To All Examples:
- Works with WinUSB using LibUsb with WinUSB backend (DLL provided).
- Also works with LibUsb without WinUSB.
- Visual Studio solution files are provided for VS2003 and up.
- VS2003/VC++ 7.1 Compile with projectname_7.1.sln.
- VS2005/VC++ 8 Compile with projectname_8.sln.
- VS2008/VC++ 9 Compile with projectname_8.sln.
- VS2010/VC++ 10 and above Compile with projectname_10.sln.
vcDppConsoleLibUsb Screenshots
|
vcDppConsoleLibUsb Acquisition Dialog |
vcDppConsoleWinUSB Example Project
vcDppConsoleWinUSB demonstrates acquisition using WinUSB communications in a console window.
vcDppConsoleWinUSB contains mostly generic C++ source code and does not require a graphical user interface.
vcDppConsoleWinUSB Example Features
List of vcDppConsoleWinUSB features in addition to C++ DP5 SDK Features Common To All Examples:
- Spectrum acquisition with preset.
- Simplified WinUSB communications.
- Connects to default WinUSB device.
- Requires no graphical interface.
- ConsoleHelper class simplifies function calls.
- Mostly non-platform specific source code for easier porting to other systems.
vcDppConsoleWinUSB Screenshot
|
vcDppConsoleWinUSB Acquisition Dialog |
gccDppConsoleInet Example Project
gccDppConsoleInet demonstrates acquisition using Ethernet communications in a Linux or Windows console window.
gccDppConsoleInet contains generic Cross Platform C++ source code and does not require a graphical user interface.
gccDppConsoleInet Example Features
List of gccDppConsoleInet features in addition to Cross Platform C++ DP5 SDK Features Common To All Examples:
- Only requires packages standard (or supported) on Linux or Windows systems.
- Makefile is provided for gcc.
gccDppConsoleInet Screenshots
|
gccDppConsoleInet Acquisition Dialog |
|
gccDppConsoleInet Acquisition Dialog in Windows |
|
gccDppConsoleInet Acquisition Dialog with diagnostic messages |