EMA C++ Edition
Series.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_Series_h
10#define __refinitiv_ema_access_Series_h
11
112
113namespace refinitiv {
114
115namespace ema {
116
117namespace rdm {
118
119class DataDictionary;
120class DataDictionaryImpl;
121
122}
123
124namespace access {
125
126class SeriesDecoder;
127class SeriesEncoder;
128
130{
131public :
132
134
135
139
141
142
144 virtual ~Series();
146
148
149
154
160 Series& totalCountHint( UInt32 totalCountHint );
161
169
176 Series& add( const ComplexType& value );
177
183
188 const Series& complete();
190
192
193
197
202
206 const EmaBuffer& getAsHex() const;
207
211 const EmaString& toString() const;
212
217 const EmaString& toString( const refinitiv::ema::rdm::DataDictionary& dictionary ) const;
218
222 bool forth() const;
223
226 void reset() const;
227
232 const SeriesEntry& getEntry() const;
233
237 bool hasTotalCountHint() const;
238
244
251
252private :
253
254 friend class refinitiv::ema::rdm::DataDictionaryImpl;
255
256 Decoder& getDecoder();
257 bool hasDecoder() const;
258
259 const Encoder& getEncoder() const;
260 bool hasEncoder() const;
261
262 const EmaString& toString( UInt64 ) const;
263
264 mutable EmaString _toString;
265 SeriesEntry _entry;
266 SummaryData _summary;
267 mutable SeriesDecoder* _pDecoder;
268 mutable SeriesEncoder* _pEncoder;
269
270 Series( const Series& );
271 Series& operator=( const Series& );
272};
273
274}
275
276}
277
278}
279
280#endif // __refinitiv_ema_access_Series_h
#define EMA_ACCESS_API
Definition: Common.h:95
*|--------------------------------------------------------------------------—
Definition: AckMsg.h:62
unsigned int UInt32
represents 32-bit unsigned integer
Definition: Common.h:56
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.
The rdm namespace contains all RDM definitions and constants.
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
Series is a homogeneous container of complex data type entries.
Definition: Series.h:130
Data::DataCode getCode() const
Series & add(const ComplexType &value)
const EmaString & toString(const refinitiv::ema::rdm::DataDictionary &dictionary) const
Series & summaryData(const ComplexType &data)
const EmaString & toString() const
const SummaryData & getSummaryData() const
const SeriesEntry & getEntry() const
DataType::DataTypeEnum getDataType() const
const EmaBuffer & getAsHex() const
Series & totalCountHint(UInt32 totalCountHint)
SeriesEntry represents an entry of Series.
Definition: SeriesEntry.h:87
SummaryData is used to convey Omm SummaryData information optionally present on Map,...
Definition: SummaryData.h:99