BLPAPI C++ 3.26.5
Loading...
Searching...
No Matches
blpapi_dispatchtbl.h
Go to the documentation of this file.
1/* Copyright 2012. Bloomberg Finance L.P.
2 *
3 * Permission is hereby granted, free of charge, to any person obtaining a copy
4 * of this software and associated documentation files (the "Software"), to
5 * deal in the Software without restriction, including without limitation the
6 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7 * sell copies of the Software, and to permit persons to whom the Software is
8 * furnished to do so, subject to the following conditions: The above
9 * copyright notice and this permission notice shall be included in all copies
10 * or substantial portions of the Software.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
17 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
18 * IN THE SOFTWARE.
19 */
20
35
36#ifndef INCLUDED_BLPAPI_DISPATCHTBL
37#define INCLUDED_BLPAPI_DISPATCHTBL
38
58
59#include <blpapi_defs.h>
60#include <blpapi_streamproxy.h>
61#include <blpapi_types.h>
63
64#ifdef __cplusplus
65
66#ifndef BLPAPI_MIN_VERSION
67#define BLPAPI_MIN_VERSION BLPAPI_SDK_VERSION
68#endif
69
70#ifndef BLPAPI_TARGET_VERSION
71#define BLPAPI_TARGET_VERSION BLPAPI_SDK_VERSION
72#endif
73
74#if BLPAPI_MIN_VERSION > BLPAPI_TARGET_VERSION
75#error "Min required version cannot be greater than target version"
76#endif
77
78extern "C" {
79
81// Forward declarations
82struct blpapi_CorrelationId_t_;
83typedef struct blpapi_CorrelationId_t_ blpapi_CorrelationId_t;
84
85struct blpapi_Topic;
86typedef struct blpapi_Topic blpapi_Topic_t;
87
88struct blpapi_Message;
89typedef struct blpapi_Message blpapi_Message_t;
90
91struct blpapi_Request;
92typedef struct blpapi_Request blpapi_Request_t;
93
94struct blpapi_HighPrecisionDatetime_tag;
95typedef struct blpapi_HighPrecisionDatetime_tag blpapi_HighPrecisionDatetime_t;
96
97struct blpapi_TimePoint;
98typedef struct blpapi_TimePoint blpapi_TimePoint_t;
99
100struct blpapi_SubscriptionList;
101typedef struct blpapi_SubscriptionList blpapi_SubscriptionList_t;
102
103struct blpapi_ServiceRegistrationOptions;
104typedef struct blpapi_ServiceRegistrationOptions
105 blpapi_ServiceRegistrationOptions_t;
106
107struct blpapi_RequestTemplate;
108typedef struct blpapi_RequestTemplate blpapi_RequestTemplate_t;
109
110typedef void (*blpapi_SubscriptionPreprocessErrorHandler_t)(
111 const blpapi_CorrelationId_t *correlationId,
112 const char *subscriptionString,
113 int errorCode,
114 const char *errorDescription,
115 void *userData);
116
117// End Forward declarations
118
119// Function dispatch table declaration
120typedef struct blpapi_FunctionEntries {
121 int (*blpapi_EventFormatter_appendMessageSeq)(
122 blpapi_EventFormatter_t *formatter,
123 char const *typeString,
124 blpapi_Name_t *typeName,
125 const blpapi_Topic_t *topic,
126 unsigned int sequenceNumber,
127 unsigned int);
128 int (*blpapi_EventFormatter_appendRecapMessageSeq)(
129 blpapi_EventFormatter_t *formatter,
130 const blpapi_Topic_t *topic,
131 const blpapi_CorrelationId_t *cid,
132 unsigned int sequenceNumber,
133 unsigned int);
134 int (*blpapi_Message_addRef)(const blpapi_Message_t *message);
135 int (*blpapi_Message_release)(const blpapi_Message_t *message);
136 void (*blpapi_SessionOptions_setMaxEventQueueSize)(
137 blpapi_SessionOptions_t *parameters, size_t maxEventQueueSize);
138 int (*blpapi_SessionOptions_setSlowConsumerWarningHiWaterMark)(
139 blpapi_SessionOptions_t *parameters, float hiWaterMark);
140 int (*blpapi_SessionOptions_setSlowConsumerWarningLoWaterMark)(
141 blpapi_SessionOptions_t *parameters, float loWaterMark);
142 void (*blpapi_Request_setPreferredRoute)(
143 blpapi_Request_t *request, blpapi_CorrelationId_t *correlationId);
144 int (*blpapi_Message_fragmentType)(const blpapi_Message_t *message);
145 size_t (*blpapi_SessionOptions_maxEventQueueSize)(
146 blpapi_SessionOptions_t *parameters);
147 float (*blpapi_SessionOptions_slowConsumerWarningHiWaterMark)(
148 blpapi_SessionOptions_t *parameters);
149 float (*blpapi_SessionOptions_slowConsumerWarningLoWaterMark)(
150 blpapi_SessionOptions_t *parameters);
151 int (*blpapi_SessionOptions_setDefaultKeepAliveInactivityTime)(
152 blpapi_SessionOptions_t *parameters, int inactivityTime);
153 int (*blpapi_SessionOptions_setDefaultKeepAliveResponseTimeout)(
154 blpapi_SessionOptions_t *parameters, int responseTimeout);
155 int (*blpapi_SessionOptions_defaultKeepAliveInactivityTime)(
156 blpapi_SessionOptions_t *parameters);
157 int (*blpapi_SessionOptions_defaultKeepAliveResponseTimeout)(
158 blpapi_SessionOptions_t *parameters);
159 int (*blpapi_HighPrecisionDatetime_compare)(
160 const blpapi_HighPrecisionDatetime_t *,
161 const blpapi_HighPrecisionDatetime_t *);
162 int (*blpapi_HighPrecisionDatetime_print)(
163 const blpapi_HighPrecisionDatetime_t *,
164 blpapi_StreamWriter_t,
165 void *,
166 int,
167 int);
168 int (*blpapi_Element_getValueAsHighPrecisionDatetime)(
169 const blpapi_Element_t *,
170 blpapi_HighPrecisionDatetime_t *,
171 size_t);
172 int (*blpapi_Element_setValueHighPrecisionDatetime)(blpapi_Element_t *,
173 const blpapi_HighPrecisionDatetime_t *,
174 size_t);
175 int (*blpapi_Element_setElementHighPrecisionDatetime)(blpapi_Element_t *,
176 const char *,
177 const blpapi_Name_t *,
178 const blpapi_HighPrecisionDatetime_t *);
179 int (*blpapi_Session_resubscribeWithId)(blpapi_Session_t *,
180 const blpapi_SubscriptionList_t *,
181 int,
182 const char *,
183 int);
184 int (*blpapi_EventFormatter_setValueNull)(
185 blpapi_EventFormatter_t *, const char *, const blpapi_Name_t *);
186 int (*blpapi_DiagnosticsUtil_memoryInfo)(char *, size_t);
187 int (*blpapi_SessionOptions_setKeepAliveEnabled)(
188 blpapi_SessionOptions_t *, int);
189 int (*blpapi_SessionOptions_keepAliveEnabled)(blpapi_SessionOptions_t *);
190 int (*blpapi_SubscriptionList_addResolved)(blpapi_SubscriptionList_t *,
191 const char *,
192 const blpapi_CorrelationId_t *);
193 int (*blpapi_SubscriptionList_isResolvedAt)(
194 blpapi_SubscriptionList_t *, int *, size_t);
195 int (*blpapi_ProviderSession_deregisterService)(
196 blpapi_ProviderSession_t *session, const char *serviceName);
197 void (*blpapi_ServiceRegistrationOptions_setPartsToRegister)(
198 blpapi_ServiceRegistrationOptions_t *session, int parts);
199 int (*blpapi_ServiceRegistrationOptions_getPartsToRegister)(
200 blpapi_ServiceRegistrationOptions_t *session);
201 int (*blpapi_ProviderSession_deleteTopics)(
202 blpapi_ProviderSession_t *session,
203 const blpapi_Topic_t **topics,
204 size_t numTopics);
205 int (*blpapi_ProviderSession_activateSubServiceCodeRange)(
206 blpapi_ProviderSession_t *session,
207 const char *serviceName,
208 int begin,
209 int end,
210 int priority);
211 int (*blpapi_ProviderSession_deactivateSubServiceCodeRange)(
212 blpapi_ProviderSession_t *session,
213 const char *serviceName,
214 int begin,
215 int end);
216 int (*blpapi_ServiceRegistrationOptions_addActiveSubServiceCodeRange)(
217 blpapi_ServiceRegistrationOptions_t *parameters,
218 int start,
219 int end,
220 int priority);
221 void (*blpapi_ServiceRegistrationOptions_removeAllActiveSubServiceCodeRanges)(
222 blpapi_ServiceRegistrationOptions_t *parameters);
223 void (*blpapi_Logging_logTestMessage)(blpapi_Logging_Severity_t severity);
224 const char *(*blpapi_getVersionIdentifier)();
225 int (*blpapi_Message_timeReceived)(
226 const blpapi_Message_t *message, blpapi_TimePoint_t *timeReceived);
227 int (*blpapi_SessionOptions_recordSubscriptionDataReceiveTimes)(
228 blpapi_SessionOptions_t *parameters);
229 void (*blpapi_SessionOptions_setRecordSubscriptionDataReceiveTimes)(
230 blpapi_SessionOptions_t *parameters, int shouldRecord);
231 long long (*blpapi_TimePointUtil_nanosecondsBetween)(
232 const blpapi_TimePoint_t *start, const blpapi_TimePoint_t *end);
233 int (*blpapi_HighResolutionClock_now)(blpapi_TimePoint_t *timePoint);
234 int (*blpapi_HighPrecisionDatetime_fromTimePoint)(
235 blpapi_HighPrecisionDatetime_t *datetime,
236 const blpapi_TimePoint_t *timePoint,
237 short offset);
238 int (*blpapi_RequestTemplate_addRef)(
239 const blpapi_RequestTemplate_t *requestTemplate);
240 int (*blpapi_RequestTemplate_release)(
241 const blpapi_RequestTemplate_t *requestTemplate);
242 int (*blpapi_Session_sendRequestTemplate)(blpapi_Session_t *session,
243 const blpapi_RequestTemplate_t *requestTemplate,
244 blpapi_CorrelationId_t *correlationId);
245 int (*blpapi_Session_createSnapshotRequestTemplate)(
246 blpapi_RequestTemplate_t **requestTemplate,
247 blpapi_Session_t *session,
248 const char *subscriptionString,
249 const blpapi_Identity_t *identity,
250 blpapi_CorrelationId_t *correlationId);
251 int (*blpapi_Message_print)(const blpapi_Message_t *message,
252 blpapi_StreamWriter_t streamWriter,
253 void *stream,
254 int indentLevel,
255 int spacesPerLevel);
256 int (*blpapi_Message_recapType)(const blpapi_Message_t *message);
257 int (*blpapi_SessionOptions_setServiceCheckTimeout)(
258 blpapi_SessionOptions_t *parameters, int timeoutMsecs);
259 int (*blpapi_SessionOptions_setServiceDownloadTimeout)(
260 blpapi_SessionOptions_t *parameters, int timeoutMsecs);
261 int (*blpapi_SessionOptions_serviceCheckTimeout)(
262 blpapi_SessionOptions_t *parameters);
263 int (*blpapi_SessionOptions_serviceDownloadTimeout)(
264 blpapi_SessionOptions_t *parameters);
265
266 // 3.10.5
267 int (*blpapi_ProviderSession_terminateSubscriptionsOnTopics)(
268 blpapi_ProviderSession_t *session,
269 const blpapi_Topic_t **topics,
270 size_t numTopics,
271 const char *message);
272
273 // 3.10.8
274 int (*blpapi_EventFormatter_appendFragmentedRecapMessage)(
275 blpapi_EventFormatter_t *formatter,
276 const char *typeString,
277 blpapi_Name_t *typeName,
278 const blpapi_Topic_t *topic,
279 const blpapi_CorrelationId_t *cid,
280 int fragmentType);
281 int (*blpapi_EventFormatter_appendFragmentedRecapMessageSeq)(
282 blpapi_EventFormatter_t *formatter,
283 const char *typeString,
284 blpapi_Name_t *typeName,
285 const blpapi_Topic_t *topic,
286 int fragmentType,
287 unsigned int sequenceNumber);
288
289 // 3.11.0
290 void (*blpapi_SessionOptions_setTlsOptions)(
291 blpapi_SessionOptions_t *parameters,
292 const blpapi_TlsOptions_t *tlsOptions);
293 blpapi_TlsOptions_t *(*blpapi_TlsOptions_createFromFiles)(
294 const char *clientCredentialsFileName,
295 const char *clientCredentialsPassword,
296 const char *trustedCertificatesFileName);
297 blpapi_TlsOptions_t *(*blpapi_TlsOptions_createFromBlobs)(
298 const char *clientCredentialsRawData,
299 int clientCredentialsRawDataLength,
300 const char *clientCredentialsPassword,
301 const char *trustedCertificatesRawData,
302 int trustedCertificatesRawDataLength);
303 void (*blpapi_TlsOptions_setTlsHandshakeTimeoutMs)(
304 blpapi_TlsOptions_t *paramaters, int tlsHandshakeTimeoutMs);
305 void (*blpapi_TlsOptions_setCrlFetchTimeoutMs)(
306 blpapi_TlsOptions_t *paramaters, int crlFetchTimeoutMs);
307
308 blpapi_TlsOptions_t *(*blpapi_TlsOptions_create)(void);
309 blpapi_TlsOptions_t *(*blpapi_TlsOptions_duplicate)(
310 const blpapi_TlsOptions_t *parameters);
311 void (*blpapi_TlsOptions_copy)(
312 blpapi_TlsOptions_t *lhs, const blpapi_TlsOptions_t *rhs);
313 void (*blpapi_TlsOptions_destroy)(blpapi_TlsOptions_t *parameters);
314
315 // 3.11.2
316 int (*blpapi_AbstractSession_generateManualToken)(
317 blpapi_AbstractSession_t *session,
318 blpapi_CorrelationId_t *correlationId,
319 const char *user,
320 const char *manualIp,
321 blpapi_EventQueue_t *eventQueue);
322
323 // 3.11.4
324 int (*blpapi_EventFormatter_appendValueHighPrecisionDatetime)(
325 blpapi_EventFormatter_t *formatter,
326 const blpapi_HighPrecisionDatetime_t *value);
327 int (*blpapi_EventFormatter_setValueHighPrecisionDatetime)(
328 blpapi_EventFormatter_t *formatter,
329 const char *typeString,
330 const blpapi_Name_t *typeName,
331 const blpapi_HighPrecisionDatetime_t *value);
332
333 // 3.12.0
334 int (*blpapi_SessionOptions_print)(blpapi_SessionOptions_t *parameters,
335 blpapi_StreamWriter_t streamWriter,
336 void *stream,
337 int indentLevel,
338 int spacesPerLevel);
339 int (*blpapi_SessionOptions_flushPublishedEventsTimeout)(
340 blpapi_SessionOptions_t *parameters);
341 int (*blpapi_SessionOptions_setFlushPublishedEventsTimeout)(
342 blpapi_SessionOptions_t *parameters, int timeoutMsecs);
343 int (*blpapi_ProviderSession_flushPublishedEvents)(
344 blpapi_ProviderSession_t *session,
345 int *allFlushed,
346 int timeoutMsecs);
347
348 // 3.13.0
349 int (*blpapi_ZfpUtil_getOptionsForLeasedLines)(
350 blpapi_SessionOptions_t *sessionOptions,
351 const blpapi_TlsOptions_t *tlsOptions,
352 int remote);
353
354 // 3.14.0
355 int (*blpapi_SessionOptions_setBandwidthSaveModeDisabled)(
356 blpapi_SessionOptions_t *parameters, int disableBandwidthSaveMode);
357
358 int (*blpapi_SessionOptions_bandwidthSaveModeDisabled)(
359 blpapi_SessionOptions_t *parameters);
360
361 // 3.14.1
362 int (*blpapi_TestUtil_deserializeService)(const char *schema,
363 size_t schemaLength,
364 blpapi_Service_t **service);
365
366 int (*blpapi_TestUtil_serializeService)(blpapi_StreamWriter_t streamWriter,
367 void *userStream,
368 const blpapi_Service_t *service);
369
370 int (*blpapi_TestUtil_createTopic)(blpapi_Topic_t **topic,
371 const blpapi_Service_t *service,
372 int isActive);
373
374 int (*blpapi_TestUtil_getAdminMessageDefinition)(
375 blpapi_SchemaElementDefinition_t **definition,
376 blpapi_Name_t *messageName);
377
378 int (*blpapi_TestUtil_createEvent)(blpapi_Event_t **event, int eventType);
379
380 int (*blpapi_TestUtil_appendMessage)(blpapi_MessageFormatter_t **formatter,
381 blpapi_Event_t *event,
382 const blpapi_SchemaElementDefinition_t *messageType,
383 const blpapi_MessageProperties_t *properties);
384
385 int (*blpapi_MessageProperties_create)(
386 blpapi_MessageProperties_t **messageProperties);
387
388 void (*blpapi_MessageProperties_destroy)(
389 blpapi_MessageProperties_t *messageProperties);
390
391 int (*blpapi_MessageProperties_copy)(blpapi_MessageProperties_t **dest,
392 const blpapi_MessageProperties_t *src);
393
394 int (*blpapi_MessageProperties_assign)(blpapi_MessageProperties_t *lhs,
395 const blpapi_MessageProperties_t *rhs);
396
397 int (*blpapi_MessageProperties_setCorrelationIds)(
398 blpapi_MessageProperties_t *messageProperties,
399 const blpapi_CorrelationId_t *correlationIds,
400 size_t numCorrelationIds);
401
402 int (*blpapi_MessageProperties_setRecapType)(
403 blpapi_MessageProperties_t *messageProperties,
404 int recap,
405 int fragment);
406
407 int (*blpapi_MessageProperties_setTimeReceived)(
408 blpapi_MessageProperties_t *messageProperties,
409 const blpapi_HighPrecisionDatetime_t *timestamp);
410
411 int (*blpapi_MessageProperties_setService)(
412 blpapi_MessageProperties_t *messageProperties,
413 const blpapi_Service_t *service);
414
415 int (*blpapi_MessageFormatter_setValueBool)(
416 blpapi_MessageFormatter_t *formatter,
417 const blpapi_Name_t *typeName,
418 blpapi_Bool_t value);
419
420 int (*blpapi_MessageFormatter_setValueChar)(
421 blpapi_MessageFormatter_t *formatter,
422 const blpapi_Name_t *typeName,
423 char value);
424
425 int (*blpapi_MessageFormatter_setValueInt32)(
426 blpapi_MessageFormatter_t *formatter,
427 const blpapi_Name_t *typeName,
428 blpapi_Int32_t value);
429
430 int (*blpapi_MessageFormatter_setValueInt64)(
431 blpapi_MessageFormatter_t *formatter,
432 const blpapi_Name_t *typeName,
433 blpapi_Int64_t value);
434
435 int (*blpapi_MessageFormatter_setValueFloat32)(
436 blpapi_MessageFormatter_t *formatter,
437 const blpapi_Name_t *typeName,
438 blpapi_Float32_t value);
439
440 int (*blpapi_MessageFormatter_setValueFloat64)(
441 blpapi_MessageFormatter_t *formatter,
442 const blpapi_Name_t *typeName,
443 blpapi_Float64_t value);
444
445 int (*blpapi_MessageFormatter_setValueDatetime)(
446 blpapi_MessageFormatter_t *formatter,
447 const blpapi_Name_t *typeName,
448 const blpapi_Datetime_t *value);
449
450 int (*blpapi_MessageFormatter_setValueHighPrecisionDatetime)(
451 blpapi_MessageFormatter_t *formatter,
452 const blpapi_Name_t *typeName,
453 const blpapi_HighPrecisionDatetime_t *value);
454
455 int (*blpapi_MessageFormatter_setValueString)(
456 blpapi_MessageFormatter_t *formatter,
457 const blpapi_Name_t *typeName,
458 const char *value);
459
460 int (*blpapi_MessageFormatter_setValueFromName)(
461 blpapi_MessageFormatter_t *formatter,
462 const blpapi_Name_t *typeName,
463 const blpapi_Name_t *value);
464
465 int (*blpapi_MessageFormatter_setValueNull)(
466 blpapi_MessageFormatter_t *formatter,
467 const blpapi_Name_t *typeName);
468
469 int (*blpapi_MessageFormatter_pushElement)(
470 blpapi_MessageFormatter_t *formatter,
471 const blpapi_Name_t *typeName);
472
473 int (*blpapi_MessageFormatter_popElement)(
474 blpapi_MessageFormatter_t *formatter);
475
476 int (*blpapi_MessageFormatter_appendValueBool)(
477 blpapi_MessageFormatter_t *formatter, blpapi_Bool_t value);
478
479 int (*blpapi_MessageFormatter_appendValueChar)(
480 blpapi_MessageFormatter_t *formatter, char value);
481
482 int (*blpapi_MessageFormatter_appendValueInt32)(
483 blpapi_MessageFormatter_t *formatter, blpapi_Int32_t value);
484
485 int (*blpapi_MessageFormatter_appendValueInt64)(
486 blpapi_MessageFormatter_t *formatter, blpapi_Int64_t value);
487
488 int (*blpapi_MessageFormatter_appendValueFloat32)(
489 blpapi_MessageFormatter_t *formatter, blpapi_Float32_t value);
490
491 int (*blpapi_MessageFormatter_appendValueFloat64)(
492 blpapi_MessageFormatter_t *formatter, blpapi_Float64_t value);
493
494 int (*blpapi_MessageFormatter_appendValueDatetime)(
495 blpapi_MessageFormatter_t *formatter,
496 const blpapi_Datetime_t *value);
497
498 int (*blpapi_MessageFormatter_appendValueHighPrecisionDatetime)(
499 blpapi_MessageFormatter_t *formatter,
500 const blpapi_HighPrecisionDatetime_t *value);
501
502 int (*blpapi_MessageFormatter_appendValueString)(
503 blpapi_MessageFormatter_t *formatter, const char *value);
504
505 int (*blpapi_MessageFormatter_appendValueFromName)(
506 blpapi_MessageFormatter_t *formatter, const blpapi_Name_t *value);
507
508 int (*blpapi_MessageFormatter_appendElement)(
509 blpapi_MessageFormatter_t *formatter);
510
511 int (*blpapi_MessageFormatter_FormatMessageJson)(
512 blpapi_MessageFormatter_t *formatter, const char *message);
513
514 int (*blpapi_MessageFormatter_FormatMessageXml)(
515 blpapi_MessageFormatter_t *formatter, const char *message);
516
517 int (*blpapi_MessageFormatter_copy)(blpapi_MessageFormatter_t **formatter,
518 const blpapi_MessageFormatter_t *original);
519
520 int (*blpapi_MessageFormatter_assign)(blpapi_MessageFormatter_t **lhs,
521 const blpapi_MessageFormatter_t *rhs);
522
523 int (*blpapi_MessageFormatter_destroy)(
524 blpapi_MessageFormatter_t *formatter);
525
526 int (*blpapi_Operation_responseDefinitionFromName)(
527 blpapi_Operation_t *operation,
528 blpapi_SchemaElementDefinition_t **responseDefinition,
529 const blpapi_Name_t *name);
530
531 // 3.15.0
532 int (*blpapi_SessionOptions_setSessionIdentityOptions)(
533 blpapi_SessionOptions_t *parameters,
534 const blpapi_AuthOptions_t *authOptions,
535 blpapi_CorrelationId_t *cid);
536
537 int (*blpapi_AbstractSession_generateAuthorizedIdentityAsync)(
538 blpapi_AbstractSession_t *session,
539 const blpapi_AuthOptions_t *authOptions,
540 blpapi_CorrelationId_t *cid);
541
542 int (*blpapi_AbstractSession_getAuthorizedIdentity)(
543 blpapi_AbstractSession_t *session,
544 const blpapi_CorrelationId_t *cid,
545 blpapi_Identity_t **identity);
546
547 int (*blpapi_AuthOptions_create_default)(blpapi_AuthOptions_t **options);
548
549 int (*blpapi_AuthOptions_create_forUserMode)(
550 blpapi_AuthOptions_t **options, const blpapi_AuthUser_t *user);
551
552 int (*blpapi_AuthOptions_create_forAppMode)(blpapi_AuthOptions_t **options,
553 const blpapi_AuthApplication_t *app);
554
555 int (*blpapi_AuthOptions_create_forUserAndAppMode)(
556 blpapi_AuthOptions_t **options,
557 const blpapi_AuthUser_t *user,
558 const blpapi_AuthApplication_t *app);
559
560 int (*blpapi_AuthOptions_create_forToken)(
561 blpapi_AuthOptions_t **options, const blpapi_AuthToken_t *token);
562
563 int (*blpapi_AuthOptions_duplicate)(
564 blpapi_AuthOptions_t **options, const blpapi_AuthOptions_t *dup);
565
566 int (*blpapi_AuthOptions_copy)(
567 blpapi_AuthOptions_t *lhs, const blpapi_AuthOptions_t *rhs);
568
569 void (*blpapi_AuthOptions_destroy)(blpapi_AuthOptions_t *options);
570
571 int (*blpapi_AuthUser_createWithLogonName)(blpapi_AuthUser_t **user);
572
573 int (*blpapi_AuthUser_createWithActiveDirectoryProperty)(
574 blpapi_AuthUser_t **user, const char *propertyName);
575
576 int (*blpapi_AuthUser_createWithManualOptions)(blpapi_AuthUser_t **user,
577 const char *userId,
578 const char *ipAddress);
579
580 int (*blpapi_AuthUser_duplicate)(
581 blpapi_AuthUser_t **user, const blpapi_AuthUser_t *dup);
582
583 int (*blpapi_AuthUser_copy)(
584 blpapi_AuthUser_t *lhs, const blpapi_AuthUser_t *rhs);
585
586 void (*blpapi_AuthUser_destroy)(blpapi_AuthUser_t *user);
587
588 int (*blpapi_AuthApplication_create)(
589 blpapi_AuthApplication_t **app, const char *appName);
590
591 int (*blpapi_AuthApplication_duplicate)(blpapi_AuthApplication_t **app,
592 const blpapi_AuthApplication_t *dup);
593
594 int (*blpapi_AuthApplication_copy)(blpapi_AuthApplication_t *lhs,
595 const blpapi_AuthApplication_t *rhs);
596
597 void (*blpapi_AuthApplication_destroy)(blpapi_AuthApplication_t *app);
598
599 int (*blpapi_AuthToken_create)(
600 blpapi_AuthToken_t **token, const char *tokenStr);
601
602 int (*blpapi_AuthToken_duplicate)(
603 blpapi_AuthToken_t **token, const blpapi_AuthToken_t *dup);
604
605 int (*blpapi_AuthToken_copy)(
606 blpapi_AuthToken_t *lhs, const blpapi_AuthToken_t *rhs);
607
608 void (*blpapi_AuthToken_destroy)(blpapi_AuthToken_t *token);
609
610 // 3.16.0
611 int (*blpapi_Message_getRequestId)(
612 const blpapi_Message_t *message, const char **requestId);
613 int (*blpapi_Request_getRequestId)(
614 const blpapi_Request_t *request, const char **requestId);
615 int (*blpapi_MessageProperties_setRequestId)(
616 blpapi_MessageProperties_t *messageProperties,
617 const char *requestId);
618
619 // 3.18.0
620 int (*blpapi_Session_subscribeEx)(blpapi_Session_t *session,
621 const blpapi_SubscriptionList_t *subscriptionList,
622 const blpapi_Identity_t *handle,
623 const char *requestLabel,
624 int requestLabelLen,
625 blpapi_SubscriptionPreprocessErrorHandler_t errorHandler,
626 void *userData);
627 int (*blpapi_Session_resubscribeEx)(blpapi_Session_t *session,
628 const blpapi_SubscriptionList_t *resubscriptionList,
629 const char *requestLabel,
630 int requestLabelLen,
631 blpapi_SubscriptionPreprocessErrorHandler_t errorHandler,
632 void *userData);
633 int (*blpapi_Session_resubscribeWithIdEx)(blpapi_Session_t *session,
634 const blpapi_SubscriptionList_t *resubscriptionList,
635 int resubscriptionId,
636 const char *requestLabel,
637 int requestLabelLen,
638 blpapi_SubscriptionPreprocessErrorHandler_t errorHandler,
639 void *userData);
640
641 // 3.18.5
642 int (*blpapi_SessionOptions_applicationIdentityKey)(
643 const char **applicationIdentityKey,
644 size_t *size,
645 blpapi_SessionOptions_t *parameters);
646 int (*blpapi_SessionOptions_setApplicationIdentityKey)(
647 blpapi_SessionOptions_t *parameters,
648 const char *applicationIdentityKey,
649 unsigned size);
650
651 // 3.19
652 int (*blpapi_Element_getValueAsBytes)(const blpapi_Element_t *element,
653 const char **buffer,
654 size_t *length,
655 size_t index);
656
657 int (*blpapi_Element_setValueBytes)(blpapi_Element_t *element,
658 const char *value,
659 size_t length,
660 size_t index);
661
662 int (*blpapi_Element_setElementBytes)(blpapi_Element_t *element,
663 const char *nameString,
664 const blpapi_Name_t *name,
665 const char *value,
666 size_t length);
667
668 int (*blpapi_EventFormatter_setValueBytes)(
669 blpapi_EventFormatter_t *formatter,
670 const char *typeString,
671 const blpapi_Name_t *typeName,
672 const char *value,
673 size_t length);
674
675 int (*blpapi_MessageFormatter_setValueBytes)(
676 blpapi_MessageFormatter_t *formatter,
677 const blpapi_Name_t *typeName,
678 const char *value,
679 size_t length);
680
681 // 3.20.0
682 blpapi_Socks5Config_t *(*blpapi_Socks5Config_create)(
683 const char *hostname, size_t hostname_size, unsigned short port);
684
685 int (*blpapi_Socks5Config_copy)(blpapi_Socks5Config_t **socks5Config,
686 const blpapi_Socks5Config_t *srcSocks5Config);
687
688 void (*blpapi_Socks5Config_destroy)(blpapi_Socks5Config_t *socks5Config);
689
690 int (*blpapi_Socks5Config_print)(blpapi_Socks5Config_t *socks5Config,
691 blpapi_StreamWriter_t streamWriter,
692 void *userStream,
693 int indentLevel,
694 int spacesPerLevel);
695
696 int (*blpapi_SessionOptions_getServerAddressWithProxy)(
697 blpapi_SessionOptions_t *parameters,
698 const char **serverHost,
699 unsigned short *serverPort,
700 const char **socks5Host,
701 unsigned short *sock5Port,
702 size_t index);
703
704 int (*blpapi_SessionOptions_setServerAddressWithProxy)(
705 blpapi_SessionOptions_t *parameters,
706 const char *serverHost,
707 unsigned short serverPort,
708 const blpapi_Socks5Config_t *socks5Config,
709 size_t index);
710
711 // 3.22.0
712 int (*blpapi_SessionOptions_sessionName)(const char **sessionName,
713 size_t *size,
714 blpapi_SessionOptions_t *parameters);
715
716 int (*blpapi_SessionOptions_setSessionName)(
717 blpapi_SessionOptions_t *parameters,
718 const char *sessionName,
719 size_t size);
720
721 int (*blpapi_AbstractSession_sessionName)(
722 blpapi_AbstractSession_t *session,
723 const char **sessionName,
724 size_t *size);
725
726 int (*blpapi_MessageIterator_addRef)(
727 const blpapi_MessageIterator_t *iterator);
728
729 // 3.24.0
730 int (*blpapi_EventFormatter_getElementDefinition)(
731 blpapi_EventFormatter_t *formatter,
732 blpapi_SchemaElementDefinition_t **definition);
733
734 int (*blpapi_Logging_configureLogging)(int level,
735 const char *fileName,
736 int rolloverFileCount,
737 int rolloverFileLimit);
738
739 // 3.24.7
740 int (*blpapi_Session_addRef)(const blpapi_Session_t *session);
741 int (*blpapi_Session_release)(const blpapi_Session_t *session);
742 int (*blpapi_ProviderSession_addRef)(
743 const blpapi_ProviderSession_t *session);
744 int (*blpapi_ProviderSession_release)(
745 const blpapi_ProviderSession_t *session);
746
747 // 3.24.12
748 int (*blpapi_UserAgentInfo_setUserTaskName)(const char *userTaskName);
749 int (*blpapi_UserAgentInfo_setNativeSdkLanguageAndVersion)(
750 const char *language, const char *version);
751
752 // 3.25.11
753 int (*blpapi_CorrelationId_managedPtrAddRef)(
754 int *numRef, blpapi_CorrelationId_t *cid);
755 int (*blpapi_CorrelationId_managedPtrRelease)(
756 int *numRef, blpapi_CorrelationId_t *cid);
757
758 int (*blpapi_Element_toJson)(const blpapi_Element_t *element,
759 blpapi_StreamWriter_t streamWriter,
760 void *stream);
761
762 int (*blpapi_Element_fromJson)(
763 const blpapi_Element_t *element, char const *json);
764
765 int (*blpapi_EventFormatter_getElement)(
766 blpapi_EventFormatter_t *formatter, blpapi_Element_t **element);
767
768 int (*blpapi_MessageFormatter_getElement)(
769 blpapi_MessageFormatter_t *formatter, blpapi_Element_t **element);
770
771 // 3.26.2
772 void (*blpapi_Logging_userMessage)(
773 blpapi_Logging_Severity_t severity, const char *message);
774
775} blpapi_FunctionEntries_t;
776
777BLPAPI_EXPORT extern size_t g_blpapiFunctionTableSize;
778BLPAPI_EXPORT extern blpapi_FunctionEntries_t g_blpapiFunctionEntries;
780
781} // extern "C"
782
783#endif // __cplusplus
784
785#endif // INCLUDED_BLPAPI_DISPATCHTBL
Common definitions used by the library.
A signature for callback on print and default C++ implementation.
Provide BLPAPI types.
Provide preprocessor macros for BLPAPI library version information.