EMA C++ Edition
DataDictionary.h
Go to the documentation of this file.
1/*|-----------------------------------------------------------------------------
2 *| and is provided AS IS with no warranty or guarantee of fit for purpose.
3 *| See the project's LICENSE.md for details.
4 *| Copyright (C) 2019, 2024 LSEG. All rights reserved. --
5 *|-----------------------------------------------------------------------------
6 */
7
8#ifndef __refinitiv_ema_rdm_DataDictionary_h
9#define __refinitiv_ema_rdm_DataDictionary_h
10
34
35namespace refinitiv {
36
37namespace ema {
38
39namespace access {
40
41class FieldListDecoder;
42class DictionaryCallbackClient;
43class OmmConsumerImpl;
44class OmmConsumerConfigImpl;
45class PostMsg;
46class AckMsg;
47class GenericMsg;
48class RefreshMsg;
49class ReqMsg;
50class StatusMsg;
51class UpdateMsg;
52class FilterList;
53class Map;
54class Series;
55class Vector;
56class ElementList;
57class FieldList;
58class OmmArray;
59}
60
61namespace rdm {
62
63class DataDictionaryImpl;
64class DictionaryEntry;
65class EnumType;
66class EnumTypeTable;
67
69{
70
71public:
72
74
75
78
83
85
86
88 virtual ~DataDictionary();
90
92
93
99
106
113
120
127
134
141
148
155
162
169
176
183
190
197
206
217
228
236 bool hasEntry(const refinitiv::ema::access::EmaString& fieldName) const;
237
247 void getEntry(const refinitiv::ema::access::EmaString& fieldName, DictionaryEntry& entry) const;
248
259
269
283
285
286
291 void clear();
292
306
320
336
358 refinitiv::ema::access::UInt32 fragmentationSize);
359
375
389
411
426
440
447
454
460
464 operator const char* () const;
466
467private:
468
469 friend class refinitiv::ema::access::DictionaryCallbackClient;
470 friend class refinitiv::ema::access::FieldListDecoder;
471 friend class refinitiv::ema::access::OmmConsumerImpl;
472 friend class refinitiv::ema::access::OmmConsumerConfigImpl;
487
488 DataDictionary(bool);
489
490 DataDictionary& operator=(const DataDictionary&);
491
492 DataDictionaryImpl* _pImpl;
493};
494
495}
496
497}
498
499}
500
501#endif // __refinitiv_ema_rdm_DataDictionary_h
502
503
504
Common.h file provides definitions of common variable types used in EMA.
#define EMA_ACCESS_API
Definition: Common.h:95
*|--------------------------------------------------------------------------—
Definition: AckMsg.h:62
short Int16
represents 16-bit signed integer
Definition: Common.h:50
int Int32
represents 32-bit signed integer
Definition: Common.h:62
unsigned int UInt32
represents 32-bit unsigned integer
Definition: Common.h:56
unsigned short UInt16
represents 16-bit unsigned integer
Definition: Common.h:44
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.
AckMsg indicates success or failure of PostMsg.
Definition: AckMsg.h:69
ElementList is a heterogeneous container of complex and primitive data type entries.
Definition: ElementList.h:178
EmaString class is a container of a null terminated Ascii character string.
Definition: EmaString.h:57
EmaVector class provides template vector implementation.
Definition: EmaVector.h:30
FieldList is a heterogeneous container of complex and primitive data type entries.
Definition: FieldList.h:180
FilterList is a heterogeneous container of complex data type entries.
Definition: FilterList.h:134
GenericMsg allows applications to bidirectionally send messages without any implied message semantics...
Definition: GenericMsg.h:88
Map is a homogeneous container of complex data type entries.
Definition: Map.h:126
OmmArray is a homogeneous container of primitive data type entries.
Definition: OmmArray.h:87
PostMsg allows consumer applications to contribute content.
Definition: PostMsg.h:63
RefreshMsg conveys item image, state, permission and group information.
Definition: RefreshMsg.h:80
ReqMsg allows consumer application to express its interest in an item.
Definition: ReqMsg.h:60
Series is a homogeneous container of complex data type entries.
Definition: Series.h:130
StatusMsg conveys item state information.
Definition: StatusMsg.h:81
UpdateMsg conveys changes to item data.
Definition: UpdateMsg.h:73
Vector is a homogeneous container of complex data type entries.
Definition: Vector.h:123
const refinitiv::ema::access::EmaString & getEnumDescription() const
const DictionaryEntry & getEntry(refinitiv::ema::access::Int16 fieldId) const
const refinitiv::ema::access::EmaString & getFieldDescription() const
const refinitiv::ema::access::EmaString & getFieldBuild() const
refinitiv::ema::access::Int32 getDictionaryId() const
const refinitiv::ema::access::EmaString & getFieldDate() const
const refinitiv::ema::access::EmaString & getEnumRecordTemplateVersion() const
void decodeFieldDictionary(const refinitiv::ema::access::Series &series, refinitiv::ema::access::UInt32 verbosity)
const DictionaryEntry & getEntry(const refinitiv::ema::access::EmaString &fieldName) const
const refinitiv::ema::access::EmaString & getEnumFilename() const
void encodeEnumTypeDictionary(refinitiv::ema::access::Series &series, refinitiv::ema::access::UInt32 verbosity)
void loadEnumTypeDictionary(const refinitiv::ema::access::EmaString &filename)
void decodeEnumTypeDictionary(const refinitiv::ema::access::Series &series, refinitiv::ema::access::UInt32 verbosity)
const refinitiv::ema::access::EmaString & getFieldVersion() const
bool encodeFieldDictionary(refinitiv::ema::access::Series &series, refinitiv::ema::access::Int32 &currentFid, refinitiv::ema::access::UInt32 verbosity, refinitiv::ema::access::UInt32 fragmentationSize)
const EnumType & getEnumType(refinitiv::ema::access::Int16 fieldId, refinitiv::ema::access::UInt16 value) const
bool hasEntry(const refinitiv::ema::access::EmaString &fieldName) const
refinitiv::ema::access::Int32 getMinFid() const
const refinitiv::ema::access::EmaVector< EnumTypeTable > & getEnumTables() const
void getEntry(refinitiv::ema::access::Int16 fieldId, DictionaryEntry &entry) const
const refinitiv::ema::access::EmaString & getEnumDisplayTemplateVersion() const
void loadFieldDictionary(const refinitiv::ema::access::EmaString &filename)
const refinitiv::ema::access::EmaVector< DictionaryEntry > & getEntries() const
refinitiv::ema::access::Int32 getMaxFid() const
void getEntry(const refinitiv::ema::access::EmaString &fieldName, DictionaryEntry &entry) const
const refinitiv::ema::access::EmaString & getEnumDate() const
void encodeFieldDictionary(refinitiv::ema::access::Series &series, refinitiv::ema::access::UInt32 verbosity)
refinitiv::ema::access::UInt32 extractDictionaryType(const refinitiv::ema::access::Series &series)
bool hasEnumType(refinitiv::ema::access::Int16 fieldId, refinitiv::ema::access::UInt16 value) const
bool encodeEnumTypeDictionary(refinitiv::ema::access::Series &series, refinitiv::ema::access::Int32 &enumTableCount, refinitiv::ema::access::UInt32 verbosity, refinitiv::ema::access::UInt32 fragmentationSize)
DataDictionary(const DataDictionary &)
bool hasEntry(refinitiv::ema::access::Int16 fieldId) const
const refinitiv::ema::access::EmaString & toString() const
const refinitiv::ema::access::EmaString & getFieldFilename() const