11 #ifndef _AP_MDM_ADAPTERINTERFACE_H_
12 #define _AP_MDM_ADAPTERINTERFACE_H_
26 #include <EventCodec.h>
34 #if defined(_APBUILD_WIN32_ALL__) || defined(__WIN32__) || defined(WIN32)
42 #ifndef _APBUILD_WIN32_ALL__
43 #define _APBUILD_WIN32_ALL__
47 #define AP_MDM_API __declspec(dllexport)
48 #define AP_MDM_CALL __stdcall
50 #define AP_MDM_API __declspec(dllimport)
51 #define AP_MDM_CALL __stdcall
54 #elif defined(_APBUILD_UNIX_ALL__) || defined(__unix__)
58 #error "Can't determine platform: try #define _APBUILD_WIN32_ALL__ or _APBUILD_UNIX_ALL__"
74 #define MDM_DEFAULT_STRING "~#"
75 #define MDM_DEFAULT_FLOAT 0.000001
76 #define MDM_DEFAULT_INT -999999
122 void(*connect)(
void* transportInternals,
const char* subKey,
AP_MDM_StreamType streamType, HashMap* ctrlParams, AP_TimestampSet *tss);
141 void(*disconnect)(
void* transportInternals,
const char* subKey,
AP_MDM_StreamType streamType, HashMap* ctrlParams, AP_TimestampSet *tss);
160 const char* (*getKey)(
void* transportInternals,
const char* symbol, AP_int64 sourceId,
AP_MDM_StreamType streamType, HashMap* ctrlParams);
212 SchemaItem(
const std::string ¶mName,
const std::string &type,
const std::string &value,
const std::string &description)
236 #if defined( __cplusplus )
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);
662 const char* requestId,
const bool tradable,
const StringDictionary &epValues);
684 const char* requestId,
const bool tradable,
const StringDictionary &epValues);
705 const char* requestId,
const bool tradable,
const StringDictionary &epValues);
726 const char* requestId,
const bool tradable,
const StringDictionary &epValues);
832 AP_int64 updateType,
const char* headline,
const char* story,
const AP_float64 sourceTimestamp,
const NewsDataList &newsDataList,
const AP_float64 value =
MDM_DEFAULT_FLOAT);
851 const AP_float64 sourceTimestamp,
const NewsDataList &newsDataList);
1180 #if defined( __cplusplus )
AP_MDM_API void AP_MDM_DeleteAskOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId)
AP_MDM_API void AP_MDM_DeleteBidDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId)
AP_MDM_API const char * AP_MDM_GetAskDepthIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
AP_MDM_API void AP_MDM_DeleteDBEntry(AP_MDM_Interface *md, const char *subKey)
AP_MDM_API void AP_MDM_ClearSourceData(AP_MDM_Interface *md, AP_int64 sourceId)
SchemaItem(const std::string ¶mName, const std::string &type, const std::string &value, const std::string &description)
Definition: MDM_MarketDataInterface.h:212
AP_MDM_API void AP_MDM_Stop(AP_MDM_Interface *md)
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_Init(AP_MDM_AdapterInterface *adapterInterface, void *transportInternals, AP_SESSION_Interface *sessionManagerInterface, AP_MDM_Interface **md)
std::vector< StringPair > StringDictionary
Definition: MDM_MarketDataInterface.h:231
AP_MDM_API void AP_MDM_DisconnectSuccess(AP_MDM_Interface *md, const char *subKey, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_DeleteAskDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId)
Definition: MDM_MarketDataInterface.h:63
Definition: MDM_MarketDataInterface.h:90
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)
SchemaItemValue StringPair
Definition: MDM_MarketDataInterface.h:230
AP_MDM_ErrorLevel
Definition: MDM_MarketDataInterface.h:86
Definition: MDM_MarketDataInterface.h:68
Definition: MDM_MarketDataInterface.h:88
std::string paramName_
Definition: MDM_MarketDataInterface.h:198
SchemaItem NewsData
Definition: MDM_MarketDataInterface.h:227
AP_MDM_API void AP_MDM_SequenceToString(const StringSet &stringSet, std::string &result)
AP_MDM_API void AP_MDM_DictionaryToString(const StringDictionary &stringDictionary, std::string &result)
std::string description_
Definition: MDM_MarketDataInterface.h:219
Definition: SM_SessionInterface.h:218
AP_MDM_API void AP_MDM_CreateDBEntry(AP_MDM_Interface *md, const char *subKey, AP_MDM_StreamType type)
AP_MDM_API const char * AP_MDM_GetAskOrderIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
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_DisconnectFailed(AP_MDM_Interface *md, const char *subKey, const char *description, AP_TimestampSet *tss)
AP_MDM_StreamType
Definition: MDM_MarketDataInterface.h:62
AP_MDM_API const char * AP_MDM_GetBidOrderIdAtLevel(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)
std::list< NewsData > NewsDataList
Definition: MDM_MarketDataInterface.h:228
Definition: MDM_MarketDataInterface.h:172
AP_MDM_API void AP_MDM_DeleteAskQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity)
std::set< std::string > StringSet
Definition: MDM_MarketDataInterface.h:181
AP_MDM_API void AP_MDM_SubscriptionCommit(AP_MDM_Interface *md, const char *subKey, AP_TimestampSet *tss)
void * transportInternals
Definition: MDM_MarketDataInterface.h:175
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)
#define MDM_DEFAULT_FLOAT
Definition: MDM_MarketDataInterface.h:75
SchemaItemValue ExtraParamValue
Definition: MDM_MarketDataInterface.h:223
Definition: MDM_MarketDataInterface.h:70
AP_MDM_API void AP_MDM_RemoveSubscriptions(AP_MDM_Interface *md)
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_EscapeString(const std::string &input, std::string &result)
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 void AP_MDM_SetAskDepthData(AP_MDM_Interface *md, const char *subKey, const char *depthId, AP_float64 price, AP_int64 quantity, const StringDictionary &epValues)
Definition: MDM_MarketDataInterface.h:64
AP_MDM_API void AP_MDM_ClearSubscriptionData(AP_MDM_Interface *md, const char *subKey)
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)
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)
SchemaItem ExtraParam
Definition: MDM_MarketDataInterface.h:222
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 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 void AP_MDM_DeleteBidOrderBookData(AP_MDM_Interface *md, const char *subKey, const char *orderId)
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)
Definition: MDM_MarketDataInterface.h:102
SchemaItemValue(const std::string ¶mName, const std::string &value)
Definition: MDM_MarketDataInterface.h:191
AP_SESSION_Interface * sessionManagerInterface
Definition: MDM_MarketDataInterface.h:174
AP_MDM_API void AP_MDM_Start(AP_MDM_Interface *md)
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)
Definition: MDM_MarketDataInterface.h:67
std::vector< std::string > StringList
Definition: MDM_MarketDataInterface.h:180
Definition: MDM_MarketDataInterface.h:80
bool operator==(const SchemaItemValue &rhs) const
Definition: MDM_MarketDataInterface.h:196
AP_MDM_API void AP_MDM_Commit(AP_MDM_Interface *md, AP_TimestampSet *tss)
AP_MDM_AdapterInterface * adapterInterface
Definition: MDM_MarketDataInterface.h:173
AP_MDM_TransferMode
Definition: MDM_MarketDataInterface.h:79
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)
Definition: MDM_MarketDataInterface.h:184
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)
std::string type_
Definition: MDM_MarketDataInterface.h:218
Definition: MDM_MarketDataInterface.h:65
AP_MDM_API const char * AP_MDM_GetAskQuotebookIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
Definition: MDM_MarketDataInterface.h:66
AP_MDM_API void AP_MDM_DeInit(AP_MDM_Interface *md)
Definition: MDM_MarketDataInterface.h:87
AP_MDM_API void AP_MDM_LogLatency(AP_MDM_Interface *md, IAF_TimestampConfig *config)
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_SourceCommit(AP_MDM_Interface *md, AP_int64 sourceId, AP_TimestampSet *tss)
AP_MDM_API void AP_MDM_ClearData(AP_MDM_Interface *md)
AP_MDM_API void AP_MDM_ReportSourceError(AP_MDM_Interface *md, AP_int64 sourceId, const char *errMsg, AP_MDM_ErrorLevel severity, AP_TimestampSet *tss)
AP_MDM_API int AP_MDM_ProcessEvent(AP_MDM_Interface *md, AP_TransportEvent event, AP_TimestampSet *tss)
Definition: MDM_MarketDataInterface.h:89
AP_MDM_API void AP_MDM_ConnectSuccess(AP_MDM_Interface *md, const char *subKey, AP_TimestampSet *tss)
Interface functions for the Session Manager.
AP_MDM_API void AP_MDM_RemoveSourceSubscriptions(AP_MDM_Interface *md, AP_int64 sourceId)
std::list< ExtraParamValue > ExtraParamValueList
Definition: MDM_MarketDataInterface.h:225
Definition: MDM_MarketDataInterface.h:81
AP_MDM_API const char * AP_MDM_GetBidDepthIdAtLevel(AP_MDM_Interface *md, const char *subKey, AP_int64 level)
Definition: MDM_MarketDataInterface.h:69
AP_MDM_API void AP_MDM_RemoveSubscription(AP_MDM_Interface *md, const char *subKey)
AP_MDM_API void AP_MDM_ReportError(AP_MDM_Interface *md, const char *subKey, const char *errMsg, AP_MDM_ErrorLevel severity, AP_TimestampSet *tss)
std::string value_
Definition: MDM_MarketDataInterface.h:199
AP_MDM_API void AP_MDM_SetDecoder(AP_MDM_Interface *md, AP_EventDecoder *decoder)
AP_MDM_API void AP_MDM_DeleteBidQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId, AP_int64 quantity)
Definition: MDM_MarketDataInterface.h:203
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_DefineNewsSchema(AP_MDM_Interface *md, const char *subKey, const NewsDataList &newsDataList)
AP_MDM_API void AP_MDM_DeleteMultipleAskQuotebookData(AP_MDM_Interface *md, const char *subKey, const char *quoteId)
std::list< ExtraParam > ExtraParamList
Definition: MDM_MarketDataInterface.h:224