summaryrefslogtreecommitdiff
path: root/src/StepBasic/StepBasic_SizeSelect.cxx
blob: c49e7048b3d164e2728d17bbccacc4d1b742661e (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
#include <StepBasic_SizeSelect.ixx>
#include <StepBasic_SizeMember.hxx>
#include <Interface_Macros.hxx>


//=======================================================================
//function : StepBasic_SizeSelect
//purpose  : 
//=======================================================================

StepBasic_SizeSelect::StepBasic_SizeSelect()
{
}


//=======================================================================
//function : CaseNum
//purpose  : 
//=======================================================================

Standard_Integer StepBasic_SizeSelect::CaseNum(const Handle(Standard_Transient)& ent) const
{
  if (ent.IsNull()) return 0;
  if (ent->IsKind(STANDARD_TYPE(StepBasic_SizeMember))) return 1;
  return 0;
}


//=======================================================================
//function : NewMember
//purpose  : 
//=======================================================================

Handle(StepData_SelectMember) StepBasic_SizeSelect::NewMember () const
{
  return new StepBasic_SizeMember;
}


//=======================================================================
//function : CaseMem
//purpose  : 
//=======================================================================

Standard_Integer StepBasic_SizeSelect::CaseMem (const Handle(StepData_SelectMember)& ent) const
{
  if (ent.IsNull()) return 0;
//skl  Interface_ParamType type = ent->ParamType();
  // Void : on admet "non defini" (en principe, on ne devrait pas)
//skl  if (type != Interface_ParamVoid && type != Interface_ParamReal) return 0;
  if (ent->Matches("POSITIVE_LENGTH_MEASURE")) return 1;
  return 0;
}


//=======================================================================
//function : SetRealValue
//purpose  : 
//=======================================================================

void StepBasic_SizeSelect::SetRealValue (const Standard_Real aRealValue)
{
  SetReal(aRealValue,"POSITIVE_LENGTH_MEASURE");
}


//=======================================================================
//function : RealValue
//purpose  : 
//=======================================================================

Standard_Real StepBasic_SizeSelect::RealValue () const
{
  return Real();
}