0026377: Passing Handle objects as arguments to functions as non-const reference...
[occt.git] / src / XCAFDimTolObjects / XCAFDimTolObjects_GeomToleranceObject.hxx
CommitLineData
9ebaae37 1// Created on: 2015-08-06
2// Created by: Ilya Novikov
3// Copyright (c) 2004-2014 OPEN CASCADE SAS
4//
5// This file is part of Open CASCADE Technology software library.
6//
7// This library is free software; you can redistribute it and/or modify it under
8// the terms of the GNU Lesser General Public License version 2.1 as published
9// by the Free Software Foundation, with special exception defined in the file
10// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11// distribution for complete text of the license and disclaimer of any warranty.
12//
13// Alternatively, this file may be used under the terms of Open CASCADE
14// commercial license or contractual agreement.
15
16
17#ifndef _XCAFDimTolObjects_GeomToleranceObject_HeaderFile
18#define _XCAFDimTolObjects_GeomToleranceObject_HeaderFile
19
20#include <Standard.hxx>
21#include <Standard_Type.hxx>
22
23#include <XCAFDimTolObjects_GeomToleranceObjectSequence.hxx>
24#include <XCAFDimTolObjects_GeomToleranceType.hxx>
25#include <XCAFDimTolObjects_GeomToleranceTypeValue.hxx>
26#include <Standard_Real.hxx>
27#include <XCAFDimTolObjects_GeomToleranceMatReqModif.hxx>
28#include <XCAFDimTolObjects_GeomToleranceZoneModif.hxx>
29#include <XCAFDimTolObjects_GeomToleranceModifiersSequence.hxx>
30#include <Standard_Transient.hxx>
31#include <XCAFDimTolObjects_GeomToleranceModif.hxx>
1c9d3225 32#include <gp_Ax2.hxx>
9ebaae37 33
34class XCAFDimTolObjects_GeomToleranceObject;
35DEFINE_STANDARD_HANDLE(XCAFDimTolObjects_GeomToleranceObject, Standard_Transient)
36
37//! attribute to store dimension and tolerance
38class XCAFDimTolObjects_GeomToleranceObject : public Standard_Transient
39{
40
41public:
42
43 Standard_EXPORT XCAFDimTolObjects_GeomToleranceObject();
44
45 Standard_EXPORT XCAFDimTolObjects_GeomToleranceObject(const Handle(XCAFDimTolObjects_GeomToleranceObject)& theObj);
46
47 Standard_EXPORT void SetType (const XCAFDimTolObjects_GeomToleranceType theType);
48
49 Standard_EXPORT XCAFDimTolObjects_GeomToleranceType GetType() const;
50
51 Standard_EXPORT void SetTypeOfValue (const XCAFDimTolObjects_GeomToleranceTypeValue theTypeOfValue);
52
53 Standard_EXPORT XCAFDimTolObjects_GeomToleranceTypeValue GetTypeOfValue() const;
54
55 Standard_EXPORT void SetValue (const Standard_Real theValue);
56
57 Standard_EXPORT Standard_Real GetValue() const;
58
59 Standard_EXPORT void SetMaterialRequirementModifier (const XCAFDimTolObjects_GeomToleranceMatReqModif theMatReqModif);
60
61 Standard_EXPORT XCAFDimTolObjects_GeomToleranceMatReqModif GetMaterialRequirementModifier() const;
62
63 Standard_EXPORT void SetZoneModifier (const XCAFDimTolObjects_GeomToleranceZoneModif theZoneModif);
64
65 Standard_EXPORT XCAFDimTolObjects_GeomToleranceZoneModif GetZoneModifier() const;
66
67 Standard_EXPORT void SetValueOfZoneModifier (const Standard_Real theValue);
68
69 Standard_EXPORT Standard_Real GetValueOfZoneModifier() const;
70
71 Standard_EXPORT void SetModifiers (const XCAFDimTolObjects_GeomToleranceModifiersSequence& theModifiers);
72
73 Standard_EXPORT void AddModifier (const XCAFDimTolObjects_GeomToleranceModif theModifier);
74
75 Standard_EXPORT XCAFDimTolObjects_GeomToleranceModifiersSequence GetModifiers() const;
76
77 Standard_EXPORT void SetMaxValueModifier (const Standard_Real theModifier);
78
79 Standard_EXPORT Standard_Real GetMaxValueModifier() const;
80
1c9d3225 81 Standard_EXPORT void SetAxis (const gp_Ax2 theAxis);
82
83 Standard_EXPORT gp_Ax2 GetAxis() const;
84
85 Standard_EXPORT Standard_Boolean HasAxis () const;
86
92efcf78 87 DEFINE_STANDARD_RTTIEXT(XCAFDimTolObjects_GeomToleranceObject,Standard_Transient)
9ebaae37 88
89private:
90
91 XCAFDimTolObjects_GeomToleranceType myType;
92 XCAFDimTolObjects_GeomToleranceTypeValue myTypeOfValue;
93 Standard_Real myValue;
94 XCAFDimTolObjects_GeomToleranceMatReqModif myMatReqModif;
95 XCAFDimTolObjects_GeomToleranceZoneModif myZoneModif;
96 Standard_Real myValueOfZoneModif;
97 XCAFDimTolObjects_GeomToleranceModifiersSequence myModifiers;
98 Standard_Real myMaxValueModif;
1c9d3225 99 gp_Ax2 myAxis;
100 Standard_Boolean myHasAxis;
9ebaae37 101};
102
103
104
105
106
107
108
109#endif // _XCAFDimTolObjects_GeomToleranceObject_HeaderFile