Commit df7eb19e authored by Alois SCHLOEGL's avatar Alois SCHLOEGL
Browse files

move 'XOP toolkit 6' parallel to ./FPulse

parent 754c0771
# Introduction
FPulse is a program for patch-clamp recordings. This version FPulse (3.3.3) was build successfully in 2010 for IgorPro 6.x.
FPulse is a program for patch-clamp recordings. This version FPulse 3.x was build successfully for IgorPro 6.x.
If not stated otherwise, all copyrights are with:
......@@ -12,94 +12,139 @@ If not stated otherwise, all copyrights are with:
This code is provided under the GPLv3 (see COPYING).
Dependencies on 3rd party tools are listed. This repository is setup mainly for documentation purpose, no active development or support is provided.
The Copyright does not apply to these files (instructions for downloading these from the vendor are shown further):
```
.\UserIgor\XOP_Axon\FP_Mc700Tg\MultiClampBroadcastMsg.hpp
.\UserIgor\XOP_Axon\FP_Mc700Tg\MCTelegraphs.h
.\UserIgor\XOP_Dll\AxMultiClampMsg.dll
.\UserIgor\XOP_Dll\Use1432.dll
.\UserIgor\XOP_Dll\CFS32.dll
.\UserIgor\XOP_Ced\FPulseCed\CFS32.lib
.\UserIgor\XOP_Ced\FPulseCed\Use1432.lib
.\UserIgor\XOP_Ced\FPulseCed\Cfs.h
.\UserIgor\XOP_Ced\FPulseCed\Cfs.c
.\UserIgor\XOP_Ced\FPulseCed\Use1401.h
.\UserIgor\XOP_Ced\FPulseCed\MACHINE.H
```
This repository is setup mainly for documentation purpose, no active development or support is provided.
### Files from Axon Instruments
Copyright (c) 1999-2004 Axon Instruments.
# Installing FPulse
* Prerequisites are
- MS Windows (XP or later)
- IgorPro 6.x
- MultiClamp 700A or 700B
- CED 1401
* Download and unzip
https://git.ist.ac.at/jonasgroup/FPulse/-/archive/master/FPulse-master.zip
or use git
```
git clone https://git.ist.ac.at/jonasgroup/FPulse
```
UserIgor\XOP_Axon\FP_Mc700Tg\MultiClampBroadcastMsg.hpp
UserIgor\XOP_Axon\FP_Mc700Tg\MCTelegraphs.h
UserIgor\XOP_Dll\AxMultiClampMsg.dll
* The binaries can be deployed by running
```
install.bat
```
in a "cmd" shell with administrative permissions.
[Axon MultiClamp commander ](https://axograph.com/download/multi-clamp-commander "Axon MultiClamp Commander")
[Installer of MC700B](http://axograph.com/installers/MultiClamp_2_1_0_16.exe "MC installer for MS-Windows")
* Download and install [MultiClamp Commander 700a]), in the default location, and extract this dll from
# Build requirements
```
c:\Program Files (x86)\Molecular Devices\MultiClamp 700B Commander\3rd Party Support\AxMultiClampMsg\AxMultiClampMsg.dll
### Igor XOP toolkit
```
[XOP toolkit 6](http://www.wavemetrics.net/ecomm/xop/XOPToolkit6.exe "XOP toolkit 6") has been used for the interface been C-code and IgorPro.
### Files from Cambridge Electronic Devices (CED)
[1]: https://www.wavemetrics.com/products/xoptoolkit "XOP toolkit"
```
UserIgor\XOP_Dll\Use1432.dll
UserIgor\XOP_Dll\CFS32.dll
### Compiler
MSVC2015 is known to work. Other compilers are not tested.
UserIgor\XOP_Ced\FPulseCed\Cfs.h
UserIgor\XOP_Ced\FPulseCed\Cfs.c
UserIgor\XOP_Ced\FPulseCed\Use1401.h
UserIgor\XOP_Ced\FPulseCed\MACHINE.H
Open these two sln files:
```
These can be obtained from here:
./UserIgor/XOP_Axon/FP_Mc700Tg/VC2015/FP_Mc700Tg.sln
./UserIgor/XOP_Ced/FPulseCed/VC2015/FPulseCed.sln
```
* Download, and install [1401 Windows Installer](http://ced.co.uk/files/winsupp.exe) in the default location, and extract these files
The solution file assumes that the directories are organized in the following way
* Download, and install [CFS library](http://ced.co.uk/files/MS54.exe) in the default location, and extract these dll
```
<mydir>/FPulse/...
<mydir>/XOP Toolkit 6/IgorXOPs6/XOPSupport/
```
If that is not the case, you need adapt the include path such that it points to your
```
C:\1401\utils\Use1432.dll
C:\1401\windrv\1432ui.dll
C:\CFS library\CPP\CFS32.dll
<yourdir>/XOP Toolkit 6/IgorXOPs6/XOPSupport/
```
# Download:
* sources:
https://docs.microsoft.com/en-us/cpp/build/reference/i-additional-include-directories?view=msvc-160
To set this compiler option in the Visual Studio development environment
https://git.ist.ac.at/jonasgroup/FPulse/-/archive/master/FPulse-master.zip
- Open the project's Property Pages dialog box. For details, see Set C++ compiler and build properties in Visual Studio.
or through git
- Select the Configuration Properties > C/C++ > General property page.
- Modify the Additional Include Directories property and add
```
git clone https://git.ist.ac.at/jonasgroup/FPulse
<yourdir>\XOP Toolkit 6\IgorXOPs6\XOPSupport\
```
You might also need to adapt the path in the "*.rc" files. (When you rebuild the project, the compiler will point you to the line).
### Files from _Axon Instruments_ and _Cambridge Electronic Devices (CED)_
These the files are currently also in the [repository]
[2]:
## Installer
the binaries can be deployed with
```
install.bat
.\UserIgor\XOP_Axon\FP_Mc700Tg\MultiClampBroadcastMsg.hpp
.\UserIgor\XOP_Axon\FP_Mc700Tg\MCTelegraphs.h
.\UserIgor\XOP_Dll\AxMultiClampMsg.dll
.\UserIgor\XOP_Dll\Use1432.dll
.\UserIgor\XOP_Dll\CFS32.dll
.\UserIgor\XOP_Ced\FPulseCed\CFS32.lib
.\UserIgor\XOP_Ced\FPulseCed\Use1432.lib
.\UserIgor\XOP_Ced\FPulseCed\Cfs.h
.\UserIgor\XOP_Ced\FPulseCed\Cfs.c
.\UserIgor\XOP_Ced\FPulseCed\Use1401.h
.\UserIgor\XOP_Ced\FPulseCed\MACHINE.H
```
So from a technical reason you might not need them. But you might want to use them legal reasons, or in case we are now allowed to redistribute them.
# Build requirements
* Download, and install [1401 Windows Installer](http://ced.co.uk/files/winsupp.exe) in the default location (C:\1401\), and extract C:\1401\utils\Use1432.dll these files
### Igor XOP toolkit
* Download, and install [CFS library](http://ced.co.uk/files/MS54.exe) in the default location (C:\CFS library\), and extract C:\CFS Library\CPP\CFS32.dll
[XOP toolkit 6](http://www.wavemetrics.net/ecomm/xop/XOPToolkit6.exe "XOP toolkit 6") has been used for the interface been C-code and IgorPro.
* xDownload and install [Installer of MC700B](http://axograph.com/installers/MultiClamp_2_1_0_16.exe), in the default location (C:\Program Files (x86)\Molecular Devices\MultiClamp 700B Commander), and extract AxMultiClampMsg.dll from
[1]: https://www.wavemetrics.com/products/xoptoolkit "XOP toolkit"
### Compiler
MSVC2015 is known to work. Other compilers are not tested.
# Contact
In case of questions concerning FPulse, you can contact any of these:
Peter Jonas <peter.jonas@ist.ac.at>,
Ulrich Fröbe <ulfroebe@gmail.com>,
Alois Schlögl <alois.schloegl@ist.ac.at>
# Runtime requirements
- IgorPro 6.x
- MultiClamp 700A or 700B
- CED 1401
......@@ -139,7 +139,7 @@ telegraphed data but also for the flags (e.g. bIsConnected) and also the TimerI
// Flaw: program will fail when (in Demo mode) more than 1 700A panel or more than 1 700B panel is open.
#include "XOPStandardHeaders.h"// Include ANSI headers, Mac headers, IgorXOP.h, XOP.h and XOPSupport.h
#include <XOPStandardHeaders.h>
#include "XopMain.h"
#include "XopUtils.h"
......
......@@ -4,8 +4,8 @@
// XOP-specific resources that IGOR looks for in an XOP module.
// Defines XOP-specific symbols.
#include "XOPResources.h"
#include "IgorXOP.h" // NT_I16
#include "..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\XOPResources.h"
#include "..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\IgorXOP.h" // NT_I16
#include "FP_MC700Tg.h" // sets MCTG_IGORMAINFRM: compile and link all code necessary for the MultiClamp telegraph connection
......
......@@ -114,7 +114,7 @@
<WarningLevel>Level3</WarningLevel>
<MinimalRebuild>false</MinimalRebuild>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>..\..\XOPSupport;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;FP_Mc700Tg_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AssemblerListingLocation>
</AssemblerListingLocation>
......@@ -171,8 +171,8 @@
<ResourceCompile Include="..\FP_Mc700TgWinCustom.rc" />
</ItemGroup>
<ItemGroup>
<Library Include="..\..\XOPSupport\IGOR.lib" />
<Library Include="..\..\XOPSupport\VC2015\XOPSupport.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\IGOR.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\VC2015\XOPSupport.lib" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
......
......@@ -45,7 +45,7 @@
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<Library Include="..\..\XOPSupport\IGOR.lib" />
<Library Include="..\..\XOPSupport\VC2015\XOPSupport.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\IGOR.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\VC2015\XOPSupport.lib" />
</ItemGroup>
</Project>
\ No newline at end of file
// XopMain.c --
#include "XOPStandardHeaders.h"// Include ANSI headers, Mac headers, IgorXOP.h, XOP.h and XOPSupport.h
#include <XOPStandardHeaders.h>
#include "XopMain.h"
......
//
// XopUtils.c
#include "XOPStandardHeaders.h"
#include <XOPStandardHeaders.h>
#include "XopUtils.h"
#define kMAXSTRING 2000// 1000
......
......@@ -13,7 +13,7 @@
// ANSI headers IgorXOP.h XOP.h XOPSupport.h
#include "XOPStandardHeaders.h"
#include <XOPStandardHeaders.h>
#include "FPulseCed.h"
#include "XopMain.h"
......
......@@ -5,8 +5,8 @@
// XOP-specific resources that IGOR looks for in an XOP module.
// Defines XOP-specific symbols.
#include "XOPResources.h"
#include "IgorXOP.h" // NT_I16
#include "..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\XOPResources.h""
#include "..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\IgorXOP.h" // NT_I16
// Custom error messages
// those above 100 are copied from USE1401.h. The original numbers ranging from..
......
......@@ -41,7 +41,7 @@
// 091002 q&d (not thoroughly tested) clip strings one character shorter than previously in xCfsSetVarVal()
// 030401 some temporary prints to check string size (removed again)
#include "XOPStandardHeaders.h"
#include <XOPStandardHeaders.h>
#include "Cfs.h"
#include "FPulseCed.h"
......
......@@ -65,7 +65,7 @@
<WarningLevel>Level3</WarningLevel>
<MinimalRebuild>false</MinimalRebuild>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>..\..\XOPSupport</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AssemblerListingLocation>
</AssemblerListingLocation>
......@@ -124,7 +124,7 @@
<Optimization>MaxSpeed</Optimization>
<SuppressStartupBanner>true</SuppressStartupBanner>
<WarningLevel>Level3</WarningLevel>
<AdditionalIncludeDirectories>..\..\XOPSupport</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;FPulseCed_EXPORTS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AssemblerListingLocation>
</AssemblerListingLocation>
......@@ -188,8 +188,8 @@
<ClCompile Include="..\XopMain.c" />
</ItemGroup>
<ItemGroup>
<Library Include="..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\VC2015\XOPSupport.lib" />
<Library Include="..\..\XOPSupport\IGOR.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\IGOR.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\VC2015\XOPSupport.lib" />
<Library Include="..\CFS32.lib" />
<Library Include="..\Use1432.lib" />
</ItemGroup>
......
......@@ -9,10 +9,6 @@
<UniqueIdentifier>{ff78c843-347c-4f72-80da-cc53fd19be6f}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{8419575a-3823-4f01-90c8-8b0a11ce6444}</UniqueIdentifier>
<Extensions>ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="FPulseCed.rc">
......@@ -51,8 +47,8 @@
</ClCompile>
</ItemGroup>
<ItemGroup>
<Library Include="..\..\XOPSupport\IGOR.lib" />
<Library Include="..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\VC2015\XOPSupport.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\IGOR.lib" />
<Library Include="..\..\..\..\..\XOP Toolkit 6\IgorXOPs6\XOPSupport\VC2015\XOPSupport.lib" />
<Library Include="..\CFS32.lib" />
<Library Include="..\Use1432.lib" />
</ItemGroup>
......
//
// XopMain.c --
#include "XOPStandardHeaders.h"// Include ANSI headers, Mac headers, IgorXOP.h, XOP.h and XOPSupport.h
#include <XOPStandardHeaders.h>
#include "XopMain.h"
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment