EMA C++ Edition
OmmOpaque.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, 2024 LSEG. All rights reserved. --
6 *|-----------------------------------------------------------------------------
7 */
8
9#ifndef __refinitiv_ema_access_OmmOpaque_h
10#define __refinitiv_ema_access_OmmOpaque_h
11
62
63namespace refinitiv {
64
65namespace ema {
66
67namespace access {
68
69class OmmOpaqueDecoder;
70class OmmOpaqueEncoder;
71
73{
74public :
75
77
78
82
84
85
87 virtual ~OmmOpaque();
89
91
92
96
101
105 const EmaBuffer& getAsHex() const;
106
110 const EmaString& toString() const;
111
115 const EmaString& getString() const;
116
120 const EmaBuffer& getBuffer() const;
122
124
125
130
135 OmmOpaque& set( const EmaBuffer& value );
136
141 OmmOpaque& set( const EmaString& value );
143
144private :
145
146 const EmaString& toString( UInt64 ) const;
147
148 const Encoder& getEncoder() const;
149 bool hasEncoder() const;
150
151 Decoder& getDecoder();
152 bool hasDecoder() const;
153
154 OmmOpaque( const OmmOpaque& );
155 OmmOpaque& operator=( const OmmOpaque& );
156
157 mutable EmaString _toString;
158 OmmOpaqueDecoder* _pDecoder;
159 mutable OmmOpaqueEncoder* _pEncoder;
160 UInt64 _space[22];
161
162};
163
164}
165
166}
167
168}
169
170#endif // __refinitiv_ema_access_OmmOpaque_h
#define EMA_ACCESS_API
Definition: Common.h:95
*|--------------------------------------------------------------------------—
Definition: AckMsg.h:62
unsigned long long UInt64
represents 64-bit unsigned integer
Definition: Common.h:68
The access namespace contains all interfaces and definitions specified for use with the EMA Access pa...
The ema namespace contains all interfaces and definitions specified for use with EMA.
ComplexType class is a parent class from whom all complex data types inherit.
Definition: ComplexType.h:34
EmaBuffer represents a general use binary buffer.
Definition: EmaBuffer.h:33
EmaString class is a container of a null terminated Ascii character string.
Definition: EmaString.h:57
OmmOpaque represents Opaque data format in Omm.
Definition: OmmOpaque.h:73
const EmaBuffer & getBuffer() const
const EmaString & toString() const
const EmaString & getString() const
OmmOpaque & set(const EmaString &value)
DataType::DataTypeEnum getDataType() const
Data::DataCode getCode() const
const EmaBuffer & getAsHex() const
OmmOpaque & set(const EmaBuffer &value)