32#ifndef GENICAM_TYPES_H
33#define GENICAM_TYPES_H
38#if defined (_WIN32) && !defined(WIN32)
44# ifndef __STDC_LIMIT_MACROS
45# define __STDC_LIMIT_MACROS
48# ifndef __STDC_CONSTANT_MACROS
49# define __STDC_CONSTANT_MACROS
65# if defined(_M_IX86) && _MSC_VER >= 1300
72# if defined(_MSC_VER) && _MSC_VER >= 1600
81 typedef unsigned char uint8_t;
84 typedef short int16_t;
86 typedef unsigned short uint16_t;
89 typedef __int32 int32_t;
91 typedef unsigned __int32 uint32_t;
94 typedef __int64 int64_t;
96 typedef unsigned __int64 uint64_t;
108 typedef __int64 int_t;
110 typedef unsigned __int64 uint_t;
112# ifndef _SIZE_T_DEFINED
115 typedef unsigned __int64 size_t;
118 typedef GC_W64
unsigned int size_t;
120# define _SIZE_T_DEFINED
123# ifndef _INTPTR_T_DEFINED
126 typedef __int64 intptr_t;
129 typedef GC_W64
int intptr_t;
131# define _INTPTR_T_DEFINED
134# ifndef _UINTPTR_T_DEFINED
137 typedef unsigned __int64 uintptr_t;
140 typedef GC_W64
unsigned int uintptr_t;
142# define _UINTPTR_T_DEFINED
146# error No platform-specific type definitions
154# define GC_INT64_MAX INT64_MAX
156# define GC_INT64_MAX static_cast<int64_t>(0x7fffffffffffffffLL)
162# define GC_INT64_MIN INT64_MIN
164# define GC_INT64_MIN static_cast<int64_t>(0x8000000000000000LL)
170# define GC_UINT64_MAX UINT64_MAX
172# define GC_UINT64_MAX static_cast<uint64_t>(0xffffffffffffffffULL)
178# define GC_INT32_MAX INT32_MAX
180# define GC_INT32_MAX static_cast<int64_t>(0x000000007fffffffLL)
186# define GC_INT32_MIN INT32_MIN
188# define GC_INT32_MIN static_cast<int64_t>(0xffffffff80000000LL)
194# define GC_UINT32_MAX UINT32_MAX
196# define GC_UINT32_MAX static_cast<uint64_t>(0x00000000ffffffffULL)
202# define GC_INT8_MAX INT8_MAX
204# define GC_INT8_MAX static_cast<int64_t>(0x000000000000007fLL)
210# define GC_INT8_MIN INT8_MIN
212# define GC_INT8_MIN static_cast<int64_t>(0xffffffffffffff80LL)
218# define GC_UINT8_MAX UINT8_MAX
220# define GC_UINT8_MAX static_cast<uint64_t>(0x00000000000000ffULL)
244#if defined(GENAPI_STATIC)
246# define GCBASE_RTTI_CLASS_API
247#elif defined(_MSC_VER)
248# ifdef GCBASE_EXPORTS
249# define GCBASE_API __declspec(dllexport)
250# define GCBASE_RTTI_CLASS_API __declspec(dllexport)
252# define GCBASE_API __declspec(dllimport)
253# define GCBASE_RTTI_CLASS_API __declspec(dllimport)
255#elif defined(__GNUC__)
256# ifdef GCBASE_EXPORTS
257# define GCBASE_API __attribute__((visibility("default")))
258# define GCBASE_RTTI_CLASS_API __attribute__((visibility("default")))
263# define GCBASE_RTTI_CLASS_API __attribute__((visibility("default")))
266# error Unsupported compiler or platform!
269namespace GENICAM_NAMESPACE
283#if defined(_MSC_VER) || defined(__GNUC__)
284# define GC_UNUSED(unused_var) (void)(unused_var)
286# error Unsupported compiler or platform
GenICam versioned namespace.
float float32_t
32 bit floating point
Definition GCTypes.h:236
double float64_t
64 bit floating point
Definition GCTypes.h:239
version
Definition GCTypes.h:273
uint16_t SubMinor
a is incompatible b a > b
Definition GCTypes.h:276
uint16_t Minor
a is incompatible with b if a != b
Definition GCTypes.h:275