OnixS C++ eSpeed ITCH Market Data Handler
1.7.3
API documentation
Home
Contents
Namespaces
Classes
Files
File List
File Members
include
OnixS
eSpeed
MarketData
Itch
Compiler.h
Go to the documentation of this file.
1
/*
2
* Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3
*
4
* This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5
* and international copyright treaties.
6
*
7
* Access to and use of the software is governed by the terms of the applicable ONIXS Software
8
* Services Agreement (the Agreement) and Customer end user license agreements granting
9
* a non-assignable, non-transferable and non-exclusive license to use the software
10
* for it's own data processing purposes under the terms defined in the Agreement.
11
*
12
* Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13
* of this source code or associated reference material to any other location for further reproduction
14
* or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15
*
16
* Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17
* the terms of the Agreement is a violation of copyright law.
18
*/
19
20
#pragma once
21
22
#include <OnixS/eSpeed/MarketData/Itch/CompilerDetection.h>
23
24
# if defined(ONIXS_ESPEED_ITCH_COMPILER_CXX_NOEXCEPT) && ONIXS_ESPEED_ITCH_COMPILER_CXX_NOEXCEPT
25
# define ONIXS_ESPEED_ITCH_NOTHROW noexcept
26
# else
27
# define ONIXS_ESPEED_ITCH_NOTHROW throw()
28
# endif
29
30
31
# if defined(ONIXS_ESPEED_ITCH_COMPILER_CXX_EXPLICIT_CONVERSIONS) && ONIXS_ESPEED_ITCH_COMPILER_CXX_EXPLICIT_CONVERSIONS
32
# define ONIXS_ESPEED_ITCH_EXPLICIT explicit
33
#else
34
# define ONIXS_ESPEED_ITCH_EXPLICIT
35
#endif
36
37
#if defined (__GNUC__)
38
# if (__cplusplus >= 201103L || (defined(__GXX_EXPERIMENTAL_CXX0X__) && __GXX_EXPERIMENTAL_CXX0X__))
39
# define ONIXS_ESPEED_ITCH_GCC_CXX11
40
# endif
41
#endif
42
43
# if defined(ONIXS_ESPEED_ITCH_COMPILER_CXX_CONSTEXPR) && ONIXS_ESPEED_ITCH_COMPILER_CXX_CONSTEXPR
44
# define ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR constexpr
45
#else
46
# define ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR const
47
#endif
48
49
#if defined(__GNUC__)
50
# define ONIXS_ESPEED_ITCH_CHECK_EXPECT(exp,c) (__builtin_expect((exp), c))
51
#else
52
# define ONIXS_ESPEED_ITCH_CHECK_EXPECT(exp,c) ((exp))
53
#endif