Apama Capital Markets Foundation 10.15.0.0
MDM_MarketDataInterface.h
Go to the documentation of this file.
1
11#ifndef _AP_MDM_ADAPTERINTERFACE_H_
12#define _AP_MDM_ADAPTERINTERFACE_H_
13
14/* The timestamp tags are tempararily allocated
15 These corresponding space should be allocated in the AP_TimestampSet.h
16
17 AP_TIMESTAMP_UPSTREAM_MDM_ENTRY 19800
18 AP_TIMESTAMP_UPSTREAM_MDM_EXIT 19850
19
20 AP_TIMESTAMP_DOWNSTREAM_MDM_ENTRY 1100
21 AP_TIMESTAMP_DOWNSTREAM_MDM_EXIT 1150
22*/
23
24//Apama includes
25#include <CHashMap.h>
26#include <EventCodec.h>
27#include <SM_SessionInterface.h>
28
29#include <string>
30#include <vector>
31#include <list>
32#include <set>
33
34#if defined(_APBUILD_WIN32_ALL__) || defined(__WIN32__) || defined(WIN32)
35/*
36 * DLL import/export symbols for Win32 builds. Everything will work correctly
37 * as long as the following symbols are *not* defined when this file is
38 * included (These symbols are for Apama external use only):
39 * AP_MDM_BACKEND
40 */
41
42#ifndef _APBUILD_WIN32_ALL__
43#define _APBUILD_WIN32_ALL__
44#endif
45
46#ifdef AP_MDM_BACKEND
47#define AP_MDM_API __declspec(dllexport)
48#define AP_MDM_CALL __stdcall
49#else
50#define AP_MDM_API __declspec(dllimport)
51#define AP_MDM_CALL __stdcall
52#endif
53
54#elif defined(_APBUILD_UNIX_ALL__) || defined(__unix__)
55#define AP_MDM_API
56#define AP_MDM_CALL
57#else
58#error "Can't determine platform: try #define _APBUILD_WIN32_ALL__ or _APBUILD_UNIX_ALL__"
59#endif
60
62typedef enum {
70 MDM_NEWS_STREAM = 128
73
74#define MDM_DEFAULT_STRING "~#"
75#define MDM_DEFAULT_FLOAT 0.000001
76#define MDM_DEFAULT_INT -999999
79typedef enum {
84
86typedef enum {
93
102typedef struct {
103
122 void(*connect)(void* transportInternals, const char* subKey, AP_MDM_StreamType streamType, HashMap* ctrlParams, AP_TimestampSet *tss);
123
141 void(*disconnect)(void* transportInternals, const char* subKey, AP_MDM_StreamType streamType, HashMap* ctrlParams, AP_TimestampSet *tss);
142
160 const char* (*getKey)(void* transportInternals, const char* symbol, AP_int64 sourceId, AP_MDM_StreamType streamType, HashMap* ctrlParams);
161}
163
172typedef struct {
176 void* reserved;
177}
179
180typedef std::vector<std::string> StringList;
181typedef std::set<std::string> StringSet;
185{
186public:
191 SchemaItemValue(const std::string &paramName, const std::string &value) : paramName_(paramName), value_(value) {}
192
196 bool operator==(const SchemaItemValue& rhs) const { return (paramName_ == rhs.paramName_) && (value_ == rhs.value_); }
197
198 std::string paramName_;
199 std::string value_;
200};
201
204{
205public:
212 SchemaItem(const std::string &paramName, const std::string &type, const std::string &value, const std::string &description)
213 : SchemaItemValue(paramName, value)
214 , type_(type)
215 , description_(description)
216 {}
217
218 std::string type_;
219 std::string description_;
220};
221
224typedef std::list<ExtraParam> ExtraParamList;
225typedef std::list<ExtraParamValue> ExtraParamValueList;
228typedef std::list<NewsData> NewsDataList;
231typedef std::vector<StringPair> StringDictionary;
236#if defined( __cplusplus )
237extern "C"{
238#endif
239
258 AP_MDM_API void AP_MDM_Init(AP_MDM_AdapterInterface* adapterInterface, void* transportInternals, AP_SESSION_Interface* sessionManagerInterface, AP_MDM_Interface** md);
259
268 AP_MDM_API void AP_MDM_DeInit(AP_MDM_Interface* md); // end of market_data_init_api
270
285 AP_MDM_API void AP_MDM_ConnectSuccess(AP_MDM_Interface* md, const char* subKey, AP_TimestampSet* tss);
286
297 AP_MDM_API void AP_MDM_ConnectFailed(AP_MDM_Interface* md, const char* subKey, const char* description, AP_TimestampSet* tss);
298
308 AP_MDM_API void AP_MDM_DisconnectSuccess(AP_MDM_Interface* md, const char* subKey, AP_TimestampSet* tss);
309
320 AP_MDM_API void AP_MDM_DisconnectFailed(AP_MDM_Interface* md, const char* subKey, const char* description, AP_TimestampSet* tss); // end of market_data_callbacks_api
322
332 AP_MDM_API int AP_MDM_ProcessEvent(AP_MDM_Interface* md, AP_TransportEvent event, AP_TimestampSet* tss);
333
351 AP_MDM_API void AP_MDM_SetBBAData(AP_MDM_Interface* md, const char* subKey, AP_float64 bidPrice, AP_int64 bidQty, AP_float64 askPrice, AP_int64 askQty); // end of bba_group
353
372 AP_MDM_API void AP_MDM_SetTradeData(AP_MDM_Interface* md, const char* subKey, AP_float64 price, AP_int64 quantity, const char* taker, const char* receiver, const char* currency); // end of trade_group
374
398 AP_MDM_API void AP_MDM_SetBidDepthData(AP_MDM_Interface* md, const char* subKey, const char* depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues);
399
416 AP_MDM_API void AP_MDM_SetAskDepthData(AP_MDM_Interface* md, const char* subKey, const char* depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues);
417
433 AP_MDM_API void AP_MDM_InsertBidDepthData(AP_MDM_Interface* md, const char* subKey, const char* depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues);
434
450 AP_MDM_API void AP_MDM_InsertAskDepthData(AP_MDM_Interface* md, const char* subKey, const char* depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues);
451
463 AP_MDM_API void AP_MDM_DeleteBidDepthData(AP_MDM_Interface* md, const char* subKey, const char* depthId);
464
476 AP_MDM_API void AP_MDM_DeleteAskDepthData(AP_MDM_Interface* md, const char* subKey, const char* depthId);
477
487 AP_MDM_API const char* AP_MDM_GetBidDepthIdAtLevel(AP_MDM_Interface* md, const char* subKey, AP_int64 level);
488
498 AP_MDM_API const char* AP_MDM_GetAskDepthIdAtLevel(AP_MDM_Interface* md, const char* subKey, AP_int64 level);
499 // end of depth_group
501
526 AP_MDM_API void AP_MDM_SetBidOrderBookData(AP_MDM_Interface* md, const char* subKey, const char* orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues);
527
545 AP_MDM_API void AP_MDM_SetAskOrderBookData(AP_MDM_Interface* md, const char* subKey, const char* orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues);
546
563 AP_MDM_API void AP_MDM_InsertBidOrderBookData(AP_MDM_Interface* md, const char* subKey, const char* orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues);
564
581 AP_MDM_API void AP_MDM_InsertAskOrderBookData(AP_MDM_Interface* md, const char* subKey, const char* orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues);
582
594 AP_MDM_API void AP_MDM_DeleteBidOrderBookData(AP_MDM_Interface* md, const char* subKey, const char* orderId);
595
607 AP_MDM_API void AP_MDM_DeleteAskOrderBookData(AP_MDM_Interface* md, const char* subKey, const char* orderId);
608
618 AP_MDM_API const char* AP_MDM_GetBidOrderIdAtLevel(AP_MDM_Interface* md, const char* subKey, AP_int64 level);
619
629 AP_MDM_API const char* AP_MDM_GetAskOrderIdAtLevel(AP_MDM_Interface* md, const char* subKey, AP_int64 level);
630 // end of orderbook_group
632
661 AP_MDM_API void AP_MDM_SetBidQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId, AP_int64 quantity, AP_float64 price, const char *party,
662 const char* requestId, const bool tradable, const StringDictionary &epValues);
663
683 AP_MDM_API void AP_MDM_SetAskQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId, AP_int64 quantity, AP_float64 price, const char *party,
684 const char* requestId, const bool tradable, const StringDictionary &epValues);
685
704 AP_MDM_API void AP_MDM_InsertBidQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId, AP_int64 quantity, AP_float64 price, const char *party,
705 const char* requestId, const bool tradable, const StringDictionary &epValues);
706
725 AP_MDM_API void AP_MDM_InsertAskQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId, AP_int64 quantity, AP_float64 price, const char *party,
726 const char* requestId, const bool tradable, const StringDictionary &epValues);
727
740 AP_MDM_API void AP_MDM_DeleteBidQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId, AP_int64 quantity);
741
754 AP_MDM_API void AP_MDM_DeleteAskQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId, AP_int64 quantity);
755
767 AP_MDM_API void AP_MDM_DeleteMultipleBidQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId);
768
780 AP_MDM_API void AP_MDM_DeleteMultipleAskQuotebookData(AP_MDM_Interface* md, const char* subKey, const char* quoteId);
781
791 AP_MDM_API const char* AP_MDM_GetBidQuotebookIdAtLevel(AP_MDM_Interface* md, const char* subKey, AP_int64 level);
792
802 AP_MDM_API const char* AP_MDM_GetAskQuotebookIdAtLevel(AP_MDM_Interface* md, const char* subKey, AP_int64 level);
803 // end of quotebook_group
805
831 AP_MDM_API void AP_MDM_SetNewsData(AP_MDM_Interface* md, const char* subKey, const char* newsId, const StringSet &symbolSet,
832 AP_int64 updateType, const char* headline, const char* story, const AP_float64 sourceTimestamp, const NewsDataList &newsDataList, const AP_float64 value = MDM_DEFAULT_FLOAT);
833
850 AP_MDM_API void AP_MDM_DeleteNewsData(AP_MDM_Interface *md, const char* subKey, const char* newsId, const StringSet &symbolSet,
851 const AP_float64 sourceTimestamp, const NewsDataList &newsDataList);
852
864 AP_MDM_API void AP_MDM_DefineNewsSchema(AP_MDM_Interface *md, const char* subKey, const NewsDataList &newsDataList);
865 // end of news_group
867
885 AP_MDM_API void AP_MDM_SetExtraParam(AP_MDM_Interface* md, const char* subKey, const char* paramName, const char *type, const char *value, const char* description);
886
898 AP_MDM_API void AP_MDM_SetExtraParams(AP_MDM_Interface* md, const std::string &subKey, const ExtraParamList &extraParamList);
899
910 AP_MDM_API void AP_MDM_SetExtraParamValue(AP_MDM_Interface* md, const char* subKey, const char* paramName, const char *value);
911
923 AP_MDM_API void AP_MDM_SetExtraParamsValue(AP_MDM_Interface* md, const std::string &subKey, const ExtraParamValueList &extraParamValueList);
924
935 AP_MDM_API void AP_MDM_RemoveExtraParam(AP_MDM_Interface* md, const char* subKey, const char* paramName, AP_bool permanent = false);
936
948 AP_MDM_API void AP_MDM_RemoveExtraParams(AP_MDM_Interface* md, const std::string &subKey, const StringList &paramNames, AP_bool permanent = false);
949 // end of extra_params_group
951
966 AP_MDM_API void AP_MDM_SequenceToString(const StringSet &stringSet, std::string &result);
967
977 AP_MDM_API void AP_MDM_DictionaryToString(const StringDictionary &stringDictionary, std::string &result);
978
985 AP_MDM_API void AP_MDM_EscapeString(const std::string &input, std::string &result);
986 // end of misc_group
988
994 /* Interface to clear data
995 * This will clear the current data NOT the libraries LAST data. You need to call a Commit() to send
996 * the clear on to the correlator and clear the LAST data. Or use it when recieving a snapshot.
997 */
998
1008 AP_MDM_API void AP_MDM_ClearSubscriptionData(AP_MDM_Interface* md, const char* subKey);
1009
1019 AP_MDM_API void AP_MDM_ClearSourceData(AP_MDM_Interface* md, AP_int64 sourceId);
1020
1029 AP_MDM_API void AP_MDM_ClearData(AP_MDM_Interface* md); // end of market_data_clear_api
1031
1045 AP_MDM_API void AP_MDM_SubscriptionCommit(AP_MDM_Interface* md, const char* subKey, AP_TimestampSet* tss);
1046
1055 AP_MDM_API void AP_MDM_SourceCommit(AP_MDM_Interface* md, AP_int64 sourceId, AP_TimestampSet* tss);
1056
1064 AP_MDM_API void AP_MDM_Commit(AP_MDM_Interface *md, AP_TimestampSet *tss); // end of market_data_commit_api
1066
1071 /* interface to remove the subscriptions in case of errors */
1072
1079 AP_MDM_API void AP_MDM_RemoveSubscription(AP_MDM_Interface* md, const char* subKey);
1080
1087 AP_MDM_API void AP_MDM_RemoveSourceSubscriptions(AP_MDM_Interface* md, AP_int64 sourceId);
1088
1094 AP_MDM_API void AP_MDM_RemoveSubscriptions(AP_MDM_Interface* md); // end of market_data_remove_sub_api
1096
1104 AP_MDM_API void AP_MDM_Stop(AP_MDM_Interface* md);
1105
1113 AP_MDM_API void AP_MDM_Start(AP_MDM_Interface* md);
1114
1124 AP_MDM_API void AP_MDM_ReportError(AP_MDM_Interface* md, const char* subKey, const char* errMsg, AP_MDM_ErrorLevel severity, AP_TimestampSet* tss);
1125
1135 AP_MDM_API void AP_MDM_ReportSourceError(AP_MDM_Interface* md, AP_int64 sourceId, const char* errMsg, AP_MDM_ErrorLevel severity, AP_TimestampSet* tss);
1136
1145 AP_MDM_API void AP_MDM_SetDecoder(AP_MDM_Interface* md, AP_EventDecoder* decoder);
1146
1158 AP_MDM_API void AP_MDM_CreateDBEntry(AP_MDM_Interface* md, const char* subKey, AP_MDM_StreamType type);
1159
1170 AP_MDM_API void AP_MDM_DeleteDBEntry(AP_MDM_Interface* md, const char* subKey);
1171
1178 AP_MDM_API void AP_MDM_LogLatency(AP_MDM_Interface* md, IAF_TimestampConfig* config);
1179
1180#if defined( __cplusplus )
1181} // extern "C"
1182#endif
1183#endif /*_MDM_ADPATERINTERFACE_H*/
AP_MDM_API void AP_MDM_CreateDBEntry(AP_MDM_Interface *md, const char *subKey, AP_MDM_StreamType type)
AP_MDM_API int AP_MDM_ProcessEvent(AP_MDM_Interface *md, AP_TransportEvent event, AP_TimestampSet *tss)
SchemaItem NewsData
Definition: MDM_MarketDataInterface.h:227
std::list< NewsData > NewsDataList
Definition: MDM_MarketDataInterface.h:228
AP_MDM_API void AP_MDM_SetDecoder(AP_MDM_Interface *md, AP_EventDecoder *decoder)
AP_MDM_API void AP_MDM_ReportSourceError(AP_MDM_Interface *md, AP_int64 sourceId, const char *errMsg, AP_MDM_ErrorLevel severity, AP_TimestampSet *tss)
std::vector< StringPair > StringDictionary
Definition: MDM_MarketDataInterface.h:231
std::list< ExtraParam > ExtraParamList
Definition: MDM_MarketDataInterface.h:224
AP_MDM_API void AP_MDM_Stop(AP_MDM_Interface *md)
AP_MDM_API void AP_MDM_LogLatency(AP_MDM_Interface *md, IAF_TimestampConfig *config)
#define MDM_DEFAULT_FLOAT
Definition: MDM_MarketDataInterface.h:75
SchemaItemValue ExtraParamValue
Definition: MDM_MarketDataInterface.h:223
std::set< std::string > StringSet
Definition: MDM_MarketDataInterface.h:181
AP_MDM_StreamType
Definition: MDM_MarketDataInterface.h:62
@ MDM_EP_STREAM
Definition: MDM_MarketDataInterface.h:68
@ MDM_NEWS_STREAM
Definition: MDM_MarketDataInterface.h:70
@ MDM_BBA_STREAM
Definition: MDM_MarketDataInterface.h:64
@ MDM_UNKNOWN_STREAM
Definition: MDM_MarketDataInterface.h:63
@ MDM_MBP_STREAM
Definition: MDM_MarketDataInterface.h:66
@ MDM_QUOTEBOOK_STREAM
Definition: MDM_MarketDataInterface.h:69
@ MDM_TRADE_STREAM
Definition: MDM_MarketDataInterface.h:65
@ MDM_MBO_STREAM
Definition: MDM_MarketDataInterface.h:67
AP_MDM_TransferMode
Definition: MDM_MarketDataInterface.h:79
@ MDM_COMPOUND_DELTA
Definition: MDM_MarketDataInterface.h:80
@ MDM_SNAPSHOT_ONLY
Definition: MDM_MarketDataInterface.h:81
AP_MDM_API void AP_MDM_ReportError(AP_MDM_Interface *md, const char *subKey, const char *errMsg, AP_MDM_ErrorLevel severity, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_DeleteDBEntry(AP_MDM_Interface *md, const char *subKey)
SchemaItemValue StringPair
Definition: MDM_MarketDataInterface.h:230
SchemaItem ExtraParam
Definition: MDM_MarketDataInterface.h:222
AP_MDM_API void AP_MDM_Start(AP_MDM_Interface *md)
std::vector< std::string > StringList
Definition: MDM_MarketDataInterface.h:180
AP_MDM_ErrorLevel
Definition: MDM_MarketDataInterface.h:86
@ MDM_INFO
Definition: MDM_MarketDataInterface.h:90
@ MDM_WARNING
Definition: MDM_MarketDataInterface.h:89
@ MDM_FATAL
Definition: MDM_MarketDataInterface.h:87
@ MDM_ERROR
Definition: MDM_MarketDataInterface.h:88
std::list< ExtraParamValue > ExtraParamValueList
Definition: MDM_MarketDataInterface.h:225
Interface functions for the Session Manager.
Definition: MDM_MarketDataInterface.h:204
std::string type_
Definition: MDM_MarketDataInterface.h:218
std::string description_
Definition: MDM_MarketDataInterface.h:219
SchemaItem(const std::string &paramName, const std::string &type, const std::string &value, const std::string &description)
Definition: MDM_MarketDataInterface.h:212
Definition: MDM_MarketDataInterface.h:185
std::string value_
Definition: MDM_MarketDataInterface.h:199
SchemaItemValue(const std::string &paramName, const std::string &value)
Definition: MDM_MarketDataInterface.h:191
std::string paramName_
Definition: MDM_MarketDataInterface.h:198
bool operator==(const SchemaItemValue &rhs) const
Definition: MDM_MarketDataInterface.h:196
AP_MDM_API void AP_MDM_SetBBAData(AP_MDM_Interface *md, const char *subKey, AP_float64 bidPrice, AP_int64 bidQty, AP_float64 askPrice, AP_int64 askQty)
AP_MDM_API void AP_MDM_DeleteBidDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId)
AP_MDM_API void AP_MDM_InsertBidDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_SetAskDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_DeleteAskDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId)
AP_MDM_API void AP_MDM_InsertAskDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues)
AP_MDM_API const char * AP_MDM_GetAskDepthIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_SetBidDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues)
AP_MDM_API const char * AP_MDM_GetBidDepthIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_SetExtraParamValue(AP_MDM_Interface *md, const char *subKey, const char *paramName, const char *value)
AP_MDM_API void AP_MDM_RemoveExtraParam(AP_MDM_Interface *md, const char *subKey, const char *paramName, AP_bool permanent=false)
AP_MDM_API void AP_MDM_SetExtraParams(AP_MDM_Interface *md, const std::string &subKey, const ExtraParamList &extraParamList)
AP_MDM_API void AP_MDM_SetExtraParamsValue(AP_MDM_Interface *md, const std::string &subKey, const ExtraParamValueList &extraParamValueList)
AP_MDM_API void AP_MDM_SetExtraParam(AP_MDM_Interface *md, const char *subKey, const char *paramName, const char *type, const char *value, const char *description)
AP_MDM_API void AP_MDM_RemoveExtraParams(AP_MDM_Interface *md, const std::string &subKey, const StringList &paramNames, AP_bool permanent=false)
AP_MDM_API void AP_MDM_ConnectSuccess(AP_MDM_Interface *md, const char *subKey, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_ConnectFailed(AP_MDM_Interface *md, const char *subKey, const char *description, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_DisconnectSuccess(AP_MDM_Interface *md, const char *subKey, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_DisconnectFailed(AP_MDM_Interface *md, const char *subKey, const char *description, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_ClearSourceData(AP_MDM_Interface *md, AP_int64 sourceId)
AP_MDM_API void AP_MDM_ClearSubscriptionData(AP_MDM_Interface *md, const char *subKey)
AP_MDM_API void AP_MDM_ClearData(AP_MDM_Interface *md)
AP_MDM_API void AP_MDM_SourceCommit(AP_MDM_Interface *md, AP_int64 sourceId, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_Commit(AP_MDM_Interface *md, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_SubscriptionCommit(AP_MDM_Interface *md, const char *subKey, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_Init(AP_MDM_AdapterInterface *adapterInterface, void *transportInternals, AP_SESSION_Interface *sessionManagerInterface, AP_MDM_Interface **md)
AP_MDM_API void AP_MDM_DeInit(AP_MDM_Interface *md)
AP_MDM_API void AP_MDM_RemoveSourceSubscriptions(AP_MDM_Interface *md, AP_int64 sourceId)
AP_MDM_API void AP_MDM_RemoveSubscription(AP_MDM_Interface *md, const char *subKey)
AP_MDM_API void AP_MDM_RemoveSubscriptions(AP_MDM_Interface *md)
AP_MDM_API void AP_MDM_DictionaryToString(const StringDictionary &stringDictionary, std::string &result)
AP_MDM_API void AP_MDM_SequenceToString(const StringSet &stringSet, std::string &result)
AP_MDM_API void AP_MDM_EscapeString(const std::string &input, std::string &result)
AP_MDM_API void AP_MDM_SetNewsData(AP_MDM_Interface *md, const char *subKey, const char *newsId, const StringSet &symbolSet, AP_int64 updateType, const char *headline, const char *story, const AP_float64 sourceTimestamp, const NewsDataList &newsDataList, const AP_float64 value=MDM_DEFAULT_FLOAT)
AP_MDM_API void AP_MDM_DeleteNewsData(AP_MDM_Interface *md, const char *subKey, const char *newsId, const StringSet &symbolSet, const AP_float64 sourceTimestamp, const NewsDataList &newsDataList)
AP_MDM_API void AP_MDM_DefineNewsSchema(AP_MDM_Interface *md, const char *subKey, const NewsDataList &newsDataList)
AP_MDM_API void AP_MDM_SetBidOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_InsertAskOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues)
AP_MDM_API const char * AP_MDM_GetAskOrderIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_DeleteBidOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId)
AP_MDM_API const char * AP_MDM_GetBidOrderIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_InsertBidOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_DeleteAskOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId)
AP_MDM_API void AP_MDM_SetAskOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId, AP_float64 price, AP_int64 quantity, const char *party, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_DeleteMultipleBidQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId)
AP_MDM_API const char * AP_MDM_GetBidQuotebookIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_InsertAskQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity, AP_float64 price, const char *party, const char *requestId, const bool tradable, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_SetBidQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity, AP_float64 price, const char *party, const char *requestId, const bool tradable, const StringDictionary &epValues)
AP_MDM_API const char * AP_MDM_GetAskQuotebookIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_InsertBidQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity, AP_float64 price, const char *party, const char *requestId, const bool tradable, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_SetAskQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity, AP_float64 price, const char *party, const char *requestId, const bool tradable, const StringDictionary &epValues)
AP_MDM_API void AP_MDM_DeleteAskQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity)
AP_MDM_API void AP_MDM_DeleteBidQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity)
AP_MDM_API void AP_MDM_DeleteMultipleAskQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId)
AP_MDM_API void AP_MDM_SetTradeData(AP_MDM_Interface *md, const char *subKey, AP_float64 price, AP_int64 quantity, const char *taker, const char *receiver, const char *currency)
Definition: MDM_MarketDataInterface.h:102
Definition: MDM_MarketDataInterface.h:172
void * transportInternals
Definition: MDM_MarketDataInterface.h:175
AP_MDM_AdapterInterface * adapterInterface
Definition: MDM_MarketDataInterface.h:173
AP_SESSION_Interface * sessionManagerInterface
Definition: MDM_MarketDataInterface.h:174
Definition: SM_SessionInterface.h:219