Salome HOME
Libraries for several kinds of controls (line edit, spinbox, combobox, ...). These...
[modules/gui.git] / src / DDS / DDS_Dictionary.h
1 #ifndef DDS_DICTIONARY_H
2 #define DDS_DICTIONARY_H
3
4 #include "DDS_DicGroup.h"
5
6 #include <LDOMString.hxx>
7
8 #include <MMgt_TShared.hxx>
9
10 class LDOM_Element;
11 class TCollection_AsciiString;
12
13 DEFINE_STANDARD_HANDLE(DDS_Dictionary, MMgt_TShared)
14
15 //  Class to provide information about used parameters,
16 //  reading them from 'xml' file
17 class DDS_Dictionary : public MMgt_TShared
18 {
19 public:
20   Standard_EXPORT static Handle(DDS_Dictionary)  Get();
21
22   // Return instance of data dictionary. Create instance if it is NULL.
23
24   Standard_EXPORT Handle(DDS_DicItem)            GetDicItem( const TCollection_AsciiString& ) const;
25   Standard_EXPORT Handle(DDS_DicItem)            GetDicItem( const TCollection_AsciiString&,
26                                                              const TCollection_AsciiString& ) const;
27
28   Standard_EXPORT void                           GetUnitSystems( TColStd_SequenceOfAsciiString& ) const;
29   Standard_EXPORT void                           GetUnitSystems( TColStd_SequenceOfAsciiString&,
30                                                                  const TCollection_AsciiString& ) const;
31   Standard_EXPORT TCollection_ExtendedString     GetUnitSystemLabel( const TCollection_AsciiString& ) const;
32   Standard_EXPORT TCollection_ExtendedString     GetUnitSystemLabel( const TCollection_AsciiString&,
33                                                                      const TCollection_AsciiString& ) const;
34   Standard_EXPORT TCollection_AsciiString        GetActiveUnitSystem() const;
35   Standard_EXPORT TCollection_AsciiString        GetActiveUnitSystem( const TCollection_AsciiString& ) const;
36   Standard_EXPORT void                           SetActiveUnitSystem( const TCollection_AsciiString& );
37   Standard_EXPORT void                           SetActiveUnitSystem( const TCollection_AsciiString&,
38                                                                       const TCollection_AsciiString& );
39
40
41   static Standard_EXPORT Standard_Boolean        Load( const TCollection_AsciiString );
42
43   static Standard_EXPORT Standard_Real           ToSI( const Standard_Real, const Standard_CString );
44   static Standard_EXPORT Standard_Real           FromSI( const Standard_Real, const Standard_CString );
45
46   static Standard_EXPORT LDOMString              KeyWord( const TCollection_AsciiString& );
47
48 private:
49   DDS_Dictionary();
50   DDS_Dictionary( const DDS_Dictionary& );
51
52   void                                           operator=( const DDS_Dictionary& );
53
54   // prepares formants for each unit systems
55   void                                           FillDataMap( const LDOM_Element&, const LDOM_Element& );
56
57 private:
58   DDS_IndexedDataMapOfDicGroups                  myGroupMap;
59
60 public:
61   DEFINE_STANDARD_RTTI(DDS_Dictionary)
62 };
63
64 #endif