EMA C++ Edition
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
UpdateMsg.h
Go to the documentation of this file.
1 /*|-----------------------------------------------------------------------------
2  *| This source code is provided under the Apache 2.0 license --
3  *| and is provided AS IS with no warranty or guarantee of fit for purpose. --
4  *| See the project's LICENSE.md for details. --
5  *| Copyright (C) 2019 Refinitiv. All rights reserved. --
6  *|-----------------------------------------------------------------------------
7  */
8 
9 #ifndef __thomsonreuters_ema_access_UpdateMsg_h
10 #define __thomsonreuters_ema_access_UpdateMsg_h
11 
63 #include "Access/Include/Msg.h"
64 
65 namespace thomsonreuters {
66 
67 namespace ema {
68 
69 namespace access {
70 
72 {
73 public :
74 
76 
77 
79  UpdateMsg();
80 
85  UpdateMsg( const UpdateMsg& other );
87 
89 
90 
92  virtual ~UpdateMsg();
94 
96 
97 
100  DataType::DataTypeEnum getDataType() const;
101 
105  Data::DataCode getCode() const;
106 
110  const EmaBuffer& getAsHex() const;
111 
115  const EmaString& toString() const;
116 
121  bool hasSeqNum() const;
122 
127  bool hasPermissionData() const;
128 
132  bool hasConflated() const;
133 
138  bool hasPublisherId() const;
139 
144  bool hasServiceName() const;
145 
149  UInt8 getUpdateTypeNum() const;
150 
155  UInt32 getSeqNum() const;
156 
161  const EmaBuffer& getPermissionData() const;
162 
167  UInt16 getConflatedTime() const;
168 
173  UInt16 getConflatedCount() const;
174 
179  UInt32 getPublisherIdUserId() const;
180 
185  UInt32 getPublisherIdUserAddress() const;
186 
190  bool getDoNotCache() const;
191 
195  bool getDoNotConflate() const;
196 
200  bool getDoNotRipple() const;
201 
206  const EmaString& getServiceName() const;
208 
210 
211 
215  UpdateMsg& clear();
216 
221  UpdateMsg& streamId( Int32 streamId );
222 
228  UpdateMsg& domainType( UInt16 domainType = rdm::MMT_MARKET_PRICE );
229 
234  UpdateMsg& name( const EmaString& name );
235 
240  UpdateMsg& nameType( UInt8 nameType = rdm::INSTRUMENT_NAME_RIC );
241 
247  UpdateMsg& serviceName( const EmaString& serviceName );
248 
254  UpdateMsg& serviceId( UInt32 serviceId );
255 
260  UpdateMsg& id( Int32 id );
261 
266  UpdateMsg& filter( UInt32 filter );
267 
271  UpdateMsg& updateTypeNum( UInt8 updateTypeNum );
272 
277  UpdateMsg& seqNum( UInt32 seqNum );
278 
283  UpdateMsg& permissionData( const EmaBuffer& permissionData );
284 
290  UpdateMsg& conflated( UInt16 count = 0, UInt16 time = 0 );
291 
297  UpdateMsg& publisherId( UInt32 userId, UInt32 userAddress );
298 
303  UpdateMsg& attrib( const ComplexType& data );
304 
309  UpdateMsg& payload( const ComplexType& data );
310 
315  UpdateMsg& extendedHeader( const EmaBuffer& buffer );
316 
321  UpdateMsg& doNotCache( bool doNotCache = false );
322 
327  UpdateMsg& doNotConflate( bool doNotConflate = false );
328 
333  UpdateMsg& doNotRipple( bool doNotRipple = false );
335 
336 private :
337 
338  friend class ItemCallbackClient;
339 
340  const EmaString& toString( UInt64 ) const;
341 
342  Decoder& getDecoder();
343 
344  UpdateMsg& operator=( const UpdateMsg& );
345 
346  mutable EmaString _toString;
347 };
348 
349 }
350 
351 }
352 
353 }
354 
355 #endif // __thomsonreuters_ema_access_UpdateMsg_h
unsigned short UInt16
represents 16-bit unsigned integer
Definition: Common.h:44
unsigned long long UInt64
represents 64-bit unsigned integer
Definition: Common.h:68
Msg class is a parent class for all message representing classes.
Definition: Msg.h:45
unsigned int UInt32
represents 32-bit unsigned integer
Definition: Common.h:56
EmaString class is a container of a null terminated Ascii character string.
Definition: EmaString.h:56
EmaBuffer represents a general use binary buffer.
Definition: EmaBuffer.h:32
#define EMA_ACCESS_API
Definition: Common.h:95
ComplexType class is a parent class from whom all complex data types inherit.
Definition: ComplexType.h:33
int Int32
represents 32-bit signed integer
Definition: Common.h:62
static const thomsonreuters::ema::access::UInt8 INSTRUMENT_NAME_RIC
Definition: EmaRdm.h:197
UpdateMsg conveys changes to item data.
Definition: UpdateMsg.h:71
static const thomsonreuters::ema::access::UInt8 MMT_MARKET_PRICE
Definition: EmaRdm.h:50
unsigned char UInt8
represents 8-bit unsigned integer
Definition: Common.h:32