quickfix_ruby 1.14.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/ext/quickfix/Acceptor.cpp +248 -0
- data/ext/quickfix/Acceptor.h +127 -0
- data/ext/quickfix/Allocator.h +9 -0
- data/ext/quickfix/Application.h +127 -0
- data/ext/quickfix/AtomicCount.h +109 -0
- data/ext/quickfix/DOMDocument.h +74 -0
- data/ext/quickfix/DataDictionary.cpp +618 -0
- data/ext/quickfix/DataDictionary.h +539 -0
- data/ext/quickfix/DataDictionaryProvider.cpp +71 -0
- data/ext/quickfix/DataDictionaryProvider.h +70 -0
- data/ext/quickfix/DatabaseConnectionID.h +105 -0
- data/ext/quickfix/DatabaseConnectionPool.h +91 -0
- data/ext/quickfix/Dictionary.cpp +162 -0
- data/ext/quickfix/Dictionary.h +94 -0
- data/ext/quickfix/Event.h +95 -0
- data/ext/quickfix/Exceptions.h +299 -0
- data/ext/quickfix/Field.h +672 -0
- data/ext/quickfix/FieldConvertors.h +863 -0
- data/ext/quickfix/FieldMap.cpp +238 -0
- data/ext/quickfix/FieldMap.h +244 -0
- data/ext/quickfix/FieldNumbers.h +46 -0
- data/ext/quickfix/FieldTypes.cpp +64 -0
- data/ext/quickfix/FieldTypes.h +698 -0
- data/ext/quickfix/Fields.h +31 -0
- data/ext/quickfix/FileLog.cpp +200 -0
- data/ext/quickfix/FileLog.h +112 -0
- data/ext/quickfix/FileStore.cpp +332 -0
- data/ext/quickfix/FileStore.h +129 -0
- data/ext/quickfix/FixFieldNumbers.h +1537 -0
- data/ext/quickfix/FixFields.h +1538 -0
- data/ext/quickfix/FixValues.h +3281 -0
- data/ext/quickfix/FlexLexer.h +188 -0
- data/ext/quickfix/Group.cpp +64 -0
- data/ext/quickfix/Group.h +73 -0
- data/ext/quickfix/HtmlBuilder.h +186 -0
- data/ext/quickfix/HttpConnection.cpp +739 -0
- data/ext/quickfix/HttpConnection.h +78 -0
- data/ext/quickfix/HttpMessage.cpp +149 -0
- data/ext/quickfix/HttpMessage.h +133 -0
- data/ext/quickfix/HttpParser.cpp +49 -0
- data/ext/quickfix/HttpParser.h +54 -0
- data/ext/quickfix/HttpServer.cpp +169 -0
- data/ext/quickfix/HttpServer.h +78 -0
- data/ext/quickfix/Initiator.cpp +289 -0
- data/ext/quickfix/Initiator.h +149 -0
- data/ext/quickfix/Log.cpp +77 -0
- data/ext/quickfix/Log.h +179 -0
- data/ext/quickfix/Message.cpp +580 -0
- data/ext/quickfix/Message.h +370 -0
- data/ext/quickfix/MessageCracker.h +188 -0
- data/ext/quickfix/MessageSorters.cpp +105 -0
- data/ext/quickfix/MessageSorters.h +156 -0
- data/ext/quickfix/MessageStore.cpp +146 -0
- data/ext/quickfix/MessageStore.h +174 -0
- data/ext/quickfix/Mutex.h +131 -0
- data/ext/quickfix/MySQLConnection.h +194 -0
- data/ext/quickfix/MySQLLog.cpp +275 -0
- data/ext/quickfix/MySQLLog.h +145 -0
- data/ext/quickfix/MySQLStore.cpp +331 -0
- data/ext/quickfix/MySQLStore.h +142 -0
- data/ext/quickfix/NullStore.cpp +54 -0
- data/ext/quickfix/NullStore.h +99 -0
- data/ext/quickfix/OdbcConnection.h +266 -0
- data/ext/quickfix/OdbcLog.cpp +252 -0
- data/ext/quickfix/OdbcLog.h +117 -0
- data/ext/quickfix/OdbcStore.cpp +338 -0
- data/ext/quickfix/OdbcStore.h +113 -0
- data/ext/quickfix/PUGIXML_DOMDocument.cpp +112 -0
- data/ext/quickfix/PUGIXML_DOMDocument.h +81 -0
- data/ext/quickfix/Parser.cpp +103 -0
- data/ext/quickfix/Parser.h +57 -0
- data/ext/quickfix/PostgreSQLConnection.h +176 -0
- data/ext/quickfix/PostgreSQLLog.cpp +276 -0
- data/ext/quickfix/PostgreSQLLog.h +144 -0
- data/ext/quickfix/PostgreSQLStore.cpp +334 -0
- data/ext/quickfix/PostgreSQLStore.h +141 -0
- data/ext/quickfix/Queue.h +75 -0
- data/ext/quickfix/QuickfixRuby.cpp +252066 -0
- data/ext/quickfix/QuickfixRuby.h +34 -0
- data/ext/quickfix/Responder.h +43 -0
- data/ext/quickfix/Session.cpp +1487 -0
- data/ext/quickfix/Session.h +335 -0
- data/ext/quickfix/SessionFactory.cpp +274 -0
- data/ext/quickfix/SessionFactory.h +86 -0
- data/ext/quickfix/SessionID.h +170 -0
- data/ext/quickfix/SessionSettings.cpp +189 -0
- data/ext/quickfix/SessionSettings.h +171 -0
- data/ext/quickfix/SessionState.h +231 -0
- data/ext/quickfix/Settings.cpp +100 -0
- data/ext/quickfix/Settings.h +53 -0
- data/ext/quickfix/SharedArray.h +150 -0
- data/ext/quickfix/SocketAcceptor.cpp +222 -0
- data/ext/quickfix/SocketAcceptor.h +75 -0
- data/ext/quickfix/SocketConnection.cpp +238 -0
- data/ext/quickfix/SocketConnection.h +103 -0
- data/ext/quickfix/SocketConnector.cpp +116 -0
- data/ext/quickfix/SocketConnector.h +67 -0
- data/ext/quickfix/SocketInitiator.cpp +260 -0
- data/ext/quickfix/SocketInitiator.h +81 -0
- data/ext/quickfix/SocketMonitor.cpp +335 -0
- data/ext/quickfix/SocketMonitor.h +111 -0
- data/ext/quickfix/SocketServer.cpp +177 -0
- data/ext/quickfix/SocketServer.h +100 -0
- data/ext/quickfix/ThreadedSocketAcceptor.cpp +258 -0
- data/ext/quickfix/ThreadedSocketAcceptor.h +98 -0
- data/ext/quickfix/ThreadedSocketConnection.cpp +209 -0
- data/ext/quickfix/ThreadedSocketConnection.h +82 -0
- data/ext/quickfix/ThreadedSocketInitiator.cpp +268 -0
- data/ext/quickfix/ThreadedSocketInitiator.h +84 -0
- data/ext/quickfix/TimeRange.cpp +173 -0
- data/ext/quickfix/TimeRange.h +258 -0
- data/ext/quickfix/Utility.cpp +537 -0
- data/ext/quickfix/Utility.h +219 -0
- data/ext/quickfix/Values.h +62 -0
- data/ext/quickfix/config.h +0 -0
- data/ext/quickfix/config_windows.h +0 -0
- data/ext/quickfix/extconf.rb +12 -0
- data/ext/quickfix/index.h +37 -0
- data/ext/quickfix/pugiconfig.hpp +72 -0
- data/ext/quickfix/pugixml.cpp +10765 -0
- data/ext/quickfix/pugixml.hpp +1341 -0
- data/ext/quickfix/strptime.h +7 -0
- data/lib/quickfix40.rb +274 -0
- data/lib/quickfix41.rb +351 -0
- data/lib/quickfix42.rb +1184 -0
- data/lib/quickfix43.rb +3504 -0
- data/lib/quickfix44.rb +10721 -0
- data/lib/quickfix50.rb +13426 -0
- data/lib/quickfix50sp1.rb +15629 -0
- data/lib/quickfix50sp2.rb +17068 -0
- data/lib/quickfix_fields.rb +19853 -0
- data/lib/quickfix_ruby.rb +82 -0
- data/lib/quickfixt11.rb +70 -0
- data/spec/FIX40.xml +862 -0
- data/spec/FIX41.xml +1285 -0
- data/spec/FIX42.xml +2746 -0
- data/spec/FIX43.xml +4229 -0
- data/spec/FIX44.xml +6596 -0
- data/spec/FIX50.xml +8137 -0
- data/spec/FIX50SP1.xml +9496 -0
- data/spec/FIX50SP2.xml +10011 -0
- data/spec/FIXT11.xml +313 -0
- data/test/test_DataDictionaryTestCase.rb +268 -0
- data/test/test_DictionaryTestCase.rb +112 -0
- data/test/test_FieldBaseTestCase.rb +24 -0
- data/test/test_MessageTestCase.rb +368 -0
- data/test/test_SessionSettingsTestCase.rb +41 -0
- metadata +193 -0
@@ -0,0 +1,219 @@
|
|
1
|
+
/* -*- C++ -*- */
|
2
|
+
|
3
|
+
/****************************************************************************
|
4
|
+
** Copyright (c) 2001-2014
|
5
|
+
**
|
6
|
+
** This file is part of the QuickFIX FIX Engine
|
7
|
+
**
|
8
|
+
** This file may be distributed under the terms of the quickfixengine.org
|
9
|
+
** license as defined by quickfixengine.org and appearing in the file
|
10
|
+
** LICENSE included in the packaging of this file.
|
11
|
+
**
|
12
|
+
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
13
|
+
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
14
|
+
**
|
15
|
+
** See http://www.quickfixengine.org/LICENSE for licensing information.
|
16
|
+
**
|
17
|
+
** Contact ask@quickfixengine.org if any conditions of this licensing are
|
18
|
+
** not clear to you.
|
19
|
+
**
|
20
|
+
****************************************************************************/
|
21
|
+
|
22
|
+
#ifndef FIX_UTILITY_H
|
23
|
+
#define FIX_UTILITY_H
|
24
|
+
|
25
|
+
#ifdef _MSC_VER
|
26
|
+
#pragma warning( disable : 4503 4355 4786 4290 )
|
27
|
+
#endif
|
28
|
+
|
29
|
+
#ifndef _MSC_VER
|
30
|
+
#include "Allocator.h"
|
31
|
+
#endif
|
32
|
+
|
33
|
+
#ifdef HAVE_STLPORT
|
34
|
+
#define ALLOCATOR std::allocator
|
35
|
+
#elif ENABLE_DEBUG_ALLOCATOR
|
36
|
+
#include <ext/debug_allocator.h>
|
37
|
+
#define ALLOCATOR __gnu_cxx::debug_allocator
|
38
|
+
#elif ENABLE_NEW_ALLOCATOR
|
39
|
+
#include <ext/new_allocator.h>
|
40
|
+
#define ALLOCATOR __gnu_cxx::new_allocator
|
41
|
+
#elif ENABLE_BOOST_FAST_POOL_ALLOCATOR
|
42
|
+
#include <boost/pool/pool_alloc.hpp>
|
43
|
+
#define ALLOCATOR boost::fast_pool_allocator
|
44
|
+
#elif ENABLE_MT_ALLOCATOR
|
45
|
+
#include <ext/mt_allocator.h>
|
46
|
+
#define ALLOCATOR __gnu_cxx::__mt_alloc
|
47
|
+
#elif ENABLE_BOOST_POOL_ALLOCATOR
|
48
|
+
#include <boost/pool/pool_alloc.hpp>
|
49
|
+
#define ALLOCATOR boost::pool_allocator
|
50
|
+
#elif ENABLE_POOL_ALLOCATOR
|
51
|
+
#include <ext/pool_allocator.h>
|
52
|
+
#define ALLOCATOR __gnu_cxx::__pool_alloc
|
53
|
+
#elif ENABLE_BITMAP_ALLOCATOR
|
54
|
+
#include <ext/bitmap_allocator.h>
|
55
|
+
#define ALLOCATOR __gnu_cxx::bitmap_allocator
|
56
|
+
#elif ENABLE_TBB_ALLOCATOR
|
57
|
+
#include <tbb/scalable_allocator.h>
|
58
|
+
#define ALLOCATOR tbb::scalable_allocator
|
59
|
+
#else
|
60
|
+
#define ALLOCATOR std::allocator
|
61
|
+
#endif
|
62
|
+
|
63
|
+
#ifdef _MSC_VER
|
64
|
+
/////////////////////////////////////////////
|
65
|
+
#include <Winsock2.h>
|
66
|
+
#include <process.h>
|
67
|
+
#include <direct.h>
|
68
|
+
#include <time.h>
|
69
|
+
typedef int socklen_t;
|
70
|
+
typedef int ssize_t;
|
71
|
+
/////////////////////////////////////////////
|
72
|
+
#else
|
73
|
+
/////////////////////////////////////////////
|
74
|
+
#include <sys/types.h>
|
75
|
+
#include <sys/socket.h>
|
76
|
+
#include <sys/ioctl.h>
|
77
|
+
#include <sys/time.h>
|
78
|
+
#include <sys/stat.h>
|
79
|
+
#include <netinet/in.h>
|
80
|
+
#include <netinet/tcp.h>
|
81
|
+
#include <arpa/inet.h>
|
82
|
+
#include <netdb.h>
|
83
|
+
#include <fcntl.h>
|
84
|
+
#include <unistd.h>
|
85
|
+
#include <pthread.h>
|
86
|
+
#include <signal.h>
|
87
|
+
#include <errno.h>
|
88
|
+
#include <time.h>
|
89
|
+
#include <stdlib.h>
|
90
|
+
/////////////////////////////////////////////
|
91
|
+
#endif
|
92
|
+
|
93
|
+
#include <string>
|
94
|
+
#include <cstring>
|
95
|
+
#include <cctype>
|
96
|
+
#include <ctime>
|
97
|
+
#include <cstdio>
|
98
|
+
#include <cstdlib>
|
99
|
+
#include <memory>
|
100
|
+
|
101
|
+
#if defined(HAVE_STD_SHARED_PTR)
|
102
|
+
namespace ptr = std;
|
103
|
+
#elif defined(HAVE_STD_TR1_SHARED_PTR)
|
104
|
+
#include <tr1/memory>
|
105
|
+
namespace ptr = std::tr1;
|
106
|
+
#else
|
107
|
+
namespace ptr = std;
|
108
|
+
#endif
|
109
|
+
|
110
|
+
namespace FIX
|
111
|
+
{
|
112
|
+
void string_replace( const std::string& oldValue,
|
113
|
+
const std::string& newValue,
|
114
|
+
std::string& value );
|
115
|
+
|
116
|
+
std::string string_toLower( const std::string& value );
|
117
|
+
std::string string_toUpper( const std::string& value );
|
118
|
+
std::string string_strip( const std::string& value );
|
119
|
+
|
120
|
+
void socket_init();
|
121
|
+
void socket_term();
|
122
|
+
int socket_createAcceptor( int port, bool reuse = false );
|
123
|
+
int socket_createConnector();
|
124
|
+
int socket_connect( int s, const char* address, int port );
|
125
|
+
int socket_accept( int s );
|
126
|
+
ssize_t socket_send( int s, const char* msg, size_t length );
|
127
|
+
void socket_close( int s );
|
128
|
+
bool socket_fionread( int s, int& bytes );
|
129
|
+
bool socket_disconnected( int s );
|
130
|
+
int socket_setsockopt( int s, int opt );
|
131
|
+
int socket_setsockopt( int s, int opt, int optval );
|
132
|
+
int socket_getsockopt( int s, int opt, int& optval );
|
133
|
+
#ifndef _MSC_VER
|
134
|
+
int socket_fcntl( int s, int opt, int arg );
|
135
|
+
int socket_getfcntlflag( int s, int arg );
|
136
|
+
int socket_setfcntlflag( int s, int arg );
|
137
|
+
#endif
|
138
|
+
void socket_setnonblock( int s );
|
139
|
+
bool socket_isValid( int socket );
|
140
|
+
#ifndef _MSC_VER
|
141
|
+
bool socket_isBad( int s );
|
142
|
+
#endif
|
143
|
+
void socket_invalidate( int& socket );
|
144
|
+
short socket_hostport( int socket );
|
145
|
+
const char* socket_hostname( int socket );
|
146
|
+
const char* socket_hostname( const char* name );
|
147
|
+
const char* socket_peername( int socket );
|
148
|
+
std::pair<int, int> socket_createpair();
|
149
|
+
|
150
|
+
tm time_gmtime( const time_t* t );
|
151
|
+
tm time_localtime( const time_t* t );
|
152
|
+
|
153
|
+
#ifdef _MSC_VER
|
154
|
+
typedef unsigned int (_stdcall THREAD_START_ROUTINE)(void *);
|
155
|
+
#define THREAD_PROC unsigned int _stdcall
|
156
|
+
#else
|
157
|
+
extern "C" { typedef void * (THREAD_START_ROUTINE)(void *); }
|
158
|
+
#define THREAD_PROC void *
|
159
|
+
#endif
|
160
|
+
|
161
|
+
#ifdef _MSC_VER
|
162
|
+
typedef unsigned thread_id;
|
163
|
+
#else
|
164
|
+
typedef pthread_t thread_id;
|
165
|
+
#endif
|
166
|
+
|
167
|
+
bool thread_spawn( THREAD_START_ROUTINE func, void* var, thread_id& thread );
|
168
|
+
bool thread_spawn( THREAD_START_ROUTINE func, void* var );
|
169
|
+
void thread_join( thread_id thread );
|
170
|
+
void thread_detach( thread_id thread );
|
171
|
+
thread_id thread_self();
|
172
|
+
|
173
|
+
void process_sleep( double s );
|
174
|
+
|
175
|
+
std::string file_separator();
|
176
|
+
void file_mkdir( const char* path );
|
177
|
+
FILE* file_fopen( const char* path, const char* mode );
|
178
|
+
void file_fclose( FILE* file );
|
179
|
+
bool file_exists( const char* path );
|
180
|
+
void file_unlink( const char* path );
|
181
|
+
int file_rename( const char* oldpath, const char* newpath );
|
182
|
+
std::string file_appendpath( const std::string& path, const std::string& file );
|
183
|
+
}
|
184
|
+
|
185
|
+
#if( _MSC_VER >= 1400 )
|
186
|
+
#define HAVE_FSCANF_S 1
|
187
|
+
#define FILE_FSCANF fscanf_s
|
188
|
+
#else
|
189
|
+
#define FILE_FSCANF fscanf
|
190
|
+
#endif
|
191
|
+
|
192
|
+
#if( _MSC_VER >= 1400 )
|
193
|
+
#define HAVE_SPRINTF_S 1
|
194
|
+
#define STRING_SPRINTF sprintf_s
|
195
|
+
#else
|
196
|
+
#define STRING_SPRINTF sprintf
|
197
|
+
#endif
|
198
|
+
|
199
|
+
#if (!defined(_MSC_VER) || (_MSC_VER >= 1300)) && !defined(HAVE_STLPORT)
|
200
|
+
using std::abort;
|
201
|
+
using std::sprintf;
|
202
|
+
using std::atoi;
|
203
|
+
using std::atol;
|
204
|
+
using std::atof;
|
205
|
+
using std::isdigit;
|
206
|
+
using std::strcmp;
|
207
|
+
using std::strftime;
|
208
|
+
using std::strlen;
|
209
|
+
using std::abs;
|
210
|
+
using std::labs;
|
211
|
+
using std::memcpy;
|
212
|
+
using std::memset;
|
213
|
+
using std::exit;
|
214
|
+
using std::strtod;
|
215
|
+
using std::strtol;
|
216
|
+
using std::strerror;
|
217
|
+
#endif
|
218
|
+
|
219
|
+
#endif
|
@@ -0,0 +1,62 @@
|
|
1
|
+
/* -*- C++ -*- */
|
2
|
+
|
3
|
+
/****************************************************************************
|
4
|
+
** Copyright (c) 2001-2014
|
5
|
+
**
|
6
|
+
** This file is part of the QuickFIX FIX Engine
|
7
|
+
**
|
8
|
+
** This file may be distributed under the terms of the quickfixengine.org
|
9
|
+
** license as defined by quickfixengine.org and appearing in the file
|
10
|
+
** LICENSE included in the packaging of this file.
|
11
|
+
**
|
12
|
+
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
13
|
+
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
14
|
+
**
|
15
|
+
** See http://www.quickfixengine.org/LICENSE for licensing information.
|
16
|
+
**
|
17
|
+
** Contact ask@quickfixengine.org if any conditions of this licensing are
|
18
|
+
** not clear to you.
|
19
|
+
**
|
20
|
+
****************************************************************************/
|
21
|
+
|
22
|
+
#ifndef FIX_VALUES_BASE_H
|
23
|
+
#define FIX_VALUES_BASE_H
|
24
|
+
|
25
|
+
#include "FixValues.h"
|
26
|
+
#include <string>
|
27
|
+
|
28
|
+
namespace FIX
|
29
|
+
{
|
30
|
+
const char BeginString_FIXT11[] = "FIXT.1.1";
|
31
|
+
const char BeginString_FIX50[] = "FIX.5.0";
|
32
|
+
const char BeginString_FIX44[] = "FIX.4.4";
|
33
|
+
const char BeginString_FIX43[] = "FIX.4.3";
|
34
|
+
const char BeginString_FIX42[] = "FIX.4.2";
|
35
|
+
const char BeginString_FIX41[] = "FIX.4.1";
|
36
|
+
const char BeginString_FIX40[] = "FIX.4.0";
|
37
|
+
|
38
|
+
const char SessionRejectReason_INVALID_TAG_NUMBER_TEXT[] = "Invalid tag number";
|
39
|
+
const char SessionRejectReason_REQUIRED_TAG_MISSING_TEXT[] = "Required tag missing";
|
40
|
+
const char SessionRejectReason_TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE_TEXT[] = "Tag not defined for this message type";
|
41
|
+
const char SessionRejectReason_UNDEFINED_TAG_TEXT[] = "Undefined Tag";
|
42
|
+
const char SessionRejectReason_TAG_SPECIFIED_WITHOUT_A_VALUE_TEXT[] = "Tag specified without a value";
|
43
|
+
const char SessionRejectReason_VALUE_IS_INCORRECT_TEXT[] = "Value is incorrect (out of range) for this tag";
|
44
|
+
const char SessionRejectReason_INCORRECT_DATA_FORMAT_FOR_VALUE_TEXT[] = "Incorrect data format for value";
|
45
|
+
const char SessionRejectReason_DECRYPTION_PROBLEM_TEXT[] = "Decryption problem";
|
46
|
+
const char SessionRejectReason_SIGNATURE_PROBLEM_TEXT[] = "Signature problem";
|
47
|
+
const char SessionRejectReason_COMPID_PROBLEM_TEXT[] = "CompID problem";
|
48
|
+
const char SessionRejectReason_SENDINGTIME_ACCURACY_PROBLEM_TEXT[] = "SendingTime accuracy problem";
|
49
|
+
const char SessionRejectReason_INVALID_MSGTYPE_TEXT[] = "Invalid MsgType";
|
50
|
+
const char SessionRejectReason_TAG_APPEARS_MORE_THAN_ONCE_TEXT[] = "Tag appears more than once";
|
51
|
+
const char SessionRejectReason_TAG_SPECIFIED_OUT_OF_REQUIRED_ORDER_TEXT[] = "Tag specified out of required order";
|
52
|
+
const char SessionRejectReason_INCORRECT_NUMINGROUP_COUNT_FOR_REPEATING_GROUP_TEXT[] = "Incorrect NumInGroup count for repeating group";
|
53
|
+
const char BusinessRejectReason_OTHER_TEXT[] = "Other";
|
54
|
+
const char BusinessRejectReason_UNKNOWN_ID_TEXT[] = "Unknown ID";
|
55
|
+
const char BusinessRejectReason_UNKNOWN_SECURITY_TEXT[] = "Unknown Security";
|
56
|
+
const char BusinessRejectReason_UNSUPPORTED_MESSAGE_TYPE_TEXT[] = "Unsupported Message Type";
|
57
|
+
const char BusinessRejectReason_APPLICATION_NOT_AVAILABLE_TEXT[] = "Application Not Available";
|
58
|
+
const char BusinessRejectReason_CONDITIONALLY_REQUIRED_FIELD_MISSING_TEXT[] = "Conditionally Required Field Missing";
|
59
|
+
const char BusinessRejectReason_NOT_AUTHORIZED_TEXT[] = "Not Authorized";
|
60
|
+
const char BusinessRejectReason_DELIVERTO_FIRM_NOT_AVAILABLE_AT_THIS_TIME_TEXT[] = "Deliver to firm not available at this time";
|
61
|
+
}
|
62
|
+
#endif //FIX_VALUES_BASE_H
|
File without changes
|
File without changes
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'mkmf'
|
2
|
+
dir_config("quickfix", ["."], ".")
|
3
|
+
CONFIG["CC"] = ENV['CXX']
|
4
|
+
CONFIG["CXXFLAGS"] = '-std=c++0x'
|
5
|
+
CONFIG["LIBS"] += ENV['LIBS'] if ENV['LIBS'] != nil
|
6
|
+
|
7
|
+
if( ENV['CXX'] != nil )
|
8
|
+
CONFIG["LDSHARED"].gsub!("gcc", ENV['CXX'])
|
9
|
+
CONFIG["LDSHARED"].gsub!("cc", ENV['CXX'])
|
10
|
+
end
|
11
|
+
|
12
|
+
create_makefile("quickfix")
|
@@ -0,0 +1,37 @@
|
|
1
|
+
/*! \mainpage QuickFIX Documentation
|
2
|
+
* <b>Installation</b>
|
3
|
+
* <ul>
|
4
|
+
* <li><a href="dependencies.html">Dependencies</a></li>
|
5
|
+
* <li><a href="building.html">Building</a></li>
|
6
|
+
* <li><a href="generating_databases.html">Generating Databases</a></li>
|
7
|
+
* <li><a href="testing.html">Testing</a></li>
|
8
|
+
* </ul>
|
9
|
+
* <b>Getting Started</b>
|
10
|
+
* <ul>
|
11
|
+
* <li><a href="project.html">Setting Up Your Project</a></li>
|
12
|
+
* <li><a href="application.html">Creating Your Application</a></li>
|
13
|
+
* <li><a href="configuration.html">Configuration</a></li>
|
14
|
+
* <li><a href="xmlschema.html">Validation</a></li>
|
15
|
+
* </ul>
|
16
|
+
* <b>Working With Messages</b>
|
17
|
+
* <ul>
|
18
|
+
* <li><a href="receiving_messages.html">Receiving Messages</a></li>
|
19
|
+
* <li><a href="sending_messages.html">Sending Messages</a></li>
|
20
|
+
* <li><a href="repeating_groups.html">Repeating Groups</a></li>
|
21
|
+
* <li><a href="user_defined.html">User Defined Fields</a></li>
|
22
|
+
* <li><a href="examples.html">Example Applications</a></li>
|
23
|
+
* </ul>
|
24
|
+
* <b>Testing</b>
|
25
|
+
* <ul>
|
26
|
+
* <li><a href="unit_tests.html">Unit Tests</a></li>
|
27
|
+
* <li><a href="acceptance_tests.html">Acceptance Tests</a></li>
|
28
|
+
* </ul>
|
29
|
+
*
|
30
|
+
*The Financial Information Exchange (<a href="http://www.fixprotocol.org">FIX</a>) Protocol is a message standard developed
|
31
|
+
*to facilitate the electronic exchange of information related to securities transactions.
|
32
|
+
*It is intended for use between trading partners wishing to automate communications.
|
33
|
+
*
|
34
|
+
*<I>QuickFIX is a free and open source implementation of the <a href="http://www.fixprotocol.org">FIX</a> protocol.</I>
|
35
|
+
*
|
36
|
+
* \author Oren Miller oren@quickfixengine.org
|
37
|
+
*/
|
@@ -0,0 +1,72 @@
|
|
1
|
+
/**
|
2
|
+
* pugixml parser - version 1.4
|
3
|
+
* --------------------------------------------------------
|
4
|
+
* Copyright (C) 2006-2014, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com)
|
5
|
+
* Report bugs and download new versions at http://pugixml.org/
|
6
|
+
*
|
7
|
+
* This library is distributed under the MIT License. See notice at the end
|
8
|
+
* of this file.
|
9
|
+
*
|
10
|
+
* This work is based on the pugxml parser, which is:
|
11
|
+
* Copyright (C) 2003, by Kristen Wegner (kristen@tima.net)
|
12
|
+
*/
|
13
|
+
|
14
|
+
#ifndef HEADER_PUGICONFIG_HPP
|
15
|
+
#define HEADER_PUGICONFIG_HPP
|
16
|
+
|
17
|
+
// Uncomment this to enable wchar_t mode
|
18
|
+
// #define PUGIXML_WCHAR_MODE
|
19
|
+
|
20
|
+
// Uncomment this to disable XPath
|
21
|
+
// #define PUGIXML_NO_XPATH
|
22
|
+
|
23
|
+
// Uncomment this to disable STL
|
24
|
+
// #define PUGIXML_NO_STL
|
25
|
+
|
26
|
+
// Uncomment this to disable exceptions
|
27
|
+
// #define PUGIXML_NO_EXCEPTIONS
|
28
|
+
|
29
|
+
// Set this to control attributes for public classes/functions, i.e.:
|
30
|
+
// #define PUGIXML_API __declspec(dllexport) // to export all public symbols from DLL
|
31
|
+
// #define PUGIXML_CLASS __declspec(dllimport) // to import all classes from DLL
|
32
|
+
// #define PUGIXML_FUNCTION __fastcall // to set calling conventions to all public functions to fastcall
|
33
|
+
// In absence of PUGIXML_CLASS/PUGIXML_FUNCTION definitions PUGIXML_API is used instead
|
34
|
+
|
35
|
+
// Tune these constants to adjust memory-related behavior
|
36
|
+
// #define PUGIXML_MEMORY_PAGE_SIZE 32768
|
37
|
+
// #define PUGIXML_MEMORY_OUTPUT_STACK 10240
|
38
|
+
// #define PUGIXML_MEMORY_XPATH_PAGE_SIZE 4096
|
39
|
+
|
40
|
+
// Uncomment this to switch to header-only version
|
41
|
+
// #define PUGIXML_HEADER_ONLY
|
42
|
+
// #include "pugixml.cpp"
|
43
|
+
|
44
|
+
// Uncomment this to enable long long support
|
45
|
+
// #define PUGIXML_HAS_LONG_LONG
|
46
|
+
|
47
|
+
#endif
|
48
|
+
|
49
|
+
/**
|
50
|
+
* Copyright (c) 2006-2014 Arseny Kapoulkine
|
51
|
+
*
|
52
|
+
* Permission is hereby granted, free of charge, to any person
|
53
|
+
* obtaining a copy of this software and associated documentation
|
54
|
+
* files (the "Software"), to deal in the Software without
|
55
|
+
* restriction, including without limitation the rights to use,
|
56
|
+
* copy, modify, merge, publish, distribute, sublicense, and/or sell
|
57
|
+
* copies of the Software, and to permit persons to whom the
|
58
|
+
* Software is furnished to do so, subject to the following
|
59
|
+
* conditions:
|
60
|
+
*
|
61
|
+
* The above copyright notice and this permission notice shall be
|
62
|
+
* included in all copies or substantial portions of the Software.
|
63
|
+
*
|
64
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
65
|
+
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
66
|
+
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
67
|
+
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
68
|
+
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
69
|
+
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
70
|
+
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
71
|
+
* OTHER DEALINGS IN THE SOFTWARE.
|
72
|
+
*/
|