Salome HOME
updated copyright message
[modules/gui.git] / src / DDS / DDS_DicItem.h
index 96efab7fae2abf946ce23b78827762c398d450e8..522abeaa4940d67f1d154014950e7910cd1ea7b2 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2023  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -6,7 +6,7 @@
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -25,7 +25,7 @@
 
 #include "DDS.h"
 
-#include <MMgt_TShared.hxx>
+#include <Standard_Transient.hxx>
 
 #include <TCollection_AsciiString.hxx>
 
 #include <NCollection_DataMap.hxx>
 #include <NCollection_DefineIndexedDataMap.hxx>
 
+#include <TColStd_MapOfReal.hxx>
+#include <TColStd_SequenceOfInteger.hxx>
+#include <TColStd_SequenceOfAsciiString.hxx>
+#include <TColStd_SequenceOfExtendedString.hxx>
+
 class LDOM_Element;
 class DDS_Dictionary;
-class TColStd_MapOfReal;
-class TColStd_SequenceOfInteger;
-class TColStd_SequenceOfAsciiString;
-class TColStd_SequenceOfExtendedString;
 
 //  Class, containing all information about one parameter:
 //  unique    : id
@@ -48,7 +49,7 @@ class TColStd_SequenceOfExtendedString;
 //  optional  : format, units,
 //              min value, max value, default value.
 
