summaryrefslogtreecommitdiff
path: root/inc/Units_Explorer.hxx
blob: 78d4dbf7f19471a8f74e4d47f2bf238990a9d5f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _Units_Explorer_HeaderFile
#define _Units_Explorer_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_Units_QuantitiesSequence_HeaderFile
#include <Handle_Units_QuantitiesSequence.hxx>
#endif
#ifndef _Handle_Units_UnitsSequence_HeaderFile
#include <Handle_Units_UnitsSequence.hxx>
#endif
#ifndef _Handle_TColStd_HSequenceOfInteger_HeaderFile
#include <Handle_TColStd_HSequenceOfInteger.hxx>
#endif
#ifndef _Handle_Units_UnitsSystem_HeaderFile
#include <Handle_Units_UnitsSystem.hxx>
#endif
#ifndef _Handle_Units_UnitsDictionary_HeaderFile
#include <Handle_Units_UnitsDictionary.hxx>
#endif
#ifndef _Standard_CString_HeaderFile
#include <Standard_CString.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
class Units_QuantitiesSequence;
class Units_UnitsSequence;
class TColStd_HSequenceOfInteger;
class Units_UnitsSystem;
class Units_UnitsDictionary;
class TCollection_AsciiString;


//! This class provides all the services to explore <br>
//!          UnitsSystem or UnitsDictionary. <br>
class Units_Explorer  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  //! Empty contructor of the class. <br>
  Standard_EXPORT   Units_Explorer();
  //! Creates a new instance of the class, initialized with <br>
//!          the UnitsSystem <aunitssystem>. <br>
  Standard_EXPORT   Units_Explorer(const Handle(Units_UnitsSystem)& aunitssystem);
  //! Creates a new instance of the class, initialized with <br>
//!          the UnitsDictionary <aunitsdictionary>. <br>
  Standard_EXPORT   Units_Explorer(const Handle(Units_UnitsDictionary)& aunitsdictionary);
  //! Creates a new instance of the class, initialized with <br>
//!          the UnitsSystem <aunitssystem> and positioned at the <br>
//!          quantity <aquantity>. <br>
  Standard_EXPORT   Units_Explorer(const Handle(Units_UnitsSystem)& aunitssystem,const Standard_CString aquantity);
  //! Creates a  new instance of the class,  initialized with <br>
//!          the  UnitsDictionary <aunitsdictionary> and positioned <br>
//!          at the quantity <aquantity>. <br>
  Standard_EXPORT   Units_Explorer(const Handle(Units_UnitsDictionary)& aunitsdictionary,const Standard_CString aquantity);
  //! Initializes  the  instance  of  the  class  with  the <br>
//!          UnitsSystem <aunitssystem>. <br>
  Standard_EXPORT     void Init(const Handle(Units_UnitsSystem)& aunitssystem) ;
  //! Initializes  the  instance  of  the  class  with  the <br>
//!          UnitsDictionary <aunitsdictionary>. <br>
  Standard_EXPORT     void Init(const Handle(Units_UnitsDictionary)& aunitsdictionary) ;
  //! Initializes  the  instance  of  the   class  with  the <br>
//!          UnitsSystem  <aunitssystem>  and   positioned  at  the <br>
//!          quantity <aquantity>. <br>
  Standard_EXPORT     void Init(const Handle(Units_UnitsSystem)& aunitssystem,const Standard_CString aquantity) ;
  //! Initializes  the  instance   of  the  class  with  the <br>
//!          UnitsDictionary  <aunitsdictionary> and positioned  at <br>
//!          the quantity <aquantity>. <br>
  Standard_EXPORT     void Init(const Handle(Units_UnitsDictionary)& aunitsdictionary,const Standard_CString aquantity) ;
  //! Returns True if there is another Quantity to explore, <br>
//!          False otherwise. <br>
  Standard_EXPORT     Standard_Boolean MoreQuantity() const;
  //! Sets the next Quantity current. <br>
  Standard_EXPORT     void NextQuantity() ;
  //! Returns the name of the current Quantity. <br>
  Standard_EXPORT     TCollection_AsciiString Quantity() const;
  //! Returns True if there is another Unit to explore, <br>
//!          False otherwise. <br>
  Standard_EXPORT     Standard_Boolean MoreUnit() const;
  //! Sets the next Unit current. <br>
  Standard_EXPORT     void NextUnit() ;
  //! Returns the name of the current unit. <br>
  Standard_EXPORT     TCollection_AsciiString Unit() const;
  //! If the  units system  to  explore  is  a user  system, <br>
//!          returns True  if  the  current unit  is  active, False <br>
//!          otherwise. <br>
//! <br>
//!          If   the   units  system  to  explore  is   the  units <br>
//!          dictionary,  returns True if the  current unit is  the <br>
//!          S.I. unit. <br>
  Standard_EXPORT     Standard_Boolean IsActive() const;





protected:





private:



Standard_Integer thecurrentquantity;
Handle_Units_QuantitiesSequence thequantitiessequence;
Standard_Integer thecurrentunit;
Handle_Units_UnitsSequence theunitssequence;
Handle_TColStd_HSequenceOfInteger theactiveunitssequence;


};





// other Inline functions and methods (like "C++: function call" methods)


#endif