Integration of OCCT 6.5.0 from SVN
[occt.git] / src / StepElement / StepElement_SurfaceElementPurpose.cxx
CommitLineData
7fd59977 1// File: StepElement_SurfaceElementPurpose.cxx
2// Created: Tue Dec 10 18:13:04 2002
3// Author: data exchange team
4// Generator: ExpToCas (EXPRESS -> CASCADE/XSTEP Translator) V2.0
5// Copyright: Open CASCADE 2002
6
7#include <StepElement_SurfaceElementPurpose.ixx>
8#include <StepElement_SurfaceElementPurposeMember.hxx>
9#include <TCollection_HAsciiString.hxx>
10
11//=======================================================================
12//function : StepElement_SurfaceElementPurpose
13//purpose :
14//=======================================================================
15
16StepElement_SurfaceElementPurpose::StepElement_SurfaceElementPurpose ()
17{
18}
19
20//=======================================================================
21//function : CaseNum
22//purpose :
23//=======================================================================
24
25Standard_Integer StepElement_SurfaceElementPurpose::CaseNum (const Handle(Standard_Transient)& ent) const
26{
27 return 0;
28}
29
30//=======================================================================
31//function : CaseMem
32//purpose :
33//=======================================================================
34
35Standard_Integer StepElement_SurfaceElementPurpose::CaseMem (const Handle(StepData_SelectMember)& ent) const
36{
37 if(ent.IsNull()) return 0;
38 if(ent->Matches("EnumeratedSurfaceElementPurpose")) return 1;
39 else if(ent->Matches("ApplicationDefinedElementPurpose")) return 2;
40 else return 0;
41}
42
43//=======================================================================
44//function : NewMember
45//purpose :
46//=======================================================================
47
48Handle(StepData_SelectMember) StepElement_SurfaceElementPurpose::NewMember() const
49{
50 return new StepElement_SurfaceElementPurposeMember;
51}
52
53//=======================================================================
54//function : SetEnumeratedSurfaceElementPurpose
55//purpose :
56//=======================================================================
57
58void StepElement_SurfaceElementPurpose::SetEnumeratedSurfaceElementPurpose (const StepElement_EnumeratedSurfaceElementPurpose val)
59{
60 Handle(StepElement_SurfaceElementPurposeMember) SelMem = Handle(StepElement_SurfaceElementPurposeMember)::DownCast(Value());
61 if(SelMem.IsNull()) return;
62 Handle(TCollection_HAsciiString) name = new TCollection_HAsciiString("EnumeratedSurfaceElementPurpose");
63 SelMem->SetName(name->ToCString());
64 SelMem->SetEnum((Standard_Integer)val);
65}
66
67//=======================================================================
68//function : EnumeratedSurfaceElementPurpose
69//purpose :
70//=======================================================================
71
72StepElement_EnumeratedSurfaceElementPurpose StepElement_SurfaceElementPurpose::EnumeratedSurfaceElementPurpose () const
73{
74 Handle(StepElement_SurfaceElementPurposeMember) SelMem = Handle(StepElement_SurfaceElementPurposeMember)::DownCast(Value());
75 if(SelMem.IsNull()) return StepElement_MembraneDirect;
76 Handle(TCollection_HAsciiString) name = new TCollection_HAsciiString;
77 name->AssignCat(SelMem->Name());
78 Handle(TCollection_HAsciiString) nameitem = new TCollection_HAsciiString("EnumeratedSurfaceElementPurpose");
79 if(name->IsDifferent(nameitem)) return StepElement_MembraneDirect;
80 Standard_Integer numit = SelMem->Enum();
81 StepElement_EnumeratedSurfaceElementPurpose val;
82 switch(numit) {
83 case 1 : val = StepElement_MembraneDirect; break;
84 case 2 : val = StepElement_MembraneShear; break;
85 case 3 : val = StepElement_BendingDirect; break;
86 case 4 : val = StepElement_BendingTorsion; break;
87 case 5 : val = StepElement_NormalToPlaneShear; break;
88 default : return StepElement_MembraneDirect;break;
89 }
90 return val;
91}
92
93//=======================================================================
94//function : SetApplicationDefinedElementPurpose
95//purpose :
96//=======================================================================
97
98void StepElement_SurfaceElementPurpose::SetApplicationDefinedElementPurpose (const Handle(TCollection_HAsciiString) &val)
99{
100 Handle(StepElement_SurfaceElementPurposeMember) SelMem = Handle(StepElement_SurfaceElementPurposeMember)::DownCast(Value());
101 if(SelMem.IsNull()) return;
102 Handle(TCollection_HAsciiString) name = new TCollection_HAsciiString("ApplicationDefinedElementPurpose");
103 SelMem->SetName(name->ToCString());
104 SelMem->SetString(val->ToCString());
105}
106
107//=======================================================================
108//function : ApplicationDefinedElementPurpose
109//purpose :
110//=======================================================================
111
112Handle(TCollection_HAsciiString) StepElement_SurfaceElementPurpose::ApplicationDefinedElementPurpose () const
113{
114 Handle(StepElement_SurfaceElementPurposeMember) SelMem = Handle(StepElement_SurfaceElementPurposeMember)::DownCast(Value());
115 if(SelMem.IsNull()) return 0;
116 Handle(TCollection_HAsciiString) name = new TCollection_HAsciiString;
117 name->AssignCat(SelMem->Name());
118 Handle(TCollection_HAsciiString) nameitem = new TCollection_HAsciiString("ApplicationDefinedElementPurpose");
119 if(name->IsDifferent(nameitem)) return 0;
120 Handle(TCollection_HAsciiString) val = new TCollection_HAsciiString;
121 val->AssignCat(SelMem->String());
122 return val;
123}