38#ifndef INCLUDED_BLPAPI_TOPICLIST
39#define INCLUDED_BLPAPI_TOPICLIST
68#ifndef INCLUDED_BLPAPI_TYPES
72#ifndef INCLUDED_BLPAPI_CORRELATIONID
76#ifndef INCLUDED_BLPAPI_DEFS
80#ifndef INCLUDED_BLPAPI_ELEMENT
84#ifndef INCLUDED_BLPAPI_NAME
88#ifndef INCLUDED_BLPAPI_MESSAGE
92#ifndef INCLUDED_BLPAPI_RESOLUTIONLIST
96struct blpapi_TopicList;
102typedef struct blpapi_TopicList blpapi_TopicList_t;
119blpapi_TopicList_t *blpapi_TopicList_create(blpapi_TopicList_t *from);
129void blpapi_TopicList_destroy(blpapi_TopicList_t *list);
145int blpapi_TopicList_add(blpapi_TopicList_t *list,
147 const blpapi_CorrelationId_t *correlationId);
165int blpapi_TopicList_addFromMessage(blpapi_TopicList_t *list,
166 const blpapi_Message_t *topic,
167 const blpapi_CorrelationId_t *correlationId);
182int blpapi_TopicList_correlationIdAt(
const blpapi_TopicList_t *list,
183 blpapi_CorrelationId_t *result,
200int blpapi_TopicList_topicString(
const blpapi_TopicList_t *list,
202 const blpapi_CorrelationId_t *
id);
217int blpapi_TopicList_topicStringAt(
218 const blpapi_TopicList_t *list,
const char **topic,
size_t index);
234int blpapi_TopicList_status(
const blpapi_TopicList_t *list,
236 const blpapi_CorrelationId_t *
id);
252int blpapi_TopicList_statusAt(
253 const blpapi_TopicList_t *list,
int *status,
size_t index);
271int blpapi_TopicList_message(
const blpapi_TopicList_t *list,
272 blpapi_Message_t **element,
273 const blpapi_CorrelationId_t *
id);
290int blpapi_TopicList_messageAt(
const blpapi_TopicList_t *list,
291 blpapi_Message_t **element,
302int blpapi_TopicList_size(
const blpapi_TopicList_t *list);
310#ifndef INCLUDED_BLPAPI_EXCEPTION
339 blpapi_TopicList_t *d_handle_p;
372 virtual int add(
const char *topic,
420 virtual int statusAt(
size_t index)
const;
446 virtual size_t size()
const;
452 const blpapi_TopicList_t *impl()
const;
454 blpapi_TopicList_t *impl();
485 : d_handle_p(blpapi_TopicList_create(0))
490 : d_handle_p(blpapi_TopicList_create(original.d_handle_p))
496 blpapi_TopicList_create(reinterpret_cast<blpapi_TopicList_t *>(
497 const_cast<blpapi_ResolutionList_t *>(original.impl()))))
506 return blpapi_TopicList_add(d_handle_p, topic, &correlationId.impl());
512 return blpapi_TopicList_addFromMessage(
513 d_handle_p, newMessage.impl(), &correlationId.impl());
518 blpapi_CorrelationId_t correlationId;
520 d_handle_p, &correlationId, index));
528 const char *topic = 0;
530 d_handle_p, &topic, &correlationId.impl()));
537 const char *topic = 0;
539 blpapi_TopicList_topicStringAt(d_handle_p, &topic, index));
548 d_handle_p, &result, &correlationId.impl()));
557 blpapi_TopicList_statusAt(d_handle_p, &result, index));
565 blpapi_Message_t *messageByCid = 0;
567 d_handle_p, &messageByCid, &correlationId.impl()));
568 BLPAPI_CALL_MESSAGE_ADDREF(messageByCid);
569 return Message(messageByCid,
true);
574 blpapi_Message_t *messageByIndex = 0;
576 blpapi_TopicList_messageAt(d_handle_p, &messageByIndex, index));
578 BLPAPI_CALL_MESSAGE_ADDREF(messageByIndex);
579 return Message(messageByIndex,
true);
584 return static_cast<size_t>(blpapi_TopicList_size(d_handle_p));
588inline const blpapi_TopicList_t *TopicList::impl()
const {
return d_handle_p; }
590inline blpapi_TopicList_t *TopicList::impl() {
return d_handle_p; }
600 return "NOT_CREATED";
Provide a key to identify individual subscriptions or requests.
Common definitions used by the library.
Provide a representation of an item in a message.
Defines Exceptions that can be thrown by the blpapi library.
Defines a message containing elements.
Provide a representation of strings for use as container keys.
Provide a representation of a list of topics.
Definition blpapi_correlationid.h:322
static void throwOnError(int errorCode)
Definition blpapi_exception.h:556
Definition blpapi_message.h:344
Definition blpapi_resolutionlist.h:418
Definition blpapi_topiclist.h:337
virtual const char * topicString(const CorrelationId &correlationId) const
Definition blpapi_topiclist.h:525
virtual Message const message(const CorrelationId &correlationId) const
Definition blpapi_topiclist.h:562
virtual const char * topicStringAt(size_t index) const
Definition blpapi_topiclist.h:535
virtual size_t size() const
Definition blpapi_topiclist.h:582
Status
Definition blpapi_topiclist.h:342
@ CREATED
Created successfully.
Definition blpapi_topiclist.h:344
@ FAILURE
Topic creation failed.
Definition blpapi_topiclist.h:345
@ NOT_CREATED
Not created.
Definition blpapi_topiclist.h:343
virtual int statusAt(size_t index) const
Definition blpapi_topiclist.h:553
virtual CorrelationId correlationIdAt(size_t index) const
Definition blpapi_topiclist.h:516
TopicList()
Definition blpapi_topiclist.h:484
virtual ~TopicList()
Definition blpapi_topiclist.h:501
virtual int status(const CorrelationId &correlationId) const
Definition blpapi_topiclist.h:544
virtual int add(const char *topic, const CorrelationId &correlationId=CorrelationId())
Definition blpapi_topiclist.h:503
virtual Message const messageAt(size_t index) const
Definition blpapi_topiclist.h:572
constexpr const char * to_string(CorrelationId::ValueType valueType)
Definition blpapi_correlationid.h:830
Definition blpapi_abstractsession.h:448
Definition blpapi_abstractsession.h:447