Commit d6fd42e2 authored by Sebastien Petitdemange's avatar Sebastien Petitdemange

Merge pull request #1 from soleil-ica

Provide WIN32 (msvc 9.0) compatibility
parents b3a107bb 15c0a21d

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibLimaAndor", "LibAndor\LibAndor.vcproj", "{F21E8C5B-7543-4A4C-9459-5C43FE5C84F2}"
ProjectSection(ProjectDependencies) = postProject
{F6556656-D091-43AF-B46F-355F4ABA5DB6} = {F6556656-D091-43AF-B46F-355F4ABA5DB6}
{A4B703A6-C50F-442F-8952-54FB8EA51FF3} = {A4B703A6-C50F-442F-8952-54FB8EA51FF3}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LibLimaCore", "..\..\..\..\..\build\msvc\9.0\LimaCore\LimaCore.vcproj", "{A4B703A6-C50F-442F-8952-54FB8EA51FF3}"
ProjectSection(ProjectDependencies) = postProject
{F6556656-D091-43AF-B46F-355F4ABA5DB6} = {F6556656-D091-43AF-B46F-355F4ABA5DB6}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libprocesslib", "..\..\..\..\..\third-party\Processlib\build\msvc\9.0\libprocesslib\libprocesslib.vcproj", "{F6556656-D091-43AF-B46F-355F4ABA5DB6}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{F21E8C5B-7543-4A4C-9459-5C43FE5C84F2}.Debug|Win32.ActiveCfg = Debug|Win32
{F21E8C5B-7543-4A4C-9459-5C43FE5C84F2}.Debug|Win32.Build.0 = Debug|Win32
{F21E8C5B-7543-4A4C-9459-5C43FE5C84F2}.Release|Win32.ActiveCfg = Release|Win32
{F21E8C5B-7543-4A4C-9459-5C43FE5C84F2}.Release|Win32.Build.0 = Release|Win32
{A4B703A6-C50F-442F-8952-54FB8EA51FF3}.Debug|Win32.ActiveCfg = Debug|Win32
{A4B703A6-C50F-442F-8952-54FB8EA51FF3}.Debug|Win32.Build.0 = Debug|Win32
{A4B703A6-C50F-442F-8952-54FB8EA51FF3}.Release|Win32.ActiveCfg = Release|Win32
{A4B703A6-C50F-442F-8952-54FB8EA51FF3}.Release|Win32.Build.0 = Release|Win32
{F6556656-D091-43AF-B46F-355F4ABA5DB6}.Debug|Win32.ActiveCfg = Debug|Win32
{F6556656-D091-43AF-B46F-355F4ABA5DB6}.Debug|Win32.Build.0 = Debug|Win32
{F6556656-D091-43AF-B46F-355F4ABA5DB6}.Release|Win32.ActiveCfg = Release|Win32
{F6556656-D091-43AF-B46F-355F4ABA5DB6}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="LibLimaAndor"
ProjectGUID="{C39313C8-55F9-42CA-8A46-A03C16A7AA3A}"
RootNamespace="LibAndor"
Keyword="ManagedCProj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="1"
ManagedExtensions="0"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
InlineFunctionExpansion="0"
AdditionalIncludeDirectories="&quot;C:\Program Files\Andor iKon\Drivers\&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\third-party\Processlib\core\include\&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\third-party\Processlib\core\include\WindowSpecific&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\common\include&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\hardware\include&quot;;&quot;$(ProjectDir)\..\..\..\..\include&quot;"
PreprocessorDefinitions="WIN32;NDEBUG;_USRDLL;LIBANDOR_EXPORTS;_WIN32_WINNT=0x0502"
MinimalRebuild="true"
ExceptionHandling="1"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
IgnoreImportLibrary="false"
AdditionalDependencies="&quot;C:\Program Files\Andor iKon\Drivers\ATMCD32M.lib&quot; $(InputDir)..\..\..\..\..\..\build\msvc\9.0\LimaCore\Debug\liblimacore.lib $(InputDir)..\..\..\..\..\..\third-party\Processlib\build\msvc\9.0\libprocesslib\Debug\libprocesslib.lib"
OutputFile="$(InputDir)$(IntDir)\$(ProjectName).dll"
LinkIncremental="2"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
AssemblyDebug="0"
SubSystem="0"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="1"
ManagedExtensions="0"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
WholeProgramOptimization="false"
AdditionalIncludeDirectories="&quot;C:\Program Files\Andor iKon\Drivers&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\third-party\Processlib\core\include\&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\third-party\Processlib\core\include\WindowSpecific&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\common\include&quot;;&quot;$(ProjectDir)..\..\..\..\..\..\hardware\include&quot;;&quot;$(ProjectDir)\..\..\..\..\include&quot;"
PreprocessorDefinitions="WIN32;NDEBUG;_USRDLL;LIBANDOR_EXPORTS;_WIN32_WINNT=0x0502"
MinimalRebuild="true"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ATMCD32M.LIB $(InputDir)..\..\..\..\..\..\build\msvc\9.0\LimaCore\Release\liblimacore.lib $(InputDir)..\..\..\..\..\..\third-party\Processlib\build\msvc\9.0\libprocesslib\Release\libprocesslib.lib"
OutputFile="$(InputDir)$(IntDir)\$(ProjectName).dll"
LinkIncremental="0"
AdditionalLibraryDirectories="&quot;C:\Program Files\Andor iKon\Drivers&quot;"
GenerateDebugInformation="true"
LinkTimeCodeGeneration="0"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
<AssemblyReference
RelativePath="System.dll"
AssemblyName="System, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
MinFrameworkVersion="131072"
/>
<AssemblyReference
RelativePath="System.Data.dll"
AssemblyName="System.Data, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86"
MinFrameworkVersion="131072"
/>
<AssemblyReference
RelativePath="System.XML.dll"
AssemblyName="System.Xml, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
MinFrameworkVersion="131072"
/>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath="..\..\..\..\src\AndorBinCtrlObj.cpp"
>
</File>
<File
RelativePath="..\..\..\..\src\AndorCamera.cpp"
>
</File>
<File
RelativePath="..\..\..\..\src\AndorDetInfoCtrlObj.cpp"
>
</File>
<File
RelativePath="..\..\..\..\src\AndorInterface.cpp"
>
</File>
<File
RelativePath="..\..\..\..\src\AndorRoiCtrlObj.cpp"
>
</File>
<File
RelativePath="..\..\..\..\src\AndorShutterCtrlObj.cpp"
>
</File>
<File
RelativePath="..\..\..\..\src\AndorSyncCtrlObj.cpp"
>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath="..\..\..\..\include\AndorBinCtrlObj.h"
>
</File>
<File
RelativePath="..\..\..\..\include\AndorCamera.h"
>
</File>
<File
RelativePath="..\..\..\..\..\include\AndorCompatibility.h"
>
</File>
<File
RelativePath="..\..\..\..\..\include\AndorDetInfoCtrlObj.h"
>
</File>
<File
RelativePath="..\..\..\..\..\include\AndorInterface.h"
>
</File>
<File
RelativePath="..\..\..\..\include\AndorRoiCtrlObj.h"
>
</File>
<File
RelativePath="..\..\..\..\include\AndorShutterCtrlObj.h"
>
</File>
<File
RelativePath="..\..\..\..\..\include\AndorSyncCtrlObj.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
......@@ -22,7 +22,8 @@
#ifndef ANDORBINCTRLOBJ_H
#define ANDORBINCTRLOBJ_H
#include "HwInterface.h"
#include "AndorCompatibility.h"
#include "HwBinCtrlObj.h"
#include "AndorCamera.h"
namespace lima
......@@ -34,7 +35,7 @@ namespace lima
* \class BinCtrlObj
* \brief Control object providing Andor Bin interface
*******************************************************************/
class BinCtrlObj : public HwBinCtrlObj
class LIBANDOR_API BinCtrlObj : public HwBinCtrlObj
{
DEB_CLASS_NAMESPC(DebModCamera, "BinCtrlObj", "Andor");
public:
......
......@@ -22,42 +22,51 @@
#ifndef ANDORCAMERA_H
#define ANDORCAMERA_H
#include "AndorCompatibility.h"
#if defined (__GNUC__) && (__GNUC__ == 3) && defined (__ELF__)
# define GENAPI_DECL __attribute__((visibility("default")))
# define GENAPI_DECL_ABSTRACT __attribute__((visibility("default")))
#endif
#include <atmcdLXd.h>
#ifndef DRV_P11INVALID
#define DRV_P11INVALID 20087
#define DRV_GATESTEPERROR 20092
#define DRV_INVALID_COUNTCONVERT_MODE 20101
#define DRV_OA_NULL_ERROR 20173
#define DRV_OA_PARSE_DTD_ERROR 20174
#define DRV_OA_DTD_VALIDATE_ERROR 20175
#define DRV_OA_FILE_ACCESS_ERROR 20176
#define DRV_OA_FILE_DOES_NOT_EXIST 20177
#define DRV_OA_XML_INVALID_OR_NOT_FOUND_ERROR 20178
#define DRV_OA_PRESET_FILE_NOT_LOADED 20179
#define DRV_OA_USER_FILE_NOT_LOADED 20180
#define DRV_OA_PRESET_AND_USER_FILE_NOT_LOADED 20181
#define DRV_OA_INVALID_FILE 20182
#define DRV_OA_FILE_HAS_BEEN_MODIFIED 20183
#define DRV_OA_BUFFER_FULL 20184
#define DRV_OA_INVALID_STRING_LENGTH 20185
#define DRV_OA_INVALID_CHARS_IN_NAME 20186
#define DRV_OA_INVALID_NAMING 20187
#define DRV_OA_GET_CAMERA_ERROR 20188
#define DRV_OA_MODE_ALREADY_EXISTS 20189
#define DRV_OA_STRINGS_NOT_EQUAL 20190
#define DRV_OA_NO_USER_DATA 20191
#define DRV_OA_VALUE_NOT_SUPPORTED 20192
#define DRV_OA_MODE_DOES_NOT_EXIST 20193
#define DRV_OA_CAMERA_NOT_SUPPORTED 20194
#define DRV_OA_FAILED_TO_GET_MODE 20195
#if defined(WIN32)
#include <ATMCD32D.H>
#include <sys/timeb.h>
#include <time.h>
#else
#include <atmcdLXd.h>
#endif
#ifndef DRV_P11INVALID
#define DRV_P11INVALID 20087
#define DRV_GATESTEPERROR 20092
#define DRV_INVALID_COUNTCONVERT_MODE 20101
#define DRV_OA_NULL_ERROR 20173
#define DRV_OA_PARSE_DTD_ERROR 20174
#define DRV_OA_DTD_VALIDATE_ERROR 20175
#define DRV_OA_FILE_ACCESS_ERROR 20176
#define DRV_OA_FILE_DOES_NOT_EXIST 20177
#define DRV_OA_XML_INVALID_OR_NOT_FOUND_ERROR 20178
#define DRV_OA_PRESET_FILE_NOT_LOADED 20179
#define DRV_OA_USER_FILE_NOT_LOADED 20180
#define DRV_OA_PRESET_AND_USER_FILE_NOT_LOADED 20181
#define DRV_OA_INVALID_FILE 20182
#define DRV_OA_FILE_HAS_BEEN_MODIFIED 20183
#define DRV_OA_BUFFER_FULL 20184
#define DRV_OA_INVALID_STRING_LENGTH 20185
#define DRV_OA_INVALID_CHARS_IN_NAME 20186
#define DRV_OA_INVALID_NAMING 20187
#define DRV_OA_GET_CAMERA_ERROR 20188
#define DRV_OA_MODE_ALREADY_EXISTS 20189
#define DRV_OA_STRINGS_NOT_EQUAL 20190
#define DRV_OA_NO_USER_DATA 20191
#define DRV_OA_VALUE_NOT_SUPPORTED 20192
#define DRV_OA_MODE_DOES_NOT_EXIST 20193
#define DRV_OA_CAMERA_NOT_SUPPORTED 20194
#define DRV_OA_FAILED_TO_GET_MODE 20195
#endif
#include <stdlib.h>
......@@ -117,7 +126,7 @@ namespace lima
* \class Camera
* \brief object controlling the andor camera via Pylon driver
*******************************************************************/
class Camera
class LIBANDOR_API Camera
{
DEB_CLASS_NAMESPC(DebModCamera, "Camera", "Andor");
friend class Interface;
......@@ -131,8 +140,7 @@ namespace lima
FRAME,
MANUAL
};
Camera(const std::string& config_path,int camera_number=0);
~Camera();
......@@ -200,6 +208,7 @@ namespace lima
void initAdcSpeed();
void setAdcSpeed(int adc);
void getAdcSpeed(int& adc);
void getAdcSpeedInMhz(float& adc);
void initVsSpeed();
void setVsSpeed(int vss);
void getVsSpeed(int& vss);
......@@ -221,8 +230,7 @@ namespace lima
void setGateMode(GateMode mode);
//void setReadMode(ReadMode mode);
private:
class _AcqThread;
friend class _AcqThread;
......@@ -294,7 +302,11 @@ namespace lima
float m_exp_time;
float m_exp_time_max;
float m_kin_time;
#if defined(WIN32)
long m_ring_buffer_size;
#else
int m_ring_buffer_size;
#endif
map<int, string> m_andor_type_maps;
map<int, string> m_andor_error_maps;
};
......
//###########################################################################
// This file is part of LImA, a Library for Image Acquisition
//
// Copyright (C) : 2009-2011
// European Synchrotron Radiation Facility
// BP 220, Grenoble 38043
// FRANCE
//
// This is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 3 of the License, or
// (at your option) any later version.
//
// This software is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, see <http://www.gnu.org/licenses/>.
//###########################################################################
#ifndef ANDORCOMPATIBILITY_H
#define ANDORCOMPATIBILITY_H
#ifdef WIN32
#ifdef LIBANDOR_EXPORTS
#define LIBANDOR_API __declspec(dllexport)
#else
#define LIBANDOR_API __declspec(dllimport)
#endif
#else /* Unix */
#define LIBANDOR_API
#endif
#endif
......@@ -22,7 +22,8 @@
#ifndef ANDORDETINFOCTRLOBJ_H
#define ANDORDETINFOCTRLOBJ_H
#include "HwInterface.h"
#include "AndorCompatibility.h"
#include "HwDetInfoCtrlObj.h"
#include "AndorCamera.h"
namespace lima
......@@ -35,7 +36,7 @@ namespace lima
* \brief Control object providing Andor detector info interface
*******************************************************************/
class DetInfoCtrlObj : public HwDetInfoCtrlObj
class LIBANDOR_API DetInfoCtrlObj : public HwDetInfoCtrlObj
{
DEB_CLASS_NAMESPC(DebModCamera, "DetInfoCtrlObj", "Andor");
......
......@@ -22,6 +22,7 @@
#ifndef ANDORINTERFACE_H
#define ANDORINTERFACE_H
#include "AndorCompatibility.h"
#include "HwInterface.h"
#include "AndorCamera.h"
#include "AndorDetInfoCtrlObj.h"
......@@ -42,7 +43,7 @@ namespace lima
* \brief Andor hardware interface
*******************************************************************/
class Interface : public HwInterface
class LIBANDOR_API Interface : public HwInterface
{
DEB_CLASS_NAMESPC(DebModCamera, "AndorInterface", "Andor");
......@@ -79,6 +80,8 @@ namespace lima
void setSpooling(bool flag, SpoolingMethod method, std::string path, int frameBufferSize);
void setHighCapacity(HighCapacityMode mode);
void setGateMode(GateMode mode);
//! get the camera object to access it directly from client
Camera& getCamera() { return m_cam;}
private:
Camera& m_cam;
......
......@@ -22,7 +22,8 @@
#ifndef ANDORROICTRLOBJ_H
#define ANDORROICTRLOBJ_H
#include "HwInterface.h"
#include "AndorCompatibility.h"
#include "HwRoiCtrlObj.h"
#include "AndorCamera.h"
namespace lima
......@@ -36,7 +37,7 @@ namespace lima
* \brief Control object providing Andor Roi interface
*******************************************************************/
class RoiCtrlObj : public HwRoiCtrlObj
class LIBANDOR_API RoiCtrlObj : public HwRoiCtrlObj
{
DEB_CLASS_NAMESPC(DebModCamera, "RoiCtrlObj", "Andor");
......
......@@ -22,7 +22,8 @@
#ifndef ANDORSHUTTERCTRLOBJ_H
#define ANDORSHUTTERCTRLOBJ_H
#include "HwInterface.h"
#include "AndorCompatibility.h"
#include "HwShutterCtrlObj.h"
#include "AndorCamera.h"
namespace lima
......@@ -35,7 +36,7 @@ namespace lima
* \brief Control object providing Andor shutter interface
*******************************************************************/
class ShutterCtrlObj : public HwShutterCtrlObj
class LIBANDOR_API ShutterCtrlObj : public HwShutterCtrlObj
{
DEB_CLASS_NAMESPC(DebModCamera, "ShutterCtrlObj", "Andor");
......
......@@ -22,6 +22,7 @@
#ifndef ANDORSYNCCTRLOBJ_H
#define ANDORSYNCCTRLOBJ_H
#include "AndorCompatibility.h"
#include "HwInterface.h"
#include "AndorCamera.h"
......@@ -36,7 +37,7 @@ namespace lima
* \brief Control object providing Andor synchronization interface
*******************************************************************/
class SyncCtrlObj : public HwSyncCtrlObj
class LIBANDOR_API SyncCtrlObj : public HwSyncCtrlObj
{
DEB_CLASS_NAMESPC(DebModCamera, "SyncCtrlObj", "Andor");
......
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>fr.soleil</groupId>
<artifactId>super-pom-C-CPP</artifactId>
<version>RELEASE</version>
</parent>
<groupId>fr.soleil.lib.Lima.Camera</groupId>
<artifactId>LimaAndor-${aol}-shared-${mode}</artifactId>
<version>1.3.3</version>
<packaging>nar</packaging>
<name>LimaAndor</name>
<description>This module controls the Xpad Detector</description>
<scm>
<connection>scm:git:git://github.com/soleil-ica/Lima-camera-andor.git</connection>
<developerConnection>scm:git:git://github.com/soleil-ica/Lima-camera-andor.git</developerConnection>
<url>https://github.com/soleil-ica/Lima-camera-andor</url>
</scm>
<dependencies>
<dependency>
<groupId>fr.soleil.lib</groupId>
<artifactId>LimaCore-${aol}-shared-${mode}</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>com.andor</groupId>
<artifactId>ATMCD-${aol}-shared-${mode}</artifactId>
<version>2.83.3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.freehep</groupId>
<artifactId>freehep-nar-plugin</artifactId>
<configuration>
<cpp>
<sourceDirectory>src</sourceDirectory>
<includePaths>
<includePath>include</includePath>
</includePaths>
<!-- define less verbose mode for gcc-->
<options>
<option>-w</option>
</options>
<defines>
<define>LIBANDOR_EXPORTS</define>
<define>WIN32</define>
<define>NDEBUG</define>
<define>_WINDOWS</define>
<define>_USRDLL</define>
<define>_WIN32_WINNT=0x0502</define> <!-- For Windows XP Support -->
</defines>
</cpp>
<libraries>
<library>
<type>shared</type>
</library>
</libraries>
</configuration>
</plugin>
</plugins>
</build>
<developers>
<developer>
<id>langlois</id>
<name>langlois</name>
<url>http://controle/</url>
<organization>Synchrotron Soleil</organization>
<organizationUrl>http://www.synchrotron-soleil.fr</organizationUrl>
<roles>
<role>manager</role>
</roles>
<timezone>1</timezone>
</developer>
<developer>
<id>noureddine</id>
<name>noureddine</name>
<url>http://controle/</url>
<organization>Synchrotron Soleil</organization>
<organizationUrl>http://www.synchrotron-soleil.fr</organizationUrl>
<roles>
<role>developer</role>
</roles>
<timezone>1</timezone>
</developer>
</developers>
</project>
This diff is collapsed.
......@@ -114,6 +114,7 @@ namespace Andor
void initAdcSpeed();
void setAdcSpeed(int adc);
void getAdcSpeed(int& adc /Out/);
void getAdcSpeedInMhz(float& adc /Out/);
void initVsSpeed();
void setVsSpeed(int vss);
void getVsSpeed(int& vss /Out/);
......
......@@ -19,6 +19,7 @@
// You should have received a copy of the GNU General Public License
// along with this program; if not, see <http://www.gnu.org/licenses/>.
//############################################################################
#include <sstream>
#include <iostream>
#include <string>
......@@ -87,7 +88,11 @@ Camera::Camera(const std::string& config_path,int camera_number)
_mapAndorError();
// --- Get available cameras and select the choosen one.
#if defined(WIN32)
long numCameras;
#else
int numCameras;
#endif
DEB_TRACE() << "Get all attached cameras";
if (GetAvailableCameras(&numCameras)!= DRV_SUCCESS)
{
......@@ -170,7 +175,7 @@ Camera::Camera(const std::string& config_path,int camera_number)
<< " * Model : " << m_detector_model;
// --- Initialise deeper parameters of the controller
initialiseController();
......@@ -237,7 +242,7 @@ Camera::Camera(const std::string& config_path,int camera_number)
}
// --- set shutter mode to FRAME
setShutterMode(FRAME);
setShutterMode(FRAME);
// --- finally start the acq thread
m_acq_thread = new _AcqThread(*this);
......@@ -331,7 +336,11 @@ void Camera::startAcq()
//}
if (m_trig_mode != IntTrig && m_trig_mode != IntTrigMult)
{
#if defined(WIN32)
Sleep(0.1);
#else
usleep(1e5);
#endif
}
}
......@@ -410,11 +419,17 @@ void Camera::_AcqThread::threadFunction()