CLProtocol 3.5.1
ClSerialTypes.h
1//-----------------------------------------------------------------------------
2// (c) 2008 by Basler Vision Technologies
3// Section: Vision Components
4// Project: GenApi
5// Author: Fritz Dierks
6// $Header$
7//
8// License: This file is published under the license of the EMVA GenICam Standard Group.
9// A text file describing the legal terms is included in your installation as 'GenICam_license.pdf'.
10// If for some reason you are missing this file please contact the EMVA or visit the website
11// (http://www.genicam.org) for a full copy.
12//
13// THIS SOFTWARE IS PROVIDED BY THE EMVA GENICAM STANDARD GROUP "AS IS"
14// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE EMVA GENICAM STANDARD GROUP
17// OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
20// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
21// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23// POSSIBILITY OF SUCH DAMAGE.
24//-----------------------------------------------------------------------------
30#ifndef CLPROTOCOL_CLSERIALTYPES_H
31#define CLPROTOCOL_CLSERIALTYPES_H
32
33//==============================================================================
34// Macros
35//==============================================================================
36
37//------------------------------------------------------------------------------
38// CL serial DLL versions
39//------------------------------------------------------------------------------
40#define CL_DLL_VERSION_NO_VERSION 1 // Not a CL dll
41#define CL_DLL_VERSION_1_0 2 // Oct 2000 compliant
42#define CL_DLL_VERSION_1_1 3 // Oct 2001 compliant
43#define CL_DLL_VERSION_2_0 4 // Feb 2012 compliant
44#define CL_DLL_VERSION_2_1 5 // Apr 2018 compliant
45
46//------------------------------------------------------------------------------
47// Baud Rates (CLUINT32)
48//------------------------------------------------------------------------------
49#define CL_BAUDRATE_9600 0x00000001
50#define CL_BAUDRATE_19200 0x00000002
51#define CL_BAUDRATE_38400 0x00000004
52#define CL_BAUDRATE_57600 0x00000008
53#define CL_BAUDRATE_115200 0x00000010
54#define CL_BAUDRATE_230400 0x00000020
55#define CL_BAUDRATE_460800 0x00000040
56#define CL_BAUDRATE_921600 0x00000080
57#define CL_BAUDRATE_AUTOMAX 0x40000000
58
59//------------------------------------------------------------------------------
60// Error Codes
61//------------------------------------------------------------------------------
62#define CL_ERR_NO_ERR 0
63#define CL_ERR_BUFFER_TOO_SMALL -10001
64#define CL_ERR_MANU_DOES_NOT_EXIST -10002
65#define CL_ERR_PORT_IN_USE -10003
66#define CL_ERR_TIMEOUT -10004
67#define CL_ERR_INVALID_INDEX -10005
68#define CL_ERR_INVALID_REFERENCE -10006
69#define CL_ERR_ERROR_NOT_FOUND -10007
70#define CL_ERR_BAUD_RATE_NOT_SUPPORTED -10008
71#define CL_ERR_OUT_OF_MEMORY -10009
72#define CL_ERR_REGISTRY_KEY_NOT_FOUND -10010
73#define CL_ERR_INVALID_PTR -10011
74#define CL_ERR_IN_USE -10012
75#define CL_ERR_UNABLE_TO_LOAD_DLL -10098
76#define CL_ERR_FUNCTION_NOT_FOUND -10099
77
78#define CL_ERR_PENDING_WRITE 20101
79#define CL_ERR_INVALID_DEVICEID -20100
80#define CL_ERR_NO_DEVICE_FOUND -20101
81#define CL_ERR_NO_XMLDESCRIPTION_FOUND -20102
82#define CL_ERR_INVALID_COOKIE -20103
83#define CL_ERR_GET_LAST_ERROR -20104
84#define CL_ERR_PARAM_NOT_SUPPORTED -20105
85#define CL_ERR_PARAM_READ_ONLY -20106
86#define CL_ERR_PARAM_DATA_SIZE -20107
87#define CL_ERR_PARAM_DATA_VALUE -20108
88
89//------------------------------------------------------------------------------
90// Types
91//------------------------------------------------------------------------------
92
93#ifndef _CL_hSerRef_DEFINED_
94 #define _CL_hSerRef_DEFINED_
95 typedef void* hSerRef;
96#endif
97
98#ifndef _CL_INT32_DEFINED_
99 #define _CL_INT32_DEFINED_
100 typedef int CLINT32;
101#endif
102
103#ifndef _CL_UINT32_DEFINED_
104 #define _CL_UINT32_DEFINED_
105 typedef unsigned int CLUINT32;
106#endif
107
108#ifndef _CL_INT64_DEFINED_
109 #if !defined(_WIN32)
110 #include <inttypes.h>
111 #if !defined(INTEL_COMPILER) && !defined(INTEL_LLVM_COMPILER) && !defined(int64)
112 typedef int64_t __int64;
113 #endif
114 #endif
115 #define _CL_INT64_DEFINED_
116 typedef __int64 CLINT64;
117#endif
118
119#ifndef _CL_UINT16_DEFINED_
120 #define _CL_UINT16_DEFINED_
121 typedef unsigned short UINT16;
122#endif
123
124#ifndef _CL_INT8_DEFINED_
125 #define _CL_INT8_DEFINED_
126 typedef char CLINT8;
127#endif
128
129#ifndef _CL_BOOL8_DEFINED_
130 #define _CL_BOOL8_DEFINED_
131 typedef char BOOL8;
132#endif
133
134#endif // CLPROTOCOL_CLSERIALTYPES_H