EMA C++ Edition
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OmmQos.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_OmmQos_h
10 #define __thomsonreuters_ema_access_OmmQos_h
11 
25 #include "Access/Include/Data.h"
26 
27 namespace thomsonreuters {
28 
29 namespace ema {
30 
31 namespace access {
32 
33 class OmmQosDecoder;
34 
35 class EMA_ACCESS_API OmmQos : public Data
36 {
37 public :
38 
42  enum Rate
43  {
44  TickByTickEnum = 0,
46  JustInTimeConflatedEnum = 0xFFFFFF00
47  };
48 
53  {
54  RealTimeEnum = 0,
56  InexactDelayedEnum = 0xFFFFFFFF
57  };
58 
60 
61 
64  const EmaString& getRateAsString() const;
65 
69  const EmaString& getTimelinessAsString() const;
70 
74  DataType::DataTypeEnum getDataType() const;
75 
79  Data::DataCode getCode() const;
80 
84  const EmaBuffer& getAsHex() const;
85 
89  const EmaString& toString() const;
90 
94  UInt32 getTimeliness() const;
95 
99  UInt32 getRate() const;
101 
102 private :
103 
104  friend class Decoder;
105  friend class StaticDecoder;
106  friend class RefreshMsgDecoder;
107  friend class ReqMsgDecoder;
108 
109  Decoder& getDecoder();
110  bool hasDecoder() const;
111 
112  const EmaString& toString( UInt64 indent ) const;
113 
114  const Encoder& getEncoder() const;
115  bool hasEncoder() const;
116 
117  OmmQos();
118  virtual ~OmmQos();
119  OmmQos( const OmmQos& );
120  OmmQos& operator=( const OmmQos& );
121 
122  OmmQosDecoder* _pDecoder;
123  UInt64 _space[12];
124 };
125 
126 }
127 
128 }
129 
130 }
131 
132 #endif // __thomsonreuters_ema_access_OmmQos_h
unsigned long long UInt64
represents 64-bit unsigned integer
Definition: Common.h:68
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
Data class is a parent abstract class defining common interfaces for all Data type classes...
Definition: Data.h:38