-class DDS_DicItem : public MMgt_TShared
+class DDS_DicItem : public Standard_Transient
 {
 public:
   /*! Enum describes type of datum value */
@@ -82,90 +83,132 @@ public:
   typedef TCollection_AsciiString UnitSystem;
 
 public:
-  DDS_DicItem();
+  Standard_EXPORT DDS_DicItem();
+
+  Standard_EXPORT TCollection_AsciiString            GetId() const;
+  Standard_EXPORT DDS_DicItem::Type                  GetType() const;
+  Standard_EXPORT TCollection_ExtendedString         GetLabel() const;
+  Standard_EXPORT TCollection_ExtendedString         GetFilter() const;
+  Standard_EXPORT TCollection_ExtendedString         GetRequired() const;
+  Standard_EXPORT DDS_MsgType                        GetWarningLevel() const;
+  Standard_EXPORT TCollection_ExtendedString         GetLongDescription() const;
+  Standard_EXPORT TCollection_ExtendedString         GetShortDescription() const;
+  Standard_EXPORT TCollection_AsciiString            GetComponent() const;
+
+  Standard_EXPORT virtual TCollection_AsciiString    GetUnits() const;
+  Standard_EXPORT virtual TCollection_AsciiString    GetUnits( const UnitSystem& ) const;
+
+  Standard_EXPORT TCollection_ExtendedString         GetDefaultValue() const;
+  Standard_EXPORT TCollection_ExtendedString         GetDefaultValue( const UnitSystem& ) const;
+
+  Standard_EXPORT Standard_Real                      GetMinValue() const;
+  Standard_EXPORT Standard_Real                      GetMinValue( const UnitSystem& ) const;
+
+  Standard_EXPORT Standard_Real                      GetMaxValue() const;
+  Standard_EXPORT Standard_Real                      GetMaxValue( const UnitSystem& ) const;
+
+  Standard_EXPORT virtual Standard_Integer           GetPrecision() const;
+  Standard_EXPORT virtual Standard_Integer           GetPrecision( const UnitSystem& ) const;
+
+  Standard_EXPORT virtual TCollection_AsciiString    GetFormat( const Standard_Boolean = Standard_True ) const;
+  Standard_EXPORT virtual TCollection_AsciiString    GetFormat( const UnitSystem&,
+                                                                const Standard_Boolean = Standard_True ) const;
+  Standard_EXPORT TCollection_ExtendedString         GetNameOfValues() const;
+  Standard_EXPORT Standard_Boolean                   GetListOfValues( Handle(TColStd_HArray1OfExtendedString)&,
+                                                                      Handle(TColStd_HArray1OfInteger)& ) const;
+  Standard_EXPORT Standard_Boolean                   GetListOfValues( Handle(TColStd_HArray1OfExtendedString)&,
+                                                                      Handle(TColStd_HArray1OfInteger)&,
+                                                                      Handle(TColStd_HArray1OfExtendedString)& ) const;
+  Standard_EXPORT Standard_Boolean                   GetSpecialValues( TColStd_MapOfReal& ) const;
+
+  Standard_EXPORT Standard_Real                      GetMinZoom() const;
+  Standard_EXPORT Standard_Real                      GetMaxZoom() const;
+  Standard_EXPORT Standard_Real                      GetZoomOrder() const;
 
-  Standard_EXPORT TCollection_AsciiString    GetId() const;
-  Standard_EXPORT DDS_DicItem::Type          GetType() const;
-  Standard_EXPORT TCollection_ExtendedString GetLabel() const;
-  Standard_EXPORT TCollection_ExtendedString GetFilter() const;
-  Standard_EXPORT TCollection_ExtendedString GetRequired() const;
-  Standard_EXPORT DDS_MsgType                GetWarningLevel() const;
-  Standard_EXPORT TCollection_ExtendedString GetLongDescription() const;
-  Standard_EXPORT TCollection_ExtendedString GetShortDescription() const;
-  Standard_EXPORT TCollection_AsciiString    GetComponent() const;
+  Standard_EXPORT virtual Standard_Real              ToSI( const Standard_Real ) const;
+  Standard_EXPORT virtual Standard_Real              FromSI( const Standard_Real ) const;
 
-  Standard_EXPORT TCollection_AsciiString    GetUnits() const;
-  Standard_EXPORT TCollection_AsciiString    GetUnits( const UnitSystem& ) const;
+  Standard_EXPORT virtual Standard_Real              ToSI( const Standard_Real, const UnitSystem& ) const;
+  Standard_EXPORT virtual Standard_Real              FromSI( const Standard_Real, const UnitSystem& ) const;
 
-  Standard_EXPORT TCollection_ExtendedString GetDefaultValue() const;
-  Standard_EXPORT TCollection_ExtendedString GetDefaultValue( const UnitSystem& ) const;
+  Standard_EXPORT Standard_Boolean                   HasData( const Standard_Integer ) const;
 
-  Standard_EXPORT Standard_Real              GetMinValue() const;
-  Standard_EXPORT Standard_Real              GetMinValue( const UnitSystem& ) const;
+  Standard_EXPORT TCollection_ExtendedString         GetOption( const TCollection_AsciiString& ) const;
+  Standard_EXPORT Standard_Boolean                   GetOptionNames( TColStd_SequenceOfAsciiString& ) const;
 
-  Standard_EXPORT Standard_Real              GetMaxValue() const;
-  Standard_EXPORT Standard_Real              GetMaxValue( const UnitSystem& ) const;
+protected:
+  
+  Standard_EXPORT void                               SetId( const TCollection_AsciiString& );
 
-  Standard_EXPORT Standard_Integer           GetPrecision() const;
-  Standard_EXPORT Standard_Integer           GetPrecision( const UnitSystem& ) const;
+  Standard_EXPORT void                               SetComponent( const Handle(Standard_Transient)& );
 
-  Standard_EXPORT TCollection_AsciiString    GetFormat( const Standard_Boolean = Standard_True ) const;
-  Standard_EXPORT TCollection_AsciiString    GetFormat( const UnitSystem&,
-                                                        const Standard_Boolean = Standard_True ) const;
-  Standard_EXPORT TCollection_ExtendedString GetNameOfValues() const;
-  Standard_EXPORT Standard_Boolean           GetListOfValues( Handle(TColStd_HArray1OfExtendedString)&,
-                                                              Handle(TColStd_HArray1OfInteger)& ) const;
-  Standard_EXPORT Standard_Boolean           GetListOfValues( Handle(TColStd_HArray1OfExtendedString)&,
-                                                              Handle(TColStd_HArray1OfInteger)&,
-                                                              Handle(TColStd_HArray1OfExtendedString)& ) const;
-  Standard_EXPORT Standard_Boolean           GetSpecialValues( TColStd_MapOfReal& ) const;
+  Standard_EXPORT void                               SetLabel( const TCollection_AsciiString& );
 
-  Standard_EXPORT Standard_Real              GetMinZoom() const;
-  Standard_EXPORT Standard_Real              GetMaxZoom() const;
-  Standard_EXPORT Standard_Real              GetZoomOrder() const;
+  Standard_EXPORT void                               SetFilter( const TCollection_AsciiString& );
 
-  Standard_EXPORT Standard_Real              ToSI( const Standard_Real ) const;
-  Standard_EXPORT Standard_Real              FromSI( const Standard_Real ) const;
+  Standard_EXPORT void                               SetRequired( const TCollection_AsciiString& );
 
-  Standard_EXPORT Standard_Real              ToSI( const Standard_Real, const UnitSystem& ) const;
-  Standard_EXPORT Standard_Real              FromSI( const Standard_Real, const UnitSystem& ) const;
+  Standard_EXPORT void                               SetWarningLevel( const Standard_Integer& );
 
-  Standard_EXPORT Standard_Boolean           HasData( const Standard_Integer ) const;
+  Standard_EXPORT void                               SetMinZoom( const Standard_Real& );
+  Standard_EXPORT void                               SetMaxZoom( const Standard_Real& );
+  Standard_EXPORT void                               SetZoomOrder( const Standard_Real& );
 
-  Standard_EXPORT TCollection_ExtendedString GetOption( const TCollection_AsciiString& ) const;
-  Standard_EXPORT Standard_Boolean           GetOptionNames( TColStd_SequenceOfAsciiString& ) const;
+  Standard_EXPORT void                               SetShortDescription( const TCollection_ExtendedString& );
+  Standard_EXPORT void                               SetLongDescription( const TCollection_ExtendedString& );
+
+  Standard_EXPORT bool                               SetOption( const TCollection_AsciiString&, const TCollection_AsciiString& );
+  Standard_EXPORT void                               SetType( const DDS_DicItem::Type& );
+
+  Standard_EXPORT void                               SetMin( const Standard_Real& );
+  Standard_EXPORT void                               SetMax( const Standard_Real& );
+
+  Standard_EXPORT void                               SetDefaultValue( const Standard_Real& );
+  Standard_EXPORT void                               SetDefaultValue( const TCollection_AsciiString& );
+
+  Standard_EXPORT void                               SetListOfValues( const Handle(TColStd_HArray1OfExtendedString)&,
+                                                                      const Handle(TColStd_HArray1OfInteger)& );
+  Standard_EXPORT void                               SetListOfValues( const Handle(TColStd_HArray1OfExtendedString)&,
+                                                                      const Handle(TColStd_HArray1OfInteger)&,
+                                                                      const Handle(TColStd_HArray1OfExtendedString)& );
+
+protected:
+
+  Standard_EXPORT DDS_DicItem( const DDS_DicItem& );
+
+  Standard_EXPORT void                               operator=( const DDS_DicItem& );
+
+  Standard_EXPORT virtual void                       FillDataMap( TCollection_AsciiString, const LDOM_Element&,
+                                                                  const LDOM_Element&, const LDOM_Element&,
+                                                                  const TColStd_SequenceOfAsciiString& );
 
 private:
-  DDS_DicItem( const DDS_DicItem& );
-  void                                       operator=( const DDS_DicItem& );
-  void                                       FillDataMap( TCollection_AsciiString, const LDOM_Element&,
-                                                          const LDOM_Element&, const LDOM_Element&,
-                                                          const TColStd_SequenceOfAsciiString& );
-  void                                       PrepareFormats( const TCollection_AsciiString& );
-  void                                       GetDefaultFormat();
-  UnitSystem                                 GetActiveUnitSystem() const;
-
-  void                                       GetStringFormat( const TCollection_AsciiString&,
-                                                              const TCollection_AsciiString&,
-                                                              const TCollection_AsciiString&,
-                                                              const TCollection_AsciiString&,
-                                                              TCollection_AsciiString& );
-  void                                       GetIntegerFormat( const TCollection_AsciiString&,
-                                                               const TCollection_AsciiString&,
-                                                               const TCollection_AsciiString&,
-                                                               const TCollection_AsciiString&,
-                                                               const Standard_Character,
-                                                               TCollection_AsciiString& );
-  void                                       GetFloatFormat( const TCollection_AsciiString&,
-                                                             const TCollection_AsciiString&,
-                                                             const TCollection_AsciiString&,
-                                                             const TCollection_AsciiString&,
-                                                             const Standard_Character,
-                                                             TCollection_AsciiString& );
-  void                                       Split( const TCollection_AsciiString&,
-                                                    Handle(TColStd_HArray1OfExtendedString)& );
-
-  UnitData*                                  GetUnitData( const UnitSystem& ) const;
+
+  Standard_EXPORT void                               PrepareFormats( const TCollection_AsciiString& );
+  Standard_EXPORT void                               GetDefaultFormat();
+  Standard_EXPORT UnitSystem                         GetActiveUnitSystem() const;
+
+  Standard_EXPORT void                               GetStringFormat( const TCollection_AsciiString&,
+                                                                      const TCollection_AsciiString&,
+                                                                      const TCollection_AsciiString&,
+                                                                      const TCollection_AsciiString&,
+                                                                      TCollection_AsciiString& );
+  Standard_EXPORT void                               GetIntegerFormat( const TCollection_AsciiString&,
+                                                                       const TCollection_AsciiString&,
+                                                                       const TCollection_AsciiString&,
+                                                                       const TCollection_AsciiString&,
+                                                                       const Standard_Character,
+                                                                       TCollection_AsciiString& );
+  Standard_EXPORT void                               GetFloatFormat( const TCollection_AsciiString&,
+                                                                      const TCollection_AsciiString&,
+                                                                      const TCollection_AsciiString&,
+                                                                      const TCollection_AsciiString&,
+                                                                      const Standard_Character,
+                                                                      TCollection_AsciiString& );
+  Standard_EXPORT void                               Split( const TCollection_AsciiString&,
+                                                            Handle(TColStd_HArray1OfExtendedString)& );
+
+  Standard_EXPORT UnitData*                          GetUnitData( const UnitSystem& ) const;
 
 private:
   typedef NCollection_DataMap<TCollection_AsciiString, TCollection_ExtendedString> OptionsMap;
@@ -210,14 +253,11 @@ private:
   friend class DDS_DicGroup;
 
 public:
-  // Declaration of CASCADE RTTI
-  DEFINE_STANDARD_RTTI(DDS_DicItem)
+  DEFINE_STANDARD_RTTIEXT(DDS_DicItem, Standard_Transient)
 };
 
-DEFINE_STANDARD_HANDLE(DDS_DicItem, MMgt_TShared)
+DEFINE_STANDARD_HANDLE(DDS_DicItem, Standard_Transient)
 
-DEFINE_BASECOLLECTION(DDS_BaseCollectionOfDicItems, Handle(DDS_DicItem))
-DEFINE_INDEXEDDATAMAP(DDS_IndexedDataMapOfDicItems, DDS_BaseCollectionOfDicItems,
-                      TCollection_AsciiString, Handle(DDS_DicItem))
+typedef NCollection_IndexedDataMap<TCollection_AsciiString, Handle(DDS_DicItem)> DDS_IndexedDataMapOfDicItems;
 
 #endif