jvoigts / intan_clamp Goto Github PK
View Code? Open in Web Editor NEWfork of the intan clamp software
fork of the intan clamp software
Intan CLAMP Interface Software - Source Code (v1.0) --------------------------------------------------- This directory contains the Intan CLAMP Interface C++/Qt source code and two supporting files: main.bit (the FPGA configuration file) and an operating system-specific Opal Kelly library file located in the 'Opal Kelly library files' directory. These two supporting files must reside in the directory with the executable file (i.e., the 'debug' or 'release' folder generated when the code is compiled). To find the executable directory on a Mac, right-click on the *.app file generated by Qt, select "Show package contents", and open the "MacOS" directory. (Note: Some Mac users have reported that these two files must be placed in the in same directory as the application instead.) You should also download and install the USB drivers from the Intan Technologies website before connecting the CLAMP Controller to a computer. (They are not included in this zip file.) The C++ source code uses a handful of C++11 features, so g++ users may need to add -std=c++11 to their command line or make file. This code is written and tested with Qt-4.8.6, not the current version, so you may need to download the older version. On Windows, this means downloading and then recompiling with your current version of Visual Studio, as the distributed versions of Qt-4.8.6 were compiled with older versions of Visual Studio. For production code, you should compile a Release build (Visual Studio) or use the optimization flag -O3 (g++). Otherwise, the compiled code may not be fast enough to keep up with how fast data streams from the USB interface board. This will show up as the FIFO lag becoming very high for debug builds. (Thanks to Josh Siegle at MIT and Open-Ephys.org for tips on Mac and Linux compilation.) Other Linux tips ---------------- Copy the libokFrontPanel.so file into the source folder. Add the following line to the .pro file: unix:LIBS += -L./ -l okFrontPanel -ldl Run qmake on the .pro file, and then make. Other tips on Mac compilation ----------------------------- In principle, the CLAMP software will run on a Mac. However, a couple of tweaks are necessary. This description is based on exprience using two different machines running MacOSX 10.9 1) Install XCode 2) Install Qt5.2.1 (Make sure to install XCode first) 3) Modify the QT line in the .pro file to read QT += widgets multimedia 4) Fix library issue as described here: http://stackoverflow.com/questions/20342896/solved-qt5-1-qt5-2-mac-os-10-9-mavericks-xcode-5-0-2-undefined-symbols in /Qt5.2.1/5.2.1/clang_64/mkspecs/macx-clang/qmake.conf (or similar) change QMAKE_MACOSX_DEPLYOMENT_TARGET from 10.6 to 10.9 ------------------------------------------------------------------------- Some users have reported that it is necessary to install Qt with 32-bit support for the okFrontPanel DLL to load properly. But this was with an older version of the code code that didn't support 64-bit, so it may not apply any more. License ------- The Intan CLAMP Interface is free software, and is distributed under the terms of the GNU Lesser General Public License as published by the Free Software Foundation. See the license subdirectory for the complete license. Recommended C++/Qt Resources ---------------------------- The source code is written entirely in C++ using the open-source Qt libraries for multi-platform GUI support. (The files composing the core CLAMP API are written in straight C++ without using Qt.) There are countless books and other online resources related to C++ programming, so these will not be discussed here. For C++ programmers new to Qt, the best place to start is http://qt-project.org. We recommend downloading the Qt SDK (Software Design Kit) including Qt Creator, Qt Assistant, and the latest Qt libraries for the operating system of choice. The best book we have found for first-time Qt programmers is C++ GUI Programming with Qt 4, Second Edition, by Jasmin Blanchette and Mark Summerfield (ISBN 0-13-235416-0). Chapters 1-8 and 11-12, along with Appendices A and B, cover nearly all the aspects of Qt used in the CLAMP interface GUI. The library documentation available in the Qt Assistant application is also excellent and indispensable. Related CLAMP Documentation ----------------------------- The following supporting datasheets provide detailed information on the operation of the Intan Technologies CLAMP series voltage/current clamp amplifier chips; they may be found on the Intan Technologies website, http://www.intantech.com: * CLAMP System user guide * CLAMP chip datasheet
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.