summaryrefslogtreecommitdiff
path: root/inc/StepData_Plex.hxx
blob: 17be2082c3ff41a9ff90f189e3f977a3cf9c9319 (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
// 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 _StepData_Plex_HeaderFile
#define _StepData_Plex_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineHandle_HeaderFile
#include <Standard_DefineHandle.hxx>
#endif
#ifndef _Handle_StepData_Plex_HeaderFile
#include <Handle_StepData_Plex.hxx>
#endif

#ifndef _TColStd_SequenceOfTransient_HeaderFile
#include <TColStd_SequenceOfTransient.hxx>
#endif
#ifndef _StepData_Described_HeaderFile
#include <StepData_Described.hxx>
#endif
#ifndef _Handle_StepData_ECDescr_HeaderFile
#include <Handle_StepData_ECDescr.hxx>
#endif
#ifndef _Handle_StepData_Simple_HeaderFile
#include <Handle_StepData_Simple.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Standard_CString_HeaderFile
#include <Standard_CString.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_TColStd_HSequenceOfAsciiString_HeaderFile
#include <Handle_TColStd_HSequenceOfAsciiString.hxx>
#endif
#ifndef _Handle_Interface_Check_HeaderFile
#include <Handle_Interface_Check.hxx>
#endif
class Interface_InterfaceMismatch;
class StepData_ECDescr;
class StepData_Simple;
class StepData_Field;
class TColStd_HSequenceOfAsciiString;
class Interface_Check;
class Interface_EntityIterator;


//! A Plex (for Complex) Entity is defined as a list of Simple <br>
//!           Members ("external mapping") <br>
//!           The types of these members must be in alphabetic order <br>
class StepData_Plex : public StepData_Described {

public:

  //! Creates a Plex (empty). The complete creation is made by the <br>
//!           ECDescr itself, by calling Add <br>
  Standard_EXPORT   StepData_Plex(const Handle(StepData_ECDescr)& descr);
  //! Adds a member to <me> <br>
  Standard_EXPORT     void Add(const Handle(StepData_Simple)& member) ;
  //! Returns the Description as for a Plex <br>
  Standard_EXPORT     Handle_StepData_ECDescr ECDescr() const;
  //! Returns False <br>
  Standard_EXPORT     Standard_Boolean IsComplex() const;
  //! Tells if a step type is matched by <me> <br>
//!           For a Simple Entity : own type or super type <br>
//!           For a Complex Entity : one of the members <br>
  Standard_EXPORT     Standard_Boolean Matches(const Standard_CString steptype) const;
  //! Returns a Simple Entity which matches with a Type in <me> : <br>
//!           For a Simple Entity : me if it matches, else a null handle <br>
//!           For a Complex Entity : the member which matches, else null <br>
  Standard_EXPORT     Handle_StepData_Simple As(const Standard_CString steptype) const;
  //! Tells if a Field brings a given name <br>
  Standard_EXPORT     Standard_Boolean HasField(const Standard_CString name) const;
  //! Returns a Field from its name; read-only <br>
  Standard_EXPORT    const StepData_Field& Field(const Standard_CString name) const;
  //! Returns a Field from its name; read or write <br>
  Standard_EXPORT     StepData_Field& CField(const Standard_CString name) ;
  //! Returns the count of simple members <br>
  Standard_EXPORT     Standard_Integer NbMembers() const;
  //! Returns a simple member from its rank <br>
  Standard_EXPORT     Handle_StepData_Simple Member(const Standard_Integer num) const;
  //! Returns the actual list of members types <br>
  Standard_EXPORT     Handle_TColStd_HSequenceOfAsciiString TypeList() const;
  //! Fills a Check by using its Description <br>
  Standard_EXPORT     void Check(Handle(Interface_Check)& ach) const;
  //! Fills an EntityIterator with entities shared by <me> <br>
  Standard_EXPORT     void Shared(Interface_EntityIterator& list) const;




  DEFINE_STANDARD_RTTI(StepData_Plex)

protected:




private: 


TColStd_SequenceOfTransient themembers;


};





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


#endif